This commit is contained in:
jantunesmesias 2024-08-27 17:42:14 -03:00
parent b29cb152b9
commit f2fa9b1336
4 changed files with 88 additions and 93 deletions

View File

@ -94,8 +94,8 @@ class _FastPassPageWidgetState extends State<FastPassPageWidget> {
}, },
onNavigationRequest: (NavigationRequest request) { onNavigationRequest: (NavigationRequest request) {
if (request.url.startsWith('http') || if (request.url.startsWith('http') ||
request.url request.url.startsWith(
.startsWith('https://api.whatsapp.com/send') || 'https://api.whatsapp.com/send') ||
request.url.startsWith('https://wa.me')) { request.url.startsWith('https://wa.me')) {
launchUrlString(request.url); launchUrlString(request.url);
return NavigationDecision.prevent; return NavigationDecision.prevent;
@ -106,9 +106,7 @@ class _FastPassPageWidgetState extends State<FastPassPageWidget> {
if (url.url.toString().contains('/hub/home')) { if (url.url.toString().contains('/hub/home')) {
Navigator.pop(context); Navigator.pop(context);
} }
} }),
),
) )
..loadRequest(Uri.parse(url)), ..loadRequest(Uri.parse(url)),
), ),

View File

@ -27,8 +27,11 @@ class HomePageWidget extends StatefulWidget {
class _HomePageWidgetState extends State<HomePageWidget> { class _HomePageWidgetState extends State<HomePageWidget> {
late HomePageModel _model; late HomePageModel _model;
final scaffoldKey = GlobalKey<ScaffoldState>(); final scaffoldKey = GlobalKey<ScaffoldState>();
LocalProfileComponentWidget _localProfileComponentWidget =
const LocalProfileComponentWidget();
Future checkData() async { Future<void> checkData() async {
try {
final response = await PhpGroup.getDadosCall.call( final response = await PhpGroup.getDadosCall.call(
devUUID: AppState().devUUID, devUUID: AppState().devUUID,
userUUID: AppState().userUUID, userUUID: AppState().userUUID,
@ -36,42 +39,56 @@ class _HomePageWidgetState extends State<HomePageWidget> {
atividade: 'getDados', atividade: 'getDados',
); );
switch (response.statusCode) { if (response.statusCode == 200) {
case 200:
if (response.jsonBody['error'] == false) { if (response.jsonBody['error'] == false) {
AppState().whatsapp = response.jsonBody['whatsapp']; AppState().whatsapp = response.jsonBody['whatsapp'];
AppState().provisional = response.jsonBody['provisional']; AppState().provisional = response.jsonBody['provisional'];
AppState().name = response.jsonBody['visitado']['VDO_NOME']; AppState().name = response.jsonBody['visitado']['VDO_NOME'];
} else {
if (response.jsonBody['error_msg'] !=
r'''Usuario nao possui vinculo ativo com esse condominio''') {
log(response.jsonBody['error_msg']);
await DialogUtil.warningDefault(context)
.whenComplete(() => checkData());
}
}
break;
default:
await DialogUtil.warningDefault(context)
.whenComplete(() => checkData());
safeSetState(() {}); safeSetState(() {});
break; } else {
final errorMsg = response.jsonBody['error_msg'];
if (errorMsg !=
r'''Usuario nao possui vinculo ativo com esse condominio''') {
log(errorMsg);
await DialogUtil.warningDefault(context)
.whenComplete(() => checkData());
safeSetState(() {});
}
}
} else {
await DialogUtil.warningDefault(context)
.whenComplete(() => checkData());
safeSetState(() {});
}
} catch (e) {
log('Error in checkData: $e');
await DialogUtil.warningDefault(context).whenComplete(() => checkData());
} }
} }
Future checkLocal() async { Future<void> checkLocal() async {
try {
final response = await PhpGroup.getLocalsCall.call( final response = await PhpGroup.getLocalsCall.call(
devUUID: AppState().devUUID, devUUID: AppState().devUUID,
userUUID: AppState().userUUID, userUUID: AppState().userUUID,
); );
log(response.jsonBody.toString()); log(response.jsonBody.toString());
List<dynamic> locals = response.jsonBody['locais'] ?? [];
List<dynamic> locals = response.jsonBody['locais'] ?? [];
final activeLocals = final activeLocals =
locals.where((local) => local['CLU_STATUS'] == 'A').toList(); locals.where((local) => local['CLU_STATUS'] == 'A').toList();
log("activeLocals $activeLocals"); log("activeLocals $activeLocals");
if (activeLocals.isEmpty) {
if (activeLocals.isEmpty || AppState().cliUUID.isEmpty) {
await showBottomSheet().then((_) => checkData());
}
} catch (e) {
log('Error in checkLocal: $e');
await showBottomSheet().then((_) => checkData());
}
}
Future<void> showBottomSheet() async {
await showModalBottomSheet( await showModalBottomSheet(
isScrollControlled: true, isScrollControlled: true,
backgroundColor: Colors.transparent, backgroundColor: Colors.transparent,
@ -82,43 +99,24 @@ class _HomePageWidgetState extends State<HomePageWidget> {
padding: MediaQuery.viewInsetsOf(context), padding: MediaQuery.viewInsetsOf(context),
child: const BottomArrowLinkedLocalsComponentWidget(), child: const BottomArrowLinkedLocalsComponentWidget(),
), ),
).then((_) => checkData()); ).then((_) => safeSetState(() {
} else if (AppState().cliUUID.isEmpty) { _localProfileComponentWidget = const LocalProfileComponentWidget();
showModalBottomSheet( }));
isScrollControlled: true,
backgroundColor: Colors.transparent,
enableDrag: false,
isDismissible: false,
context: context,
builder: (context) {
return Padding(
padding: MediaQuery.viewInsetsOf(context),
child: const BottomArrowLinkedLocalsComponentWidget(),
);
},
).then((_) => checkData());
}
} }
@override @override
void initState() { void initState() {
super.initState(); super.initState();
_model = createModel(context, () => HomePageModel()); _model = createModel(context, () => HomePageModel());
AppState().context = context; AppState().context = context;
checkLocal();
() async { () async {
await checkLocal().whenComplete(() => log('checkLocal completed'));
await FirebaseMessagingService().updateDeviceToken(); await FirebaseMessagingService().updateDeviceToken();
}(); }();
() async {
await FirebaseMessagingService().updateDeviceToken();
}();
WidgetsBinding.instance.addPostFrameCallback((_) async {});
_model.textController ??= TextEditingController(); _model.textController ??= TextEditingController();
_model.textFieldFocusNode ??= FocusNode(); _model.textFieldFocusNode ??= FocusNode();
} }
@ -244,7 +242,7 @@ class _HomePageWidgetState extends State<HomePageWidget> {
return wrapWithModel( return wrapWithModel(
model: _model.localComponentModel, model: _model.localComponentModel,
updateCallback: () => safeSetState(() {}), updateCallback: () => safeSetState(() {}),
child: const LocalProfileComponentWidget(), child: _localProfileComponentWidget,
); );
} }
} }

View File

@ -310,9 +310,9 @@ class PreferencesPageModel with ChangeNotifier {
) )
.then((value) { .then((value) {
if (value.jsonBody['error'] == false) { if (value.jsonBody['error'] == false) {
// AppState().deleteCliUUID(); AppState().deleteCliUUID();
// AppState().deleteLocal(); AppState().deleteLocal();
// AppState().deleteOwnerUUID(); AppState().deleteOwnerUUID();
context.goNamed( context.goNamed(
'homePage', 'homePage',
extra: <String, dynamic>{ extra: <String, dynamic>{

View File

@ -47,7 +47,6 @@ class PreferencesPageWidget extends StatelessWidget {
), ),
style: FlutterFlowTheme.of(context).headlineMedium.override( style: FlutterFlowTheme.of(context).headlineMedium.override(
fontFamily: 'Nunito', fontFamily: 'Nunito',
fontWeight: FontWeight.bold,
color: FlutterFlowTheme.of(context).primaryText, color: FlutterFlowTheme.of(context).primaryText,
fontSize: 15.0, fontSize: 15.0,
letterSpacing: 0.0, letterSpacing: 0.0,