From 1fe9e1202299b4d5ec432baab9f98375eb950f29 Mon Sep 17 00:00:00 2001
From: zjh <1084500556@qq.com>
Date: 星期二, 24 六月 2025 17:41:39 +0800
Subject: [PATCH] zjh20250624

---
 ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/LtkjJianchajianyanTreeServiceImpl.java |   11 +++
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java            |    3 
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java            |   87 +++++++++++++++--------------
 ltkj-hosp/src/main/java/com/ltkj/hosp/service/LtkjJianchajianyanTreeService.java          |    2 
 ltkj-admin/src/main/java/com/ltkj/web/controller/callback/CallBackController.java         |   30 ++++++---
 ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/LtkjJianchajianyanTreeMapper.java            |    5 +
 6 files changed, 84 insertions(+), 54 deletions(-)

diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/callback/CallBackController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/callback/CallBackController.java
index ee9c8d3..d3b5cb4 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/callback/CallBackController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/callback/CallBackController.java
@@ -24,10 +24,7 @@
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -128,24 +125,35 @@
                     String bldh = water.getJxbz();
 //                    lisRevoke(water.getTjNumber(),bldh);
                     if (bldh != null){
-                        remarkService.deleteTjOrderDetailByjxbz(bldh);
+                        remarkService.updateTjOrderRemarkSfbzByJxbz(order.getOrderId().toString(),bldh,null);
+ /*                       remarkService.deleteTjOrderDetailByjxbz(bldh);
                         tjOrderDetailService.deleteTjOrderDetailByjxbz(bldh);
                         tjFlowingWaterService.deleteTjOrderDetailByjxbz(bldh);
                         transitionService.deleteTjOrderDetailByjxbz(bldh);
                         blService.remove(new LambdaQueryWrapper<TjProBl>().eq(TjProBl::getTjh, order.getTjNumber()).eq(TjProBl::getBldh, bldh));
-                        tjSamplingMapper.deleteByTjNumAndCusIdAndJxbzo(order.getTjNumber(), order.getUserId(),bldh);
+                        tjSamplingMapper.deleteByTjNumAndCusIdAndJxbzo(order.getTjNumber(), order.getUserId(),bldh);*/
                     }else {
-                        tjOrderService.deleteTjOrderByOrderId(order.getOrderId());
+ /*                       TjCustomer customer = tjCustomerService.getById(order.getUserId());
+                        customer.setCardId("0");
+                        tjCustomerService.updateById(customer);
+                        tjOrderService.removeById(order.getOrderId());*/
+                       /* tjOrderService.deleteTjOrderByOrderId(order.getOrderId());
                         tjOrderDetailService.deleteTjOrderDetailByOrderDetailId(String.valueOf(order.getOrderId()));
                         remarkService.deletedOrderRemarkByTjNum(order.getTjNumber());
                         tjFlowingWaterService.deleteTjFlowingWaterByOrderId(String.valueOf(order.getOrderId()));
                         transitionService.deletedTbTransitionByTjNum(order.getTjNumber());
                         ycxmService.delOrderYcXmJyByTjh(order.getTjNumber());
-                        TjCustomer customer = tjCustomerService.getById(order.getUserId());
-                        customer.setCardId("0");
-                        tjCustomerService.updateById(customer);
-                        tjSamplingMapper.deleteByTjNumAndCusId(order.getTjNumber(), order.getUserId());
+                        tjSamplingMapper.deleteByTjNumAndCusId(order.getTjNumber(), order.getUserId());*/
+
+                        remarkService.updateTjOrderRemarkSfbzByJxbzisnull(order.getOrderId().toString(),null);
+
+
                     }
+                    water.setPayStasus(2L);
+                    water.setRefundPersonId("his鍥炶皟");
+                    water.setRefundTime(new Date());
+                    water.setRefundPrice(water.getPaidIn());
+                    tjFlowingWaterService.updateById(water);
                 }
             }
         }
diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java
index a5d0b03..677fa58 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java
@@ -860,7 +860,8 @@
                             AjaxResult queryPay = hisApiGetMethodService.getHISDataNew("QueryPay", hisRequestParams);
                             if (Integer.parseInt(queryPay.get("code").toString()) == 200) {
                                 int sfsf = ltkjJianchajianyanTreeService.getSfsfByCardId(tjOrder.getCardId());
-                                if (sfsf > 0) {
+                                int sfsf1 = ltkjJianchajianyanTreeService.getCallSfsfByCardId(tjOrder.getCardId());
+                                if (sfsf > 0 || sfsf1 > 0) {
                                     log.error("璺嘲绉戞妧---  " + DateUtil.date() + " 瀛樺湪鏈即璐归」鐩殑 灏卞崟鏁�  " + sfsf);
                                     log.error("璺嘲绉戞妧---  " + DateUtil.date() + " 瀛樺湪鏈即璐归」鐩殑 灏辫瘖鍙�  " + tjOrder.getCardId() + " 浣撴鍙� " + tjOrder.getTjNumber());
                                     return AjaxResult.error("瀛樺湪鏈即璐归」鐩�");
diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java
index 31ff890..6b5d836 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java
@@ -3348,13 +3348,15 @@
 
         TjOrder order = tjOrderService.getOrderByTjNum(tjNum);
         if (null != order) {
-//            String payByTjNum = tjOrderService.isPayByTjNum(String.valueOf(order.getOrderId()));
-//            if (null != payByTjNum) {
-//                return AjaxResult.error("璇ョ敤鎴峰凡鏀惰垂涓嶅彲鎾ら攢绛惧埌!");
-//            }
-            if (null != order.getFinishTime()) return AjaxResult.error("璇ヤ汉鍛樺凡绛剧,涓嶅彲鎾ら攢!!!");
+
+            if (null != order.getPrintLastTime()) return AjaxResult.error("璇ヤ汉鍛樻姤鍛婂凡鎵撳嵃,涓嶅彲鎾ら攢!!!");
+
+            LambdaQueryWrapper<TjCustomer> wrapper = new LambdaQueryWrapper<>();
+            wrapper.eq(TjCustomer::getCusId, order.getUserId());
+            TjCustomer tjCustomer = tjCustomerService.getOne(wrapper);
 
             Boolean useLisAndPacsRegister = lisApiMethod.isUseLisAndPacsRegister(order);
+
 
             String s = configService.selectConfigByKey("is_request_common_his_api");
 //            if (null != s && s.equals("Y") && "2".equals(order.getTjType())) {
@@ -3368,14 +3370,11 @@
                 wrapper1.eq(TjFlowingWater::getOrderId, order.getOrderId());
                 wrapper1.orderByDesc(TjFlowingWater::getJxbz);
                 List<TjFlowingWater> list = tjFlowingWaterService.list(wrapper1);
-                LambdaQueryWrapper<TjCustomer> wrapper = new LambdaQueryWrapper<>();
-                wrapper.eq(TjCustomer::getCusId, order.getUserId());
-                TjCustomer tjCustomer = tjCustomerService.getOne(wrapper);
 
                 for (TjFlowingWater water : list) {
                     if (water.getPayStasus() == 0L) {
                         weizhifu.add(water);
-                    } else {
+                    } else if (water.getPayStasus() == 1L) {
                         yizhifu.add(water);
                     }
                 }
@@ -3385,21 +3384,16 @@
 
                 AjaxResult error1 = zuofeiYiZhifu(yizhifu, tjCustomer, order, apiUrl, hospbm, false, tjNum);
                 if (error1 != null && !error.get("code").toString().equals("200")) return error1;
-            } else {
-                tjOrderService.deleteTjOrderByOrderId(order.getOrderId());
+            }
+
+            /*     tjOrderService.deleteTjOrderByOrderId(order.getOrderId());
                 tjOrderDetailService.deleteTjOrderDetailByOrderDetailId(String.valueOf(order.getOrderId()));
                 remarkService.deletedOrderRemarkByTjNum(tjNum);
                 tjFlowingWaterService.deleteTjFlowingWaterByOrderId(String.valueOf(order.getOrderId()));
                 transitionService.deletedTbTransitionByTjNum(tjNum);
                 ycxmService.delOrderYcXmJyByTjh(tjNum);
-
-                TjCustomer customer = tjCustomerService.getById(order.getUserId());
-                customer.setCardId("0");
-                tjCustomerService.updateById(customer);
                 xdPictureService.deleteTjXdPictureBytjNum(tjNum);
-                tjSamplingMapper.deleteByTjNumAndCusId(tjNum, order.getUserId());
-            }
-
+                tjSamplingMapper.deleteByTjNumAndCusId(tjNum, order.getUserId());*/
             String configByKey = configService.selectConfigByKey("sfkqdyhis");
             if (configByKey.equals("Y")) {
 
@@ -3428,8 +3422,13 @@
                 }
 
             }
+
+            tjCustomer.setCardId("0");
+            tjCustomerService.updateById(tjCustomer);
+            tjOrderService.removeById(order.getOrderId());
+            return  AjaxResult.success("鎾ら攢鎴愬姛");
         }
-        return AjaxResult.success("绛惧埌璁板綍涓嶅瓨鍦�!");
+        return AjaxResult.error("浣撴璁板綍涓嶅瓨鍦�!");
     }
 
 
