|
@@ -14,7 +14,9 @@ import 'package:vitalapp/architecture/utils/advance_debounce.dart';
|
|
|
import 'package:vitalapp/components/appbar.dart';
|
|
|
import 'package:vitalapp/components/button.dart';
|
|
|
import 'package:vitalapp/components/table/table_column.dart';
|
|
|
+import 'package:vitalapp/managers/interfaces/diagnosis.dart';
|
|
|
import 'package:vitalapp/managers/interfaces/exam.dart';
|
|
|
+import 'package:vitalapp/managers/interfaces/models/diagnosis_aggregation_record_model.dart';
|
|
|
import 'package:vitalapp/managers/interfaces/registration.dart';
|
|
|
import 'package:vitalapp/pages/check/examination/controller.dart';
|
|
|
import 'package:vitalapp/pages/check/examination/view.dart';
|
|
@@ -177,7 +179,7 @@ class ListController {
|
|
|
Positioned(
|
|
|
left: 16,
|
|
|
bottom: 16,
|
|
|
- child: _buildMedicalButton(),
|
|
|
+ child: _buildMedicalButton(rowData.idNumber),
|
|
|
)
|
|
|
],
|
|
|
),
|
|
@@ -205,13 +207,33 @@ class ListController {
|
|
|
);
|
|
|
}
|
|
|
|
|
|
- Widget _buildMedicalButton() {
|
|
|
+ Widget _buildMedicalButton(String patientCode) {
|
|
|
if (_hasHealthMonitor()) {
|
|
|
return Container(
|
|
|
width: 214,
|
|
|
margin: EdgeInsets.only(right: 10),
|
|
|
child: VButton(
|
|
|
onTap: () async {
|
|
|
+ var diagnosis = await Get.find<IDiagnosisManager>()
|
|
|
+ .getDiagnosisAggregationPageAsync(patientCode, 1, 10);
|
|
|
+ if (diagnosis?.pageData?.isNotEmpty ?? false) {
|
|
|
+ try {
|
|
|
+ Map<String, dynamic> diagnosisDataValue = {};
|
|
|
+ for (DiagnosisAggregationRecordModel data
|
|
|
+ in diagnosis!.pageData!) {
|
|
|
+ if (data.diagnosisAggregationData?.isNotEmpty ?? false) {
|
|
|
+ for (DiagnosisAggregationData diaData
|
|
|
+ in data.diagnosisAggregationData!) {
|
|
|
+ diagnosisDataValue[diaData.key ?? ''] =
|
|
|
+ jsonDecode(diaData.diagnosisData ?? '');
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ var medicalController = Get.find<MedicalController>();
|
|
|
+ medicalController.diagnosisDataValue = diagnosisDataValue;
|
|
|
+ } catch (e) {}
|
|
|
+ }
|
|
|
Get.dialog<MedicalController>(
|
|
|
Scaffold(
|
|
|
body: ExamMedicalPage(
|
|
@@ -244,52 +266,6 @@ class ListController {
|
|
|
return hasAuth;
|
|
|
}
|
|
|
|
|
|
- /// 编辑按钮
|
|
|
- // Widget _buildEditRegistration(ResidentModel rowData) {
|
|
|
- // return TextButton(
|
|
|
- // onPressed: () async {
|
|
|
- // final PatientDTO? patient = PatientDTO(
|
|
|
- // patientName: rowData.name,
|
|
|
- // phone: rowData.phone,
|
|
|
- // patientAddress: rowData.homeAddress,
|
|
|
- // cardNo: rowData.idNumber,
|
|
|
- // code: rowData.code,
|
|
|
- // birthday: rowData.birthDay,
|
|
|
- // patientGender: rowData.sex == "男"
|
|
|
- // ? GenderEnum.Male
|
|
|
- // : rowData.sex == "女"
|
|
|
- // ? GenderEnum.Female
|
|
|
- // : GenderEnum.Unknown,
|
|
|
- // );
|
|
|
- // bool isTempPutRegController = false;
|
|
|
- // if (!Get.isRegistered<RegistrationController>()) {
|
|
|
- // Get.put(RegistrationController());
|
|
|
- // isTempPutRegController = true;
|
|
|
- // }
|
|
|
- // final PatientDTO? result = await Get.dialog<PatientDTO>(
|
|
|
- // RegistrationFormDialog(
|
|
|
- // patient: patient,
|
|
|
- // isEdit: true,
|
|
|
- // ),
|
|
|
- // barrierDismissible: false,
|
|
|
- // );
|
|
|
-
|
|
|
- // await Get.find<RegistrationController>()
|
|
|
- // .formController
|
|
|
- // .editResident(result);
|
|
|
- // //controller.editResident(result);
|
|
|
- // if (isTempPutRegController) {
|
|
|
- // Get.delete<RegistrationController>();
|
|
|
- // }
|
|
|
- // await controller.initData();
|
|
|
- // },
|
|
|
- // child: const Text(
|
|
|
- // "编辑",
|
|
|
- // style: TextStyle(fontSize: 18),
|
|
|
- // ),
|
|
|
- // );
|
|
|
- // }
|
|
|
-
|
|
|
/// 查看报告
|
|
|
Widget _buildShowReport(ResidentModel rowData) {
|
|
|
return TextButton(
|