Browse Source

1.慢病用药查询优化:选择省市任意接口查不到参保信息主动去查另一接口
2.追溯:增加2207和2304接口上传药品和耗材应传追溯码数量

zzz 3 weeks ago
parent
commit
d64200cf5a
5 changed files with 465 additions and 422 deletions
  1. 5 0
      Business/HisMainBusiness.cs
  2. 33 1
      Forms/MedInsuQuery.cs
  3. 421 421
      Forms/MedInsuQuery.designer.cs
  4. 4 0
      InsuBusiness.cs
  5. 2 0
      Variables/Struct.cs

+ 5 - 0
Business/HisMainBusiness.cs

@@ -1273,6 +1273,8 @@ namespace PTMedicalInsurance.Business
                     joSetlInpar.Add("overlmt_selfpay", JsonHelper.getDestValue(joSumFee, "data.OverLimitAmount"));
                     joSetlInpar.Add("preselfpay_amt", JsonHelper.getDestValue(joSumFee, "data.PreSelfPayAmount"));
                     joSetlInpar.Add("dscgTime", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
+                    joSetlInpar.Add("minpacunt_drug_trac_cnt", Global.Set.minpacunt_drug_trac_cnt);//mcs_trac_cnt药品应传追溯码结算数量
+                    joSetlInpar.Add("mcs_trac_cnt", Global.Set.mcs_trac_cnt);//应传耗材追溯码结算数量
                     JObject joDataExp = new JObject();
                     //joDataExp.Add("acct_payamt", "0.00");
                     //joDataExp.Add("cla_trt_flag", "");
@@ -1284,6 +1286,7 @@ namespace PTMedicalInsurance.Business
                     joDataExp.Add("drt_setl_type_flag", 0);
                     // IPT_TYPE 住院类型 1  普通住院 2 急诊或抢救住院 3 转院住院 0无   
                     //DRT_SETL_TYPE_FLAG直接结算分类标志 1 免备案
+                   
 
                     joSetlInpar.Add("exp_content", joDataExp); //11111
                     JObject joOut = new JObject();
@@ -1476,6 +1479,8 @@ namespace PTMedicalInsurance.Business
                     joDataExp.Add("drt_setl_type_flag", 0);
                     // IPT_TYPE 住院类型 1  普通住院 2 急诊或抢救住院 3 转院住院 0无   
                     //DRT_SETL_TYPE_FLAG直接结算分类标志 1 免备案
+                    joSetlInpar.Add("minpacunt_drug_trac_cnt", Global.Set.minpacunt_drug_trac_cnt);//mcs_trac_cnt
+                    joSetlInpar.Add("mcs_trac_cnt", Global.Set.mcs_trac_cnt);//应传耗材追溯码结算数量
 
                     joSetlInpar.Add("exp_content", joDataExp); //11111
 

+ 33 - 1
Forms/MedInsuQuery.cs

@@ -35,6 +35,7 @@ namespace PTMedicalInsurance.Forms
         private HisIrisServices hIS = new HisIrisServices();
         private MIIrisServices mIS = new MIIrisServices();
         HisMainBusiness hBus = new HisMainBusiness();
+        CenterBusiness cBus = new CenterBusiness();
 
         public MedInsuQuery()
         {
@@ -1250,10 +1251,12 @@ namespace PTMedicalInsurance.Forms
 
             if (Global.inf.areaCode == "340100")
             {
+                Global.inf.interfaceDr = 17;
                 Global.inf.areaCode = "340100";
                 Global.inf.centerURL = "http://10.67.240.74:8086/1.0.0/hsa-fsi-";
             }else
             {
+                Global.inf.interfaceDr = 15;
                 Global.inf.areaCode = "349900";
                 Global.inf.centerURL = "http://10.66.155.173:8086/1.0.0/hsa-fsi-";
             }
@@ -1273,16 +1276,45 @@ namespace PTMedicalInsurance.Forms
 
                     if (Global.inf.areaCode == "349900")
                     {
+                    Global.inf.interfaceDr = 17;
+                    Global.pat.insuplc_admdvs = "340100";
                     Global.inf.areaCode = "340100";
                     Global.inf.centerURL = "http://10.67.240.74:8086/1.0.0/hsa-fsi-";
                     }
                      else
                    {
                     Global.inf.areaCode = "349900";
+                    Global.pat.insuplc_admdvs = "349900";
                     Global.inf.centerURL = "http://10.66.155.173:8086/1.0.0/hsa-fsi-";
+                    Global.inf.interfaceDr = 15;
                      }
 
-                      joRtn = invoker.invokeCenterService("1101", JsonHelper.setCenterInpar("1101", joInput));
+
+        
+                //签到
+                if (cBus.signIn(out joRtn) != 0)
+                {
+                    MessageBox.Show("医保签到异常,请检查医保环境!");
+                }
+                else
+                {
+                    Global.curEvt.signno = JsonHelper.getDestValue(joRtn, "output.signinoutb.sign_no");
+
+                    //插入签到表
+                    if (mIS.saveSignRecord(Global.curEvt.signno, out errMsg) != 0)
+                    {
+                        //MessageBox.Show("中心签到成功但插入签到表失败!");
+                    }
+                    else
+                    {
+                      //签到成功
+                    }
+                }
+
+
+
+
+                joRtn = invoker.invokeCenterService("1101", JsonHelper.setCenterInpar("1101", joInput));
 
 
                     outParam = joRtn.ToString();

File diff suppressed because it is too large
+ 421 - 421
Forms/MedInsuQuery.designer.cs


+ 4 - 0
InsuBusiness.cs

@@ -855,6 +855,8 @@ namespace PTMedicalInsurance
                         }
                     case "M5"://门诊结算
                         {
+                            Global.Set.minpacunt_drug_trac_cnt = JsonHelper.getDestValue(joInParam, "insuAdmObj.minpacunt_drug_trac_cnt");//应传药品追溯码结算数量
+                            Global.Set.mcs_trac_cnt = JsonHelper.getDestValue(joInParam, "insuAdmObj.mcs_trac_cnt");//应传耗材追溯码结算数量
                             #region 【读卡】
                             string patInfo = "";
 
@@ -1359,6 +1361,8 @@ namespace PTMedicalInsurance
                         }
                     case "Z5"://住院结算
                         {
+                            Global.Set.minpacunt_drug_trac_cnt = JsonHelper.getDestValue(joInParam, "insuAdmObj.minpacunt_drug_trac_cnt");//应传药品追溯码结算数量
+                            Global.Set.mcs_trac_cnt = JsonHelper.getDestValue(joInParam, "insuAdmObj.mcs_trac_cnt");//应传耗材追溯码结算数量
                             Global.pat.admType = 2;
                             Global.pat.RYorCY = "2";
 

+ 2 - 0
Variables/Struct.cs

@@ -253,6 +253,8 @@ namespace PTMedicalInsurance.Variables
 
         public string dspoWay; //1继续执行 2修改医嘱
         public string dspoWayRea;
+        public string minpacunt_drug_trac_cnt; //本次结算应上传最小包装追溯码数量
+        public string mcs_trac_cnt; //本次结算应上传耗材追溯码数量
     }
 
     //当前环境实时信息

Some files were not shown because too many files changed in this diff