From c42f62b32bac302a7ac9fcde7489f7c5fc6e11aa Mon Sep 17 00:00:00 2001
From: zjh <1084500556@qq.com>
Date: 星期五, 06 十二月 2024 15:35:17 +0800
Subject: [PATCH] zjh20241205-3

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjFlowingWaterController.java |   29 ++++++++++++++++++++++-------
 1 files changed, 22 insertions(+), 7 deletions(-)

diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjFlowingWaterController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjFlowingWaterController.java
index 56c4b2d..23495c5 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjFlowingWaterController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjFlowingWaterController.java
@@ -9,6 +9,7 @@
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.extra.pinyin.PinyinUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.ltkj.common.annotation.RepeatSubmit;
 import com.ltkj.common.core.domain.entity.SysUser;
 import com.ltkj.common.utils.SecurityUtils;
 import com.ltkj.framework.config.MatchUtils;
@@ -23,6 +24,7 @@
 import io.swagger.annotations.ApiParam;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.transaction.annotation.Transactional;
+import org.springframework.transaction.interceptor.TransactionAspectSupport;
 import org.springframework.web.bind.annotation.*;
 import com.ltkj.common.annotation.Log;
 import com.ltkj.common.core.controller.BaseController;
@@ -91,7 +93,7 @@
         LambdaQueryWrapper<TjChargingStandard> wq3 = new LambdaQueryWrapper<>();
         wq3.eq(TjChargingStandard::getTjNum, TjNumber);
         List<TjChargingStandard> list = chargingStandardService.list(wq3);
-        if (null != list && list.size() > 0) {
+        if (null != list && !list.isEmpty()) {
             for (TjChargingStandard standard : list) {
                 TjProject project = projectService.getById(standard.getProId());
                 if (null != project && null != project.getProCheckType()) {
@@ -197,21 +199,34 @@
     @PutMapping
     @ApiOperation(value = "浣撴鐐瑰嚮鏀惰垂鎸夐挳鎺ュ彛")
     @Transactional
+    @RepeatSubmit
     public AjaxResult edit(@RequestBody TjFlowingWater tjFlowingWater) {
         Long userId = Long.valueOf(SecurityUtils.getLoginUser().getUserId());
         SysUser sysUser = userService.getById(userId);
 
         TjFlowingWater flowingWater = tjFlowingWaterService.getById(tjFlowingWater.getTjSerialNumber());
-        tjFlowingWater.setTollCollectorId(String.valueOf(SecurityUtils.getLoginUser().getUserId()));
-        tjFlowingWater.setPayStasus(1L);
+//        tjFlowingWater.setTollCollectorId(String.valueOf(SecurityUtils.getLoginUser().getUserId()));
+//        tjFlowingWater.setPayStasus(1L);
         TjOrder order = orderService.getById(tjFlowingWater.getOrderId());
+
+        if(order.getFinishTime() !=null){
+            return AjaxResult.error("璇ヤ汉鍛樺凡绛剧,涓嶅彲琛ュ綍椤圭洰!");
+        }
+
         TjCustomer customer = customerService.getById(order.getUserId());
         if (null != tjFlowingWater.getTjProIds() && tjFlowingWater.getTjProIds().length > 0) {
-            tjFlowingWater.setWaterId(PinyinUtil.getFirstLetter(customer.getCusName(), "").toUpperCase() + DateUtil.format(new Date(), "yyMMddHHmmssSSS"));
+            tjFlowingWater.setWaterId(PinyinUtil.getFirstLetter(customer.getCusName(), "").toUpperCase() +SecurityUtils.getUsername() + DateUtil.format(new Date(), "yyMMddHHmmssSSS"));
             tjFlowingWater.setIsAddition("Y");
             if (tjFlowingWaterService.save(tjFlowingWater)) {
                 //寮傛鍗曢」鏀惰垂鏄庣粏
-                asyncService.iundividualCharges(tjFlowingWater, order, customer, sysUser);
+                Boolean b = asyncService.iundividualCharges(tjFlowingWater, order, customer, sysUser);
+                if (!b){
+                    TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+                    return AjaxResult.error();
+                }
+//                if(!b){
+//                    TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+//                }
                 //extracted(tjFlowingWater, order, customer);
                 Map<String, Object> map = new HashMap<>();
                 map.put("waterId", tjFlowingWater.getWaterId());
@@ -542,7 +557,7 @@
                 } else {
                     tjProjectList = detailService.selectTjOrderDetailListByFlowingWaterIdIsNotNull(OrderId);
                 }
-                String pacId = transitionService.selectPacIdByTbTransitionTjNumAndProId(order.getTjNumber());
+                String pacId = transitionService.selectPacIdByTbTransitionTjNumAndProId(order.getTjNumber(),order.getCardId());
                 String s = tjFlowingWaterService.getDiscount(OrderId);
                 if (null != tjProjectList && tjProjectList.size() > 0) {
                     for (TjProject project : tjProjectList) {
@@ -634,7 +649,7 @@
             wq.ne(TjOrderDetail::getTjStatus, 3);
             wq.isNotNull(TjOrderDetail::getFlowingWaterId);
             List<TjOrderDetail> detailList = detailService.list(wq);
-            String pacId = transitionService.selectPacIdByTbTransitionTjNumAndProId(tjOrder.getTjNumber());
+            String pacId = transitionService.selectPacIdByTbTransitionTjNumAndProId(tjOrder.getTjNumber(),tjOrder.getCardId());
             if (null != detailList && detailList.size() > 0) {
                 List<TjRefundProInfoVo> tjRefundProInfoVoList = new ArrayList<>();
                 for (TjOrderDetail detail : detailList) {

--
Gitblit v1.8.0