Проведение покупки, проверка деактивированного токена, подтверждение логаута, функциональная маска на сканере, кнопка назад в faq
This commit is contained in:
@@ -42,27 +42,50 @@ class SplashScreen extends StatelessWidget {
|
||||
pushRoute(context, new RegistrationScreen());
|
||||
} else {
|
||||
|
||||
checkToken(context).then((response) {
|
||||
|
||||
print(response.body);
|
||||
|
||||
Map parsedMap = JSON.decode(response.body);
|
||||
bool active = parsedMap['active'];
|
||||
|
||||
if (active) {
|
||||
// Запускается экран сканера, токен кассы активирован, с его помощью можно делать запросы к pos-api.
|
||||
startScanner(context);
|
||||
} else {
|
||||
// Запускается экран ожидания активации токена.
|
||||
// В реальности токен активируется в админке вручную,
|
||||
// на тестовом сервере токен активируется через несколько минут после создания.
|
||||
pushRoute(context, new FinishRegistrationScreen());
|
||||
}
|
||||
|
||||
checkTokenStatus(context).then((statusResponse) {
|
||||
handleStatusResponse(context, statusResponse);
|
||||
}).catchError((error) {
|
||||
print('Handle exception!');
|
||||
print(error.toString());
|
||||
return false;
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
startRegistration() async {
|
||||
|
||||
}
|
||||
|
||||
handleStatusResponse(BuildContext context, var statusResponse) async {
|
||||
int code = statusResponse.statusCode;
|
||||
print('resp: ${code}');
|
||||
|
||||
if (code == 404) {
|
||||
platform.invokeMethod('removeKeys').then((result) {
|
||||
print('try to start registration');
|
||||
pushRoute(context, new RegistrationScreen());
|
||||
});
|
||||
} else {
|
||||
|
||||
Map statusResponseMap = JSON.decode(statusResponse.body);
|
||||
bool active = statusResponseMap['active'];
|
||||
|
||||
if (active) {
|
||||
startScanner(context);
|
||||
} else {
|
||||
createToken(await platform.invokeMethod('getMerchantID')).then((response) {
|
||||
print('response.body: ${response.body}');
|
||||
|
||||
if (response.statusCode == 409) {
|
||||
pushRoute(context, new FinishRegistrationScreen());
|
||||
} else {
|
||||
startRegistration();
|
||||
}
|
||||
|
||||
}).catchError((error) {
|
||||
platform.invokeMethod('removeKeys').then((result) => pushRoute(context, new RegistrationScreen()));
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user