From 027c1328165a0d37a778ec7f58760bb0fe1ffebb Mon Sep 17 00:00:00 2001
From: zjh <1084500556@qq.com>
Date: 星期三, 30 七月 2025 17:00:01 +0800
Subject: [PATCH] zjh20250730-1

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java |  258 +++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 216 insertions(+), 42 deletions(-)

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 be1c931..ed72e7d 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
@@ -14,6 +14,7 @@
 import java.util.concurrent.*;
 import java.util.concurrent.locks.ReentrantLock;
 import java.util.stream.Collectors;
+import java.util.stream.IntStream;
 import java.util.stream.Stream;
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
@@ -46,6 +47,7 @@
 import com.ltkj.common.core.redis.RedisCache;
 import com.ltkj.common.enums.DataSourceType;
 import com.ltkj.common.utils.*;
+import com.ltkj.db.DataSourceContextHolder;
 import com.ltkj.framework.config.MatchUtils;
 import com.ltkj.framework.config.ThreadPoolConfig;
 import com.ltkj.framework.config.UserHoder;
@@ -81,6 +83,7 @@
 import com.ltkj.web.controller.lis.LisApiMethod;
 import com.ltkj.web.controller.pacs.PacsApiMethodService;
 import com.ltkj.web.controller.service.TjSysAsyncServiceImpl;
+import com.ltkj.web.controller.service.UtilsService;
 import com.ltkj.web.wxUtils.HttpClientUtils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -242,6 +245,8 @@
     private TjOrderYcxmService ycxmService;
     @Autowired
     private TbTransitionMapper tbTransitionMapper;
+    @Autowired
+    private UtilsService utilsService;
 
     private static final String TJH = "tjhs:tjh";
 
@@ -1046,6 +1051,7 @@
 //                tjOrder.setTjType("2");
 //            }
         }
+        utilsService.saveCustomerSfzImg(tjOrder.getSfzImg(), DataSourceContextHolder.getDataSourceKey(), String.valueOf(tjCustomer.getCusId()));
         if (StringUtil.isBlank(tjOrder.getFirmId())) {
             tjOrder.setFirmId("0");
         }
@@ -1570,6 +1576,23 @@
             }
 
             if(StringUtil.isNotBlank(lycdzjhmxj) && lycdzjhmxj.equalsIgnoreCase("N")){
+                BigDecimal paidIn = tjFlowingWater.getPaidIn();
+                BigDecimal difference = zongjia.subtract(paidIn);
+                if (difference.compareTo(BigDecimal.ZERO) > 0) {
+                    log.info("閲戦澶氬嚭浜嗭細{}",difference);
+                    log.info("-----------------------鍘熸槑缁�-------------------------");
+                    calculateTotalPrice(array,false);
+                    log.info("-----------------------鏂版槑缁�-------------------------");
+                    adjustPrice(array,paidIn);
+                    zongjia = calculateTotalPrice(array,true);
+                } else if (difference.compareTo(BigDecimal.ZERO) < 0) {
+                    log.info("閲戦缂哄皯浜嗭細{}", difference.abs());
+                    log.info("-----------------------鍘熸槑缁�-------------------------");
+                    calculateTotalPrice(array,false);
+                    log.info("-----------------------鏂版槑缁�-------------------------");
+                    adjustPrice(array,paidIn);
+                    zongjia = calculateTotalPrice(array,true);
+                }
                 map.put("feiYongInfoList", array);
             }else {
                 zongjia = tjFlowingWater.getPaidIn();
@@ -1610,6 +1633,107 @@
                 return AjaxResult.error();
             }
         }
