This commit is contained in:
J. A. Messias 2024-11-14 10:46:10 -03:00
parent 4391efaeaf
commit 4eca85a85d
15 changed files with 37 additions and 48 deletions

View File

@ -239,7 +239,7 @@ Future<void> onMessageReceived(Map<String, dynamic> payload, String? extra, Stri
break;
case 'enroll_cond':
await StorageHelper().s(SecureStorageKey.haveLocal.value, 'true');
await StorageHelper().s(SecureStorageKey.haveLocal.value, true);
StorageHelper().context!.go('/homePage');
break;
default:
@ -275,7 +275,7 @@ class NotificationService {
if (requestOSnotification == false) {
if (isAllowed == false) {
await StorageHelper().s(KeychainStorageKey.requestOSNotification.value, 'true');
await StorageHelper().s(KeychainStorageKey.requestOSNotification.value, true);
await AwesomeNotifications().requestPermissionToSendNotifications();
}
}

View File

@ -82,7 +82,7 @@ Future<void> _initializeFlutterFlow() async {
Future<void> _foregroundHandlerMessage(RemoteMessage message) async {
if (message.data['click_action'] == 'enroll_cond') {
await StorageHelper().s(SecureStorageKey.haveLocal.value, 'true');
await StorageHelper().s(SecureStorageKey.haveLocal.value, true);
StorageHelper().context?.go('/homePage');
}
@ -96,7 +96,7 @@ Future<void> _foregroundHandlerMessage(RemoteMessage message) async {
Future<void> _backgroundHandlerMessage(RemoteMessage message) async {
if (message.data['click_action'] == 'enroll_cond') {
await StorageHelper().s(SecureStorageKey.haveLocal.value, 'true');
await StorageHelper().s(SecureStorageKey.haveLocal.value, true);
StorageHelper().context?.go('/homePage');
}
}
@ -225,7 +225,7 @@ class _AppState extends State<App> with WidgetsBindingObserver {
FirebaseMessaging.onMessage.listen(_foregroundHandlerMessage);
FirebaseMessaging.onMessageOpenedApp.listen((RemoteMessage message) async {
if (message.data['click_action'] == 'enroll_cond') {
await StorageHelper().s(SecureStorageKey.haveLocal.value, 'true');
await StorageHelper().s(SecureStorageKey.haveLocal.value, true);
log('onMessageOpenedApp');
} else {
onMessageReceived(message.data, message.notification!.body, message.data['click_action']);
@ -234,7 +234,7 @@ class _AppState extends State<App> with WidgetsBindingObserver {
FirebaseMessaging.instance.getInitialMessage().then((message) async {
if (message != null) {
if (message.data['click_action'] == 'enroll_cond') {
await StorageHelper().s(SecureStorageKey.haveLocal.value, 'true');
await StorageHelper().s(SecureStorageKey.haveLocal.value, true);
log('getInitialMessage');
}
}

View File

@ -78,7 +78,7 @@ class _FastPassPageWidgetState extends State<FastPassPageWidget> {
await controller.evaluateJavascript(
source: "window.localStorage.setItem('fre-user-data', '$freUserData')");
await controller.evaluateJavascript(
source: "window.localStorage.setItem('enableBackButton', 'true')");
source: "window.localStorage.setItem('enableBackButton', true)");
},
onUpdateVisitedHistory: (controller, uri, isVisited) {
if (uri.toString().contains('/hub/home')) context.pop();
@ -96,7 +96,7 @@ class _FastPassPageWidgetState extends State<FastPassPageWidget> {
onPageStarted: (String url) {
final String token = "localStorage.setItem('fre-token', '\"$userUUID\"');";
final String data = "localStorage.setItem('fre-user-data', '$freUserData');";
const String backNavigation = "localStorage.setItem('enableBackButton', 'true');";
const String backNavigation = "localStorage.setItem('enableBackButton', true);";
_controllerAndroid.runJavaScript(token);
_controllerAndroid.runJavaScript(data);

View File

@ -79,7 +79,7 @@ class _ReservationPageWidgetState extends State<ReservationPageWidget> {
await controller.evaluateJavascript(
source: "window.localStorage.setItem('fre-user-data', '$freUserData')");
await controller.evaluateJavascript(
source: "window.localStorage.setItem('enableBackButton', 'true')");
source: "window.localStorage.setItem('enableBackButton', true)");
},
onUpdateVisitedHistory: (controller, uri, isVisited) {
if (uri.toString().contains('/hub/home')) {
@ -99,7 +99,7 @@ class _ReservationPageWidgetState extends State<ReservationPageWidget> {
onPageStarted: (String url) {
final String token = "localStorage.setItem('fre-token', '\"$userUUID\"');";
final String data = "localStorage.setItem('fre-user-data', '$freUserData');";
const String backNavigation = "localStorage.setItem('enableBackButton', 'true');";
const String backNavigation = "localStorage.setItem('enableBackButton', true);";
_controllerAll.runJavaScript(token);
_controllerAll.runJavaScript(data);

View File

@ -1,7 +1,8 @@
abstract class BaseStorage {
Future<void> init();
Future<void> set(String key, String value);
Future<void> set<T>(String key, T value);
Future<String?> get(String key);

View File

@ -73,7 +73,7 @@ class DatabaseStorage implements BaseStorage {
}
@override
Future<void> set(String key, String value) async {
Future<void> set<T>(String key, T value) async {
return await getInstanceByKey(key).set(key, value);
}
}

View File

@ -20,8 +20,8 @@ class SecureStorage implements BaseStorage {
}
@override
Future<void> set(String key, String value) async {
await _secureStorage.write(key: key, value: value);
Future<void> set<T>(String key, T value) async {
await _secureStorage.write(key: key, value: value.toString());
}
@override

View File

@ -20,8 +20,8 @@ class SharedPreferencesStorage implements BaseStorage {
}
@override
Future<void> set(String key, String value) async {
await _prefs.setString(key, value);
Future<void> set<T>(String key, T value) async {
await _prefs.setString(key, value.toString());
}
@override

View File

@ -3,8 +3,6 @@ import 'package:hub/shared/helpers/base_storage.dart';
import 'package:hub/shared/helpers/database_storage.dart';
import 'package:hub/shared/helpers/secure_storage.dart';
import 'package:hub/shared/helpers/shared_preferences_storage.dart';
import 'package:hub/shared/services/keychain/keychain_service.dart';
import 'package:hub/shared/services/license/license_service.dart';
class StorageHelper {
static final StorageHelper _instance = StorageHelper._internal();
@ -27,8 +25,8 @@ class StorageHelper {
String? isFirstRun = await SharedPreferencesStorage.instance.get(SharedPreferencesKey.isFirstRun.value);
if (isFirstRun == 'true') {
await SharedPreferencesStorage.instance.set(SharedPreferencesKey.isFirstRun.value, 'false');
await SecureStorage.instance.set(SecureStorageKey.isLogged.value, 'false');
await SharedPreferencesStorage.instance.set(SharedPreferencesKey.isFirstRun.value, false);
await SecureStorage.instance.set(SecureStorageKey.isLogged.value, false);
}
}
@ -57,7 +55,7 @@ class StorageHelper {
return await getInstanceByKey(key).get(key);
}
Future<void> s(String key, String value) async {
Future<void> s<T>(String key, T value) async {
return await getInstanceByKey(key).set(key, value);
}

View File

@ -24,14 +24,14 @@ class AuthenticationService {
List<dynamic> locals = response.jsonBody['locais'] ?? [];
if (locals.isEmpty) {
await StorageHelper().s(SecureStorageKey.haveLocal.value, 'false');
await StorageHelper().s(SecureStorageKey.haveLocal.value, false);
context.go('/receptionPage');
} else {
await StorageHelper().s(SecureStorageKey.haveLocal.value, 'true');
await StorageHelper().s(SecureStorageKey.haveLocal.value, true);
context.go('/homePage');
}
await StorageHelper().s(SecureStorageKey.isLogged.value, 'true');
await StorageHelper().s(SecureStorageKey.isLogged.value, true);
}
static Future signIn(

View File

@ -35,13 +35,13 @@ class KeychainDelegate implements BaseStorage {
}
@override
Future<void> set(String key, String value) async {
Future<void> set<T>(String key, T value) async {
var date = DateTime.now().toIso8601String();
await DatabaseStorage.database.insert(
tableKeychain,
{
'key': key,
'value': value,
'value': value.toString(),
'type': 'local',
'updateAt': date,
'resolvedAt': date,

View File

@ -1,8 +1,4 @@
import 'dart:convert';
import 'dart:developer';
import 'package:hub/shared/helpers/database_storage.dart';
import 'package:sqflite/sqflite.dart';
import 'package:hub/shared/helpers/base_storage.dart';
class KeychainService {
static final KeychainService _instance = KeychainService._internal();

View File

@ -37,19 +37,18 @@ class LicenseDelegate implements BaseStorage {
}
@override
Future<void> set(String key, String value) async {
Future<void> set<T>(String key, T value) async {
log('setLicense($key, $value)');
Map<String, dynamic> valueMap = jsonDecode(value);
log('String to Map<String, dynamic>: $value to $valueMap');
value as Map<String, dynamic>;
await DatabaseStorage.database.insert(
tableLicense,
{
'key': key,
'display': valueMap['display'],
'expirationDate': valueMap['expirationDate'],
'startDate': valueMap['startDate'],
'quantity': valueMap['quantity'],
'display': value['display'],
'expirationDate': value['expirationDate'],
'startDate': value['startDate'],
'quantity': value['quantity'],
},
conflictAlgorithm: ConflictAlgorithm.replace);
}

View File

@ -16,10 +16,8 @@ class LicenseService {
factory LicenseService() => _instance;
LicenseService._internal();
static Future<void> setupLicense() async {
log('initLicense()');
log('All modules are visible');
for (var element in LicenseStorageKey.values.map((e) => e.value)) {
await DatabaseStorage.database.insert(
LicenseDelegate.tableLicense,
@ -35,7 +33,6 @@ class LicenseService {
}
}
static Future<void> initLicenseService() async {
// for (var element in LicenseStorageKey.values.map((e) => e.value)) {
// await SQLiteStorage.database.insert(
@ -82,8 +79,7 @@ class LicenseService {
}
}
return true;
} catch (e, s) {
log('Erro ao obter licença', error: e, stackTrace: s);
} catch (e) {
await setupLicense();
return true;
}
@ -96,7 +92,7 @@ class LicenseService {
static Future<void> _saveModule(final dynamic body) async {
if (body is Map<String, dynamic>) log('Salvando módulo: ${body.toString()}');
// if (body is Map<String, dynamic>) await StorageHelper().s(body['key'], '');
if (body is Map<String, dynamic>) await StorageHelper().s(body['key'], jsonEncode(body));
if (body is Map<String, dynamic>) await StorageHelper().s(body['key'], body);
// StorageHelper.getInstance(Storage.SQLiteStorage).set(key, value);
}

View File

@ -9,7 +9,6 @@ import 'package:hub/flutter_flow/nav/nav.dart';
import 'package:hub/shared/helpers/base_storage.dart';
import 'package:hub/shared/helpers/storage_helper.dart';
import 'package:hub/shared/services/license/license_service.dart';
import 'package:hub/shared/utils/device_util.dart';
import 'package:hub/shared/utils/dialog_util.dart';
import '../../../backend/api_requests/api_calls.dart';
@ -45,8 +44,8 @@ class LocalizationService {
final bool isEnable = !isEmpty && isActive;
if (isEnable) {
await StorageHelper().s(SecureStorageKey.haveLocal.value, 'true');
await StorageHelper().s(SecureStorageKey.isLogged.value, 'true');
await StorageHelper().s(SecureStorageKey.haveLocal.value, true);
await StorageHelper().s(SecureStorageKey.isLogged.value, true);
await WidgetsBinding.instance.endOfFrame;
await StorageHelper().s(KeychainStorageKey.clientUUID.value, '');
await StorageHelper().s(KeychainStorageKey.ownerUUID.value, '');