This commit is contained in:
J. A. Messias 2024-09-30 08:16:04 -03:00
parent bf3b030059
commit 94fcfdcb95
2 changed files with 87 additions and 0 deletions

View File

@ -137,6 +137,8 @@ class _LocalProfileComponentWidgetState
await processData(); await processData();
} }
void onUpdate() { void onUpdate() {
safeSetState(() { safeSetState(() {
_model.getData(); _model.getData();

View File

@ -3,6 +3,7 @@ import 'package:google_fonts/google_fonts.dart';
import 'package:hub/backend/api_requests/api_calls.dart'; import 'package:hub/backend/api_requests/api_calls.dart';
import 'package:hub/backend/notifications/firebase_messaging_service.dart'; import 'package:hub/backend/notifications/firebase_messaging_service.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/components/organism_components/bottom_arrow_linked_locals_component/bottom_arrow_linked_locals_component_widget.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/flutter_flow_widgets.dart'; import 'package:hub/flutter_flow/flutter_flow_widgets.dart';
@ -26,6 +27,90 @@ class _ReceptionPageWidgetState extends State<ReceptionPageWidget> {
FirebaseMessagingService().updateDeviceToken(); FirebaseMessagingService().updateDeviceToken();
} }
Future<void> processData() async {
try {
final GetDadosCall callback = PhpGroup.getDadosCall;
var response = await callback.call();
final error = response.jsonBody['error'];
// final errorMsg = response.jsonBody['error_msg'];
if (error == false) {
final bool whatsapp = response.jsonBody['whatsapp'] ?? false;
final bool provisional = response.jsonBody['provisional'] ?? false;
final bool pets = response.jsonBody['pet'] ?? false;
final String petAmountRegister =
response.jsonBody['petAmountRegister'].toString().isEmpty
? '0'
: response.jsonBody['petAmountRegister'].toString();
final String name = response.jsonBody['visitado']['VDO_NOME'];
StorageUtil().whatsapp = whatsapp;
StorageUtil().provisional = provisional;
StorageUtil().pets = pets;
StorageUtil().petAmountRegister = petAmountRegister;
StorageUtil().userName = name;
safeSetState(() {});
return;
} else if (error == true) {
DialogUtil.warningDefault(context).whenComplete(() => processLocals());
safeSetState(() {});
}
return;
} catch (e) {
log('() => error: $e'); // Add this line to log the error
DialogUtil.warningDefault(context).whenComplete(() => processLocals());
}
}
Future<void> processLocals() async {
try {
final GetLocalsCall callback = PhpGroup.getLocalsCall;
final cliUUID = StorageUtil().cliUUID;
var response = await callback.call();
if (response.jsonBody['error'] == false) {
List<dynamic> locals = response.jsonBody['locais'] ?? [];
final activeLocals =
locals.where((local) => local['CLU_STATUS'] == 'A').toList();
StorageUtil().haveLocal = true;
StorageUtil().context?.go('/homePage');
if (activeLocals.isEmpty || cliUUID.isEmpty) {
await showModalSelectLocal();
} else {
await processData();
}
}
} catch (e) {
await showModalSelectLocal();
}
}
Future<void> showModalSelectLocal() async {
await showModalBottomSheet(
isScrollControlled: true,
backgroundColor: Colors.transparent,
enableDrag: false,
isDismissible: false,
context: context,
builder: (context) => Padding(
padding: MediaQuery.viewInsetsOf(context),
child: const BottomArrowLinkedLocalsComponentWidget(),
),
).then((_) async {
StorageUtil().haveLocal = true;
StorageUtil().context?.go('/homePage');
});
await processData();
}
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
StorageUtil().context = context; StorageUtil().context = context;