+        return null;
+    }
+
+    /**
+     * 鍒ゆ柇鎬讳环鏄惁涓�鑷� 鏄惁杩涜浠锋牸琛ュ噺
+     * - 淇濊瘉鎵�鏈夊崟浠蜂笉涓鸿礋鏁�
+     * - 宸鍒嗘憡绛栫暐涓猴細骞冲潎鍒嗘憡 + 璇樊琛ユ渶鍚庝竴椤�
+     *
+     * @param items       his浼犻�掔殑鏄庣粏椤圭洰
+     * @param targetTotal 鎬讳环
+     */
+    public static void adjustPrice(JSONArray items, BigDecimal targetTotal) {
+        BigDecimal actualTotal = BigDecimal.ZERO;
+        int size = items.size();
+
+        // 璁$畻鐩墠鏄庣粏闆嗗悎鎬讳环
+        for (int i = 0; i < size; i++) {
+            JSONObject item = items.getJSONObject(i);
+            BigDecimal danJia = item.getBigDecimal("danJia");
+            BigDecimal shuliang = item.getBigDecimal("shuliang");
+            BigDecimal jieSuanJe = danJia.multiply(shuliang).setScale(2, RoundingMode.HALF_UP);
+            item.set("jieSuanJe", jieSuanJe);
+            actualTotal = actualTotal.add(jieSuanJe);
+        }
+        BigDecimal diff = targetTotal.subtract(actualTotal).setScale(2, RoundingMode.HALF_UP);
+        // 鏃犻渶璋冩暣
+        if (diff.compareTo(BigDecimal.ZERO) == 0 || size == 0) {
+            return;
+        }
+
+        // 鍓╀綑寰呭垎鎽婂樊棰�
+        BigDecimal remainingDiff = diff;
+        for (int i = 0; i < size; i++) {
+            JSONObject item = items.getJSONObject(i);
+            BigDecimal danJia = item.getBigDecimal("danJia");
+            BigDecimal shuliang = item.getBigDecimal("shuliang");
+
+            if (shuliang.compareTo(BigDecimal.ZERO) == 0) continue;
+
+            // 鍒嗘憡姣斾緥锛堝钩鍧囧垎锛�
+            // 绀轰緥锛氳嫢鍓╀綑宸 remainingDiff = 1.50锛屽墿浣� 3 椤癸紝褰撳墠 portion = 1.50 梅 3 = 0.50
+            BigDecimal portion = remainingDiff.divide(new BigDecimal(size - i), 10, RoundingMode.HALF_UP);
+
+            // 鍒嗘憡鍒板崟浠蜂笂
+            // 绀轰緥锛歱ortion = 0.50锛宻huliang = 2锛宒eltaPerUnit = 0.25
+            BigDecimal deltaPerUnit = portion.divide(shuliang, 10, RoundingMode.HALF_UP);
+
+            // 璋冩暣鍗曚环锛氭柊鍗曚环 = 鍘熷崟浠� + 鍗曚綅宸
+            BigDecimal adjustedDanJia = danJia.add(deltaPerUnit).setScale(2, RoundingMode.HALF_UP);
+
+            // 闃叉璐熸暟浠锋牸
+            if (adjustedDanJia.compareTo(BigDecimal.ZERO) < 0) {
+                adjustedDanJia = BigDecimal.ZERO;
+            }
+
+            item.set("danJia", adjustedDanJia);
+            BigDecimal adjustedJieSuan = adjustedDanJia.multiply(shuliang).setScale(2, RoundingMode.HALF_UP);
+            item.set("jieSuanJe", adjustedJieSuan);
+
+            // 璁$畻鏈瀹為檯璋冩暣鐨勫樊棰濓紝缁х画鍒嗘憡鍓╀綑閮ㄥ垎
+            BigDecimal oldJieSuan = danJia.multiply(shuliang).setScale(2, RoundingMode.HALF_UP);
+            remainingDiff = remainingDiff.subtract(adjustedJieSuan.subtract(oldJieSuan));
+        }
+
+        // 鑻ヤ粛瀛樺湪灏忛宸锛堝鐢变簬鍥涜垗浜斿叆瀵艰嚧锛夛紝灏濊瘯鎶婂樊棰濊ˉ鍒版渶鍚庝竴椤�
+        if (remainingDiff.abs().compareTo(new BigDecimal("0.01")) > 0) {
+            JSONObject lastItem = items.getJSONObject(size - 1);
+            BigDecimal danJia = lastItem.getBigDecimal("danJia");
+            BigDecimal shuliang = lastItem.getBigDecimal("shuliang");
+            if (shuliang.compareTo(BigDecimal.ZERO) != 0) {
+                BigDecimal delta = remainingDiff.divide(shuliang, 10, RoundingMode.HALF_UP);
+                BigDecimal newDanJia = danJia.add(delta).setScale(2, RoundingMode.HALF_UP);
+                if (newDanJia.compareTo(BigDecimal.ZERO) < 0) {
+                    newDanJia = BigDecimal.ZERO;
+                }
+                lastItem.set("danJia", newDanJia);
+                BigDecimal newJieSuan = newDanJia.multiply(shuliang).setScale(2, RoundingMode.HALF_UP);
+                lastItem.set("jieSuanJe", newJieSuan);
+            }
+        }
+    }
+
+    /**
+     * 鏄庣粏浠锋牸鏃ュ織杈撳嚭
+     * @param array
+     */
+    public static BigDecimal calculateTotalPrice(JSONArray array,Boolean isOverride) {
+        BigDecimal total = BigDecimal.ZERO;
+        for (int i = 0; i < array.size(); i++) {
+            JSONObject obj = array.getJSONObject(i);
+            BigDecimal danJia = new BigDecimal(obj.getStr("danJia", "0")).setScale(2, RoundingMode.HALF_UP);
+            BigDecimal shuliang = new BigDecimal(obj.getStr("shuliang", "0")).setScale(2, RoundingMode.HALF_UP);
+            BigDecimal jieSuanJe = danJia.multiply(shuliang).setScale(2, RoundingMode.HALF_UP);
+            obj.set("danJia", danJia);
+            obj.set("shuliang", shuliang);
+            obj.set("jieSuanJe", jieSuanJe);
+            total = total.add(jieSuanJe);
+            log.info(String.format("绗�%d椤� -> 鍗曚环: %s, 鏁伴噺: %s, 缁撶畻閲戦: %s", i + 1, danJia, shuliang, jieSuanJe));
+        }
+        log.info("鎬讳环涓�: {}", total.setScale(2, RoundingMode.HALF_UP));
+        if (isOverride) return total.setScale(2, RoundingMode.HALF_UP);
         return null;
     }
 