@@ -3606,10 +3605,6 @@
 
         TjOrder order = tjOrderService.getOrderByTjNum(tjNum);
         if (null != order) {
-//            String payByTjNum = tjOrderService.isPayByTjNum(String.valueOf(order.getOrderId()));
-//            if (null != payByTjNum) {
-//                return AjaxResult.error("璇ョ敤鎴峰凡鏀惰垂涓嶅彲鎾ら攢绛惧埌!");
-//            }
             //杩欓噷鍒犻櫎鐨勬槸杩欎釜浜烘墍鏈夐」鐩寘鎷ˉ褰曢」鐩�
             tjOrderService.deleteTjOrderByOrderId(order.getOrderId());
             tjOrderDetailService.deleteTjOrderDetailByOrderDetailId(String.valueOf(order.getOrderId()));
@@ -3668,6 +3663,9 @@
 
         TjOrder order = tjOrderService.getOrderByTjNum(dto.getTjh());
         if (null != order) {
+            if (null != order.getPrintLastTime()) return AjaxResult.error("璇ヤ汉鍛樻姤鍛婂凡鎵撳嵃,涓嶅彲鎾ら攢!!!");
+
+
             String configByKey = configService.selectConfigByKey("sfkqdyhis");
             if (null != configByKey && configByKey.equals("Y")) {
                 log.info("dto鐨勬暟鎹槸" + JSONUtil.toJsonStr(dto));
@@ -3719,7 +3717,7 @@
                     TjFlowingWater water = tjFlowingWaterService.getOne(wrapper);
                     if (water.getPayStasus() == 0L) {
                         weizhifu.add(water);
-                    } else {
+                    } else if (water.getPayStasus() == 1L) {
                         yizhifu.add(water);
                     }
                 }
@@ -3733,18 +3731,18 @@
 
                 AjaxResult error1 = zuofeiYiZhifu(yizhifu, tjCustomer, order, apiUrl, hospbm, false, dto.getTjh());
                 if (error1 != null && !error.get("code").toString().equals("200")) return error1;
-                return AjaxResult.success();
-            } else {
+//                return AjaxResult.success();
+            }
+
                 try {
                     extracted(dto, order);
                 } catch (Exception e) {
                     log.info("鎾ら攢澶辫触,鍒犻櫎琛ㄥけ璐�");
                     return AjaxResult.error("鎾ら攢澶辫触,鍒犻櫎琛ㄥけ璐�!");
                 }
-                return AjaxResult.success();
-            }
+                return AjaxResult.success("鎾ら攢鎴愬姛");
         }
-        return AjaxResult.error();
+        return AjaxResult.error("鏈壘鍒颁綋妫�璁板綍");
     }
 
     private AjaxResult zuofeiYiZhifu(ArrayList<TjFlowingWater> yizhifu, TjCustomer tjCustomer, TjOrder order, String apiUrl, String hospbm, Boolean isDelete, String tjNum) {
@@ -3817,7 +3815,7 @@
                         String tfid = jsonObject.getJSONObject("data").getStr("feiYongId");
                         water.setHisTfWaterId(tfid);
                         tjFlowingWaterService.updateById(water);
-                        if (isDelete) {
+             /*           if (isDelete) {
                             for (TjFlowingWater water1 : yizhifu) {
                                 String bldh1 = water1.getJxbz();
                                 remarkService.deleteTjOrderDetailByjxbz(bldh1);
@@ -3827,7 +3825,7 @@
                                 blService.remove(new LambdaQueryWrapper<TjProBl>().eq(TjProBl::getTjh, tjNum).eq(TjProBl::getBldh, bldh1));
                                 tjSamplingMapper.deleteByTjNumAndCusIdAndJxbzo(tjNum, order.getUserId(), bldh1);
                             }
-                        }
+                        }*/
                     } else return AjaxResult.error();
                 }
             }
@@ -3845,7 +3843,7 @@
 
             String post = HttpClientUtils.sendPost(apiUrl + "/api/his/" + hospbm + "/revokeCost", chexiaoMap);
             if (JSONUtil.parseObj(post).getStr("code").equals("200")) {
-                if (isDelete) {
+                /*if (isDelete) {
                     for (TjFlowingWater water : weizhifu) {
                         String bldh = water.getJxbz();
                         if (StrUtil.isNotBlank(bldh)) {
@@ -3857,16 +3855,17 @@
                             tjSamplingMapper.deleteByTjNumAndCusIdAndJxbzo(tjNum, order.getUserId(), bldh);
                         } else {
                             //杩欓噷鍒犻櫎鐨勬槸杩欎釜浜烘墍鏈夐」鐩寘鎷ˉ褰曢」鐩�
-                            tjOrderService.deleteTjOrderByOrderId(order.getOrderId());
+                 *//*           tjOrderService.deleteTjOrderByOrderId(order.getOrderId());
                             tjOrderDetailService.deleteTjOrderDetailByOrderDetailId(String.valueOf(order.getOrderId()));
                             remarkService.deletedOrderRemarkByTjNum(tjNum);
                             tjFlowingWaterService.deleteTjFlowingWaterByOrderId(String.valueOf(order.getOrderId()));
                             transitionService.deletedTbTransitionByTjNum(tjNum);
-                            tjSamplingMapper.deleteByTjNumAndCusId(order.getTjNumber(), order.getUserId());
+                            tjSamplingMapper.deleteByTjNumAndCusId(order.getTjNumber(), order.getUserId());*//*
+//                            tjOrderService.removeById(order.getOrderId());
                         }
 
                     }
-                }
+                }*/
             } else return AjaxResult.error();
         }
         return null;
