79 lines
2.4 KiB
Dart
79 lines
2.4 KiB
Dart
import 'package:checker/db.dart';
|
||
import 'package:flutter/services.dart';
|
||
import 'package:intl/intl.dart';
|
||
|
||
import 'common.dart';
|
||
|
||
// Клиент http приложения
|
||
final httpClient = createHttpClient();
|
||
|
||
// Попытка создать токен для кассы.
|
||
// В случае если токен для кассы уже существует, вернется ошибка 409.
|
||
// На сервере есть ограничение в 40 токенов.
|
||
getCreateTokenRequest(Map httpBody) async {
|
||
return httpClient.post(
|
||
await getEndpoint() + 'tokens/?_dmapptoken=' + await getToken(),
|
||
body: httpBody,
|
||
headers: {'Accept-Language': Intl.defaultLocale});
|
||
}
|
||
|
||
// Проверка статуса токена. В ответе приходит параметр active, который может быть либо true, либо false,.
|
||
getCheckTokenStatusRequest(String token) async {
|
||
return httpClient.get(
|
||
await getEndpoint() +
|
||
'tokens/' +
|
||
token +
|
||
'?_dmapptoken=' +
|
||
await getToken(),
|
||
headers: {'Accept-Language': Intl.defaultLocale});
|
||
}
|
||
|
||
// Удаление токена на сервере.
|
||
getDeleteTokenRequest(String token) async {
|
||
return httpClient.delete(
|
||
await getEndpoint() + 'tokens/' + token + '?_dmapptoken=' +
|
||
await getToken(), headers: {'Accept-Language': Intl.defaultLocale});
|
||
}
|
||
|
||
getLoyaltyRequest(String endpoint, SqliteHelper helper) async {
|
||
String token = await helper.getToken();
|
||
|
||
var headers = {
|
||
'DM-Authorization': 'dmapptoken ${await getToken()}',
|
||
'Authorization': 'dmtoken ${token}',
|
||
'Accept-Language': Intl.defaultLocale
|
||
};
|
||
|
||
return httpClient.get(endpoint, headers: headers);
|
||
}
|
||
|
||
getPurchaseRequest(String endpoint, Map body, String token) async {
|
||
|
||
var headers = {
|
||
'DM-Authorization': 'dmapptoken ${await getToken()}',
|
||
'Authorization': 'dmtoken ${token}',
|
||
'Accept-Language': Intl.defaultLocale
|
||
};
|
||
|
||
return httpClient.post(endpoint, body: body, headers: headers);
|
||
}
|
||
|
||
getCouponsRequest(String endpoint, String token) async {
|
||
|
||
var headers = {
|
||
'DM-Authorization': 'dmapptoken ${await getToken()}',
|
||
'Authorization': 'dmtoken ${token}',
|
||
'Accept-Language': Intl.defaultLocale
|
||
};
|
||
|
||
return httpClient.get(endpoint, headers: headers);
|
||
}
|
||
|
||
getEndpoint() async {
|
||
return await platform.invokeMethod('getEndpoint');
|
||
}
|
||
|
||
getToken() async {
|
||
return await platform.invokeMethod('getAppToken');
|
||
}
|