Selaa lähdekoodia

项目录入中现在可以匹配药品了,以及不能拆分数据了。

xiaochan 3 vuotta sitten
vanhempi
commit
9f9a0253ad

+ 6 - 0
pom.xml

@@ -191,6 +191,12 @@
             <artifactId>forest-spring-boot-starter</artifactId>
             <version>1.5.13</version>
         </dependency>
+        <dependency>
+            <groupId>org.jetbrains</groupId>
+            <artifactId>annotations</artifactId>
+            <version>RELEASE</version>
+            <scope>compile</scope>
+        </dependency>
     </dependencies>
     <build>
         <plugins>

+ 1 - 1
src/main/java/thyyxxk/webserver/controller/yibao/XiangMuLuRuController.java

@@ -42,7 +42,7 @@ public class XiangMuLuRuController {
 
     @PostMapping("/xiangMuTuiFei")
     public ResultVo<String> xiangMuTuiFei(@RequestBody ZyDetailCharge param) {
-        return service.xiangMuTuiFei(param);
+        return service.xiangMuTuiFei(param, true);
     }
 
     @GetMapping("/getMuBan")

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

@@ -105,7 +105,7 @@ public class XiangMuLuRuService {
      * @return 返回
      */
     @Transactional(rollbackFor = Exception.class)
-    public ResultVo<String> xiangMuTuiFei(ZyDetailCharge param) {
+    public ResultVo<String> xiangMuTuiFei(ZyDetailCharge param, Boolean panDuanYaoPing) {
         List<Integer> yongHuJueSe = dao.huoQuJueSe(TokenUtil.getTokenUserId());
         if (!yongHuJueSe.contains(36) && !yongHuJueSe.contains(1)) {
             return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "您没有权限退费。");
@@ -161,7 +161,7 @@ public class XiangMuLuRuService {
                 yaoPingDan.add(pojo);
             }
             // 在这里判断执行科室
-            ResultVo<String> LOGICAL_ERROR = getStringResultVo(yongHuJueSe, zhiXinKeShi, param, pojo, true);
+            ResultVo<String> LOGICAL_ERROR = getStringResultVo(yongHuJueSe, zhiXinKeShi, param, pojo, panDuanYaoPing);
             if (LOGICAL_ERROR != null) return LOGICAL_ERROR;
             // 数据库有个 触发器 如果带了医嘱号且有篆刻那么这里就需要改成 0
             if (BigUtils.bigDaYu(pojo.getOrderNo(), 10)) {
@@ -197,7 +197,7 @@ public class XiangMuLuRuService {
     private ResultVo<String> getStringResultVo(List<Integer> yongHuJueSe, List<String> zhiXinKeShi, ZyDetailCharge xuYaoTuiDeShuJu,
                                                ZyDetailCharge piPeiDeShuJu, Boolean panDuanYaoPin) {
         // 获取到用户角色   管理员角色可以无视
-        if (!yongHuJueSe.contains(1)) {
+        if (!yongHuJueSe.contains(1) || !yongHuJueSe.contains(8)) {
             // 科室开头 是 8 就不是医技科室 只有医技科室可以退药品
             if (xuYaoTuiDeShuJu.getDeptCode().startsWith("8")) {
                 //获取到这个人是否属于这个科室
@@ -711,16 +711,17 @@ public class XiangMuLuRuService {
             return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR,
                     String.format("负数费用:{%.2f},匹配费用:{%.2f} <br> 负数数量:{%.2f},匹配数量:{%.2f}", zy.getChargeFee().negate(), chargeFeeSum, zy.getChargeAmount().negate(), chargeAmountSum));
         } else {
-            if (BigUtils.dengYu(chargeFeeSum, zy.getChargeFee().negate()) && BigUtils.dengYu(chargeAmountSum, zy.getChargeAmount().negate())) {
-                ResultVo<String> tuiFei = xiangMuTuiFei(zyDetailCharge);
-                if (tuiFei.getCode() != 201) {
-                    return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, tuiFei.getMessage());
-                }
-                dao.cheXiaoFeiYong(inpatientNo, zyDetailCharge.getAdmissTimes(), zyDetailCharge.getLedgerSn(), zyDetailCharge.getDetailSn());
-                return ResultVoUtil.success(ExceptionEnum.SUCCESS_AND_NOTIFICATION, "费用拆分成功。");
-            } else {
-                return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "匹配多条时数量和金额要相等。");
-            }
+//            if (BigUtils.dengYu(chargeFeeSum, zy.getChargeFee().negate()) && BigUtils.dengYu(chargeAmountSum, zy.getChargeAmount().negate())) {
+//                ResultVo<String> tuiFei = xiangMuTuiFei(zyDetailCharge, false);
+//                if (tuiFei.getCode() != 201) {
+//                    return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, tuiFei.getMessage());
+//                }
+//                dao.cheXiaoFeiYong(inpatientNo, zyDetailCharge.getAdmissTimes(), zyDetailCharge.getLedgerSn(), zyDetailCharge.getDetailSn());
+//                return ResultVoUtil.success(ExceptionEnum.SUCCESS_AND_NOTIFICATION, "费用拆分成功。");
+//            } else {
+//                return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "匹配多条时数量和金额要相等。");
+//            }
+            return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "每次只能匹配一条。");
         }
     }
 }