From 5dca49269399c21333b16d62945c7f74570f9ad5 Mon Sep 17 00:00:00 2001
From: chen.llin <1442464845@qq.comm>
Date: 星期三, 24 十二月 2025 20:33:59 +0800
Subject: [PATCH] 字段调整

---
 src/main/resources/mapper/MonthlySettleDetailMapper.xml              |    2 -
 src/main/java/com/zy/asrs/entity/MonthlySettleDetail.java            |   12 +----
 src/main/webapp/static/js/monthlySettle/monthlySettle.js             |   10 -----
 src/main/resources/sql/monthly_settle.sql                            |    2 
 src/main/java/com/zy/asrs/service/impl/MonthlySettleServiceImpl.java |   62 ++++++------------------------
 5 files changed, 17 insertions(+), 71 deletions(-)

diff --git a/src/main/java/com/zy/asrs/entity/MonthlySettleDetail.java b/src/main/java/com/zy/asrs/entity/MonthlySettleDetail.java
index 01db1d5..88d1fb7 100644
--- a/src/main/java/com/zy/asrs/entity/MonthlySettleDetail.java
+++ b/src/main/java/com/zy/asrs/entity/MonthlySettleDetail.java
@@ -94,16 +94,10 @@
     private BigDecimal endingQty;
 
     /**
-     * 褰撳墠瀹為檯搴撳瓨鏁伴噺
+     * 宸紓鏁伴噺锛堟湡鏈簱瀛�-鏈熷垵搴撳瓨锛�
+     * 鏈熸湯澶т簬鏈熷垵鏃朵负姝f暟锛岃〃绀哄簱瀛樺鍔�
      */
-    @ApiModelProperty(value = "褰撳墠瀹為檯搴撳瓨鏁伴噺")
-    @TableField("stock_qty")
-    private BigDecimal stockQty;
-
-    /**
-     * 宸紓鏁伴噺锛堝疄闄呭簱瀛�-鏈熸湯搴撳瓨锛�
-     */
-    @ApiModelProperty(value = "宸紓鏁伴噺锛堝疄闄呭簱瀛�-鏈熸湯搴撳瓨锛�")
+    @ApiModelProperty(value = "宸紓鏁伴噺锛堟湡鏈簱瀛�-鏈熷垵搴撳瓨锛�")
     @TableField("diff_qty")
     private BigDecimal diffQty;
 
diff --git a/src/main/java/com/zy/asrs/service/impl/MonthlySettleServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MonthlySettleServiceImpl.java
index 0325a9d..fcd629b 100644
--- a/src/main/java/com/zy/asrs/service/impl/MonthlySettleServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MonthlySettleServiceImpl.java
@@ -276,39 +276,6 @@
             currentMaterialMap.put(key, stat);
         }
 
-        // 鏀堕泦鎵�鏈夐渶瑕佹煡璇㈠簱瀛樼殑鐗╂枡锛堟湰鏈熸湁鍑哄叆搴撶殑 + 涓婁竴鏈熷瓨鍦ㄤ絾鏈湡娌℃湁鍑哄叆搴撶殑锛�
-        List<String> matnrBatchList = new java.util.ArrayList<>();
-        for (MaterialInOutStatDTO stat : materialStats) {
-            String matnr = stat.getMatnr();
-            String batch = stat.getBatch() != null ? stat.getBatch() : "";
-            matnrBatchList.add(matnr + "_" + batch);
-        }
-        if (previousSettle != null && !previousDetailMap.isEmpty()) {
-            for (Map.Entry<String, PreviousSettleEndingQtyDTO> entry : previousDetailMap.entrySet()) {
-                String key = entry.getKey();
-                if (!currentMaterialMap.containsKey(key)) {
-                    PreviousSettleEndingQtyDTO previousDetail = entry.getValue();
-                    String matnr = previousDetail.getMatnr();
-                    String batch = previousDetail.getBatch() != null ? previousDetail.getBatch() : "";
-                    String matnrBatchKey = matnr + "_" + batch;
-                    if (!matnrBatchList.contains(matnrBatchKey)) {
-                        matnrBatchList.add(matnrBatchKey);
-                    }
-                }
-            }
-        }
-        // 鎵归噺鏌ヨ搴撳瓨
-        Map<String, BigDecimal> stockQtyMap = new HashMap<>();
-        if (!matnrBatchList.isEmpty()) {
-            List<com.zy.asrs.entity.result.StockQtyDTO> stockQtyList = manLocDetlService.queryStockAnfmeBatch(matnrBatchList);
-            if (stockQtyList != null) {
-                for (com.zy.asrs.entity.result.StockQtyDTO stockQtyDTO : stockQtyList) {
-                    String key = stockQtyDTO.getMatnr() + "_" + (stockQtyDTO.getBatch() != null ? stockQtyDTO.getBatch() : "");
-                    stockQtyMap.put(key, stockQtyDTO.getStockQty() != null ? stockQtyDTO.getStockQty() : BigDecimal.ZERO);
-                }
-            }
-        }
-
         // 鏀堕泦鎵�鏈夋槑缁嗚褰曪紝鐢ㄤ簬鎵归噺鎻掑叆
         List<MonthlySettleDetail> detailList = new java.util.ArrayList<>();
 
