From 61e7bc10b28f34edf5d98db7435d85d6efb7106e Mon Sep 17 00:00:00 2001 From: Yasien Mac Mini Date: Mon, 17 Mar 2025 14:14:04 +0200 Subject: [PATCH] move icd10 build to package --- .../list_builders/build_icd10_code_list.dart | 75 +++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 Frontend/lib/mih_packages/patient_profile/pat_profile/list_builders/build_icd10_code_list.dart diff --git a/Frontend/lib/mih_packages/patient_profile/pat_profile/list_builders/build_icd10_code_list.dart b/Frontend/lib/mih_packages/patient_profile/pat_profile/list_builders/build_icd10_code_list.dart new file mode 100644 index 00000000..936ae228 --- /dev/null +++ b/Frontend/lib/mih_packages/patient_profile/pat_profile/list_builders/build_icd10_code_list.dart @@ -0,0 +1,75 @@ +import 'package:Mzansi_Innovation_Hub/main.dart'; +import 'package:Mzansi_Innovation_Hub/mih_env/env.dart'; +import 'package:Mzansi_Innovation_Hub/mih_objects/icd10_code.dart.dart'; +import 'package:flutter/material.dart'; + +class BuildICD10CodeList extends StatefulWidget { + final TextEditingController icd10CodeController; + final List icd10codeList; + + const BuildICD10CodeList({ + super.key, + required this.icd10CodeController, + required this.icd10codeList, + }); + + @override + State createState() => _BuildPatientsListState(); +} + +class _BuildPatientsListState extends State { + String baseAPI = AppEnviroment.baseApiUrl; + int counter = 0; + + Widget displayCode(int index) { + String title = "ICD-10 Code: ${widget.icd10codeList[index].icd10}"; + String description = + "Description: ${widget.icd10codeList[index].description}"; + return ListTile( + title: Text( + title, + style: TextStyle( + color: MzanziInnovationHub.of(context)!.theme.secondaryColor(), + ), + ), + subtitle: RichText( + text: TextSpan( + text: description, + style: DefaultTextStyle.of(context).style, + ), + ), + onTap: () { + //select code + setState(() { + widget.icd10CodeController.text = + "${widget.icd10codeList[index].icd10} - ${widget.icd10codeList[index].description}"; + }); + Navigator.of(context).pop(); + }, + ); + } + + @override + void dispose() { + super.dispose(); + } + + @override + Widget build(BuildContext context) { + return ListView.separated( + physics: const NeverScrollableScrollPhysics(), + shrinkWrap: true, + separatorBuilder: (BuildContext context, index) { + return Divider( + color: MzanziInnovationHub.of(context)!.theme.secondaryColor(), + ); + }, + itemCount: widget.icd10codeList.length, + itemBuilder: (context, index) { + //final patient = widget.patients[index].id_no.contains(widget.searchString); + //print(index); + return displayCode(index); + }, + ); + } +}