From bac4cc2bb0723a5d844820589bc56bed9fc6bc6d Mon Sep 17 00:00:00 2001
From: czkh <czkh@163.com>
Date: 星期三, 19 十一月 2025 13:53:42 +0800
Subject: [PATCH] #1

---
 src/main/java/com/zy/asrs/controller/LocMastController.java |   18 +++++++++++++-----
 1 files changed, 13 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/LocMastController.java b/src/main/java/com/zy/asrs/controller/LocMastController.java
index 9763ded..6446f6a 100644
--- a/src/main/java/com/zy/asrs/controller/LocMastController.java
+++ b/src/main/java/com/zy/asrs/controller/LocMastController.java
@@ -116,6 +116,7 @@
                 locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", locMast.getLocNo()));
             }
         }
+        locMast.setBarcode("");
         locMast.setModiUser(getUserId());
         locMast.setModiTime(new Date());
         locMastService.updateById(locMast);
@@ -176,7 +177,7 @@
     @ManagerAuth(memo = "鍒濆鍖栧簱浣�")
 //    @Transactional
     public R init(LocMastInitParam param) {
-        List<LocMast> list = new ArrayList<>();
+       List<LocMast> list = new ArrayList<>();
         for (int r=param.getStartRow(); r<=param.getEndRow(); r++){
             for (int b=param.getStartBay(); b<=param.getEndBay(); b++) {
                 for (int l=param.getStartLev(); l<=param.getEndLev(); l++) {
@@ -184,10 +185,16 @@
                     String locNo = String.format("%02d", r) + String.format("%03d", b) + String.format("%02d", l);
                     // 鑾峰彇鍫嗗灈鏈哄彿
                     int crnNo = 0;
-                    Shelves shelves = new Shelves(param.getEndRow() - param.getStartRow() + 1, param.getCrnAmount());
+                    Shelves shelves = new Shelves(param.getEndRow() - param.getStartRow() + 1, param.getCrnAmount(),param.getStartRow());
                     for (List<Integer> node : shelves.nodes){
+
                         if (node.contains(r)) {
-                            crnNo = shelves.nodes.indexOf(node) + 1;
+                            if (!Cools.isEmpty(param.getStaCrn()) && param.getStaCrn() > 0){
+                                crnNo = shelves.nodes.indexOf(node) + param.getStaCrn();
+                            }else {
+                                crnNo = shelves.nodes.indexOf(node) + 1;
+                            }
+
                             break;
                         }
                     }
@@ -210,8 +217,9 @@
                 }
             }
         }
-        locMastService.delete(new EntityWrapper<>());
-        locDetlService.delete(new EntityWrapper<>());
+        if (!Cools.isEmpty(param.getEnable()) && param.getEnable() == 1){
+             locMastService.delete(new EntityWrapper<>());
+        }
         locMastService.insertBatch(list);
         return R.ok("鍒濆鍖栨垚鍔�");
     }

--
Gitblit v1.9.1