From 34669fa71bd2cc4a4ff57d7d2440a95da998b6b5 Mon Sep 17 00:00:00 2001
From: wujianwei <wjw@11.com>
Date: 星期一, 30 三月 2026 15:47:55 +0800
Subject: [PATCH] 修改异步

---
 tms/src/main/java/com/ruoyi/tms/service/impl/TmsArBillServiceImpl.java |   34 ++++++++++++++++++++++++++++++++--
 1 files changed, 32 insertions(+), 2 deletions(-)

diff --git a/tms/src/main/java/com/ruoyi/tms/service/impl/TmsArBillServiceImpl.java b/tms/src/main/java/com/ruoyi/tms/service/impl/TmsArBillServiceImpl.java
index 1986bc5..42dc6df 100644
--- a/tms/src/main/java/com/ruoyi/tms/service/impl/TmsArBillServiceImpl.java
+++ b/tms/src/main/java/com/ruoyi/tms/service/impl/TmsArBillServiceImpl.java
@@ -2,11 +2,15 @@
 
 import java.util.List;
 
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.utils.DateUtils;
 import javax.annotation.Resource;
 
 import com.ruoyi.tms.domain.TmsArBillItem;
+import com.ruoyi.tms.domain.TmsReceivableFee;
 import com.ruoyi.tms.mapper.TmsArBillItemMapper;
+import com.ruoyi.tms.mapper.TmsReceivableFeeMapper;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.stereotype.Service;
 import org.springframework.scheduling.annotation.Async;
@@ -39,7 +43,8 @@
 
     @Resource
     private TmsArBillItemMapper tmsArBillItemMapper;
-
+    @Resource
+    private TmsReceivableFeeMapper tmsReceivableFeeMapper;
 
     /**
      * 鏌ヨ搴旀敹璐﹀崟
@@ -52,7 +57,7 @@
     public TmsArBill selectTmsArBillById(Integer id)
     {
         TmsArBill tmsArBill = tmsArBillMapper.selectTmsArBillById(id);
-        tmsArBill.setItems(tmsArBillItemMapper.selectTmsArBillItemList(new TmsArBillItem(){{setBillId( id);}}));
+        tmsArBill.setItems(tmsArBillItemMapper.selectTmsArBillItemList(new TmsArBillItem(){{setBillId( id);setStatus(0);}}));
         return tmsArBill;
     }
 
@@ -114,6 +119,31 @@
         return tmsArBillMapper.insertTmsArBill(tmsArBill);
     }
 
+    @Override
+    public AjaxResult cancelArBill(Integer id) {
+
+        TmsArBillItem billItem = tmsArBillItemMapper.selectTmsArBillItemById(id);
+        if(billItem == null){
+            return AjaxResult.warn("鏁版嵁涓嶅瓨鍦�");
+        }
+        if(billItem.getStatus() == 1){
+            return AjaxResult.warn("璇ユ暟鎹凡浣滃簾");
+        }
+        billItem.setStatus(1);
+        tmsArBillItemMapper.updateTmsArBillItem(billItem);
+        tmsReceivableFeeMapper.update(new LambdaUpdateWrapper<TmsReceivableFee>()
+                .set(TmsReceivableFee::getStatus,0)
+                .in(TmsReceivableFee::getId, billItem.getArFeeId())
+        );
+
+        tmsArBillMapper.update(new LambdaUpdateWrapper<TmsArBill>()
+                .setSql("settle_amount = settle_amount - " + billItem.getEstimateAmount())
+                .setSql("actual_settlement_amount = actual_settlement_amount - " + billItem.getEstimateAmount())
+                .eq(TmsArBill::getId, billItem.getBillId())
+        );
+        return AjaxResult.success();
+    }
+
     /**
      * 鏂板搴旀敹璐﹀崟[鎵归噺]
      *

--
Gitblit v1.8.0