@@ -3874,14 +3873,18 @@
 
     //    @Transactional(propagation =Propagation.REQUIRES_NEW)
     public void extracted(TjProBlDto dto, TjOrder order) {
-        for (String bldh : dto.getBldhs()) {
-            remarkService.deleteTjOrderDetailByjxbz(bldh);
-            tjOrderDetailService.deleteTjOrderDetailByjxbz(bldh);
-            tjFlowingWaterService.deleteTjOrderDetailByjxbz(bldh);
-            transitionService.deleteTjOrderDetailByjxbz(bldh);
-            blService.remove(new LambdaQueryWrapper<TjProBl>().eq(TjProBl::getTjh, dto.getTjh()).eq(TjProBl::getBldh, bldh));
+        try {
+            for (String bldh : dto.getBldhs()) {
+                remarkService.deleteTjOrderDetailByjxbz(bldh);
+                tjOrderDetailService.deleteTjOrderDetailByjxbz(bldh);
+                tjFlowingWaterService.deleteTjOrderDetailByjxbz(bldh);
+                transitionService.deleteTjOrderDetailByjxbz(bldh);
+                blService.remove(new LambdaQueryWrapper<TjProBl>().eq(TjProBl::getTjh, dto.getTjh()).eq(TjProBl::getBldh, bldh));
+            }
+            tjSamplingMapper.deleteByTjNumAndCusIdAndJxbz(dto.getTjh(), order.getUserId(), dto.getBldhs());
+        } catch (Exception e) {
+            throw new RuntimeException(e);
         }
-        tjSamplingMapper.deleteByTjNumAndCusIdAndJxbz(dto.getTjh(), order.getUserId(), dto.getBldhs());
     }
 
 
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/LtkjJianchajianyanTreeMapper.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/LtkjJianchajianyanTreeMapper.java
index 11d8397..005128a 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/LtkjJianchajianyanTreeMapper.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/LtkjJianchajianyanTreeMapper.java
@@ -5,6 +5,8 @@
 import org.apache.ibatis.annotations.Select;
 
 import java.math.BigDecimal;
+import java.util.List;
+import java.util.Map;
 
 /**
 * @author chacca
@@ -28,6 +30,9 @@
             "\t\tzb.sqdh=(case when cb.adv_id is not null and LOCATE('_',cb.adv_id)>0 then SUBSTRING_INDEX(cb.adv_id,'_',-1) else cb.adv_id end) \n" +
             "WHERE  zb.hj <> cb.hj or cb.adv_id is null")
     int getSfsfByCardId(String cardId);
+
+
+    List<List<?>> getCallSfsfByCardId(Map<String,Object> map);
 }
 
 
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/LtkjJianchajianyanTreeService.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/LtkjJianchajianyanTreeService.java
index fd28f58..efb21a9 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/LtkjJianchajianyanTreeService.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/LtkjJianchajianyanTreeService.java
@@ -17,4 +17,6 @@
 
     int getSfsfByCardId(String cardId);
 
+    int getCallSfsfByCardId(String cardId);
+
 }
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/LtkjJianchajianyanTreeServiceImpl.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/LtkjJianchajianyanTreeServiceImpl.java
index 39ac243..4b36c3d 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/LtkjJianchajianyanTreeServiceImpl.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/LtkjJianchajianyanTreeServiceImpl.java
@@ -8,6 +8,8 @@
 
 import javax.annotation.Resource;
 import java.math.BigDecimal;
+import java.util.HashMap;
+import java.util.Map;
 
 /**
 * @author chacca
@@ -30,6 +32,15 @@
     public int getSfsfByCardId(String cardId) {
         return mapper.getSfsfByCardId(cardId);
     }
+
+    @Override
+    public int getCallSfsfByCardId(String cardId) {
+
+        Map<String, Object> map = new HashMap<>();
+        map.put("cardId",cardId);
+        mapper.getCallSfsfByCardId(map);
+        return (int) (Integer) map.get("sl");
+    }
 }
 
 

--
Gitblit v1.8.0