InjuryOPSettlementService.cs 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. using Newtonsoft.Json.Linq;
  2. using PTMedicalInsurance.Variables;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Linq;
  6. using System.Text;
  7. using System.Threading.Tasks;
  8. namespace PTMedicalInsurance.Business.Local
  9. {
  10. class InjuryOPSettlementService : IChargeService
  11. {
  12. public string Charge(string operationType, JObject joInput)
  13. {
  14. Global.operationType = operationType;
  15. //joInput 包括( data、mdtrtinfo、diseinfo、settlement)
  16. ProcessManager pManager = new ProcessManager()
  17. .Add(new InjuryQueryProcess())
  18. // 门诊登记[MZ002]
  19. .Add(new OPAdmUploadProcess())
  20. // 费用上传[FY001]
  21. .Add(new OPFeeUploadProcess())
  22. // 门诊预结算[FY004]
  23. .Add(new OPPreSettlementProcess())
  24. // 正式结算[FY005]
  25. .Add(new OPSettlementProcess());
  26. // 执行
  27. return pManager.Run(joInput);
  28. }
  29. public string DisCharge(JObject joParam)
  30. {
  31. ProcessManager pManager = new ProcessManager()
  32. // 查询结算信息
  33. .Add(new OPQuerySettlementProcess())
  34. // 门诊结算撤销 [JY002]
  35. .Add(new OPSettlementCancelProcess())
  36. // 费用明细取消[JY001]
  37. .Add(new OPFeeUploadCancelProcess())
  38. // 退HIS结算
  39. .Add(new OPSettlementCancelHisProcess(true));
  40. // 执行
  41. return pManager.Run(joParam);
  42. }
  43. }
  44. }