Перенес хранение информации о сессии (токен, din, posid) в базу данных
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
import 'package:checker/db.dart';
|
||||
import 'package:checker/finish_registration.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'dart:convert'; // Пакет для обработки json с ответом от сервера.
|
||||
@@ -70,7 +71,12 @@ class _RegistrationScreenState extends BaseState<RegistrationScreen> {
|
||||
/// Получение от платформы id установки, формирование запроса на получение токена, сохранение токена.
|
||||
_register() async {
|
||||
if (await platform.invokeMethod('isOnline')) {
|
||||
createToken(textFieldValue, await platform.invokeMethod('getPosID')).then((response) {
|
||||
|
||||
SqliteHelper helper = new SqliteHelper();
|
||||
await helper.open();
|
||||
String posID = await helper.getPosID();
|
||||
|
||||
createToken(textFieldValue, posID).then((response) {
|
||||
|
||||
setState(() {
|
||||
error = null;
|
||||
@@ -80,17 +86,19 @@ class _RegistrationScreenState extends BaseState<RegistrationScreen> {
|
||||
print(response.body);
|
||||
|
||||
Map parsedMap = JSON.decode(response.body);
|
||||
|
||||
if (response.statusCode == 201) {
|
||||
String token = parsedMap['token'];
|
||||
platform.invokeMethod('saveToken', {'token' : token});
|
||||
platform.invokeMethod('saveMerchantID', {'merchantID' : textFieldValue});
|
||||
helper.insert(textFieldValue, posID, parsedMap['token']);
|
||||
helper.close();
|
||||
pushRoute(context, new FinishRegistrationScreen());
|
||||
} else {
|
||||
helper.close();
|
||||
setState(() {
|
||||
error = parsedMap['errors'][0];
|
||||
});
|
||||
}
|
||||
}).catchError((error) {
|
||||
helper.close();
|
||||
print(error.toString());
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user