xiaochan 3 роки тому
батько
коміт
38e1bac73c

+ 0 - 9
src/main/java/thyyxxk/webserver/dao/his/PublicDao.java

@@ -113,15 +113,6 @@ public interface PublicDao {
     @Select("select max(admiss_times) from zy_patient where inpatient_no = #{inpatientNo} ")
     Integer getAdmissTimes(@Param("inpatientNo") String inpatientNo);
 
-
-    @Select("select ori_detail_sn from zy_detail_charge " +
-            "where  inpatient_no = #{inpatientNo} and admiss_times = #{admissTimes} and ledger_sn =  #{ledgerSn} " +
-            "  and charge_fee < 0 " +
-            "group by ori_detail_sn having count(1) >  1")
-    List<Integer> chongFuTuiFei(@Param("inpatientNo") String inpatientNo,
-                                @Param("admissTimes") Integer admissTimes,
-                                @Param("ledgerSn") Integer ledgerSn);
-
     @Select("select inpatient_no,admiss_times,ledger_sn,detail_sn,charge_code_mx,sum(charge_fee) yi_tui_fei from (       " +
             "    select inpatient_no,admiss_times,ledger_sn,detail_sn,charge_code_mx,charge_fee       " +
             "    from zy_detail_charge where   " +

+ 2 - 2
src/main/java/thyyxxk/webserver/dao/his/yibao/XiangMuLuRuDao.java

@@ -1037,7 +1037,7 @@ public interface XiangMuLuRuDao extends BaseMapper<ZyDetailCharge> {
             "  and charge_fee &lt; 0 and charge_code not like 'BILL%' " +
             "  and  trans_flag_yb not in (1,2) " +
             "  and ori_detail_sn is null " +
-            "<if test=\"chuYuanYiZhu == 1\">" +
+            "<if test=\"chuYuanYiZhu == 0\">" +
             "  and CONVERT(varchar(100), charge_date, 23) &lt;= CONVERT(varchar(100), GETDATE(), 23)" +
             "</if>" +
             "<if test=\"list.size >0 \">" +
@@ -1063,7 +1063,7 @@ public interface XiangMuLuRuDao extends BaseMapper<ZyDetailCharge> {
             "  and charge_fee &lt; 0 and charge_code  like 'BILL%' " +
             "  and  trans_flag_yb not in (1,2) " +
             "  and ori_detail_sn is null" +
-            "<if test=\"chuYuanYiZhu == 1\">" +
+            "<if test=\"chuYuanYiZhu == 0\">" +
             "  and CONVERT(varchar(100), charge_date, 23) &lt;= CONVERT(varchar(100), GETDATE(), 23)" +
             "</if>" +
             "<if test=\"list.size > 0 \">" +

+ 2 - 0
src/main/java/thyyxxk/webserver/entity/yibao/ZyActpatient.java

@@ -34,6 +34,8 @@ public class ZyActpatient implements Serializable {
      */
     private Integer chuYuanYiZhu;
 
+    private Integer infantFlag;
+
     private String reqExecUnit;
 
     @TableField(exist = false)

+ 2 - 0
src/main/java/thyyxxk/webserver/service/PublicServer.java

@@ -236,6 +236,8 @@ public class PublicServer {
         if (zyActpatient == null) {
             throw new BizException(ExceptionEnum.NULL_POINTER, "没有查询到患者的基本信息。");
         }
+        zyActpatient.setInfantFlag(getInfantFlag(zyActpatient.getInpatientNo()));
+        zyActpatient.setInpatientNo(getInpatientNo(zyActpatient.getInpatientNo()));
         return zyActpatient;
     }
 

+ 9 - 13
src/main/java/thyyxxk/webserver/service/yibao/XiangMuLuRuService.java

@@ -613,33 +613,29 @@ public class XiangMuLuRuService {
     @Transactional(rollbackFor = Exception.class)
     public ResultVo<ZyActpatient> weiGuiFeiYongFenXi(String inpatientNo, String execUnit) {
         ZyActpatient patient = publicServer.huoQuHuanZheXinXi(inpatientNo);
-        inpatientNo = publicServer.getInpatientNo(inpatientNo);
-        int infantFlag = publicServer.getInfantFlag(inpatientNo);
-        Integer ledger = publicServer.getLedgerSn(inpatientNo, patient.getAdmissTimes());
         List<String> keShi = publicServer.huoQuBingFangDeKeShi(execUnit);
-        publicServer.genXingYuanLiuShuiBiaoZhi(inpatientNo, patient.getAdmissTimes(), ledger);
+        publicServer.genXingYuanLiuShuiBiaoZhi(patient.getInpatientNo(), patient.getAdmissTimes(), patient.getLedgerSn());
         // 药品 分大包装和小包装 可能大包装 匹配了 小包装没有 匹配 所以这里编码同步 一下
-        List<Integer> yaoPingBianMaTongBu = dao.weiGuiYaoPinInt(inpatientNo, patient.getAdmissTimes(), ledger, infantFlag);
-
-        if (BigUtils.bigDaYu(dao.zhenFuXingDiFeiYong(inpatientNo, patient.getAdmissTimes(), ledger), 0)) {
-            dao.chongXingZhengFuXiangDi(inpatientNo, patient.getAdmissTimes(), ledger);
+        List<Integer> yaoPingBianMaTongBu = dao.weiGuiYaoPinInt(patient.getInpatientNo(), patient.getAdmissTimes(), patient.getLedgerSn(), patient.getInfantFlag());
+        if (BigUtils.bigDaYu(dao.zhenFuXingDiFeiYong(patient.getInpatientNo(), patient.getAdmissTimes(), patient.getLedgerSn()), 0)) {
+            dao.chongXingZhengFuXiangDi(patient.getInpatientNo(), patient.getAdmissTimes(), patient.getLedgerSn());
         }
         // 这里退药 医嘱 有可能会没有携带 执行科室
 //        List<ZyDetailCharge> huoQuYaoPingZhongKeShiWeiKongDe = dao.huoQuYaoPingZhongKeShiWeiKongDe(inpatientNo, patient.getAdmissTimes(), ledger);
 //        if (!huoQuYaoPingZhongKeShiWeiKongDe.isEmpty()) {
 //            dao.yiZhuTuiFeiGenXingZhiXingKeShi(inpatientNo, patient.getAdmissTimes(), ledger, huoQuYaoPingZhongKeShiWeiKongDe);
 //        }
-        dao.xiuGaiKongDeZhiXingKeShi(inpatientNo, patient.getAdmissTimes(), ledger);
+        dao.xiuGaiKongDeZhiXingKeShi(patient.getInpatientNo(), patient.getAdmissTimes(), patient.getLedgerSn());
         if (yaoPingBianMaTongBu.size() > 0) {
             dao.genXinYaoPingPiPeiXinXi(yaoPingBianMaTongBu);
         }
 
         patient.setWeiPiPei(new ArrayList<>());
         patient.setWeiXieDaiYuanLiuShui(new ArrayList<>());
-        patient.getWeiPiPei().addAll(dao.weiGuiYaoPin(inpatientNo, patient.getAdmissTimes(), ledger, infantFlag));
-        patient.getWeiPiPei().addAll(dao.weiGuiXiangMu(inpatientNo, patient.getAdmissTimes(), ledger, infantFlag));
-        patient.getWeiXieDaiYuanLiuShui().addAll(dao.weiXieDaiYuanLiuShuiXiangMu(inpatientNo, patient.getAdmissTimes(), ledger, infantFlag, keShi, patient.getChuYuanYiZhu()));
-        patient.getWeiXieDaiYuanLiuShui().addAll(dao.weiXieDaiYuanLiuShuiYaoPing(inpatientNo, patient.getAdmissTimes(), ledger, infantFlag, keShi, patient.getChuYuanYiZhu()));
+        patient.getWeiPiPei().addAll(dao.weiGuiYaoPin(patient.getInpatientNo(), patient.getAdmissTimes(), patient.getLedgerSn(), patient.getInfantFlag()));
+        patient.getWeiPiPei().addAll(dao.weiGuiXiangMu(patient.getInpatientNo(), patient.getAdmissTimes(), patient.getLedgerSn(), patient.getInfantFlag()));
+        patient.getWeiXieDaiYuanLiuShui().addAll(dao.weiXieDaiYuanLiuShuiXiangMu(patient.getInpatientNo(), patient.getAdmissTimes(), patient.getLedgerSn(), patient.getInfantFlag(), keShi, patient.getChuYuanYiZhu()));
+        patient.getWeiXieDaiYuanLiuShui().addAll(dao.weiXieDaiYuanLiuShuiYaoPing(patient.getInpatientNo(), patient.getAdmissTimes(), patient.getLedgerSn(), patient.getInfantFlag(), keShi, patient.getChuYuanYiZhu()));
         return ResultVoUtil.success(patient);
     }