update access controls nav

This commit is contained in:
2025-09-09 11:45:09 +02:00
parent 774ac4be74
commit b3845489d7
4 changed files with 41 additions and 18 deletions

View File

@@ -1,5 +1,6 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:go_router/go_router.dart'; import 'package:go_router/go_router.dart';
import 'package:ken_logger/ken_logger.dart';
import 'package:mzansi_innovation_hub/main.dart'; import 'package:mzansi_innovation_hub/main.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_alert.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_alert.dart';
import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart'; import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart';
@@ -15,11 +16,13 @@ import 'package:mzansi_innovation_hub/mih_components/mih_objects/patient_access.
class BuildBusinessAccessList extends StatefulWidget { class BuildBusinessAccessList extends StatefulWidget {
final List<PatientAccess> patientAccessList; final List<PatientAccess> patientAccessList;
final AppUser signedInUser; final AppUser signedInUser;
final void Function()? onSuccessUpate;
const BuildBusinessAccessList({ const BuildBusinessAccessList({
super.key, super.key,
required this.patientAccessList, required this.patientAccessList,
required this.signedInUser, required this.signedInUser,
required this.onSuccessUpate,
}); });
@override @override
@@ -354,6 +357,7 @@ class _BuildPatientsListState extends State<BuildBusinessAccessList> {
context, context,
); );
if (statusCode == 200) { if (statusCode == 200) {
context.pop();
successPopUp("Successfully Actioned Request", successPopUp("Successfully Actioned Request",
"You have successfully Declined access request"); "You have successfully Declined access request");
} else { } else {
@@ -389,6 +393,7 @@ class _BuildPatientsListState extends State<BuildBusinessAccessList> {
context, context,
); );
if (statusCode == 200) { if (statusCode == 200) {
context.pop();
successPopUp("Successfully Actioned Request", successPopUp("Successfully Actioned Request",
"You have successfully Accepted access request"); "You have successfully Accepted access request");
} else { } else {
@@ -452,10 +457,10 @@ class _BuildPatientsListState extends State<BuildBusinessAccessList> {
child: MihButton( child: MihButton(
onPressed: () { onPressed: () {
context.pop(); context.pop();
context.goNamed( KenLogger.warning("dismissing pop up and refreshing list");
"mihAccess", if (widget.onSuccessUpate != null) {
extra: widget.signedInUser, widget.onSuccessUpate!();
); }
}, },
buttonColor: MihColors.getGreenColor( buttonColor: MihColors.getGreenColor(
MzansiInnovationHub.of(context)!.theme.mode == "Dark"), MzansiInnovationHub.of(context)!.theme.mode == "Dark"),

View File

@@ -1,3 +1,5 @@
import 'package:go_router/go_router.dart';
import 'package:ken_logger/ken_logger.dart';
import 'package:mzansi_innovation_hub/main.dart'; import 'package:mzansi_innovation_hub/main.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_icons.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_icons.dart';
import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart'; import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart';
@@ -5,7 +7,6 @@ import 'package:mzansi_innovation_hub/mih_services/mih_validation_services.dart'
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_single_child_scroll.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_single_child_scroll.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_dropdwn_field.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_dropdwn_field.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_tool_body.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_tool_body.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_objects/arguments.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import '../../../mih_services/mih_service_calls.dart'; import '../../../mih_services/mih_service_calls.dart';
import '../../../mih_components/mih_layout/mih_action.dart'; import '../../../mih_components/mih_layout/mih_action.dart';
@@ -105,12 +106,11 @@ class _MihAccessRequestState extends State<MihAccessRequest> {
icon: const Icon(Icons.arrow_back), icon: const Icon(Icons.arrow_back),
iconSize: 35, iconSize: 35,
onTap: () { onTap: () {
Navigator.of(context).pop(); context.goNamed(
'mihHome',
Navigator.of(context).popAndPushNamed( extra: false,
'/',
arguments: AuthArguments(true, false),
); );
FocusScope.of(context).unfocus();
}, },
); );
} }
@@ -164,6 +164,7 @@ class _MihAccessRequestState extends State<MihAccessRequest> {
setState(() { setState(() {
forceRefresh = true; forceRefresh = true;
}); });
KenLogger.warning("Refreshing Access List");
refreshList(); refreshList();
}, },
icon: const Icon( icon: const Icon(
@@ -186,6 +187,12 @@ class _MihAccessRequestState extends State<MihAccessRequest> {
return BuildBusinessAccessList( return BuildBusinessAccessList(
signedInUser: widget.signedInUser, signedInUser: widget.signedInUser,
patientAccessList: accessRequestList, patientAccessList: accessRequestList,
onSuccessUpate: () {
setState(() {
forceRefresh = true;
});
refreshList();
},
); );
} else { } else {
return Padding( return Padding(

View File

@@ -1,5 +1,6 @@
import 'dart:convert'; import 'dart:convert';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:go_router/go_router.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_objects/app_user.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_objects/app_user.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_loading_circle.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_loading_circle.dart';
import 'package:mzansi_innovation_hub/mih_config/mih_env.dart'; import 'package:mzansi_innovation_hub/mih_config/mih_env.dart';
@@ -45,6 +46,7 @@ class MihAccessControlsServices {
"approved_by": approved_by, "approved_by": approved_by,
}), }),
); );
context.pop();
return response.statusCode; return response.statusCode;
// if (response.statusCode == 200) { // if (response.statusCode == 200) {
// //Navigator.of(context).pushNamed('/home'); // //Navigator.of(context).pushNamed('/home');

View File

@@ -1,5 +1,6 @@
import 'dart:convert'; import 'dart:convert';
import 'package:go_router/go_router.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_objects/arguments.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_objects/arguments.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_objects/notification.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_objects/notification.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_error_message.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_error_message.dart';
@@ -61,10 +62,9 @@ class MihNotificationApis {
String message = String message =
"A request has been sent to the patient advising that you have requested access to their profile. Only once access has been granted will you be able to book an appointment."; "A request has been sent to the patient advising that you have requested access to their profile. Only once access has been granted will you be able to book an appointment.";
Navigator.of(context).pop(); Navigator.of(context).pop();
Navigator.of(context).pop(); context.goNamed(
Navigator.of(context).pushNamed( 'patientManager',
'/patient-manager', extra: PatManagerArguments(
arguments: PatManagerArguments(
args.signedInUser, args.signedInUser,
personalSelected, personalSelected,
args.business, args.business,
@@ -108,16 +108,25 @@ class MihNotificationApis {
String message = String message =
"A request has been sent to the patient advising that you have re-applied for access to their profile. Only once access has been granted will you be able to book an appointment."; "A request has been sent to the patient advising that you have re-applied for access to their profile. Only once access has been granted will you be able to book an appointment.";
Navigator.of(context).pop(); Navigator.of(context).pop();
Navigator.of(context).pop(); context.goNamed(
Navigator.of(context).pushNamed( 'patientManager',
'/patient-manager', extra: PatManagerArguments(
arguments: PatManagerArguments(
args.signedInUser, args.signedInUser,
personalSelected, personalSelected,
args.business, args.business,
args.businessUser, args.businessUser,
), ),
); );
// Navigator.of(context).pop();
// Navigator.of(context).pushNamed(
// '/patient-manager',
// arguments: PatManagerArguments(
// args.signedInUser,
// personalSelected,
// args.business,
// args.businessUser,
// ),
// );
successPopUp(message, context); successPopUp(message, context);
} else { } else {
internetConnectionPopUp(context); internetConnectionPopUp(context);