From c51707519748be5634f81e5d13bfd4da03d7b1c4 Mon Sep 17 00:00:00 2001 From: Yasien Mac Mini Date: Mon, 17 Nov 2025 11:17:16 +0200 Subject: [PATCH] QOL: MIH Acces Controls get data on package open --- .../access_review/mih_access.dart | 53 ++++++++++++++++--- 1 file changed, 45 insertions(+), 8 deletions(-) diff --git a/Frontend/lib/mih_packages/access_review/mih_access.dart b/Frontend/lib/mih_packages/access_review/mih_access.dart index 73d4e325..35a6023c 100644 --- a/Frontend/lib/mih_packages/access_review/mih_access.dart +++ b/Frontend/lib/mih_packages/access_review/mih_access.dart @@ -2,9 +2,12 @@ import 'package:go_router/go_router.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_action.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_tools.dart'; +import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_loading_circle.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_providers/mih_access_controlls_provider.dart'; +import 'package:mzansi_innovation_hub/mih_components/mih_providers/mzansi_profile_provider.dart'; import 'package:mzansi_innovation_hub/mih_packages/access_review/package_tools/mih_access_requests.dart'; import 'package:flutter/material.dart'; +import 'package:mzansi_innovation_hub/mih_services/mih_data_helper_services.dart'; import 'package:provider/provider.dart'; class MihAccess extends StatefulWidget { @@ -17,16 +20,50 @@ class MihAccess extends StatefulWidget { } class _MihAccessState extends State { + bool _isLoadingInitialData = true; + + Future _loadInitialData() async { + setState(() { + _isLoadingInitialData = true; + }); + MzansiProfileProvider mzansiProfileProvider = + context.read(); + await MihDataHelperServices().loadUserDataOnly( + mzansiProfileProvider, + ); + setState(() { + _isLoadingInitialData = false; + }); + } + + @override + void initState() { + super.initState(); + _loadInitialData(); + } + @override Widget build(BuildContext context) { - return MihPackage( - appActionButton: getAction(), - appTools: getTools(), - appBody: getToolBody(), - appToolTitles: getToolTitle(), - selectedbodyIndex: context.watch().toolIndex, - onIndexChange: (newValue) { - context.read().setToolIndex(newValue); + return Consumer( + builder: (BuildContext context, MihAccessControllsProvider accessProvider, + Widget? child) { + if (_isLoadingInitialData) { + return Scaffold( + body: Center( + child: Mihloadingcircle(), + ), + ); + } + return MihPackage( + appActionButton: getAction(), + appTools: getTools(), + appBody: getToolBody(), + appToolTitles: getToolTitle(), + selectedbodyIndex: accessProvider.toolIndex, + onIndexChange: (newValue) { + accessProvider.setToolIndex(newValue); + }, + ); }, ); }