Merge branch 'develop'

This commit is contained in:
Ivan Antunes 2025-01-15 14:11:30 -03:00
commit 7a09026675
238 changed files with 1167 additions and 1248 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 66 KiB

View File

@ -1,236 +0,0 @@
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:hub/flutter_flow/random_data_util.dart';
import 'package:hub/initialization.dart';
import 'package:hub/main.dart';
import 'package:hub/shared/helpers/storage/base_storage.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart';
import 'package:integration_test/integration_test.dart';
late WidgetTester widget;
void main() {
IntegrationTestWidgetsFlutterBinding.ensureInitialized();
group(
'Initialization',
() {
group('Navigation', () {
setUpAll(() async => await initializeApp().then((_) async =>
await StorageHelper()
.set(SecureStorageKey.isLogged.value, 'false')));
testWidgets('Test Welcome', (WidgetTester tester) async {
widget = tester;
await _testWelcome();
});
});
group('Terms of Use', () {
// Add tests for Terms of Use here
});
},
);
group('Authentication', () {
group('Sign in', () {
setUpAll(() async => await initializeApp().then((_) async =>
await StorageHelper().set(SecureStorageKey.isLogged.value, 'false')));
testWidgets('Test Sign In', (WidgetTester tester) async {
widget = tester;
await _testSignIn();
});
});
group('Sign up', () {
setUpAll(() async => await initializeApp().then((_) async =>
await StorageHelper().set(SecureStorageKey.isLogged.value, 'false')));
testWidgets('Test Sign Up', (WidgetTester tester) async {
widget = tester;
await _testSignUp();
});
});
group('Sign Out', () {
// Add tests for Sign Out here
});
group('Forgot Password', () {
// setUpAll(() async => await initializeApp().then((_) => StorageUtil().isLogged = false));
// testWidgets('Test Forgot Password', (WidgetTester tester) async {
// widget = tester;
// await _testForgotPassword();
// });
});
});
group('Localization', () {
// Add tests for Localization here
});
group('Networking', () {
// Add tests for Networking here
});
group('Functionality', () {
// Add tests for Functionality here
});
group('Usability', () {
// Add tests for Usability here
});
group('Performance', () {
// Add tests for Performance here
});
group('Security', () {
// Add tests for Security here
});
group('Accessibility', () {
// Add tests for Accessibility here
});
group('Compatibility', () {
// Add tests for Compatibility here
});
group('Internationalization', () {
// Add tests for Internationalization here
});
}
Future<void> _testWelcome() async {
await widget.pumpWidget(const App());
await widget.pumpAndSettle();
await _navigateToSignIn();
await _navigateToSignUp();
await widget.pumpAndSettle();
await widget.pumpWidget(const App());
await widget.pumpAndSettle();
await _navigateToSignUp();
await _navigateToSignIn();
await widget.pumpAndSettle();
}
Future<void> _testSignIn() async {
await widget.pumpWidget(const App());
await _navigateToSignIn();
await _auth({
'emailTextFormField': 'erro@exemplo.com',
'passwordTextFormField': '12345678'
});
await _auth({
'emailTextFormField': 'email_app@exemplo.com',
'passwordTextFormField': '12345678'
});
}
Future<void> _testSignUp() async {
await widget.pumpWidget(const App());
await _navigateToSignUp();
var credentials = {
'nameTextFormField': 'app',
'emailTextFormField': 'email_app@exemplo.com',
'passwordTextFormField': '12345678'
};
await _auth(credentials);
var name = randomString(7, 7, true, true, true);
var email = '$name@example.com';
var password = '12345678';
credentials = {
'nameTextFormField': name,
'emailTextFormField': email,
'passwordTextFormField': password
};
await _navigateToSignUp();
await _auth(credentials);
credentials = {
'emailTextFormField': email,
'passwordTextFormField': password
};
await _auth(credentials);
}
Future<void> _testForgotPassword() async {
await widget.pumpWidget(const App());
await _navigateToSignIn();
await _recoveryPassword();
var addr = randomString(5, 5, true, true, true);
var credentials = {'recoveryTextFormField': '$addr@exemple.com'};
await _send(credentials);
await Future.delayed(const Duration(seconds: 2));
await _recoveryPassword();
credentials = {'recoveryTextFormField': 'email_app@exemple.com'};
await _send(credentials);
}
Future<void> _recoveryPassword() async {
await widget.pumpAndSettle();
final Finder forgotPassword =
find.byKey(const ValueKey<String>('ForgotPassword'));
if (forgotPassword.evaluate().isNotEmpty) await widget.tap(forgotPassword);
await widget.ensureVisible(forgotPassword);
await widget.pumpAndSettle();
}
Future<void> _navigateBackUsingSystemGesture() async =>
IntegrationTestWidgetsFlutterBinding.instance.keyboard
.isLogicalKeyPressed(LogicalKeyboardKey.escape);
Future<void> _navigateToSignUp() async {
await widget.pumpAndSettle();
final Finder navToSignUp =
find.byKey(const ValueKey<String>('toggleSignUpPage'));
if (navToSignUp.evaluate().isNotEmpty) {
await widget.tap(navToSignUp);
await widget.pumpAndSettle();
}
}
Future<void> _navigateToSignIn() async {
await widget.pumpAndSettle();
final Finder navToSignIn =
find.byKey(const ValueKey<String>('toggleSignInPage'));
expect(navToSignIn, findsOneWidget);
if (navToSignIn.evaluate().isNotEmpty) {
await widget.tap(navToSignIn);
await widget.pumpAndSettle();
}
}
Future<void> _auth(Map<String, dynamic> credentials) async {
await _enterCredentials(credentials);
await _submit('SubmitButtonWidget');
}
Future<void> _send(Map<String, dynamic> credentials) async {
await _enterCredentials(credentials);
await _submit('SendButtonWidget');
}
Future<void> _enterCredentials(Map<String, dynamic> credentials) async {
await widget.pumpAndSettle();
for (var entry in credentials.entries) {
final Finder field = find.byKey(ValueKey<String>(entry.key));
await widget.pumpAndSettle();
expect(field, findsOneWidget);
await widget.enterText(field, entry.value);
await widget.pumpAndSettle();
}
await widget.pumpAndSettle();
}
Future<void> _submit(String key) async {
await widget.pumpAndSettle();
final Finder submitButton = find.byKey(ValueKey<String>(key));
await widget.pumpAndSettle();
if (submitButton.evaluate().isNotEmpty) {
await widget.tap(submitButton);
await widget.pumpAndSettle();
}
final Finder throwExceptionWidget =
find.byKey(const ValueKey<String>('ThrowExceptionWidget'));
await widget.pumpAndSettle();
if (throwExceptionWidget.evaluate().isNotEmpty) {
await widget.ensureVisible(throwExceptionWidget);
await widget.tap(throwExceptionWidget);
await widget.pumpAndSettle();
} else {
await _navigateBackUsingSystemGesture();
}
}

View File

@ -1,47 +0,0 @@
import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:hub/components/templates_components/card_item_template_component/card_item_template_component_widget.dart';
import 'package:hub/initialization.dart';
import 'package:hub/main.dart' as app;
import 'package:hub/shared/helpers/storage/base_storage.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart';
import 'package:integration_test/integration_test.dart';
void main() {
IntegrationTestWidgetsFlutterBinding.ensureInitialized();
group('ProvisionalHistoryPage Integration Test', () {
setUpAll(() async => await initializeApp().then((_) async {
await StorageHelper().set(SecureStorageKey.isLogged.value, 'true');
await StorageHelper().set(SecureStorageKey.haveLocal.value, 'true');
await StorageHelper()
.set(KeychainStorageKey.devUUID.value, 'b5c3818753e76d85');
await StorageHelper().set(
KeychainStorageKey.userUUID.value, '649c45d7514a28.85876308');
await StorageHelper().set(KeychainStorageKey.clientUUID.value, '7');
}));
testWidgets('Filter Provisional History', (WidgetTester tester) async {
app.main();
await tester.pumpAndSettle();
final Finder menuButton = find.byIcon(Icons.person_search_outlined);
await tester.tap(menuButton);
await tester.pumpAndSettle();
final Finder filterButton = find.byIcon(Icons.filter_list);
await tester.tap(filterButton);
await tester.pumpAndSettle();
final Finder activeFilterOption = find.text('Active');
await tester.tap(activeFilterOption);
await tester.pumpAndSettle();
final Finder applyFilterButton = find.text('Apply');
await tester.tap(applyFilterButton);
await tester.pumpAndSettle();
expect(find.byType(CardItemTemplateComponentWidget), findsWidgets);
});
});
}

View File

@ -1,3 +0,0 @@
export '/backend/schema/util/schema_util.dart';
export 'device_struct.dart';

View File

