IPRegCancelProcess.cs 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. using Newtonsoft.Json.Linq;
  2. using PTMedicalInsurance.Helper;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Linq;
  6. using System.Text;
  7. using System.Threading.Tasks;
  8. using System.Windows.Forms;
  9. namespace PTMedicalInsurance.Business
  10. {
  11. class InpatientRegCancelProcess : AbstractProcess
  12. {
  13. public override CallResult Process(JObject input)
  14. {
  15. string errMsg = "";
  16. //取消中心登记
  17. if (cBus.cancleRegister(TradeEnum.InpaitentRegCancel, out outParam) != 0)
  18. {
  19. //如果医保中心没有HIS所传的医保登记信息则默认撤销HIS登记信息
  20. int i = outParam.IndexOf("不存在有效的就诊登记信息");
  21. if (i != 0)
  22. {
  23. if (DialogResult.Yes != MessageBox.Show("医保中心提示:" + outParam + ",是否强制撤销HIS医保登记信息?", "提示", MessageBoxButtons.YesNo))
  24. {
  25. return Exception("中心取消登记失败,", outParam);
  26. }
  27. }
  28. }
  29. //取消医保平台登记
  30. if (mIS.cancleRegister(1, out outParam) != 0)
  31. {
  32. return Exception(-1, "中心取消登记成功,但云医保平台取消失败,", outParam);
  33. }
  34. //取消HIS 登记
  35. if (hIS.cancleRegister(out outParam) != 0)
  36. {
  37. return Exception(-1, "中心和云医保平台取消登记成功,但HIS取消失败,", outParam);
  38. }
  39. else
  40. {
  41. mIS.deleteFee(out errMsg);
  42. return IrisReturn("取消医保登记成功", null);
  43. }
  44. }
  45. }
  46. }