AbstractProcess.cs 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. using Newtonsoft.Json.Linq;
  2. using PTMedicalInsurance.Entity;
  3. using PTMedicalInsurance.Helper;
  4. using PTMedicalInsurance.Variables;
  5. using System;
  6. using System.Collections.Generic;
  7. using System.Linq;
  8. using System.Text;
  9. using System.Threading.Tasks;
  10. namespace PTMedicalInsurance.Business
  11. {
  12. abstract class AbstractProcess
  13. {
  14. protected CenterBusiness cBus = new CenterBusiness();
  15. protected HisMainBusiness hBus = new HisMainBusiness();
  16. protected HisIrisServices hIS = new HisIrisServices();
  17. protected MIIrisServices mIS = new MIIrisServices();
  18. protected InvokeHelper invoker = new InvokeHelper();
  19. protected string outParam = "";
  20. protected string errMsg = "";
  21. public JObject OrginalInput { set; get; }
  22. /// <summary>
  23. /// 使用原始参数
  24. /// </summary>
  25. public bool UseOrginal {
  26. get;set;
  27. }
  28. /// <summary>
  29. /// 合并原始参数
  30. /// </summary>
  31. public bool MergeOrginal
  32. {
  33. get; set;
  34. }
  35. /// <summary>
  36. /// 返回成功信息
  37. /// </summary>
  38. /// <returns></returns>
  39. protected CallResult Success()
  40. {
  41. return Success("成功");
  42. }
  43. protected CallResult Success(string msg)
  44. {
  45. Global.writeLog(this.GetType().Name, msg, outParam);
  46. return new CallResult(0, msg, outParam);
  47. }
  48. protected CallResult Exception(int code, string errMsg, string param)
  49. {
  50. outParam = JsonHelper.setExceptionJson(code, errMsg, param).ToString();
  51. Global.writeLog(this.GetType().Name, errMsg, outParam);
  52. return new CallResult(code, errMsg, outParam, param);
  53. }
  54. /// <summary>
  55. /// 解析中心返回结果
  56. /// </summary>
  57. /// <param name="outData"></param>
  58. /// <param name="re"></param>
  59. /// <returns></returns>
  60. protected CallResult Parse(string outData)
  61. {
  62. BaseResult br = JsonHelper.toObject<BaseResult>(JObject.Parse(outData));
  63. return new CallResult(br.infcode, br.err_msg, br.output.ToString(), outData);
  64. }
  65. protected CallResult Parse(JObject outData)
  66. {
  67. return Parse(outData.ToString());
  68. }
  69. /// <summary>
  70. /// 返回失败信息
  71. /// </summary>
  72. /// <param name="code"></param>
  73. /// <param name="errMsg"></param>
  74. /// <returns></returns>
  75. protected CallResult Error(int code, string errMsg)
  76. {
  77. return Exception(code, errMsg, outParam);
  78. }
  79. protected CallResult Exception(string errMsg, string param)
  80. {
  81. return Exception(-1, errMsg, param);
  82. }
  83. protected CallResult Exception(string errMsg)
  84. {
  85. return Exception(-1, errMsg, outParam);
  86. }
  87. protected CallResult Exception()
  88. {
  89. return Exception(-1, "", outParam);
  90. }
  91. protected CallResult IrisReturn(string msg,JObject obj)
  92. {
  93. outParam = JsonHelper.setIrisReturnValue(0, msg, obj).ToString();
  94. return new CallResult(0, msg, outParam,obj);
  95. }
  96. /// <summary>
  97. /// 返回失败信息
  98. /// </summary>
  99. /// <param name="errMsg"></param>
  100. /// <returns></returns>
  101. protected CallResult Error(string errMsg)
  102. {
  103. return Error(-1, errMsg);
  104. }
  105. /// <summary>
  106. /// 业务过程
  107. /// </summary>
  108. /// <param name="input"></param>
  109. /// <returns></returns>
  110. public abstract CallResult Process(JObject input);
  111. }
  112. }