Explorar o código

撤销医嘱以及退药新增包装单位

xiaochan %!s(int64=2) %!d(string=hai) anos
pai
achega
a29f5d8e08

+ 5 - 0
src/main/java/thyyxxk/webserver/dao/his/zhuyuanyisheng/OrderQuashDao.java

@@ -83,6 +83,11 @@ public interface OrderQuashDao extends BaseMapper<ReqOrderQuash> {
     @Insert("insert into yz_erase_order select * from yz_act_order a where a.act_order_no = #{orderNo} ")
     void eraseOrder(@Param("orderNo") BigDecimal orderNo);
 
+    @Update("update yz_erase_order set modifier = enter_oper , " +
+            "status_time =getdate ( ) ," +
+            " print_order_change =case when isnull ( print_order_change , '' ) ='' then 'd' else '' end where act_order_no =#{orderNo} ")
+    void upErase(@Param("orderNo") BigDecimal orderNo);
+
     @Delete("delete yz_act_order where act_order_no = #{orderNo}")
     void delYzOrder(@Param("orderNo") BigDecimal orderNo);
 }

+ 7 - 6
src/main/java/thyyxxk/webserver/service/hospitalizationCosts/HospitalizationCostsService.java

@@ -2,6 +2,7 @@ package thyyxxk.webserver.service.hospitalizationCosts;
 
 import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.sun.org.apache.bcel.internal.generic.NEW;
 import lombok.Data;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
@@ -20,10 +21,7 @@ import thyyxxk.webserver.service.redislike.RedisLikeService;
 import thyyxxk.webserver.utils.*;
 
 import java.math.BigDecimal;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.Set;
+import java.util.*;
 
 @Service
 @Slf4j
@@ -32,6 +30,8 @@ public class HospitalizationCostsService {
     private final RedisLikeService redisLikeService;
     private final XiangMuLuRuDao luRuDao;
     private final PublicServer publicServer;
+    // 可以退费的包装规格
+    private List<String> miniUnitList = Arrays.asList("09", "15", "30", "10");
 
     @Data
     public static class OrderInfo {
@@ -182,11 +182,12 @@ public class HospitalizationCostsService {
                     if (order == null) {
                         sb.append("没有查询到原药品对应的医嘱");
                     } else {
+
                         if (!"refundOnly".equals(param.getRefundFlag())) {
                             // 口服药无法退费 包装规格是 09,盒,15,瓶 的可以退费
                             if ("1".equals(order.getClassCode())) {
-                                if (!(order.getMiniUnit().equals("09") || order.getMiniUnit().equals("15"))) {
-                                    sb.append("医嘱给药方式为口服药,口服无法退费,药剂科要求只有包装规格为,瓶、盒可以退费有退药。");
+                                if (!(miniUnitList.contains(order.getMiniUnit()))) {
+                                    sb.append("医嘱给药方式为口服药,口服无法退费,药剂科要求只有包装规格为,瓶、盒、听、支可以退费有退药。");
                                 }
                             }
                             if ("d".equals(order.getDrugClass())) {

+ 1 - 0
src/main/java/thyyxxk/webserver/service/zhuyuanyisheng/OrderQuashService.java

@@ -147,6 +147,7 @@ public class OrderQuashService {
         // 删除药品表
         dao.delYpZyOrder(order);
         dao.eraseOrder(order);
+        dao.upErase(order);
         dao.delYzOrder(order);
     }
 

+ 1 - 1
src/main/resources/application.yml

@@ -8,7 +8,7 @@ spring:
     cache: false
   datasource:
     dynamic:
-      primary: dev
+      primary: his
       strict: false
       datasource:
         his: