Merge pull request #124 from yaso-meth/Bug--Patient-profile-set-up-reload

fix reload on field press
This commit is contained in:
yaso-meth
2025-03-28 11:10:09 +02:00
committed by GitHub
2 changed files with 153 additions and 138 deletions

View File

@@ -26,6 +26,7 @@ class _AddOrViewPatientState extends State<AddOrViewPatient> {
late double width; late double width;
late double height; late double height;
late Widget loading; late Widget loading;
late Future<Patient?> patient;
Future<Patient?> fetchPatient() async { Future<Patient?> fetchPatient() async {
//print("Patien manager page: $endpoint"); //print("Patien manager page: $endpoint");
@@ -55,15 +56,23 @@ class _AddOrViewPatientState extends State<AddOrViewPatient> {
super.dispose(); super.dispose();
} }
@override
void initState() {
// TODO: implement initState
super.initState();
patient = fetchPatient();
}
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
print("AddOrViewPatient");
var size = MediaQuery.of(context).size; var size = MediaQuery.of(context).size;
setState(() { setState(() {
width = size.width; width = size.width;
height = size.height; height = size.height;
}); });
return FutureBuilder( return FutureBuilder(
future: fetchPatient(), future: patient,
builder: (ctx, snapshot) { builder: (ctx, snapshot) {
if (snapshot.connectionState == ConnectionState.done && if (snapshot.connectionState == ConnectionState.done &&
snapshot.hasData) { snapshot.hasData) {

View File

@@ -8,6 +8,7 @@ import 'package:Mzansi_Innovation_Hub/mih_components/mih_layout/mih_action.dart'
import 'package:Mzansi_Innovation_Hub/mih_components/mih_layout/mih_body.dart'; import 'package:Mzansi_Innovation_Hub/mih_components/mih_layout/mih_body.dart';
import 'package:Mzansi_Innovation_Hub/mih_components/mih_layout/mih_header.dart'; import 'package:Mzansi_Innovation_Hub/mih_components/mih_layout/mih_header.dart';
import 'package:Mzansi_Innovation_Hub/mih_components/mih_layout/mih_layout_builder.dart'; import 'package:Mzansi_Innovation_Hub/mih_components/mih_layout/mih_layout_builder.dart';
import 'package:Mzansi_Innovation_Hub/mih_components/mih_layout/mih_single_child_scroll.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';
import 'package:Mzansi_Innovation_Hub/mih_components/mih_pop_up_messages/mih_success_message.dart'; import 'package:Mzansi_Innovation_Hub/mih_components/mih_pop_up_messages/mih_success_message.dart';
import 'package:Mzansi_Innovation_Hub/mih_env/env.dart'; import 'package:Mzansi_Innovation_Hub/mih_env/env.dart';
@@ -158,7 +159,8 @@ class _AddPatientState extends State<AddPatient> {
} }
Widget displayForm() { Widget displayForm() {
return Column( return MihSingleChildScroll(
child: Column(
children: [ children: [
Text( Text(
"Personal Details", "Personal Details",
@@ -169,7 +171,8 @@ class _AddPatientState extends State<AddPatient> {
color: MzanziInnovationHub.of(context)!.theme.secondaryColor(), color: MzanziInnovationHub.of(context)!.theme.secondaryColor(),
), ),
), ),
Divider(color: MzanziInnovationHub.of(context)!.theme.secondaryColor()), Divider(
color: MzanziInnovationHub.of(context)!.theme.secondaryColor()),
const SizedBox(height: 10.0), const SizedBox(height: 10.0),
MIHTextField( MIHTextField(
controller: idController, controller: idController,
@@ -222,7 +225,8 @@ class _AddPatientState extends State<AddPatient> {
color: MzanziInnovationHub.of(context)!.theme.secondaryColor(), color: MzanziInnovationHub.of(context)!.theme.secondaryColor(),
), ),
), ),
Divider(color: MzanziInnovationHub.of(context)!.theme.secondaryColor()), Divider(
color: MzanziInnovationHub.of(context)!.theme.secondaryColor()),
const SizedBox(height: 10.0), const SizedBox(height: 10.0),
MIHDropdownField( MIHDropdownField(
controller: medAidController, controller: medAidController,
@@ -299,6 +303,7 @@ class _AddPatientState extends State<AddPatient> {
), ),
), ),
], ],
),
); );
} }
@@ -393,6 +398,7 @@ class _AddPatientState extends State<AddPatient> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
print("Add Patient");
return MIHLayoutBuilder( return MIHLayoutBuilder(
actionButton: getActionButton(), actionButton: getActionButton(),
header: getHeader(), header: getHeader(),