109 lines
3.2 KiB
Dart
109 lines
3.2 KiB
Dart
import 'package:checker/strings.dart';
|
||
import 'package:flutter/services.dart';
|
||
import 'package:http/http.dart' as http;
|
||
|
||
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': StringsLocalization.localeCode});
|
||
}
|
||
|
||
// Проверка статуса токена. В ответе приходит параметр active, который может быть либо true, либо false,.
|
||
getCheckTokenStatusRequest(String token) async {
|
||
return httpClient.get(
|
||
await getEndpoint() +
|
||
'tokens/' +
|
||
token +
|
||
'?_dmapptoken=' +
|
||
await getToken(),
|
||
headers: {'Accept-Language': StringsLocalization.localeCode});
|
||
}
|
||
|
||
// Удаление токена на сервере.
|
||
getDeleteTokenRequest(String token) async {
|
||
return httpClient.delete(
|
||
await getEndpoint() + 'tokens/' + token + '?_dmapptoken=' +
|
||
await getToken(), headers: {'Accept-Language': StringsLocalization.localeCode});
|
||
}
|
||
|
||
getLoyaltyRequest(String endpoint, String token) async {
|
||
var headers = {
|
||
'DM-Authorization': 'dmapptoken ${await getToken()}',
|
||
'Authorization': 'dmtoken $token',
|
||
'Accept-Language': StringsLocalization.localeCode
|
||
};
|
||
|
||
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': StringsLocalization.localeCode
|
||
};
|
||
|
||
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': StringsLocalization.localeCode
|
||
};
|
||
|
||
print(headers);
|
||
|
||
return httpClient.get(endpoint, headers: headers);
|
||
}
|
||
|
||
getUserByCard(String card, String token) async {
|
||
|
||
var headers = {
|
||
'DM-Authorization': 'dmapptoken ${await getToken()}',
|
||
'Authorization': 'dmtoken $token',
|
||
'Accept-Language': StringsLocalization.localeCode
|
||
};
|
||
|
||
|
||
var finalEndpoint = "${await getEndpoint()}users/?auto=$card";
|
||
print(finalEndpoint);
|
||
|
||
return httpClient.get(finalEndpoint, headers: headers);
|
||
}
|
||
|
||
getUserByPhone(String phone, String token) async {
|
||
|
||
var headers = {
|
||
'DM-Authorization': 'dmapptoken ${await getToken()}',
|
||
'Authorization': 'dmtoken $token',
|
||
'Accept-Language': StringsLocalization.localeCode
|
||
};
|
||
|
||
|
||
var finalEndpoint = "${await getEndpoint()}users/?phone=$phone";
|
||
print(finalEndpoint);
|
||
|
||
return httpClient.get(finalEndpoint, headers: headers);
|
||
}
|
||
|
||
getEndpoint() async {
|
||
return await platform.invokeMethod('getEndpoint');
|
||
}
|
||
|
||
getToken() async {
|
||
return await platform.invokeMethod('getAppToken');
|
||
}
|