@@ -2923,10 +3047,12 @@
             for (TbTransition tbTransition : list) {
                 if (tbTransition.getParentProId().toString().equals(project.getProId().toString())) {
                     JSONObject obj = JSONUtil.createObj();
+                    TjOrderRemark remark = remarkService.getTjOrderRemarkByTjNumAndProParentId(tjNumber, tbTransition.getParentProId().toString());
                     obj.putOpt("index", index++);
                     obj.putOpt("parent_pro_name", tbTransition.getParentProName());
                     obj.putOpt("price", tbTransition.getOrdPrice());
                     obj.putOpt("ks", dept.getDeptName());
+                   if(null !=remark) obj.putOpt("sfzt", remark.getSfbz());
                     huiZong.add(obj);
                 }
             }
@@ -3276,7 +3402,7 @@
         TjOrder order = tjOrderService.getOrderByTjNum(tjNum);
         if (null != order) {
 
-            if (null != order.getFinishTime()) return AjaxResult.error("璇ヤ汉鍛樺凡绛剧,涓嶅彲鎾ら攢!!!");
+            if (null != order.getPrintLastTime()) return AjaxResult.error("璇ヤ汉鍛樻姤鍛婂凡鎵撳嵃,涓嶅彲鎾ら攢!!!");
 
             Boolean useLisAndPacsRegister = lisApiMethod.isUseLisAndPacsRegister(order);
             String username = SecurityUtils.getUsername();
@@ -3285,7 +3411,7 @@
             TjCustomer tjCustomer = tjCustomerService.getOne(wrapper);
 
             String s = configService.selectConfigByKey("is_request_common_his_api");
-//            if (null != s && s.equals("Y") && "2".equals(order.getTjType())) {
+
             if (null != s && s.equals("Y") && !useLisAndPacsRegister) {
                 String apiUrl = configService.selectConfigByKey("common_api_url");
                 String hospbm = configService.selectConfigByKey("common_api_service_hospbm");
@@ -3301,7 +3427,7 @@
                 for (TjFlowingWater water : list) {
                     if (water.getPayStasus() == 0L) {
                         weizhifu.add(water);
-                    } else {
+                    } else if (water.getPayStasus() == 1L){
                         yizhifu.add(water);
                     }
                 }
@@ -3309,29 +3435,22 @@
                 log.info("宸ュ彿涓�: "+username+" 鐨勭敤鎴峰嵆灏嗘挙閿� 浣撴鍙蜂负:"+tjNum+" 鐨勪綋妫�璁板綍;" );
                 AjaxResult error = zuofeiWeiZhifu(weizhifu, tjCustomer, apiUrl, hospbm, order, true, tjNum);
                 if (error != null && !error.get("code").toString().equals("200")){
-                    log.info("宸ュ彿涓�: "+username+" 鐨勭敤鎴锋鍦ㄦ挙閿� 浣撴鍙蜂负:"+tjNum+" 骞朵笖鏈敮浠樼殑浣撴璁板綍;" );
+                    log.info("宸ュ彿涓�: "+username+" 鐨勭敤鎴锋鍦ㄦ挙閿� 浣撴鍙蜂负:"+tjNum+" 骞朵笖鏈敮浠樼殑浣撴璁板綍;   鎾ら攢澶辫触!!!!" );
                     return error;
+                }else {
+                    log.info("宸ュ彿涓�: "+username+" 鐨勭敤鎴锋鍦ㄦ挙閿� 浣撴鍙蜂负:"+tjNum+" 骞朵笖鏈敮浠樼殑浣撴璁板綍;" );
                 }
                 AjaxResult error1 = zuofeiYiZhifu(yizhifu, tjCustomer, order, apiUrl, hospbm, false, tjNum);
                 if (error1 != null && !error.get("code").toString().equals("200"))
                 {
-                    log.info("宸ュ彿涓�: "+username+" 鐨勭敤鎴锋鍦ㄦ挙閿� 浣撴鍙蜂负:"+tjNum+" 骞朵笖宸叉敮浠樼殑浣撴璁板綍;" );
+                    log.info("宸ュ彿涓�: "+username+" 鐨勭敤鎴锋鍦ㄦ挙閿� 浣撴鍙蜂负:"+tjNum+" 骞朵笖宸叉敮浠樼殑浣撴璁板綍;   鎾ら攢澶辫触!!!!" );
                     return error1;
+                }else {
+                    log.info("宸ュ彿涓�: "+username+" 鐨勭敤鎴锋鍦ㄦ挙閿� 浣撴鍙蜂负:"+tjNum+" 骞朵笖宸叉敮浠樼殑浣撴璁板綍;" );
                 }
-            } else {
-                tjCustomer.setCardId("0");
-                tjCustomerService.updateById(tjCustomer);
 
-/*                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);
-                xdPictureService.deleteTjXdPictureBytjNum(tjNum);
-                tjSamplingMapper.deleteByTjNumAndCusId(tjNum, order.getUserId());*/
-                tjOrderService.removeById(order.getOrderId());
             }
+
 
             String configByKey = configService.selectConfigByKey("sfkqdyhis");
             if (configByKey.equals("Y")) {
@@ -3361,8 +3480,21 @@
                 }
 
             }
