addNHIF function
Future<void>
addNHIF({
- required BuildContext context,
- required NHIFInformationObject nhifInformation,
Implementation
Future<void> addNHIF({
required BuildContext context,
required NHIFInformationObject nhifInformation,
}) async {
final bool dataValid = nhifInformation.data['patientID'] != null &&
nhifInformation.data['membershipNumber'] != null;
if (dataValid) {
final Map<String, dynamic>? result = await showDialog<Map<String, dynamic>>(
context: context,
barrierDismissible: false,
builder: (BuildContext context) {
return BewellSubmitDialog(
data: addPatientNHIFVariables(nhifInformation.data),
query: addPatientNHIFMutation,
);
},
);
if (result != null && result['addNHIF'] != null) {
ScaffoldMessenger.of(context).showSnackBar(SnackBar(
content: const Text('NHIF saved'),
duration: const Duration(seconds: kLongSnackBarDuration),
action: dismissSnackBar('Ok, thanks', white, context),
));
const int index = PatientRegistrationContainer.extraInformationIndex;
PatientRegistrationContainer.of(context)?.navigate(index);
return;
} else if (result!['error'] != null) {
ScaffoldMessenger.of(context).showSnackBar(SnackBar(
content: Text(UserFeedBackTexts.getErrorMessage('saving NHIF details')),
duration: const Duration(seconds: kLongSnackBarDuration),
action: dismissSnackBar(okMsg, white, context),
));
return;
}
} else {
ScaffoldMessenger.of(context).showSnackBar(const SnackBar(
content: Text(skipNHIF),
duration: Duration(seconds: kLongSnackBarDuration),
));
const int index = PatientRegistrationContainer.extraInformationIndex;
PatientRegistrationContainer.of(context)?.navigate(index);
}
}