import 'dart:convert'; import 'package:get/get.dart'; import 'package:vitalapp/architecture/defines.dart'; import 'package:vitalapp/architecture/utils/prompt_box.dart'; import 'package:vitalapp/consts/diagnosis.dart'; import 'package:vitalapp/global.dart'; import 'package:vitalapp/managers/interfaces/diagnosis.dart'; import 'package:vitalapp/managers/interfaces/dictionary.dart'; import 'package:vitalapp/managers/interfaces/models/diagnosis_aggregation_record_model.dart'; import 'package:vitalapp/pages/medical/records/state.dart'; class MedicalRecordsController extends FControllerBase { final state = MedicalRecordsState(); final _diagnosisManager = Get.find(); final _dictionaryManager = Get.find(); late String patientCode; @override void onReady() { super.onReady(); final p = Get.parameters; patientCode = p['patientCode'] ?? ""; _loadData(); } _loadData() async { try { state.pageIndex = 0; state.dataList = []; var listRecord = await _diagnosisManager.getListByPatientCode(patientCode); if (listRecord != null) { state.appendDataList(listRecord); } await loadNextPageList(); } catch (e) {} } Future loadNextPageList() async { var result = await _diagnosisManager.getDiagnosisAggregationPageAsync( patientCode, state.pageIndex + 1, state.pageSize); if (result != null) { state.totalCount = result.dataCount; if (result.pageData != null) { state.pageIndex = state.pageIndex + 1; state.appendDataList(result.pageData!); } } } Future>> getTableData( DiagnosisAggregationRecordModel dto) async { var currentDiagnosis = await _diagnosisManager.getTableData(dto); return currentDiagnosis; } Future removeRecord(String appDataId) async { setBusy("正在删除..."); final result = await _diagnosisManager.removeDiagnosis(appDataId); cancelBusy(); if (result) { PromptBox.toast("删除成功"); await Future.delayed(const Duration(milliseconds: 500)); await _loadData(); } else { PromptBox.toast("删除失败"); } } }