From cd4f266c890379086ed2fe4dc052f5397209d989 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期一, 30 三月 2026 10:11:13 +0800
Subject: [PATCH] Merge branch 'rcs_master' into jdxaj

---
 zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/LocController.java |   39 +++++++++++++++++++++++----------------
 1 files changed, 23 insertions(+), 16 deletions(-)

diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/LocController.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/LocController.java
index dd1496b..dcf1443 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/LocController.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/LocController.java
@@ -207,8 +207,17 @@
             Integer bayNo = parseInteger(row.get("bay_no"), "bay_no", true);
             Integer levNo = parseInteger(row.get("lev_no"), "lev_no", true);
             String locNo = buildLocNo(zone, rowNo, bayNo, levNo);
-            if (locService.selectByLocNo(locNo) != null) {
-                continue;
+            Loc loc = locService.selectByLocNo(locNo);
+            if (loc == null) {
+                loc.setZoneId(zone.getId());
+                loc.setUuid(locNo);
+                loc.setLocNo(locNo);
+                loc.setRowNo(rowNo);
+                loc.setBayNo(bayNo);
+                loc.setLevNo(levNo);
+                loc.setStatus(StatusType.ENABLE.val);
+                loc.setCreateBy(userId);
+                loc.setCreateTime(now);
             }
 
             Long locStsId = resolveLocStsId(readCell(row, "loc_sts"));
@@ -217,13 +226,6 @@
             Integer compDirect = parseInteger(row.get("comp_direct"), "comp_direct", false);
             Double offset = parseDouble(row.get("offset"), "offset");
 
-            Loc loc = new Loc();
-            loc.setZoneId(zone.getId());
-            loc.setUuid(locNo);
-            loc.setLocNo(locNo);
-            loc.setRowNo(rowNo);
-            loc.setBayNo(bayNo);
-            loc.setLevNo(levNo);
 
             loc.setLocSts(locStsId);
             loc.setLocType(locTypeId);
@@ -231,15 +233,19 @@
             loc.setCompDirect(compDirect);
             loc.setOffset(offset);
 
-            loc.setStatus(StatusType.ENABLE.val);
-            loc.setCreateBy(userId);
-            loc.setCreateTime(now);
+
             loc.setUpdateBy(userId);
             loc.setUpdateTime(now);
-
-            if (!locService.save(loc)) {
-                throw new CoolException(locNo + " save fail !");
+            if (loc.getId()==null){
+                if (!locService.save(loc)) {
+                    throw new CoolException(locNo + " save fail !");
+                }
+            }else {
+                if (!locService.updateById(loc)) {
+                    throw new CoolException(locNo + " update fail !");
+                }
             }
+
         }
         return R.ok();
     }
@@ -253,7 +259,8 @@
 
     private Long resolveLocStsId(String identifier) {
         if (Cools.isEmpty(identifier)) {
-            throw new CoolException("loc_sts is required");
+            //throw new CoolException("loc_sts is required");
+            return null;
         }
         LocStsType locStsType = LocStsType.valueOf(identifier);
         if (locStsType == null) {

--
Gitblit v1.9.1