@@ -327,15 +294,13 @@
             // 3. 璁$畻搴撳瓨鐩稿叧鏁伴噺
             BigDecimal beginningQty = getBeginningQty(matnr, batch, brand, previousEndingQtyMap);
             BigDecimal endingQty = calculateEndingQty(beginningQty, inQty, outQty);
-            // 浠庢壒閲忔煡璇㈢殑Map涓幏鍙栧簱瀛�
-            String stockKey = matnr + "_" + batch;
-            BigDecimal stockQtyDecimal = stockQtyMap.getOrDefault(stockKey, BigDecimal.ZERO);
-            BigDecimal diffQty = calculateDiffQty(stockQtyDecimal, endingQty);
+            // 宸紓鏁伴噺 = 鏈熸湯搴撳瓨 - 鏈熷垵搴撳瓨锛堟湡鏈ぇ浜庢湡鍒濇椂涓烘鏁帮級
+            BigDecimal diffQty = calculateDiffQty(beginningQty, endingQty);
             
             // 4. 鍒涘缓鏄庣粏璁板綍锛堟殏涓嶆彃鍏ワ級
             MonthlySettleDetail detail = buildMonthlySettleDetail(
                 monthlySettle.getId(), settleNo, matnr, batch, maktx, brand,
-                beginningQty, inQty, outQty, endingQty, stockQtyDecimal, diffQty
+                beginningQty, inQty, outQty, endingQty, diffQty
             );
             detail.setIsDeleted(0); // 鏈垹闄�
             detailList.add(detail);
@@ -370,16 +335,13 @@
                     BigDecimal beginningQty = previousEndingQty;
                     // 鏈熸湯搴撳瓨 = 鏈熷垵 + 鍏ュ簱 - 鍑哄簱 = 鏈熷垵锛堝洜涓烘湰鏈熸病鏈夊嚭鍏ュ簱锛�
                     BigDecimal endingQty = beginningQty;
-                    // 浠庢壒閲忔煡璇㈢殑Map涓幏鍙栧簱瀛�
-                    String stockKey = matnr + "_" + batch;
-                    BigDecimal stockQtyDecimal = stockQtyMap.getOrDefault(stockKey, BigDecimal.ZERO);
-                    // 璁$畻宸紓
-                    BigDecimal diffQty = calculateDiffQty(stockQtyDecimal, endingQty);
+                    // 宸紓鏁伴噺 = 鏈熷垵搴撳瓨 - 鏈熸湯搴撳瓨锛堟湡鍒濆ぇ浜庢湡鏈椂涓烘鏁帮級
+                    BigDecimal diffQty = calculateDiffQty(beginningQty, endingQty);
                     
                     // 鍒涘缓鏄庣粏璁板綍锛堟殏涓嶆彃鍏ワ級
                     MonthlySettleDetail detail = buildMonthlySettleDetail(
                         monthlySettle.getId(), settleNo, matnr, batch, maktx, brand,
-                        beginningQty, inQty, outQty, endingQty, stockQtyDecimal, diffQty
+                        beginningQty, inQty, outQty, endingQty, diffQty
                     );
                     detail.setIsDeleted(0); // 鏈垹闄�
                     detailList.add(detail);
@@ -509,10 +471,11 @@
     }
 
     /**
-     * 璁$畻宸紓鏁伴噺锛堝疄闄呭簱瀛�-鏈熸湯搴撳瓨锛�
+     * 璁$畻宸紓鏁伴噺锛堟湡鏈簱瀛�-鏈熷垵搴撳瓨锛�
+     * 鏈熸湯澶т簬鏈熷垵鏃朵负姝f暟锛岃〃绀哄簱瀛樺鍔�
      */