@ -37,12 +37,13 @@ class AppBarUtil extends StatelessWidget implements PreferredSizeWidget {
title: Text( title: Text(
title, title,
style: FlutterFlowTheme.of(context).headlineMedium.override( style: FlutterFlowTheme.of(context).headlineMedium.override(
fontFamily: 'Nunito', fontFamily: FlutterFlowTheme.of(context).headlineMediumFamily,
color: FlutterFlowTheme.of(context).primaryText, color: FlutterFlowTheme.of(context).primaryText,
fontSize: 15.0, fontSize: 16.0,
letterSpacing: 0.0,
fontWeight: FontWeight.bold, fontWeight: FontWeight.bold,
useGoogleFonts: GoogleFonts.asMap().containsKey('Nunito'), letterSpacing: 0.0,
useGoogleFonts: GoogleFonts.asMap().containsKey(
FlutterFlowTheme.of(context).headlineMediumFamily),
), ),
), ),
actions: [ actions: [

View File

@ -1,16 +1,15 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:hub/components/organism_components/bottom_arrow_linked_locals_component/bottom_arrow_linked_locals_component_model.dart'; import 'package:hub/components/organism_components/bottom_arrow_linked_locals_component/bottom_arrow_linked_locals_component_model.dart';
import 'package:hub/components/templates_components/card_item_template_component/card_item_template_component_widget.dart'; import 'package:hub/components/templates_components/card_item_template_component/card_item_template_component_widget.dart';
import 'package:hub/features/backend/index.dart';
import 'package:hub/features/storage/index.dart';
import 'package:hub/flutter_flow/flutter_flow_util.dart'; import 'package:hub/flutter_flow/flutter_flow_util.dart';
import 'package:hub/flutter_flow/nav/nav.dart'; import 'package:hub/flutter_flow/nav/nav.dart';
import 'package:hub/shared/helpers/storage/base_storage.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart';
import 'package:hub/shared/utils/dialog_util.dart'; import 'package:hub/shared/utils/dialog_util.dart';
import 'package:hub/shared/utils/limited_text_size.dart'; import 'package:hub/shared/utils/limited_text_size.dart';
import 'package:hub/shared/utils/log_util.dart'; import 'package:hub/shared/utils/log_util.dart';
import '../../../shared/services/authentication/authentication_service.dart';
import '/backend/api_requests/api_calls.dart';
import '/flutter_flow/flutter_flow_theme.dart'; import '/flutter_flow/flutter_flow_theme.dart';
class BottomArrowLinkedLocalsComponentWidget extends StatefulWidget { class BottomArrowLinkedLocalsComponentWidget extends StatefulWidget {
@ -109,13 +108,13 @@ class _BottomArrowLinkedLocalsComponentWidgetState
final local = locals[0]; final local = locals[0];
await StorageHelper() await StorageHelper()
.set(KeychainStorageKey.clientName.value, local['CLI_NOME']); .set(ProfileStorageKey.clientName.key, local['CLI_NOME']);
await StorageHelper() await StorageHelper()
.set(KeychainStorageKey.ownerName.value, local['CLU_OWNER_DSC']); .set(ProfileStorageKey.ownerName.key, local['CLU_OWNER_DSC']);
await StorageHelper() await StorageHelper()
.set(KeychainStorageKey.clientUUID.value, local['CLI_ID']); .set(ProfileStorageKey.clientUUID.key, local['CLI_ID']);
await StorageHelper() await StorageHelper()
.set(KeychainStorageKey.ownerUUID.value, local['CLU_OWNER_ID']); .set(ProfileStorageKey.ownerUUID.key, local['CLU_OWNER_ID']);
context.pop(); context.pop();
return widget.response; return widget.response;
@ -146,7 +145,7 @@ class _BottomArrowLinkedLocalsComponentWidgetState
Future<dynamic> _fetchResponseLink(String status, String cliID) async { Future<dynamic> _fetchResponseLink(String status, String cliID) async {
try { try {
await StorageHelper().set(KeychainStorageKey.clientUUID.value, cliID); await StorageHelper().set(ProfileStorageKey.clientUUID.key, cliID);
var response = await PhpGroup.resopndeVinculo.call(tarefa: status); var response = await PhpGroup.resopndeVinculo.call(tarefa: status);
if (response.jsonBody['error'] == false) { if (response.jsonBody['error'] == false) {
@ -157,7 +156,7 @@ class _BottomArrowLinkedLocalsComponentWidgetState
enText: "Link Activated Successfully") enText: "Link Activated Successfully")
}; };
} else { } else {
await StorageHelper().set(KeychainStorageKey.clientUUID.value, ''); await StorageHelper().set(ProfileStorageKey.clientUUID.key, '');
return response.jsonBody; return response.jsonBody;
} }
} catch (e, s) { } catch (e, s) {
@ -210,13 +209,13 @@ class _BottomArrowLinkedLocalsComponentWidgetState
onTapCardItemAction: () async { onTapCardItemAction: () async {
if (local['CLU_STATUS'] == 'A') { if (local['CLU_STATUS'] == 'A') {
await StorageHelper() await StorageHelper()
.set(KeychainStorageKey.clientUUID.value, local['CLI_ID']); .set(ProfileStorageKey.clientUUID.key, local['CLI_ID']);
await StorageHelper() await StorageHelper()
.set(KeychainStorageKey.clientName.value, local['CLI_NOME']); .set(ProfileStorageKey.clientName.key, local['CLI_NOME']);
await StorageHelper() await StorageHelper()
.set(KeychainStorageKey.ownerName.value, local['CLU_OWNER_DSC']); .set(ProfileStorageKey.ownerName.key, local['CLU_OWNER_DSC']);
await StorageHelper() await StorageHelper()
.set(KeychainStorageKey.ownerUUID.value, local['CLU_OWNER_ID']); .set(ProfileStorageKey.ownerUUID.key, local['CLU_OWNER_ID']);
context.pop(true); context.pop(true);
return true; return true;

View File

@ -1,9 +1,8 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:hub/backend/api_requests/api_manager.dart';
import 'package:hub/components/organism_components/schedule_visit_detail/schedule_visit_detail_widget.dart'; import 'package:hub/components/organism_components/schedule_visit_detail/schedule_visit_detail_widget.dart';
import 'package:hub/features/backend/index.dart';
import 'package:hub/features/storage/index.dart';
import 'package:hub/flutter_flow/flutter_flow_model.dart'; import 'package:hub/flutter_flow/flutter_flow_model.dart';
import 'package:hub/shared/helpers/storage/base_storage.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart';
// ignore: unused_import // ignore: unused_import
import 'package:intl/intl.dart'; import 'package:intl/intl.dart';
@ -59,12 +58,11 @@ class ScheduleVisitDetailModel
} }
Future<void> initDB() async { Future<void> initDB() async {
devUUID = devUUID = (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? '';
userUUID = userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
cliUUID = cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
} }
@override @override

View File

@ -1,8 +1,8 @@
import 'package:cached_network_image/cached_network_image.dart'; import 'package:cached_network_image/cached_network_image.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:google_fonts/google_fonts.dart'; import 'package:google_fonts/google_fonts.dart';
import 'package:hub/backend/api_requests/api_calls.dart';
import 'package:hub/components/organism_components/schedule_visit_detail/schedule_visit_detail_model.dart'; import 'package:hub/components/organism_components/schedule_visit_detail/schedule_visit_detail_model.dart';
import 'package:hub/features/backend/index.dart';
import 'package:hub/flutter_flow/custom_functions.dart'; import 'package:hub/flutter_flow/custom_functions.dart';
import 'package:hub/flutter_flow/flutter_flow_icon_button.dart'; import 'package:hub/flutter_flow/flutter_flow_icon_button.dart';
import 'package:hub/flutter_flow/flutter_flow_theme.dart'; import 'package:hub/flutter_flow/flutter_flow_theme.dart';

View File

@ -1,8 +1,7 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:hub/components/organism_components/up_arrow_linked_locals_component/up_arrow_linked_locals_component_widget.dart'; import 'package:hub/components/organism_components/up_arrow_linked_locals_component/up_arrow_linked_locals_component_widget.dart';
import 'package:hub/features/storage/index.dart';
import 'package:hub/flutter_flow/flutter_flow_model.dart'; import 'package:hub/flutter_flow/flutter_flow_model.dart';
import 'package:hub/shared/helpers/storage/base_storage.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart';
class UpArrowLinkedLocalsComponentModel class UpArrowLinkedLocalsComponentModel
extends FlutterFlowModel<UpArrowLinkedLocalsComponentWidget> { extends FlutterFlowModel<UpArrowLinkedLocalsComponentWidget> {
@ -17,14 +16,13 @@ class UpArrowLinkedLocalsComponentModel
} }
Future<void> initDB() async { Future<void> initDB() async {
devUUID = devUUID = (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? '';
userUUID = userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
cliUUID = cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
cliName = cliName =
(await StorageHelper().get(KeychainStorageKey.clientName.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientName.key)) ?? '';
} }
@override @override

View File

@ -2,8 +2,8 @@ import 'package:cached_network_image/cached_network_image.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_spinkit/flutter_spinkit.dart'; import 'package:flutter_spinkit/flutter_spinkit.dart';
import 'package:google_fonts/google_fonts.dart'; import 'package:google_fonts/google_fonts.dart';
import 'package:hub/backend/api_requests/api_calls.dart';
import 'package:hub/components/organism_components/up_arrow_linked_locals_component/up_arrow_linked_locals_component_model.dart'; import 'package:hub/components/organism_components/up_arrow_linked_locals_component/up_arrow_linked_locals_component_model.dart';
import 'package:hub/features/backend/index.dart';
import 'package:hub/flutter_flow/flutter_flow_theme.dart'; import 'package:hub/flutter_flow/flutter_flow_theme.dart';
import 'package:hub/flutter_flow/flutter_flow_util.dart'; import 'package:hub/flutter_flow/flutter_flow_util.dart';
import 'package:hub/flutter_flow/nav/nav.dart'; import 'package:hub/flutter_flow/nav/nav.dart';

View File

@ -1,9 +1,8 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:hub/features/backend/index.dart';
import 'package:hub/features/storage/index.dart';
import 'package:hub/flutter_flow/nav/nav.dart'; import 'package:hub/flutter_flow/nav/nav.dart';
import 'package:hub/shared/helpers/storage/base_storage.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart';
import '/backend/api_requests/api_calls.dart';
import '/flutter_flow/flutter_flow_util.dart'; import '/flutter_flow/flutter_flow_util.dart';
import 'access_notification_modal_template_component_widget.dart' import 'access_notification_modal_template_component_widget.dart'
show AccessNotificationModalTemplateComponentWidget; show AccessNotificationModalTemplateComponentWidget;
@ -33,12 +32,11 @@ class AccessNotificationModalTemplateComponentModel
} }
Future<void> initDB() async { Future<void> initDB() async {
devUUID = devUUID = (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? '';
userUUID = userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
cliUUID = cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
} }
@override @override

View File

@ -2,9 +2,8 @@ import 'package:easy_debounce/easy_debounce.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/services.dart'; import 'package:flutter/services.dart';
import 'package:google_fonts/google_fonts.dart'; import 'package:google_fonts/google_fonts.dart';
import 'package:hub/features/storage/index.dart';
import 'package:hub/flutter_flow/nav/nav.dart'; import 'package:hub/flutter_flow/nav/nav.dart';
import 'package:hub/shared/helpers/storage/base_storage.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart';
import '/flutter_flow/flutter_flow_theme.dart'; import '/flutter_flow/flutter_flow_theme.dart';
import '/flutter_flow/flutter_flow_util.dart'; import '/flutter_flow/flutter_flow_util.dart';

View File

@ -1,6 +1,6 @@
import 'package:hub/features/backend/index.dart';
import 'package:hub/shared/utils/validator_util.dart'; import 'package:hub/shared/utils/validator_util.dart';
import '/backend/api_requests/api_calls.dart';
import '/flutter_flow/flutter_flow_util.dart'; import '/flutter_flow/flutter_flow_util.dart';
import 'forgot_password_template_component_widget.dart' import 'forgot_password_template_component_widget.dart'
show ForgotPasswordTemplateComponentWidget; show ForgotPasswordTemplateComponentWidget;

View File

@ -1,8 +1,8 @@
import 'package:easy_debounce/easy_debounce.dart'; import 'package:easy_debounce/easy_debounce.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:google_fonts/google_fonts.dart'; import 'package:google_fonts/google_fonts.dart';
import 'package:hub/features/auth/index.dart';
import 'package:hub/flutter_flow/nav/nav.dart'; import 'package:hub/flutter_flow/nav/nav.dart';
import 'package:hub/shared/services/authentication/authentication_service.dart';
import 'package:hub/shared/utils/limited_text_size.dart'; import 'package:hub/shared/utils/limited_text_size.dart';
import 'package:hub/shared/utils/validator_util.dart'; import 'package:hub/shared/utils/validator_util.dart';

View File

@ -1,8 +1,7 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:hub/components/templates_components/liberation_history_item_details_template_component/liberation_history_item_details_template_component_widget.dart'; import 'package:hub/components/templates_components/liberation_history_item_details_template_component/liberation_history_item_details_template_component_widget.dart';
import 'package:hub/features/storage/index.dart';
import 'package:hub/flutter_flow/flutter_flow_model.dart'; import 'package:hub/flutter_flow/flutter_flow_model.dart';
import 'package:hub/shared/helpers/storage/base_storage.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart';
class LiberationHistoryItemDetailsTemplateComponentModel class LiberationHistoryItemDetailsTemplateComponentModel
extends FlutterFlowModel< extends FlutterFlowModel<
@ -28,12 +27,11 @@ class LiberationHistoryItemDetailsTemplateComponentModel
void initState(BuildContext context) {} void initState(BuildContext context) {}
Future<void> initDatabase() async { Future<void> initDatabase() async {
devUUID = devUUID = (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? '';
userUUID = userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
cliUUID = cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
; ;
} }

View File

@ -1,11 +1,10 @@
import 'dart:developer'; import 'dart:developer';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:hub/backend/api_requests/api_manager.dart';
import 'package:hub/components/templates_components/provisional_schedule_template/provisional_shcedule_template_widget.dart'; import 'package:hub/components/templates_components/provisional_schedule_template/provisional_shcedule_template_widget.dart';
import 'package:hub/features/backend/index.dart';
import 'package:hub/features/storage/index.dart';
import 'package:hub/flutter_flow/flutter_flow_util.dart'; import 'package:hub/flutter_flow/flutter_flow_util.dart';
import 'package:hub/shared/helpers/storage/base_storage.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart';
class ScheduleProvisionalVisitPageModel class ScheduleProvisionalVisitPageModel
extends FlutterFlowModel<ScheduleProvisionalVisitPageWidget> { extends FlutterFlowModel<ScheduleProvisionalVisitPageWidget> {
@ -148,16 +147,15 @@ class ScheduleProvisionalVisitPageModel
} }
Future<void> init() async { Future<void> init() async {
devUUID = devUUID = (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? '';
userUUID = userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
cliUUID = cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
ownerName = ownerName =
(await StorageHelper().get(KeychainStorageKey.ownerName.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.ownerName.key)) ?? '';
ownerUUID = ownerUUID =
(await StorageHelper().get(KeychainStorageKey.ownerUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.ownerUUID.key)) ?? '';
setState?.call(); setState?.call();
} }
} }

View File

@ -4,11 +4,11 @@ import 'package:flutter/material.dart';
import 'package:flutter/services.dart'; import 'package:flutter/services.dart';
import 'package:google_fonts/google_fonts.dart'; import 'package:google_fonts/google_fonts.dart';
import 'package:hub/components/templates_components/provisional_schedule_template/provisional_schedule_template_model.dart'; import 'package:hub/components/templates_components/provisional_schedule_template/provisional_schedule_template_model.dart';
import 'package:hub/features/backend/index.dart';
import 'package:hub/shared/utils/dialog_util.dart'; import 'package:hub/shared/utils/dialog_util.dart';
import 'package:hub/shared/utils/limited_text_size.dart'; import 'package:hub/shared/utils/limited_text_size.dart';
import 'package:hub/shared/utils/log_util.dart'; import 'package:hub/shared/utils/log_util.dart';
import '/backend/api_requests/api_calls.dart';
import '/flutter_flow/flutter_flow_theme.dart'; import '/flutter_flow/flutter_flow_theme.dart';
import '/flutter_flow/flutter_flow_util.dart'; import '/flutter_flow/flutter_flow_util.dart';
import '/flutter_flow/flutter_flow_widgets.dart'; import '/flutter_flow/flutter_flow_widgets.dart';

View File

@ -1,11 +1,11 @@
import 'dart:async'; import 'dart:async';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:hub/shared/helpers/storage/base_storage.dart'; import 'package:hub/features/backend/index.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart'; import 'package:hub/features/storage/index.dart';
import 'package:hub/shared/utils/validator_util.dart'; import 'package:hub/shared/utils/validator_util.dart';
import '/backend/api_requests/api_calls.dart';
import '/flutter_flow/flutter_flow_util.dart'; import '/flutter_flow/flutter_flow_util.dart';
import '/flutter_flow/form_field_controller.dart'; import '/flutter_flow/form_field_controller.dart';
import 'regisiter_vistor_template_component_widget.dart'; import 'regisiter_vistor_template_component_widget.dart';
@ -135,12 +135,11 @@ class RegisiterVistorTemplateComponentModel
} }
Future<void> initializeDatabase() async { Future<void> initializeDatabase() async {
devUUID = devUUID = (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? '';
userUUID = userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
cliUUID = cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
; ;
} }

View File

@ -3,13 +3,13 @@ import 'package:flutter/material.dart';
import 'package:flutter/services.dart'; import 'package:flutter/services.dart';
import 'package:google_fonts/google_fonts.dart'; import 'package:google_fonts/google_fonts.dart';
import 'package:hub/components/atomic_components/shared_components_atoms/media_upload_button.dart'; import 'package:hub/components/atomic_components/shared_components_atoms/media_upload_button.dart';
import 'package:hub/features/backend/index.dart';
import 'package:hub/shared/utils/dialog_util.dart'; import 'package:hub/shared/utils/dialog_util.dart';
import 'package:hub/shared/utils/image_util.dart'; import 'package:hub/shared/utils/image_util.dart';
import 'package:hub/shared/utils/limited_text_size.dart'; import 'package:hub/shared/utils/limited_text_size.dart';
import 'package:hub/shared/utils/validator_util.dart'; import 'package:hub/shared/utils/validator_util.dart';
import 'package:rxdart/rxdart.dart'; import 'package:rxdart/rxdart.dart';
import '/backend/api_requests/api_calls.dart';
import '/flutter_flow/flutter_flow_drop_down.dart'; import '/flutter_flow/flutter_flow_drop_down.dart';
import '/flutter_flow/flutter_flow_theme.dart'; import '/flutter_flow/flutter_flow_theme.dart';
import '/flutter_flow/flutter_flow_util.dart'; import '/flutter_flow/flutter_flow_util.dart';

View File

@ -3,7 +3,8 @@ import 'package:flutter/material.dart';
import 'package:flutter_animate/flutter_animate.dart'; import 'package:flutter_animate/flutter_animate.dart';
import 'package:google_fonts/google_fonts.dart'; import 'package:google_fonts/google_fonts.dart';
import 'package:hub/components/atomic_components/shared_components_atoms/atom_image_svg_theme.dart'; import 'package:hub/components/atomic_components/shared_components_atoms/atom_image_svg_theme.dart';
import 'package:hub/shared/components/atoms/term_of_use/atom_terms_of_use.dart'; import 'package:hub/components/atomic_components/term_of_use/atom_terms_of_use.dart';
import 'package:hub/features/auth/index.dart';
import 'package:hub/shared/utils/dialog_util.dart'; import 'package:hub/shared/utils/dialog_util.dart';
import 'package:hub/shared/utils/limited_text_size.dart'; import 'package:hub/shared/utils/limited_text_size.dart';
import 'package:hub/shared/utils/log_util.dart'; import 'package:hub/shared/utils/log_util.dart';
@ -14,7 +15,6 @@ import '/flutter_flow/flutter_flow_animations.dart';
import '/flutter_flow/flutter_flow_theme.dart'; import '/flutter_flow/flutter_flow_theme.dart';
import '/flutter_flow/flutter_flow_util.dart'; import '/flutter_flow/flutter_flow_util.dart';
import '/flutter_flow/flutter_flow_widgets.dart'; import '/flutter_flow/flutter_flow_widgets.dart';
import '../../../shared/services/authentication/authentication_service.dart';
import 'sign_in_template_component_model.dart'; import 'sign_in_template_component_model.dart';
export 'sign_in_template_component_model.dart'; export 'sign_in_template_component_model.dart';

View File

@ -3,9 +3,10 @@ import 'package:flutter/material.dart';
import 'package:flutter_animate/flutter_animate.dart'; import 'package:flutter_animate/flutter_animate.dart';
import 'package:google_fonts/google_fonts.dart'; import 'package:google_fonts/google_fonts.dart';
import 'package:hub/components/atomic_components/shared_components_atoms/atom_image_svg_theme.dart'; import 'package:hub/components/atomic_components/shared_components_atoms/atom_image_svg_theme.dart';
import 'package:hub/shared/components/atoms/term_of_use/atom_terms_of_use.dart'; import 'package:hub/components/atomic_components/term_of_use/atom_terms_of_use.dart';
import 'package:hub/shared/helpers/storage/base_storage.dart'; import 'package:hub/features/auth/index.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart'; import 'package:hub/features/storage/index.dart';
import 'package:hub/shared/utils/limited_text_size.dart'; import 'package:hub/shared/utils/limited_text_size.dart';
import 'package:hub/shared/utils/validator_util.dart'; import 'package:hub/shared/utils/validator_util.dart';
@ -13,7 +14,6 @@ import '/flutter_flow/flutter_flow_animations.dart';
import '/flutter_flow/flutter_flow_theme.dart'; import '/flutter_flow/flutter_flow_theme.dart';
import '/flutter_flow/flutter_flow_util.dart'; import '/flutter_flow/flutter_flow_util.dart';
import '/flutter_flow/flutter_flow_widgets.dart'; import '/flutter_flow/flutter_flow_widgets.dart';
import '../../../shared/services/authentication/authentication_service.dart';
import 'sign_up_template_component_model.dart'; import 'sign_up_template_component_model.dart';
export 'sign_up_template_component_model.dart'; export 'sign_up_template_component_model.dart';

View File

@ -1,8 +1,7 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:hub/shared/helpers/storage/base_storage.dart'; import 'package:hub/features/backend/index.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart'; import 'package:hub/features/storage/index.dart';
import '/backend/api_requests/api_calls.dart';
import '/flutter_flow/flutter_flow_util.dart'; import '/flutter_flow/flutter_flow_util.dart';
import 'view_visit_detail_widget.dart' show ViewVisitDetailWidget; import 'view_visit_detail_widget.dart' show ViewVisitDetailWidget;
@ -37,12 +36,11 @@ class ViewVisitDetailModel extends FlutterFlowModel<ViewVisitDetailWidget> {
} }
Future<void> initializeDatabase() async { Future<void> initializeDatabase() async {
devUUID = devUUID = (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? '';
userUUID = userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
cliUUID = cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
; ;
} }

View File

@ -1,11 +1,11 @@
import 'package:cached_network_image/cached_network_image.dart'; import 'package:cached_network_image/cached_network_image.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:google_fonts/google_fonts.dart'; import 'package:google_fonts/google_fonts.dart';
import 'package:hub/features/backend/index.dart';
import 'package:hub/flutter_flow/nav/nav.dart'; import 'package:hub/flutter_flow/nav/nav.dart';
import 'package:hub/shared/utils/dialog_util.dart'; import 'package:hub/shared/utils/dialog_util.dart';
import 'package:share_plus/share_plus.dart'; import 'package:share_plus/share_plus.dart';
import '/backend/api_requests/api_calls.dart';
import '/flutter_flow/flutter_flow_icon_button.dart'; import '/flutter_flow/flutter_flow_icon_button.dart';
import '/flutter_flow/flutter_flow_theme.dart'; import '/flutter_flow/flutter_flow_theme.dart';
import '/flutter_flow/flutter_flow_util.dart'; import '/flutter_flow/flutter_flow_util.dart';

View File

@ -1,9 +1,8 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:hub/backend/api_requests/api_manager.dart';
import 'package:hub/components/templates_components/visitor_search_modal_template_component/visitor_search_modal_template_component_widget.dart'; import 'package:hub/components/templates_components/visitor_search_modal_template_component/visitor_search_modal_template_component_widget.dart';
import 'package:hub/features/backend/index.dart';
import 'package:hub/features/storage/index.dart';
import 'package:hub/flutter_flow/flutter_flow_model.dart'; import 'package:hub/flutter_flow/flutter_flow_model.dart';
import 'package:hub/shared/helpers/storage/base_storage.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart';
class VisitorSearchModalTemplateComponentModel class VisitorSearchModalTemplateComponentModel
extends FlutterFlowModel<VisitorSearchModalTemplateComponentWidget> { extends FlutterFlowModel<VisitorSearchModalTemplateComponentWidget> {
@ -39,12 +38,11 @@ class VisitorSearchModalTemplateComponentModel
} }
Future<void> initDatabase() async { Future<void> initDatabase() async {
devUUID = devUUID = (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? '';
userUUID = userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
cliUUID = cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
; ;
} }

View File

@ -1,14 +1,12 @@
import 'dart:developer';
import 'package:cached_network_image/cached_network_image.dart'; import 'package:cached_network_image/cached_network_image.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/services.dart'; import 'package:flutter/services.dart';
import 'package:fluttertoast/fluttertoast.dart'; import 'package:fluttertoast/fluttertoast.dart';
import 'package:google_fonts/google_fonts.dart'; import 'package:google_fonts/google_fonts.dart';
import 'package:hub/backend/api_requests/api_calls.dart';
import 'package:hub/components/atomic_components/shared_components_atoms/toast.dart'; import 'package:hub/components/atomic_components/shared_components_atoms/toast.dart';
import 'package:hub/components/molecular_components/visitor_not_found_component/visitor_not_found_component_widget.dart'; import 'package:hub/components/molecular_components/visitor_not_found_component/visitor_not_found_component_widget.dart';
import 'package:hub/components/templates_components/visitor_search_modal_template_component/visitor_search_modal_template_component_model.dart'; import 'package:hub/components/templates_components/visitor_search_modal_template_component/visitor_search_modal_template_component_model.dart';
import 'package:hub/features/backend/index.dart';
import 'package:hub/flutter_flow/flutter_flow_icon_button.dart'; import 'package:hub/flutter_flow/flutter_flow_icon_button.dart';
import 'package:hub/flutter_flow/flutter_flow_theme.dart'; import 'package:hub/flutter_flow/flutter_flow_theme.dart';
import 'package:hub/flutter_flow/flutter_flow_util.dart'; import 'package:hub/flutter_flow/flutter_flow_util.dart';

1
lib/core/meta/index.dart Normal file
View File

@ -0,0 +1 @@
export 'anotations.dart';

View File

@ -0,0 +1 @@
export 'services/index.dart';

View File

@ -1,3 +1,4 @@
export 'data/index.dart'; export 'data/index.dart';
export 'domain/index.dart'; export 'domain/index.dart';
export 'presentation/index.dart'; export 'presentation/index.dart';
export 'application/index.dart';

View File

@ -1,25 +1,15 @@
import 'dart:developer';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:hub/features/backend/index.dart';
import 'package:hub/features/home/presentation/pages/home_page.dart'; import 'package:hub/features/local/index.dart';
import 'package:hub/features/storage/index.dart';
import 'package:hub/flutter_flow/nav/nav.dart'; import 'package:hub/flutter_flow/nav/nav.dart';
import 'package:hub/shared/components/molecules/modules/data/repositories/license_repository_impl.dart'; import 'package:hub/shared/utils/device_util.dart';
import 'package:hub/shared/helpers/database/database_helper.dart'; import 'package:hub/shared/utils/dialog_util.dart';
import 'package:hub/shared/helpers/storage/base_storage.dart'; import 'package:hub/shared/utils/log_util.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart';
import 'package:hub/shared/utils/snackbar_util.dart'; import 'package:hub/shared/utils/snackbar_util.dart';
import '../../../backend/api_requests/api_calls.dart';
import '../../../flutter_flow/flutter_flow_util.dart'; import '../../../flutter_flow/flutter_flow_util.dart';
import '../../../flutter_flow/random_data_util.dart'; import '../../../flutter_flow/random_data_util.dart';
import '../../components/molecules/locals/data/index.dart';
import '../../components/molecules/locals/index.dart';
import '../../components/molecules/menu/index.dart';
import '../../utils/device_util.dart';
import '../../utils/dialog_util.dart';
import '../../utils/log_util.dart';
class AuthenticationService { class AuthenticationService {
static Future<void> login(BuildContext context) async { static Future<void> login(BuildContext context) async {
@ -76,7 +66,7 @@ class AuthenticationService {
if ((email != '') && (passwd != '')) { if ((email != '') && (passwd != '')) {
await StorageHelper().set(SecureStorageKey.email.value, email); await StorageHelper().set(SecureStorageKey.email.value, email);
await StorageHelper().set(SecureStorageKey.password.value, passwd); await StorageHelper().set(SecureStorageKey.password.value, passwd);
await StorageHelper().set(KeychainStorageKey.devUUID.value, devUUID!); await StorageHelper().set(ProfileStorageKey.devUUID.key, devUUID!);
response = await callback.call(); response = await callback.call();
if (response.jsonBody['error'] == false) { if (response.jsonBody['error'] == false) {
@ -85,13 +75,11 @@ class AuthenticationService {
userDevUUID = response.jsonBody['user']['dev_id']; userDevUUID = response.jsonBody['user']['dev_id'];
userName = response.jsonBody['user']['name']; userName = response.jsonBody['user']['name'];
await StorageHelper().set(ProfileStorageKey.userUUID.key, userUUID);
await StorageHelper() await StorageHelper()
.set(KeychainStorageKey.userUUID.value, userUUID); .set(ProfileStorageKey.userDevUUID.key, userDevUUID);
await StorageHelper() await StorageHelper().set(ProfileStorageKey.status.key, status);
.set(KeychainStorageKey.userDevUUID.value, userDevUUID); await StorageHelper().set(ProfileStorageKey.userName.key, userName);
await StorageHelper().set(KeychainStorageKey.status.value, status);
await StorageHelper()
.set(KeychainStorageKey.userName.value, userName);
await login(context); await login(context);
} else { } else {
@ -160,9 +148,8 @@ class AuthenticationService {
await StorageHelper().clean(Storage.databaseStorage); await StorageHelper().clean(Storage.databaseStorage);
await StorageHelper().clean(Storage.secureStorage); await StorageHelper().clean(Storage.secureStorage);
await LicenseRepositoryImpl().cleanLicense(); DatabaseService.isInitialized = false;
DatabaseStorage.isInitialized = false; await DatabaseService.instance.init();
await StorageHelper().init();
context.go('/welcomePage', extra: extra); context.go('/welcomePage', extra: extra);
} }

View File

@ -0,0 +1 @@
export 'authentication_service.dart';

View File

@ -3,9 +3,9 @@ import 'dart:convert';
import 'dart:developer'; import 'dart:developer';
import 'package:flutter/foundation.dart'; import 'package:flutter/foundation.dart';
import 'package:hub/backend/notifications/firebase_messaging_service.dart'; import 'package:hub/features/notification/index.dart';
import 'package:hub/shared/helpers/storage/base_storage.dart'; import 'package:hub/features/storage/index.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart';
import 'package:hub/shared/utils/log_util.dart'; import 'package:hub/shared/utils/log_util.dart';
import 'package:hub/shared/utils/validator_util.dart'; import 'package:hub/shared/utils/validator_util.dart';
@ -70,11 +70,11 @@ class GetProvSchedules {
Future<ApiCallResponse> call(final String page, final String status) async { Future<ApiCallResponse> call(final String page, final String status) async {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliID = final String cliID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'getAgendamentoProv'; const String atividade = 'getAgendamentoProv';
const String pageSize = '10'; const String pageSize = '10';
final bool isFiltered = status != '' && status != '.*'; final bool isFiltered = status != '' && status != '.*';
@ -108,11 +108,11 @@ class GetOpenedVisits {
Future<ApiCallResponse> call(final String page) async { Future<ApiCallResponse> call(final String page) async {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliID = final String cliID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'getOpenedVisits'; const String atividade = 'getOpenedVisits';
const String pageSize = '10'; const String pageSize = '10';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -143,11 +143,11 @@ class GetResidentsByProperty {
Future<ApiCallResponse> call(final String page) async { Future<ApiCallResponse> call(final String page) async {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
await StorageHelper().get(KeychainStorageKey.devUUID.value) ?? ''; await StorageHelper().get(ProfileStorageKey.devUUID.key) ?? '';
final String userUUID = final String userUUID =
await StorageHelper().get(KeychainStorageKey.userUUID.value) ?? ''; await StorageHelper().get(ProfileStorageKey.userUUID.key) ?? '';
final String cliID = final String cliID =
await StorageHelper().get(KeychainStorageKey.clientUUID.value) ?? ''; await StorageHelper().get(ProfileStorageKey.clientUUID.key) ?? '';
const String atividade = 'getResidentsByProperty'; const String atividade = 'getResidentsByProperty';
const String pageSize = '10'; const String pageSize = '10';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -177,11 +177,11 @@ class GetVehiclesByProperty {
Future<ApiCallResponse> call(final String page) async { Future<ApiCallResponse> call(final String page) async {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliID = final String cliID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'getVehiclesByProperty'; const String atividade = 'getVehiclesByProperty';
const String pageSize = '10'; const String pageSize = '10';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -213,11 +213,11 @@ class GetLicense {
Future<ApiCallResponse> call() async { Future<ApiCallResponse> call() async {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliID = final String cliID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
callName: 'getLicense', callName: 'getLicense',
@ -247,9 +247,9 @@ class UnregisterDevice {
Future<ApiCallResponse> call() async { Future<ApiCallResponse> call() async {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
callName: 'unregisterDevice', callName: 'unregisterDevice',
@ -277,11 +277,11 @@ class DeletePet {
Future<ApiCallResponse> call({final int? petID = 0}) async { Future<ApiCallResponse> call({final int? petID = 0}) async {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliID = final String cliID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'excluirPet'; const String atividade = 'excluirPet';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -325,11 +325,11 @@ class UpdatePet {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliID = final String cliID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'atualizarPet'; const String atividade = 'atualizarPet';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -376,11 +376,11 @@ class GetPets {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliID = final String cliID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'consultaPets'; const String atividade = 'consultaPets';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -413,11 +413,11 @@ class GetPetPhoto {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliID = final String cliID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'consultaFotoPet'; const String atividade = 'consultaFotoPet';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -459,11 +459,11 @@ class RegisterPet {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliID = final String cliID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'cadastrarPet'; const String atividade = 'cadastrarPet';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -509,11 +509,11 @@ class BuscaEnconcomendas {
final String? status, final String? status,
}) async { }) async {
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliID = final String cliID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'getEncomendas'; const String atividade = 'getEncomendas';
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
@ -556,11 +556,11 @@ class CancelaVisita {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliID = final String cliID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'cancelaVisita'; const String atividade = 'cancelaVisita';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -593,9 +593,9 @@ class CancelaVisita {
class DeleteAccount { class DeleteAccount {
Future<ApiCallResponse> call() async { Future<ApiCallResponse> call() async {
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -627,11 +627,11 @@ class ChangePanic {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliID = final String cliID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'updVisitado'; const String atividade = 'updVisitado';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -666,11 +666,11 @@ class ChangePass {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliID = final String cliID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'updVisitado'; const String atividade = 'updVisitado';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -705,11 +705,11 @@ class RespondeVinculo {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliID = final String cliID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
callName: 'respondeVinculo', callName: 'respondeVinculo',
@ -742,11 +742,11 @@ class ChangeNotifica {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliID = final String cliID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'updVisitado'; const String atividade = 'updVisitado';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -779,13 +779,13 @@ class UpdateIDE {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliUUID = final String cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
final String newIde = final String newIde =
(await StorageHelper().get(KeychainStorageKey.userDevUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userDevUUID.key)) ?? '';
const String atividade = 'updVisitado'; const String atividade = 'updVisitado';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -818,9 +818,9 @@ class UpdToken {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String token = final String token =
(await StorageHelper().get(SecureStorageKey.token.value)) ?? ''; (await StorageHelper().get(SecureStorageKey.token.value)) ?? '';
@ -850,7 +850,7 @@ class LoginCall {
Future<ApiCallResponse> call() async { Future<ApiCallResponse> call() async {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String email = final String email =
(await StorageHelper().get(SecureStorageKey.email.value)) ?? ''; (await StorageHelper().get(SecureStorageKey.email.value)) ?? '';
final String password = final String password =
@ -943,11 +943,11 @@ class ChangePasswordCall {
}) async { }) async {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliID = final String cliID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
callName: 'changePassword', callName: 'changePassword',
@ -1007,9 +1007,9 @@ class GetLocalsCall {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
await StorageHelper().get(KeychainStorageKey.devUUID.value) ?? ''; await StorageHelper().get(ProfileStorageKey.devUUID.key) ?? '';
final String userUUID = final String userUUID =
await StorageHelper().get(KeychainStorageKey.userUUID.value) ?? ''; await StorageHelper().get(ProfileStorageKey.userUUID.key) ?? '';
return await ApiManager.instance return await ApiManager.instance
.makeApiCall( .makeApiCall(
@ -1051,11 +1051,11 @@ class PostScheduleVisitorCall {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliID = final String cliID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'putVisitante'; const String atividade = 'putVisitante';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -1109,11 +1109,11 @@ class PostScheduleVisitCall {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliID = final String cliID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'putVisita'; const String atividade = 'putVisita';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -1166,11 +1166,11 @@ class GetScheduleVisitCall {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliUUID = final String cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'getVisitas'; const String atividade = 'getVisitas';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -1443,11 +1443,11 @@ class GetDadosCall {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliUUID = final String cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'getDados'; const String atividade = 'getDados';
return await ApiManager.instance return await ApiManager.instance
@ -1691,11 +1691,11 @@ class GetVisitorByDocCall {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliID = final String cliID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'getVisitante'; const String atividade = 'getVisitante';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -1748,11 +1748,11 @@ class GetFotoVisitanteCall {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliID = final String cliID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'getFotoVisitante'; const String atividade = 'getFotoVisitante';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -1790,11 +1790,11 @@ class PostProvVisitSchedulingCall {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliID = final String cliID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'putAgendamentoProv'; const String atividade = 'putAgendamentoProv';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -1842,11 +1842,11 @@ class GetVisitsCall {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliID = final String cliID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'getVisitas'; const String atividade = 'getVisitas';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -2108,11 +2108,11 @@ class DeleteVisitCall {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliID = final String cliID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'cancelaVisita'; const String atividade = 'cancelaVisita';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -2154,13 +2154,13 @@ class GetPessoasLocalCall {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String ownerUUID = final String ownerUUID =
(await StorageHelper().get(KeychainStorageKey.ownerUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.ownerUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliUUID = final String cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
callName: 'getPessoasLocal', callName: 'getPessoasLocal',
@ -2224,11 +2224,11 @@ class RespondeSolicitacaoCall {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliUUID = final String cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'respondeSolicitacao'; const String atividade = 'respondeSolicitacao';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -2277,11 +2277,11 @@ class GetAccessCall {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliUUID = final String cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'getAcessos'; const String atividade = 'getAcessos';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(
@ -2529,12 +2529,11 @@ class GetLiberationsCall {
Future.microtask(() async { Future.microtask(() async {
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliUUID = final String cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
'';
const String atividade = 'getSolicitacoes'; const String atividade = 'getSolicitacoes';
try { try {
@ -2725,11 +2724,11 @@ class GetMessagesCall {
final String baseUrl = PhpGroup.getBaseUrl(); final String baseUrl = PhpGroup.getBaseUrl();
final String devUUID = final String devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final String userUUID = final String userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final String cliUUID = final String cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
const String atividade = 'getMensagens'; const String atividade = 'getMensagens';
return await ApiManager.instance.makeApiCall( return await ApiManager.instance.makeApiCall(

View File

@ -0,0 +1,3 @@
export 'api_calls.dart';
export 'api_manager.dart';
export 'get_streamed_response.dart';

View File

@ -0,0 +1,2 @@
export 'api_requests/index.dart';
export 'schema/index.dart';

View File

@ -0,0 +1 @@
export 'enums.dart';

View File

@ -0,0 +1,3 @@
export 'enums/index.dart';
export 'structs/index.dart';
export 'util/index.dart';

View File

@ -1,5 +1,6 @@
// ignore_for_file: unnecessary_getters_setters // ignore_for_file: unnecessary_getters_setters
import 'package:hub/features/backend/index.dart';
import 'package:hub/flutter_flow/nav/nav.dart'; import 'package:hub/flutter_flow/nav/nav.dart';
import 'index.dart'; import 'index.dart';

View File

@ -0,0 +1 @@
export 'device_struct.dart';

View File

@ -0,0 +1 @@
export 'schema_util.dart';

View File

@ -1,8 +1,6 @@
import 'dart:convert'; import 'dart:convert';
import 'package:flutter/material.dart'; import 'package:hub/features/backend/index.dart';
import 'package:from_css_color/from_css_color.dart';
import 'package:hub/backend/schema/enums/enums.dart';
import 'package:hub/flutter_flow/flutter_flow_util.dart'; import 'package:hub/flutter_flow/flutter_flow_util.dart';
import 'package:hub/flutter_flow/nav/serialization_util.dart'; import 'package:hub/flutter_flow/nav/serialization_util.dart';

View File

@ -1,10 +1,9 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:hub/backend/api_requests/api_manager.dart'; import 'package:hub/features/backend/index.dart';
import 'package:hub/features/history/index.dart'; import 'package:hub/features/history/index.dart';
import 'package:hub/features/storage/index.dart';
import 'package:hub/flutter_flow/flutter_flow_model.dart'; import 'package:hub/flutter_flow/flutter_flow_model.dart';
import 'package:hub/flutter_flow/request_manager.dart'; import 'package:hub/flutter_flow/request_manager.dart';
import 'package:hub/shared/helpers/storage/base_storage.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart';
class AcessHistoryPageModel extends FlutterFlowModel<AccessHistoryScreen> { class AcessHistoryPageModel extends FlutterFlowModel<AccessHistoryScreen> {
late final String devUUID; late final String devUUID;
@ -33,12 +32,11 @@ class AcessHistoryPageModel extends FlutterFlowModel<AccessHistoryScreen> {
} }
Future<void> initDatabase() async { Future<void> initDatabase() async {
devUUID = devUUID = (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? '';
userUUID = userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
cliUUID = cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
} }
@override @override

View File

@ -1,6 +1,5 @@
import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:hub/shared/helpers/storage/base_storage.dart'; import 'package:hub/features/storage/index.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart';
class ProvisionalHistoryEvent {} class ProvisionalHistoryEvent {}
@ -48,11 +47,11 @@ class ProvisionalHistoryBloc
) async { ) async {
emit(state.copyWith(isLoading: true)); emit(state.copyWith(isLoading: true));
final devUUID = final devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final userUUID = final userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final cliUUID = final cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
emit(state.copyWith( emit(state.copyWith(
devUUID: devUUID, devUUID: devUUID,
userUUID: userUUID, userUUID: userUUID,

View File

@ -3,8 +3,8 @@ import 'dart:async';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_spinkit/flutter_spinkit.dart'; import 'package:flutter_spinkit/flutter_spinkit.dart';
import 'package:google_fonts/google_fonts.dart'; import 'package:google_fonts/google_fonts.dart';
import 'package:hub/backend/api_requests/api_calls.dart';
import 'package:hub/components/templates_components/card_item_template_component/card_item_template_component_widget.dart'; import 'package:hub/components/templates_components/card_item_template_component/card_item_template_component_widget.dart';
import 'package:hub/features/backend/index.dart';
import 'package:hub/features/history/index.dart'; import 'package:hub/features/history/index.dart';
import 'package:hub/flutter_flow/flutter_flow_icon_button.dart'; import 'package:hub/flutter_flow/flutter_flow_icon_button.dart';
import 'package:hub/flutter_flow/flutter_flow_theme.dart'; import 'package:hub/flutter_flow/flutter_flow_theme.dart';
@ -114,6 +114,7 @@ class _AccessHistoryState extends State<AccessHistoryScreen> {
fontFamily: theme.headlineMediumFamily, fontFamily: theme.headlineMediumFamily,
color: theme.primaryText, color: theme.primaryText,
fontSize: 16.0, fontSize: 16.0,
fontWeight: FontWeight.bold,
letterSpacing: 0.0, letterSpacing: 0.0,
useGoogleFonts: useGoogleFonts:
GoogleFonts.asMap().containsKey(theme.headlineMediumFamily), GoogleFonts.asMap().containsKey(theme.headlineMediumFamily),

View File

@ -1,27 +1,28 @@
import 'dart:async'; import 'dart:async';
import 'dart:developer';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_spinkit/flutter_spinkit.dart'; import 'package:flutter_spinkit/flutter_spinkit.dart';
import 'package:google_fonts/google_fonts.dart'; import 'package:google_fonts/google_fonts.dart';
import 'package:hub/backend/api_requests/api_calls.dart';
import 'package:hub/components/templates_components/card_item_template_component/card_item_template_component_widget.dart'; import 'package:hub/components/templates_components/card_item_template_component/card_item_template_component_widget.dart';
import 'package:hub/features/backend/index.dart';
import 'package:hub/features/history/index.dart'; import 'package:hub/features/history/index.dart';
import 'package:hub/flutter_flow/flutter_flow_icon_button.dart'; import 'package:hub/flutter_flow/flutter_flow_icon_button.dart';
import 'package:hub/flutter_flow/flutter_flow_theme.dart'; import 'package:hub/flutter_flow/flutter_flow_theme.dart';
import 'package:hub/flutter_flow/flutter_flow_util.dart'; import 'package:hub/flutter_flow/flutter_flow_util.dart';
import 'package:hub/shared/utils/dialog_util.dart'; import 'package:hub/shared/utils/dialog_util.dart';
import 'package:hub/shared/utils/limited_text_size.dart';
import 'package:hub/shared/utils/log_util.dart'; import 'package:hub/shared/utils/log_util.dart';
import 'package:hub/shared/utils/snackbar_util.dart'; import 'package:hub/shared/utils/snackbar_util.dart';
import 'package:rxdart/rxdart.dart'; import 'package:rxdart/rxdart.dart';
@immutable @immutable
// ignore: must_be_immutable // ignore: must_be_immutable
class ProvisionalHistoryPage extends StatefulWidget { class ProvisionalHistoryPage extends StatefulWidget {
Map<String, String> opt; Map<String, String> opt;
ProvisionalHistoryPage({super.key, Map<String, String>? opt}) ProvisionalHistoryPage({super.key, Map<String, String>? opt})
: opt = opt ?? const {'AGP_STATUS': '.*'}; : opt = opt ?? const {'AGP_STATUS': '.*'};
@override @override
State<ProvisionalHistoryPage> createState() => ProvisionalHistoryState(opt); State<ProvisionalHistoryPage> createState() => ProvisionalHistoryState(opt);
} }
@ -107,17 +108,18 @@ class ProvisionalHistoryState extends State<ProvisionalHistoryPage> {
Widget _title(BuildContext context, FlutterFlowTheme theme) { Widget _title(BuildContext context, FlutterFlowTheme theme) {
return Text( return Text(
FFLocalizations.of(context).getVariableText( FFLocalizations.of(context).getVariableText(
ptText: 'Histórico Provisório', ptText: 'Consultar Agendas',
enText: 'Provisional History', enText: 'Provisional History',
), ),
style: theme.headlineMedium.override( style: FlutterFlowTheme.of(context).headlineMedium.override(
fontFamily: theme.headlineMediumFamily, fontFamily: FlutterFlowTheme.of(context).headlineMediumFamily,
color: theme.primaryText, color: FlutterFlowTheme.of(context).primaryText,
fontSize: 16.0, fontSize: 16.0,
letterSpacing: 0.0, fontWeight: FontWeight.bold,
useGoogleFonts: letterSpacing: 0.0,
GoogleFonts.asMap().containsKey(theme.headlineMediumFamily), useGoogleFonts: GoogleFonts.asMap()
), .containsKey(FlutterFlowTheme.of(context).headlineMediumFamily),
),
); );
} }
@ -157,8 +159,8 @@ class ProvisionalHistoryState extends State<ProvisionalHistoryPage> {
{ {
'title': FFLocalizations.of(context) 'title': FFLocalizations.of(context)
.getVariableText( .getVariableText(
ptText: 'Convidado', ptText: 'Concluído',
enText: 'Guest', enText: 'Completed',
), ),
'value': 'CO', 'value': 'CO',
}, },

View File

@ -1,10 +1,9 @@
import 'dart:async'; import 'dart:async';
import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:hub/shared/helpers/storage/base_storage.dart'; import 'package:hub/features/local/index.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart'; import 'package:hub/features/storage/index.dart';
import '../../../../shared/components/molecules/locals/index.dart';
import 'index.dart'; import 'index.dart';
class HomeBloc extends Bloc<HomeEvent, HomeState> { class HomeBloc extends Bloc<HomeEvent, HomeState> {
@ -19,13 +18,13 @@ class HomeBloc extends Bloc<HomeEvent, HomeState> {
Future<void> _onHomeEvent(HomeEvent event, Emitter<HomeState> emit) async { Future<void> _onHomeEvent(HomeEvent event, Emitter<HomeState> emit) async {
final devUUID = final devUUID =
(await StorageHelper().get(KeychainStorageKey.devUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.devUUID.key)) ?? '';
final userUUID = final userUUID =
(await StorageHelper().get(KeychainStorageKey.userUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userUUID.key)) ?? '';
final cliUUID = final cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
final userName = final userName =
(await StorageHelper().get(KeychainStorageKey.userName.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.userName.key)) ?? '';
final userEmail = final userEmail =
(await StorageHelper().get(SecureStorageKey.email.value)) ?? ''; (await StorageHelper().get(SecureStorageKey.email.value)) ?? '';

View File

@ -7,6 +7,7 @@ import 'package:hub/flutter_flow/flutter_flow_icon_button.dart';
import 'package:hub/flutter_flow/flutter_flow_theme.dart'; import 'package:hub/flutter_flow/flutter_flow_theme.dart';
import 'package:hub/flutter_flow/flutter_flow_util.dart'; import 'package:hub/flutter_flow/flutter_flow_util.dart';
import 'package:hub/flutter_flow/internationalization.dart'; import 'package:hub/flutter_flow/internationalization.dart';
import 'package:package_info_plus/package_info_plus.dart'; import 'package:package_info_plus/package_info_plus.dart';
import 'package:url_launcher/url_launcher.dart'; import 'package:url_launcher/url_launcher.dart';
@ -87,14 +88,15 @@ class _AboutSystemPageState extends State<AboutSystemPage> {
ptText: 'Sobre o Sistema', ptText: 'Sobre o Sistema',
enText: 'About the System', enText: 'About the System',
), ),
style: theme.headlineMedium.override( style: FlutterFlowTheme.of(context).headlineMedium.override(
fontFamily: theme.headlineMediumFamily, fontFamily: FlutterFlowTheme.of(context).headlineMediumFamily,
color: theme.primaryText, color: FlutterFlowTheme.of(context).primaryText,
fontSize: 16.0, fontSize: 16.0,
letterSpacing: 0.0, fontWeight: FontWeight.bold,
useGoogleFonts: letterSpacing: 0.0,
GoogleFonts.asMap().containsKey(theme.headlineMediumFamily), useGoogleFonts: GoogleFonts.asMap()
), .containsKey(FlutterFlowTheme.of(context).headlineMediumFamily),
),
); );
} }
@ -124,8 +126,8 @@ class _AboutSystemPageState extends State<AboutSystemPage> {
Widget _buildLogo() { Widget _buildLogo() {
return SizedBox( return SizedBox(
height: 50, height: 100,
width: 50, width: 100,
child: Image.asset('assets/images/fre.png'), child: Image.asset('assets/images/fre.png'),
); );
} }

View File

@ -2,12 +2,12 @@ import 'package:flutter/gestures.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:google_fonts/google_fonts.dart'; import 'package:google_fonts/google_fonts.dart';
import 'package:hub/features/home/presentation/widgets/drawer_widget.dart'; import 'package:hub/features/home/presentation/widgets/drawer_widget.dart';
import 'package:hub/features/menu/index.dart';
import 'package:hub/flutter_flow/flutter_flow_icon_button.dart'; import 'package:hub/flutter_flow/flutter_flow_icon_button.dart';
import 'package:hub/flutter_flow/flutter_flow_theme.dart'; import 'package:hub/flutter_flow/flutter_flow_theme.dart';
import 'package:hub/flutter_flow/flutter_flow_util.dart'; import 'package:hub/flutter_flow/flutter_flow_util.dart';
import 'package:hub/shared/components/molecules/locals/index.dart'; import 'package:hub/features/local/index.dart';
import 'package:hub/shared/components/molecules/menu/index.dart';
class HomePageWidget extends StatefulWidget { class HomePageWidget extends StatefulWidget {
const HomePageWidget(this.update, {super.key}); const HomePageWidget(this.update, {super.key});

View File

@ -2,12 +2,12 @@ import 'package:cached_network_image/cached_network_image.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:hub/features/home/index.dart'; import 'package:hub/features/home/index.dart';
import 'package:hub/features/menu/index.dart';
import 'package:hub/features/module/data/index.dart';
import 'package:hub/flutter_flow/flutter_flow_theme.dart'; import 'package:hub/flutter_flow/flutter_flow_theme.dart';
import 'package:hub/flutter_flow/flutter_flow_util.dart'; import 'package:hub/flutter_flow/flutter_flow_util.dart';
import 'package:hub/shared/components/molecules/locals/index.dart'; import 'package:hub/features/local/index.dart';
import 'package:hub/shared/components/molecules/menu/index.dart';
import 'package:hub/shared/components/molecules/modules/index.dart';
class DrawerWidget extends StatelessWidget { class DrawerWidget extends StatelessWidget {
const DrawerWidget({super.key}); const DrawerWidget({super.key});

View File

@ -0,0 +1,78 @@
import 'dart:developer';
import 'package:hub/features/storage/constants/locals_constants.dart';
import 'package:hub/features/storage/index.dart';
import 'package:sqflite/sqflite.dart';
abstract class LocalsLocalDataSource implements BaseStorage {}
class LocalsLocalDataSourceImpl implements LocalsLocalDataSource {
static final LocalsLocalDataSourceImpl _instance =
LocalsLocalDataSourceImpl._internal();
factory LocalsLocalDataSourceImpl() => _instance;
LocalsLocalDataSourceImpl._internal();
bool _isInitialized = false;
@override
Future<void> init() async {
if (_isInitialized) return;
await DatabaseService.instance.init();
_isInitialized = true;
}
@override
Future<String?> get(String key) async {
final String? local =
await StorageHelper().get(ProfileStorageKey.clientUUID.key);
var response = await DatabaseService.database.query(
LocalsConstants.tableLocalsKeychain,
where: 'key = ? AND local = ?',
whereArgs: [key, local]);
if (response.isEmpty) {
return null;
}
return response.first['value'].toString();
}
@override
Future<void> set<T>(String key, T value) async {
try {
var date = DateTime.now().toIso8601String();
final String? local =
await StorageHelper().get(ProfileStorageKey.clientUUID.key);
await DatabaseService.database.insert(
LocalsConstants.tableLocalsKeychain,
{
'key': key,
'value': value.toString(),
'type': 'local',
'updateAt': date,
'resolvedAt': date,
'createdAt': date,
'local': local
},
conflictAlgorithm: ConflictAlgorithm.replace,
);
} catch (e, s) {}
}
@override
Future<void> delete(String key) async {
final String? local =
await StorageHelper().get(ProfileStorageKey.clientUUID.key);
await DatabaseService.database.delete(LocalsConstants.tableLocalsKeychain,
where: 'key = ? AND local = ?', whereArgs: [key, local]);
}
@override
Future<void> clearAll() async {
try {
await DatabaseService.database
.delete(LocalsConstants.tableLocalsKeychain);
} catch (e, s) {
log('() => clearAll keychain: $e', stackTrace: s);
}
}
}

View File

@ -3,25 +3,22 @@
import 'dart:developer'; import 'dart:developer';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:hub/backend/api_requests/api_calls.dart';
import 'package:hub/components/organism_components/bottom_arrow_linked_locals_component/bottom_arrow_linked_locals_component_widget.dart'; import 'package:hub/components/organism_components/bottom_arrow_linked_locals_component/bottom_arrow_linked_locals_component_widget.dart';
import 'package:hub/features/auth/index.dart';
import 'package:hub/features/backend/index.dart';
import 'package:hub/features/module/data/index.dart';
import 'package:hub/features/storage/index.dart';
import 'package:hub/flutter_flow/flutter_flow_util.dart'; import 'package:hub/flutter_flow/flutter_flow_util.dart';
import 'package:hub/flutter_flow/internationalization.dart'; import 'package:hub/flutter_flow/internationalization.dart';
import 'package:hub/flutter_flow/nav/nav.dart'; import 'package:hub/flutter_flow/nav/nav.dart';
import 'package:hub/shared/components/molecules/locals/index.dart'; import 'package:hub/features/local/index.dart';
import 'package:hub/shared/components/molecules/modules/index.dart';
import 'package:hub/shared/helpers/storage/base_storage.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart';
import 'package:hub/shared/services/authentication/authentication_service.dart';
import 'package:hub/shared/utils/dialog_util.dart';
import 'package:hub/shared/utils/snackbar_util.dart'; import 'package:hub/shared/utils/snackbar_util.dart';
abstract class LocalsRemoteDataSource { abstract class LocalsRemoteDataSource {
Future<void> linkLocal(BuildContext context); Future<void> linkLocal(BuildContext context);
Future<bool> checkLocals(BuildContext context); Future<bool> checkLocals(BuildContext context);
Future<bool> processLocals(BuildContext context); Future<bool> processLocals(BuildContext context);
Future<bool> processData(BuildContext context); Future<bool> processProperty(BuildContext context);
Future<bool> selectLocal(BuildContext context, ApiCallResponse? response); Future<bool> selectLocal(BuildContext context, ApiCallResponse? response);
Future<bool> detachLocal(BuildContext context); Future<bool> detachLocal(BuildContext context);
} }
@ -62,8 +59,8 @@ class LocalsRemoteDataSourceImpl implements LocalsRemoteDataSource {
await StorageHelper().set(SecureStorageKey.haveLocal.value, true); await StorageHelper().set(SecureStorageKey.haveLocal.value, true);
await StorageHelper().set(SecureStorageKey.isLogged.value, true); await StorageHelper().set(SecureStorageKey.isLogged.value, true);
await WidgetsBinding.instance.endOfFrame; await WidgetsBinding.instance.endOfFrame;
await StorageHelper().set(KeychainStorageKey.clientUUID.value, ''); await StorageHelper().set(ProfileStorageKey.clientUUID.key, '');
await StorageHelper().set(KeychainStorageKey.ownerUUID.value, ''); await StorageHelper().set(ProfileStorageKey.ownerUUID.key, '');
StorageHelper().context?.go('/homePage'); StorageHelper().context?.go('/homePage');
} }
} catch (e, s) { } catch (e, s) {
@ -121,10 +118,16 @@ class LocalsRemoteDataSourceImpl implements LocalsRemoteDataSource {
return await selectLocal(context, response); return await selectLocal(context, response);
} else if (isSelected) { } else if (isSelected) {
log('() => isSelected'); log('() => isSelected');
return await processData(context); return await processProperty(context).then((v) async {
if (v == true) return await LicenseRepositoryImpl().updateLicense();
return v;
});
} else if (isAvailable) { } else if (isAvailable) {
log('() => isAvailable'); log('() => isAvailable');
return await processData(context); return await processProperty(context).then((v) async {
if (v == true) return await LicenseRepositoryImpl().updateLicense();
return v;
});
} else { } else {
if (!isUnique && !isActive) log('() => not unique and not active'); if (!isUnique && !isActive) log('() => not unique and not active');
if (!isUnique && isInactived) log('() => not unique and inactived'); if (!isUnique && isInactived) log('() => not unique and inactived');
@ -149,14 +152,14 @@ class LocalsRemoteDataSourceImpl implements LocalsRemoteDataSource {
@override @override
Future<bool> checkLocals(BuildContext context) async { Future<bool> checkLocals(BuildContext context) async {
String cliUUID = String cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
String cliName = String cliName =
(await StorageHelper().get(KeychainStorageKey.clientName.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientName.key)) ?? '';
return cliUUID.isEmpty && cliName.isEmpty; return cliUUID.isEmpty && cliName.isEmpty;
} }
@override @override
Future<bool> processData(BuildContext context) async { Future<bool> processProperty(BuildContext context) async {
try { try {
final GetDadosCall callback = PhpGroup.getDadosCall; final GetDadosCall callback = PhpGroup.getDadosCall;
ApiCallResponse? response = await callback.call(); ApiCallResponse? response = await callback.call();
@ -181,7 +184,7 @@ class LocalsRemoteDataSourceImpl implements LocalsRemoteDataSource {
return false; return false;
} else { } else {
await LocalUtil.updateStorageUtil(response.jsonBody); await LocalUtil.updateStorageUtil(response.jsonBody);
return await LicenseRepositoryImpl().updateLicense(); return true;
} }
} catch (e, s) { } catch (e, s) {
log('() => error processData: $e', stackTrace: s); log('() => error processData: $e', stackTrace: s);
@ -212,7 +215,10 @@ class LocalsRemoteDataSourceImpl implements LocalsRemoteDataSource {
child: BottomArrowLinkedLocalsComponentWidget(response: response), child: BottomArrowLinkedLocalsComponentWidget(response: response),
), ),
), ),
).then((_) async => await processData(context)); ).then((_) async => await processProperty(context).then((v) async {
if (v == true) return await LicenseRepositoryImpl().updateLicense();
return v;
}));
} }
@override @override
@ -226,9 +232,9 @@ class LocalsRemoteDataSourceImpl implements LocalsRemoteDataSource {
final bool status = final bool status =
await PhpGroup.resopndeVinculo.call(tarefa: 'I').then((value) async { await PhpGroup.resopndeVinculo.call(tarefa: 'I').then((value) async {
if (value.jsonBody['error'] == false) { if (value.jsonBody['error'] == false) {
await StorageHelper().set(KeychainStorageKey.clientName.value, ''); await StorageHelper().set(ProfileStorageKey.clientName.key, '');
await StorageHelper().set(KeychainStorageKey.ownerName.value, ''); await StorageHelper().set(ProfileStorageKey.ownerName.key, '');
await StorageHelper().set(KeychainStorageKey.clientUUID.value, ''); await StorageHelper().set(ProfileStorageKey.clientUUID.key, '');
context.pop(); context.pop();
context.go('/homePage', context.go('/homePage',
extra: {'update': LocalsRepositoryImpl().update}); extra: {'update': LocalsRepositoryImpl().update});

View File

@ -0,0 +1 @@

View File

@ -2,13 +2,13 @@ import 'dart:developer';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:hub/backend/notifications/firebase_messaging_service.dart'; import 'package:hub/features/local/index.dart';
import 'package:hub/flutter_flow/nav/nav.dart'; import 'package:hub/features/menu/index.dart';
import 'package:hub/shared/components/molecules/locals/index.dart'; import 'package:hub/features/module/data/index.dart';
import 'package:hub/shared/components/molecules/menu/presentation/blocs/menu_bloc.dart'; import 'package:hub/features/notification/index.dart';
import 'package:hub/shared/components/molecules/modules/index.dart'; import 'package:hub/features/storage/index.dart';
import 'package:hub/shared/helpers/storage/base_storage.dart'; import 'package:hub/flutter_flow/index.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart';
import 'package:hub/shared/utils/dialog_util.dart'; import 'package:hub/shared/utils/dialog_util.dart';
import 'package:rxdart/rxdart.dart'; import 'package:rxdart/rxdart.dart';
@ -27,21 +27,32 @@ class LocalsRepositoryImpl implements LocalsRepository {
@override @override
Future<bool> update(BuildContext context) async { Future<bool> update(BuildContext context) async {
LocalsRepositoryImpl.license.add(false); LocalsRepositoryImpl.license.add(false);
final bool response = await _handleReponse(context); final bool response = await _handleLocal(context);
LocalsRepositoryImpl.license.add(response); LocalsRepositoryImpl.license.add(response);
return response; return response;
} }
@override
Future<bool> fetch(BuildContext context) async {
return await _handleProperty(context);
}
Future<void> select(BuildContext context) async { Future<void> select(BuildContext context) async {
await localDataSource.unlinkLocal(); await unselect();
await update(context); await update(context);
} }
Future<void> unselect() async {
await StorageHelper().set(ProfileStorageKey.clientUUID.key, '');
await StorageHelper().set(ProfileStorageKey.clientName.key, '');
await StorageHelper().set(ProfileStorageKey.ownerName.key, '');
}
Future<void> check(BuildContext context) async { Future<void> check(BuildContext context) async {
final String? cliUUID = final String? cliUUID =
await StorageHelper().get(KeychainStorageKey.clientUUID.value); await StorageHelper().get(ProfileStorageKey.clientUUID.key);
final String? ownerUUID = final String? ownerUUID =
await StorageHelper().get(KeychainStorageKey.ownerUUID.value); await StorageHelper().get(ProfileStorageKey.ownerUUID.key);
final bool haveCli = cliUUID != null && cliUUID.isNotEmpty; final bool haveCli = cliUUID != null && cliUUID.isNotEmpty;
final bool haveOwner = ownerUUID != null && ownerUUID.isNotEmpty; final bool haveOwner = ownerUUID != null && ownerUUID.isNotEmpty;
if (!haveCli && !haveOwner) { if (!haveCli && !haveOwner) {
@ -50,7 +61,7 @@ class LocalsRepositoryImpl implements LocalsRepository {
} }
} }
Future<bool> _handleReponse(BuildContext context) async { Future<bool> _handleLocal(BuildContext context) async {
bool response = false; bool response = false;
final bool isUnselected = await remoteDataSource.checkLocals(context); final bool isUnselected = await remoteDataSource.checkLocals(context);
if (isUnselected) { if (isUnselected) {
@ -68,11 +79,26 @@ class LocalsRepositoryImpl implements LocalsRepository {
} else { } else {
return true; return true;
} }
return response;
}
Future<bool> _handleProperty(BuildContext context) async {
bool response = false;
try {
response = await remoteDataSource.processProperty(context);
if (!response) {
await _handleUpdateError(context);
}
} catch (e, s) {
log('Error updating locals: $e', stackTrace: s);
await _handleUpdateError(context);
}
return response; return response;
} }
Future<void> _handleUpdateError(BuildContext context) async { Future<void> _handleUpdateError(BuildContext context) async {
await StorageHelper().set(KeychainStorageKey.clientUUID.value, ''); await StorageHelper().set(ProfileStorageKey.clientUUID.key, '');
const String errorMsg = 'Erro ao atualizar locais'; const String errorMsg = 'Erro ao atualizar locais';
await DialogUtil.error(context, errorMsg); await DialogUtil.error(context, errorMsg);
} }
@ -86,7 +112,7 @@ class LocalsRepositoryImpl implements LocalsRepository {
Future<void> unlinkLocal(BuildContext context) async { Future<void> unlinkLocal(BuildContext context) async {
final bool response = await remoteDataSource.detachLocal(context); final bool response = await remoteDataSource.detachLocal(context);
if (!response) return; if (!response) return;
await localDataSource.unlinkLocal(); await unselect();
context.pop(); context.pop();
context.go('/homePage', extra: {'update': update}); context.go('/homePage', extra: {'update': update});
await update(context); await update(context);

View File

@ -0,0 +1 @@

View File

@ -4,4 +4,5 @@ abstract class LocalsRepository {
Future<void> validateLocal(BuildContext context) async {} Future<void> validateLocal(BuildContext context) async {}
Future<bool> update(BuildContext context) async => false; Future<bool> update(BuildContext context) async => false;
Future<void> unlinkLocal(BuildContext context) async {} Future<void> unlinkLocal(BuildContext context) async {}
Future<void> fetch(BuildContext context) async {}
} }

View File

@ -0,0 +1 @@

View File

@ -3,12 +3,10 @@ import 'dart:developer';
import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:hub/features/storage/index.dart';
import 'package:hub/flutter_flow/flutter_flow_model.dart'; import 'package:hub/flutter_flow/flutter_flow_model.dart';
import 'package:hub/flutter_flow/nav/nav.dart'; import 'package:hub/flutter_flow/nav/nav.dart';
import 'package:hub/shared/components/molecules/locals/index.dart'; import 'package:hub/features/local/index.dart';
import 'package:hub/shared/components/molecules/menu/index.dart';
import 'package:hub/shared/helpers/storage/base_storage.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart';
class LocalProfileEvent {} class LocalProfileEvent {}
@ -43,11 +41,11 @@ class LocalProfileBloc extends Bloc<LocalProfileEvent, LocalProfileState> {
Future<void> _onLocalProfileEvent( Future<void> _onLocalProfileEvent(
LocalProfileEvent event, Emitter<LocalProfileState> emit) async { LocalProfileEvent event, Emitter<LocalProfileState> emit) async {
final cliName = final cliName =
(await StorageHelper().get(KeychainStorageKey.clientName.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientName.key)) ?? '';
final ownerName = final ownerName =
(await StorageHelper().get(KeychainStorageKey.ownerName.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.ownerName.key)) ?? '';
final cliUUID = final cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
emit(state.copyWith( emit(state.copyWith(
cliName: cliName, cliUUID: cliUUID, ownerName: ownerName)); cliName: cliName, cliUUID: cliUUID, ownerName: ownerName));
} }
@ -74,11 +72,11 @@ class LocalProfileComponentModel
Future<void> getData() async { Future<void> getData() async {
cliName = cliName =
(await StorageHelper().get(KeychainStorageKey.clientName.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientName.key)) ?? '';
ownerName = ownerName =
(await StorageHelper().get(KeychainStorageKey.ownerName.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.ownerName.key)) ?? '';
cliUUID = cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
setStateCallback?.call(); setStateCallback?.call();
} }

View File

@ -1,17 +1,12 @@
import 'dart:developer';
import 'package:cached_network_image/cached_network_image.dart'; import 'package:cached_network_image/cached_network_image.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:google_fonts/google_fonts.dart'; import 'package:google_fonts/google_fonts.dart';
import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:hub/features/module/index.dart';
import 'package:hub/flutter_flow/custom_functions.dart'; import 'package:hub/flutter_flow/custom_functions.dart';
import 'package:hub/flutter_flow/flutter_flow_theme.dart'; import 'package:hub/flutter_flow/flutter_flow_theme.dart';
import 'package:hub/flutter_flow/flutter_flow_util.dart'; import 'package:hub/flutter_flow/flutter_flow_util.dart';
import 'package:hub/shared/components/molecules/locals/index.dart'; import 'package:hub/features/local/index.dart';
import 'package:hub/shared/components/molecules/modules/data/index.dart';
import 'package:hub/shared/helpers/storage/base_storage.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart';
import 'package:provider/provider.dart';
class LocalProfileComponentWidget extends StatefulWidget { class LocalProfileComponentWidget extends StatefulWidget {
const LocalProfileComponentWidget({super.key}); const LocalProfileComponentWidget({super.key});

View File

@ -1,20 +1,20 @@
import 'dart:developer'; import 'dart:developer';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:hub/backend/api_requests/api_calls.dart'; import 'package:hub/features/backend/index.dart';
import 'package:hub/features/storage/index.dart';
import 'package:hub/flutter_flow/internationalization.dart'; import 'package:hub/flutter_flow/internationalization.dart';
import 'package:hub/shared/components/molecules/locals/index.dart'; import 'package:hub/features/local/index.dart';
import 'package:hub/shared/helpers/storage/base_storage.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart';
import 'package:hub/shared/utils/dialog_util.dart'; import 'package:hub/shared/utils/dialog_util.dart';
import 'package:hub/shared/utils/log_util.dart'; import 'package:hub/shared/utils/log_util.dart';
class LocalUtil { class LocalUtil {
static void handleError(BuildContext context, String errorMsg) async { static void handleError(BuildContext context, String errorMsg) async {
final String devUUID = final String devUUID =
await StorageHelper().get(KeychainStorageKey.devUUID.value) ?? ''; await StorageHelper().get(ProfileStorageKey.devUUID.key) ?? '';
final String userUUID = final String userUUID =
await StorageHelper().get(KeychainStorageKey.userUUID.value) ?? ''; await StorageHelper().get(ProfileStorageKey.userUUID.key) ?? '';
final bool isAuthenticated = userUUID.isNotEmpty && devUUID.isNotEmpty; final bool isAuthenticated = userUUID.isNotEmpty && devUUID.isNotEmpty;
final bool isDevLinked = final bool isDevLinked =
!errorMsg.contains('Esse dispositivo nao pertence a esse usuario'); !errorMsg.contains('Esse dispositivo nao pertence a esse usuario');
@ -44,26 +44,26 @@ class LocalUtil {
log('() => isUnavailable'); log('() => isUnavailable');
try { try {
await StorageHelper() await StorageHelper()
.set(KeychainStorageKey.clientUUID.value, locals[0]['CLI_ID']); .set(ProfileStorageKey.clientUUID.key, locals[0]['CLI_ID']);
await StorageHelper() await StorageHelper()
.set(KeychainStorageKey.ownerUUID.value, locals[0]['CLU_OWNER_ID']); .set(ProfileStorageKey.ownerUUID.key, locals[0]['CLU_OWNER_ID']);
await StorageHelper() await StorageHelper()
.set(KeychainStorageKey.clientName.value, locals[0]['CLI_NOME']); .set(ProfileStorageKey.clientName.key, locals[0]['CLI_NOME']);
await StorageHelper() await StorageHelper()
.set(KeychainStorageKey.ownerName.value, locals[0]['CLU_OWNER_DSC']); .set(ProfileStorageKey.ownerName.key, locals[0]['CLU_OWNER_DSC']);
var response = await PhpGroup.resopndeVinculo.call(tarefa: 'A'); var response = await PhpGroup.resopndeVinculo.call(tarefa: 'A');
if (response.jsonBody['error'] == true) { if (response.jsonBody['error'] == true) {
await StorageHelper().set(KeychainStorageKey.clientUUID.value, ''); await StorageHelper().set(ProfileStorageKey.clientUUID.key, '');
await StorageHelper().set(KeychainStorageKey.ownerUUID.value, ''); await StorageHelper().set(ProfileStorageKey.ownerUUID.key, '');
await StorageHelper().set(KeychainStorageKey.clientName.value, ''); await StorageHelper().set(ProfileStorageKey.clientName.key, '');
await StorageHelper().set(KeychainStorageKey.ownerName.value, ''); await StorageHelper().set(ProfileStorageKey.ownerName.key, '');
return false; return false;
} }
if (response.jsonBody['error'] == false) if (response.jsonBody['error'] == false)
return await LocalsRemoteDataSourceImpl() return await LocalsRemoteDataSourceImpl()
.processData(context) .processProperty(context)
.then((value) => value); .then((value) => value);
} catch (e, s) { } catch (e, s) {
await DialogUtil.errorDefault(context); await DialogUtil.errorDefault(context);
@ -77,16 +77,16 @@ class LocalUtil {
static Future<bool> handleEnabled(BuildContext context, dynamic local) async { static Future<bool> handleEnabled(BuildContext context, dynamic local) async {
log('() => isEnabled'); log('() => isEnabled');
await StorageHelper() await StorageHelper()
.set(KeychainStorageKey.clientUUID.value, local['CLI_ID']); .set(ProfileStorageKey.clientUUID.key, local['CLI_ID']);
await StorageHelper() await StorageHelper()
.set(KeychainStorageKey.ownerUUID.value, local['CLU_OWNER_ID']); .set(ProfileStorageKey.ownerUUID.key, local['CLU_OWNER_ID']);
await StorageHelper() await StorageHelper()
.set(KeychainStorageKey.clientName.value, local['CLI_NOME']); .set(ProfileStorageKey.clientName.key, local['CLI_NOME']);
await StorageHelper() await StorageHelper()
.set(KeychainStorageKey.ownerName.value, local['CLU_OWNER_DSC']); .set(ProfileStorageKey.ownerName.key, local['CLU_OWNER_DSC']);
await StorageHelper() await StorageHelper()
.set(KeychainStorageKey.userName.value, local['USU_NOME']); .set(ProfileStorageKey.userName.key, local['USU_NOME']);
return await LocalsRemoteDataSourceImpl().processData(context); return await LocalsRemoteDataSourceImpl().processProperty(context);
} }
static void logLocalsStatus(List<dynamic> locals) { static void logLocalsStatus(List<dynamic> locals) {
@ -96,27 +96,56 @@ class LocalUtil {
} }
} }
static bool _processSystemOption(String? json) {
if (json == null) return false;
if (json == 'S')
return true;
else
return false;
}
static Future<bool> updateStorageUtil(Map<String, dynamic> jsonBody) async { static Future<bool> updateStorageUtil(Map<String, dynamic> jsonBody) async {
try { try {
await StorageHelper().set(
KeychainStorageKey.whatsapp.value, jsonBody['whatsapp'] ?? false);
await StorageHelper().set(KeychainStorageKey.provisional.value,
jsonBody['provisional'] ?? false);
await StorageHelper() await StorageHelper()
.set(KeychainStorageKey.pets.value, jsonBody['pet'] ?? false); .set(LocalsStorageKey.whatsapp.key, jsonBody['whatsapp'] ?? false);
await StorageHelper().set( await StorageHelper().set(
KeychainStorageKey.petAmount.value, LocalsStorageKey.provisional.key, jsonBody['provisional'] ?? false);
await StorageHelper().set(
LocalsStorageKey.pets.key,
jsonBody['pet'] ?? false,
);
await StorageHelper().set(
LocalsStorageKey.notify.key,
_processSystemOption(
jsonBody['visitado']['VDO_NOTTERCEIROS'],
),
);
if (jsonBody['visitado']['VDO_TEM_SENHA_ACESSO'] != null) {
await StorageHelper().set(
LocalsStorageKey.access.key,
_processSystemOption(jsonBody['visitado']['VDO_TEM_SENHA_ACESSO']),
);
await StorageHelper().set(
LocalsStorageKey.panic.key,
_processSystemOption(jsonBody['visitado']['VDO_TEM_SENHA_PANICO']),
);
}
await StorageHelper().set(
LocalsStorageKey.petAmount.key,
jsonBody['petAmountRegister']?.toString().isEmpty ?? true jsonBody['petAmountRegister']?.toString().isEmpty ?? true
? '0' ? '0'
: jsonBody['petAmountRegister'].toString()); : jsonBody['petAmountRegister'].toString());
await StorageHelper().set(KeychainStorageKey.userName.value, await StorageHelper().set(ProfileStorageKey.userName.key,
jsonBody['visitado']['VDO_NOME'] ?? ''); jsonBody['visitado']['VDO_NOME'] ?? '');
await StorageHelper().set(KeychainStorageKey.userEmail.value, await StorageHelper().set(ProfileStorageKey.userEmail.key,
jsonBody['visitado']['VDO_EMAIL'] ?? ''); jsonBody['visitado']['VDO_EMAIL'] ?? '');
await StorageHelper().set(
LocalsStorageKey.provisional.key, jsonBody['provisional'] ?? false);
final bool isNewVersion = jsonBody['newVersion'] ?? false; final bool isNewVersion = jsonBody['newVersion'] ?? false;
await StorageHelper() await StorageHelper()
.set(KeychainStorageKey.isNewVersion.value, isNewVersion); .set(LocalsStorageKey.isNewVersion.key, isNewVersion);
return isNewVersion; return isNewVersion;
} catch (e, s) { } catch (e, s) {
log('Error in _updateStorageUtil: $e', stackTrace: s); log('Error in _updateStorageUtil: $e', stackTrace: s);
@ -130,7 +159,7 @@ class LocalUtil {
static Future<bool> isInactived(List<dynamic> locals) async { static Future<bool> isInactived(List<dynamic> locals) async {
String cliUUID = String cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
return locals return locals
.where( .where(
(local) => local['CLI_ID'] != cliUUID && local['CLU_STATUS'] == 'A') (local) => local['CLI_ID'] != cliUUID && local['CLU_STATUS'] == 'A')
@ -146,27 +175,27 @@ class LocalUtil {
static Future<bool> isUnselected() async { static Future<bool> isUnselected() async {
String cliUUID = String cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
String cliName = String cliName =
(await StorageHelper().get(KeychainStorageKey.clientName.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientName.key)) ?? '';
String ownerUUID = String ownerUUID =
(await StorageHelper().get(KeychainStorageKey.ownerUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.ownerUUID.key)) ?? '';
return cliUUID.isEmpty && cliName.isEmpty && ownerUUID.isEmpty; return cliUUID.isEmpty && cliName.isEmpty && ownerUUID.isEmpty;
} }
static Future<bool> isSelected(bool isInactived) async { static Future<bool> isSelected(bool isInactived) async {
String cliUUID = String cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
String cliName = String cliName =
(await StorageHelper().get(KeychainStorageKey.clientName.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientName.key)) ?? '';
return cliUUID.isNotEmpty && cliName.isNotEmpty && isInactived; return cliUUID.isNotEmpty && cliName.isNotEmpty && isInactived;
} }
static Future<bool> isAvailable() async { static Future<bool> isAvailable() async {
String cliUUID = String cliUUID =
(await StorageHelper().get(KeychainStorageKey.clientUUID.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientUUID.key)) ?? '';
String cliName = String cliName =
(await StorageHelper().get(KeychainStorageKey.clientName.value)) ?? ''; (await StorageHelper().get(ProfileStorageKey.clientName.key)) ?? '';
return cliUUID.isNotEmpty && cliName.isNotEmpty; return cliUUID.isNotEmpty && cliName.isNotEmpty;
} }
} }

View File

@ -1,14 +1,13 @@
import 'dart:developer'; import 'dart:developer';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:hub/features/auth/index.dart';
import 'package:hub/features/menu/index.dart';
import 'package:hub/features/module/index.dart';
import 'package:hub/flutter_flow/nav/nav.dart'; import 'package:hub/flutter_flow/nav/nav.dart';
import 'package:hub/shared/components/molecules/menu/index.dart';
import 'package:hub/shared/extensions/dialog_extensions.dart'; import 'package:hub/shared/extensions/dialog_extensions.dart';
import 'package:hub/shared/services/authentication/authentication_service.dart';
import 'package:hub/shared/utils/path_util.dart'; import 'package:hub/shared/utils/path_util.dart';
import '../../../modules/domain/entities/index.dart';
abstract class MenuLocalDataSource { abstract class MenuLocalDataSource {
Future<MenuItem?> addMenuEntry(EnumMenuItem item, List<MenuItem?> entries, Future<MenuItem?> addMenuEntry(EnumMenuItem item, List<MenuItem?> entries,
IconData icon, String text, Function() action); IconData icon, String text, Function() action);

View File

@ -0,0 +1 @@

View File

@ -1,15 +1,8 @@
import 'dart:convert';
import 'dart:developer'; import 'dart:developer';
import 'package:hub/features/menu/index.dart';
import 'package:hub/features/module/index.dart';
import 'package:hub/flutter_flow/custom_functions.dart'; import 'package:hub/flutter_flow/custom_functions.dart';
import 'package:hub/main.dart';
import 'package:hub/shared/components/molecules/menu/data/data_sources/menu_local_data_source.dart';
import 'package:hub/shared/components/molecules/menu/domain/respositories/menu_repository.dart';
import 'package:hub/shared/components/molecules/menu/index.dart';
import 'package:hub/shared/components/molecules/modules/index.dart';
import 'package:hub/shared/extensions/string_extensions.dart';
import 'package:hub/shared/helpers/storage/base_storage.dart';
import 'package:hub/shared/helpers/storage/storage_helper.dart';
class MenuRepositoryImpl implements MenuRepository { class MenuRepositoryImpl implements MenuRepository {
final MenuLocalDataSource menuDataSource = MenuLocalDataSourceImpl(); final MenuLocalDataSource menuDataSource = MenuLocalDataSourceImpl();

View File

@ -1,5 +1,5 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:hub/shared/components/molecules/menu/index.dart'; import 'package:hub/features/menu/index.dart';
enum EnumMenuItem { enum EnumMenuItem {
button, button,

View File

@ -0,0 +1 @@
export 'menu_repository.dart';

View File

@ -0,0 +1,6 @@
import 'package:hub/features/menu/index.dart';
abstract class MenuRepository {
Future<List<MenuItem?>> generateMenuEntries(
List<MenuEntry> menuEntries, EnumMenuItem item);
}

View File

@ -0,0 +1 @@

View File

@ -1,15 +1,9 @@
import 'dart:async'; import 'dart:async';
import 'dart:developer';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:hub/flutter_flow/nav/nav.dart';
import 'package:hub/shared/components/molecules/locals/index.dart';
import 'package:hub/shared/components/molecules/menu/data/repositories/menu_repository_impl.dart';
import 'package:hub/shared/components/molecules/menu/index.dart';
import 'package:hub/shared/components/molecules/modules/index.dart';
import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:hub/features/menu/index.dart';
import 'package:hub/features/module/index.dart';
import 'package:hub/features/local/index.dart';
class MenuEvent {} class MenuEvent {}

Some files were not shown because too many files have changed in this diff Show More