From 5f73eb1fb9d04040fe6ba377d5ae582024429f2f Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期日, 20 九月 2026 14:15:02 +0800
Subject: [PATCH] feat(sales): 添加客户交易详情中的付款金额字段

---
 src/main/java/com/ruoyi/sales/service/impl/ShippingInfoServiceImpl.java |   29 ++++++++++++++++++++++++++++-
 1 files changed, 28 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/ruoyi/sales/service/impl/ShippingInfoServiceImpl.java b/src/main/java/com/ruoyi/sales/service/impl/ShippingInfoServiceImpl.java
index be34bc0..351f1c9 100644
--- a/src/main/java/com/ruoyi/sales/service/impl/ShippingInfoServiceImpl.java
+++ b/src/main/java/com/ruoyi/sales/service/impl/ShippingInfoServiceImpl.java
@@ -36,6 +36,7 @@
 import org.springframework.transaction.annotation.Transactional;
 
 import java.time.LocalDateTime;
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -171,7 +172,6 @@
 
     @Override
     public boolean addReq(ShippingInfoDto req) {
-
         // 鏍¢獙璇ヤ骇鍝佹槸鍚﹀凡鏈夊緟瀹℃牳/瀹℃牳涓殑鍙戣揣璁板綍锛岄槻姝㈤噸澶嶆彁浜�
         Long salesLedgerProductId = req.getSalesLedgerProductId();
         if (salesLedgerProductId != null) {
@@ -216,4 +216,31 @@
         this.updateById(req);
         return true;
     }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public Long addShippedFromOutbound(ShippingInfoDto req) {
+        // 浠撳偍鐗╂祦鍑哄簱鍗冲彂璐э細涓嶅彂璧峰彂璐у鎵癸紝鐩存帴钀戒负宸插彂璐э紝搴撳瓨鐢� add 鍐呴儴鎵e噺
+        req.setShippingNo(OrderUtils.countTodayByCreateTime(
+                shippingInfoMapper, "SH", "shipping_no", LocalDateTime.now()));
+        req.setStatus("宸插彂璐�");
+        if (req.getShippingDate() == null) {
+            req.setShippingDate(new Date());
+        }
+        this.add(req);
+        return req.getId();
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void cancelByOutbound(Long shippingInfoId) {
+        if (shippingInfoId == null) {
+            return;
+        }
+        // 鍥炴粴璇ュ彂璐у崟鍗犵敤鐨勫簱瀛�
+        stockUtils.deleteStockOutRecord(shippingInfoId, StockOutQualifiedRecordTypeEnum.SALE_SHIP_STOCK_OUT.getCode());
+        shippingProductDetailMapper.delete(new LambdaQueryWrapper<ShippingProductDetail>()
+                .eq(ShippingProductDetail::getShippingInfoId, shippingInfoId));
+        this.removeById(shippingInfoId);
+    }
 }

--
Gitblit v1.9.3