Browse Source

事前事中业务更新

837390164@qq.com 9 months ago
parent
commit
ebf155c1db

+ 61 - 1
Business/HisMainBusiness.cs

@@ -129,6 +129,7 @@ namespace PTMedicalInsurance.Business
             inf.areaCode = JsonHelper.getDestValue(joInpar, "AreaCode");
             inf.dllName = JsonHelper.getDestValue(joInpar, "DLLName");
             inf.hospitalNO = JsonHelper.getDestValue(joInpar, "HospitalNO");
+            inf.HospitalLevel = JsonHelper.getDestValue(joInpar, "HospitalLevel");
             inf.version = "v1.0";
             inf.signatureType = "SM2";
             inf.recivedSystem = "YBXT";
@@ -180,6 +181,7 @@ namespace PTMedicalInsurance.Business
             inf.areaCode = JsonHelper.getDestValue(joInpar, "areaCode");
             inf.dllName = JsonHelper.getDestValue(joInpar, "dLLName");
             inf.hospitalNO = JsonHelper.getDestValue(joInpar, "hospitalNO");
+            inf.HospitalLevel = JsonHelper.getDestValue(joInpar, "HospitalLevel");
             inf.version = "v1.0";
             inf.signatureType = "SM2";
             inf.recivedSystem = "YBXT";
@@ -1739,7 +1741,16 @@ namespace PTMedicalInsurance.Business
                         PreAndInProcessAnalysisForm paipaForm = new PreAndInProcessAnalysisForm(joRtn);
                         if (paipaForm.ShowDialog() == DialogResult.OK)
                         {
-                            return 0;
+                            //【3103】事前事中服务反馈服务
+                            if (PreAnalysisFeedBack("3101", paipaForm.JrID, out outparam) != 0)
+                            {
+                                outparam = "【3103】事前事中服务反馈服务" + outparam;
+                                return -1;
+                            }
+                            else
+                            {
+                                return 0;
+                            }
                         }
                         else
                         {
@@ -1796,6 +1807,55 @@ namespace PTMedicalInsurance.Business
             }
         }
 
+        public int PreAnalysisFeedBack(string funNo, string jrId, out string outparam)
+        {
+            outparam = "";
+            try
+            {
+                outparam = "";
+                string WarnType = "";
+                //【3103】事前事中服务反馈服务
+                if (funNo == "3101")
+                    WarnType = "1";
+                else
+                if (funNo == "3102")
+                    WarnType = "2";
+
+                JObject joInput3103Warns = new JObject();
+                joInput3103Warns.Add("warn_rslt_id", jrId);
+                joInput3103Warns.Add("dspo_way", Global.Set.dspoWay);
+                joInput3103Warns.Add("dspo_way_rea", Global.Set.dspoWayRea);
+
+                JArray ja3103Warns = new JArray();
+                ja3103Warns.Add(joInput3103Warns);
+
+                JObject joInput3103 = new JObject();
+                joInput3103.Add("warn_type", WarnType); //反馈类型 1.事前 2.事中
+                joInput3103.Add("warns", ja3103Warns);
+
+                JObject joInput = new JObject();
+                joInput.Add("data", joInput3103);
+
+                JObject jo3103Rtn = invoker.invokeCenterService("3103", JsonHelper.setCenterInpar("3103", joInput.ToString()));
+                if (JsonHelper.parseCenterRtnValue(jo3103Rtn, out string errMsg) != 0)
+                {
+                    outparam = JsonHelper.setExceptionJson(-1, "【3103】事前事中服务反馈服务调用失败:", errMsg).ToString();
+                    return -1;
+                }
+
+                return 0;
+            }
+            catch (Exception ex)
+            {
+                outparam = ex.Message;
+                return -1;
+            }
+            finally
+            {
+                Global.writeLog("PreAnalysisFeedBack", "", outparam);
+            }
+        }
+
         public void GetAgentFunHisInfo(string businessType, JObject joInparam, out Patients pat)
         {
             pat = new Patients();

+ 3 - 2
Business/PreAndInProcessAnalysis.cs

@@ -140,12 +140,13 @@ namespace PTMedicalInsurance.Business
                 JObject joInpar = new JObject();
                 string mdtrtID = p.mdtrtID;
                 if (string.IsNullOrEmpty(mdtrtID)) mdtrtID = Global.pat.adm_Dr.ToString();
+                if (string.IsNullOrEmpty(Global.inf.HospitalLevel)) Global.inf.HospitalLevel = "2";
                 joInpar.Add("mdtrt_id", mdtrtID);  //就诊标识
                 joInpar.Add("medins_id", Global.inf.hospitalNO);  //医疗服务机构标识
                 joInpar.Add("medins_name", Global.inf.hospitalName);  //医疗机构名称
                 joInpar.Add("medins_admdvs", Global.inf.areaCode);  //医疗机构行政区划编码
-                joInpar.Add("medins_type", "A");  //医疗服务机构类型
-                joInpar.Add("medins_lv", "03");  //医疗机构等级
+                joInpar.Add("medins_type", "A512");  //医疗服务机构类型
+                joInpar.Add("medins_lv", Global.inf.HospitalLevel);  //医疗机构等级
                 joInpar.Add("wardarea_codg", JsonHelper.getDestValue(jofsi_encounter_dtos, "wardarea_codg"));  //病区标识
                 joInpar.Add("wardno", JsonHelper.getDestValue(jofsi_encounter_dtos, "wardno"));  //病房号
                 joInpar.Add("bedno", JsonHelper.getDestValue(jofsi_encounter_dtos, "bedno"));  //病床号

+ 1 - 0
Variables/Struct.cs

@@ -38,6 +38,7 @@ namespace PTMedicalInsurance.Variables
         public int hisHospitalDr;
         public int hospitalDr;
         public string hospitalName;
+        public string HospitalLevel;
         public string hospitalNO;
         public string centerURL;
         public string centerURL2;

BIN
obj/Debug/WuLuMuQiMI.dll


BIN
obj/Debug/WuLuMuQiMI.pdb