+
+            tjCustomer.setCardId("0");
+            tjCustomerService.updateById(tjCustomer);
+                /*                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);
+                xdPictureService.deleteTjXdPictureBytjNum(tjNum);
+                tjSamplingMapper.deleteByTjNumAndCusId(tjNum, order.getUserId());*/
+            tjOrderService.removeById(order.getOrderId());
+            return AjaxResult.success("鎾ら攢鎴愬姛");
         }
-        return AjaxResult.success("绛惧埌璁板綍涓嶅瓨鍦�!");
+        return AjaxResult.error("绛惧埌璁板綍涓嶅瓨鍦�!");
     }
 
 
@@ -3560,6 +3692,7 @@
 
         TjOrder order = tjOrderService.getOrderByTjNum(tjNum);
         if (null != order) {
+
             LambdaQueryWrapper<TjProBl> wq = new LambdaQueryWrapper<>();
             wq.eq(TjProBl::getTjh, tjNum);
             List<TjProBl> blList = blService.list(wq);
@@ -3600,6 +3733,8 @@
         TjOrder order = tjOrderService.getOrderByTjNum(dto.getTjh());
         String username = SecurityUtils.getUsername();
         if (null != order) {
+
+            if (null != order.getPrintLastTime()) return AjaxResult.error("璇ヤ汉鍛樻姤鍛婂凡鎵撳嵃,涓嶅彲鎾ら攢!!!");
 
             log.info("宸ュ彿涓�: "+username+" 鐨勭敤鎴峰嵆灏嗘挙閿� 浣撴鍙蜂负:"+dto.getTjh()+"琛ュ綍鍗曞彿涓�: " + dto.getBldhs()+ " 鐨� 琛ュ綍浣撴璁板綍;" );
             String configByKey = configService.selectConfigByKey("sfkqdyhis");
@@ -3653,7 +3788,7 @@
                     TjFlowingWater water = tjFlowingWaterService.getOne(wrapper);
                     if (water.getPayStasus() == 0L) {
                         weizhifu.add(water);
-                    } else {
+                    } else if (water.getPayStasus() == 1L){
                         yizhifu.add(water);
                     }
                 }
@@ -3665,28 +3800,32 @@
                 AjaxResult error = zuofeiWeiZhifu(weizhifu, tjCustomer, apiUrl, hospbm, order, true, dto.getTjh());
                 if (error != null && !error.get("code").toString().equals("200"))
                 {
-                    log.info("宸ュ彿涓�: "+username+" 鐨勭敤鎴锋鍦ㄦ挙閿� 浣撴鍙蜂负:"+dto.getTjh()+"琛ュ綍鍗曞彿涓�: " + dto.getBldhs()+ " 骞朵笖鏈敮浠樼殑琛ュ綍浣撴璁板綍;" );
+                    log.info("浣撴鍙蜂负:"+dto.getTjh()+"琛ュ綍鍗曞彿涓�: " + dto.getBldhs()+ " 骞朵笖鏈敮浠樼殑琛ュ綍浣撴璁板綍;  鎾ら攢澶辫触" );
                     return error;
+                }else {
+                    log.info("宸ュ彿涓�: "+username+" 鐨勭敤鎴锋鍦ㄦ挙閿� 浣撴鍙蜂负:"+dto.getTjh()+"琛ュ綍鍗曞彿涓�: " + dto.getBldhs()+ " 骞朵笖鏈敮浠樼殑琛ュ綍浣撴璁板綍;" );
                 }
 
                 AjaxResult error1 = zuofeiYiZhifu(yizhifu, tjCustomer, order, apiUrl, hospbm, false, dto.getTjh());
                 if (error1 != null && !error.get("code").toString().equals("200"))
                 {
-                    log.info("宸ュ彿涓�: "+username+" 鐨勭敤鎴锋鍦ㄦ挙閿� 浣撴鍙蜂负:"+dto.getTjh()+"琛ュ綍鍗曞彿涓�: " + dto.getBldhs()+ " 骞朵笖宸叉敮浠樼殑琛ュ綍浣撴璁板綍;" );
+                    log.info("浣撴鍙蜂负:"+dto.getTjh()+"琛ュ綍鍗曞彿涓�: " + dto.getBldhs()+ " 骞朵笖宸叉敮浠樼殑琛ュ綍浣撴璁板綍;  鎾ら攢澶辫触" );
                     return error1;
+                }else {
+                    log.info("宸ュ彿涓�: "+username+" 鐨勭敤鎴锋鍦ㄦ挙閿� 浣撴鍙蜂负:"+dto.getTjh()+"琛ュ綍鍗曞彿涓�: " + dto.getBldhs()+ " 骞朵笖宸叉敮浠樼殑琛ュ綍浣撴璁板綍;" );
                 }
-                return AjaxResult.success();
-            } else {
+            }
+
                 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) {
@@ -3759,7 +3898,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);
@@ -3769,8 +3908,8 @@
                                 blService.remove(new LambdaQueryWrapper<TjProBl>().eq(TjProBl::getTjh, tjNum).eq(TjProBl::getBldh, bldh1));
                                 tjSamplingMapper.deleteByTjNumAndCusIdAndJxbzo(tjNum, order.getUserId(), bldh1);
                             }
