controller.dart 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. import 'package:fis_jsonrpc/rpc.dart';
  2. import 'package:get/get.dart';
  3. import 'package:vitalapp/architecture/defines.dart';
  4. import 'package:vitalapp/managers/interfaces/contract.dart';
  5. import 'state.dart';
  6. class ContractRecordsHtmlController extends FControllerBase {
  7. final state = ContractRecordsHtmlState();
  8. final _contractManager = Get.find<IContractManager>();
  9. late String contractCode;
  10. @override
  11. void onReady() {
  12. super.onReady();
  13. _initData();
  14. getContractRecordDetailAsync(contractCode);
  15. }
  16. _initData() {
  17. update(["contract_records"]);
  18. final p = Get.parameters;
  19. contractCode = p['contractCode'] ?? "";
  20. }
  21. Future<void> getContractRecordDetailAsync(String patientCode) async {
  22. busy = true;
  23. var result =
  24. await _contractManager.getContractRecordDetailAsync(patientCode);
  25. if (result != null) {
  26. state.contractRecordDTO = result;
  27. }
  28. busy = false;
  29. }
  30. Future<bool> updateContractRecordStateAsync(String reason) async {
  31. var result = await _contractManager.updateContractRecordStateAsync(
  32. contractCode, ContractStateEnum.Cancelled, reason);
  33. return result;
  34. }
  35. ///续约
  36. Future<String> renewalContractRecordAsync() async {
  37. var result =
  38. await _contractManager.renewalContractRecordAsync(contractCode);
  39. return result;
  40. }
  41. }