-    private BigDecimal calculateDiffQty(BigDecimal stockQty, BigDecimal endingQty) {
-        return stockQty.subtract(endingQty);
+    private BigDecimal calculateDiffQty(BigDecimal beginningQty, BigDecimal endingQty) {
+        return endingQty.subtract(beginningQty);
     }
 
     /**
@@ -521,7 +484,7 @@
     private MonthlySettleDetail buildMonthlySettleDetail(
             Long settleId, String settleNo, String matnr, String batch, String maktx, String brand,
             BigDecimal beginningQty, BigDecimal inQty, BigDecimal outQty, BigDecimal endingQty,
-            BigDecimal stockQty, BigDecimal diffQty) {
+            BigDecimal diffQty) {
         MonthlySettleDetail detail = new MonthlySettleDetail();
         // 鍩烘湰淇℃伅
         detail.setSettleId(settleId);
@@ -535,7 +498,8 @@
         detail.setInQty(inQty);
         detail.setOutQty(outQty);
         detail.setEndingQty(endingQty);
-        detail.setStockQty(stockQty);
+        // stock_qty 瀛楁宸插簾寮冿紝瀹為檯搴撳瓨绛変簬鏈熸湯搴撳瓨锛屼笉鍐嶅崟鐙瓨鍌�
+        // detail.setStockQty(endingQty);
         detail.setDiffQty(diffQty);
         // 鏃堕棿淇℃伅
         detail.setCreateTime(new Date());
diff --git a/src/main/resources/mapper/MonthlySettleDetailMapper.xml b/src/main/resources/mapper/MonthlySettleDetailMapper.xml
index 21cb23a..41bf29f 100644
--- a/src/main/resources/mapper/MonthlySettleDetailMapper.xml
+++ b/src/main/resources/mapper/MonthlySettleDetailMapper.xml
@@ -15,7 +15,6 @@
         <result column="in_qty" property="inQty" />
         <result column="out_qty" property="outQty" />
         <result column="ending_qty" property="endingQty" />
-        <result column="stock_qty" property="stockQty" />
         <result column="diff_qty" property="diffQty" />
         <result column="create_time" property="createTime" />
         <result column="is_deleted" property="isDeleted" />
@@ -43,7 +42,6 @@
             d.in_qty,
             d.out_qty,
             d.ending_qty,
-            d.stock_qty,
             d.diff_qty,
             d.create_time,
             m.specs,
diff --git a/src/main/resources/sql/monthly_settle.sql b/src/main/resources/sql/monthly_settle.sql
index b4b964e..c9bf571 100644
--- a/src/main/resources/sql/monthly_settle.sql
+++ b/src/main/resources/sql/monthly_settle.sql
@@ -71,7 +71,7 @@
 EXEC sp_addextendedproperty @name = N'MS_Description', @value = N'鏈湡鍑哄簱鏁伴噺', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'man_monthly_settle_detail', @level2type = N'COLUMN', @level2name = N'out_qty';
 EXEC sp_addextendedproperty @name = N'MS_Description', @value = N'鏈熸湯搴撳瓨锛堟湡鍒�+鍏ュ簱-鍑哄簱锛�', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'man_monthly_settle_detail', @level2type = N'COLUMN', @level2name = N'ending_qty';
 EXEC sp_addextendedproperty @name = N'MS_Description', @value = N'褰撳墠瀹為檯搴撳瓨鏁伴噺', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'man_monthly_settle_detail', @level2type = N'COLUMN', @level2name = N'stock_qty';
-EXEC sp_addextendedproperty @name = N'MS_Description', @value = N'宸紓鏁伴噺锛堝疄闄呭簱瀛�-鏈熸湯搴撳瓨锛�', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'man_monthly_settle_detail', @level2type = N'COLUMN', @level2name = N'diff_qty';
+EXEC sp_addextendedproperty @name = N'MS_Description', @value = N'宸紓鏁伴噺锛堟湡鏈簱瀛�-鏈熷垵搴撳瓨锛�', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'man_monthly_settle_detail', @level2type = N'COLUMN', @level2name = N'diff_qty';
 EXEC sp_addextendedproperty @name = N'MS_Description', @value = N'鍒涘缓鏃堕棿', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'man_monthly_settle_detail', @level2type = N'COLUMN', @level2name = N'create_time';
 EXEC sp_addextendedproperty @name = N'MS_Description', @value = N'鍒犻櫎鏍囪 0:鏈垹闄� 1:宸插垹闄�', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'man_monthly_settle_detail', @level2type = N'COLUMN', @level2name = N'is_deleted';
 
diff --git a/src/main/webapp/static/js/monthlySettle/monthlySettle.js b/src/main/webapp/static/js/monthlySettle/monthlySettle.js
index 719fdb9..58bce67 100644
--- a/src/main/webapp/static/js/monthlySettle/monthlySettle.js
+++ b/src/main/webapp/static/js/monthlySettle/monthlySettle.js
@@ -430,16 +430,6 @@
                                         }
                                     },
                                     {
-                                        field: 'stockQty',
-                                        align: 'right',
-                                        title: '瀹為檯搴撳瓨',
-                                        width: 120,
-                                        templet: function (d) {
-                                            var qty = parseFloat(d.stockQty || 0);
-                                            return qty.toFixed(2);
-                                        }
-                                    },
-                                    {
                                         field: 'diffQty',
                                         align: 'right',
                                         title: '宸紓鏁伴噺',

--
Gitblit v1.9.1