-                        }
-                    } else return AjaxResult.error();
+                        }*/
+                    } else return AjaxResult.error("鎾ら攢澶辫触");
                 }
             }
         }
@@ -3787,7 +3926,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)) {
@@ -3799,32 +3938,39 @@
                             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());*/
-                            tjOrderService.removeById(order.getOrderId());
+                            tjSamplingMapper.deleteByTjNumAndCusId(order.getTjNumber(), order.getUserId());*//*
+//                            TjCustomer customer = tjCustomerService.getById(order.getUserId());
+//                            customer.setCardId("0");
+//                            tjCustomerService.updateById(customer);
+//                            tjOrderService.removeById(order.getOrderId());
                         }
 
                     }
-                }
-            } else return AjaxResult.error();
+                }*/
+            } else return AjaxResult.error("鎾ら攢澶辫触");
         }
         return null;
     }
 
     //    @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());
     }
 
 
@@ -3857,6 +4003,34 @@
     }
 
 
+    @GetMapping("/chushenyemianyijianjiekou")
+    @ApiOperation(value = "鍒濆椤甸潰宸叉鎺ュ彛")
+    @Transactional
+    public AjaxResult chushenyemianyijianjiekou(@RequestParam String tjNUm, @RequestParam String proId) {
+        LambdaQueryWrapper<TjOrderRemark> wq = new LambdaQueryWrapper<>();
+        wq.eq(TjOrderRemark::getTjNumber, tjNUm);
+        wq.eq(TjOrderRemark::getProId, proId);
+        TjOrderRemark remark = remarkService.getOne(wq);
+        remark.setType(1);
+        remarkService.updateById(remark);
+        return AjaxResult.success("鎿嶄綔鎴愬姛!");
+    }
+
+
+    @GetMapping("/chushenyemianchexiaojiekou")
+    @ApiOperation(value = "鍒濆椤甸潰鎾ら攢鎺ュ彛")
+    @Transactional
+    public AjaxResult chushenyemianchexiaojiekou(@RequestParam String tjNUm, @RequestParam String proId) {
+        LambdaQueryWrapper<TjOrderRemark> wq = new LambdaQueryWrapper<>();
+        wq.eq(TjOrderRemark::getTjNumber, tjNUm);
+        wq.eq(TjOrderRemark::getProId, proId);
+        TjOrderRemark remark = remarkService.getOne(wq);
+        remark.setType(0);
+        remarkService.updateById(remark);
+        return AjaxResult.success("鎿嶄綔鎴愬姛!");
+    }
+
+
     @PostMapping("/zongjanyemianshjianzhou")
     @ApiOperation(value = "鎬绘鑾峰彇鏃堕棿杞存帴鍙�")
     @Transactional

--
Gitblit v1.8.0