From 3737362a7352ea38ba14f7e2290fd71df57a62d0 Mon Sep 17 00:00:00 2001
From: chen.llin <1442464845@qq.comm>
Date: 星期四, 01 一月 2026 15:21:01 +0800
Subject: [PATCH] 库位表缺少id报错,根据DDL修复

---
 src/main/java/com/zy/asrs/controller/LocDetlController.java |   33 ++++++++++++++++++++++++++++-----
 src/main/java/com/zy/asrs/entity/LocDetl.java               |    9 ++++-----
 2 files changed, 32 insertions(+), 10 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/LocDetlController.java b/src/main/java/com/zy/asrs/controller/LocDetlController.java
index a9b7f97..4020040 100644
--- a/src/main/java/com/zy/asrs/controller/LocDetlController.java
+++ b/src/main/java/com/zy/asrs/controller/LocDetlController.java
@@ -129,7 +129,14 @@
     @RequestMapping(value = "/locDetl/{id}/auth")
     @ManagerAuth
     public R get(@PathVariable("id") String id) {
-        return R.ok(locDetlService.selectById(String.valueOf(id)));
+        // asr_loc_detl 琛ㄦ病鏈� id 涓婚敭锛屼娇鐢� loc_no 鏌ヨ
+        // 娉ㄦ剰锛氫竴涓� loc_no 鍙兘瀵瑰簲澶氭潯璁板綍锛岃繑鍥炵涓�鏉�
+        List<LocDetl> list = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("loc_no", id).last("limit 1"));
+        if (!list.isEmpty()) {
+            return R.ok(list.get(0));
+        }
+        // 杩斿洖 null 鑰屼笉鏄敊璇紝閬垮厤鍓嶇瑙f瀽澶辫触
+        return R.ok(null);
     }
 
     @RequestMapping(value = "/locDetl/auth")
@@ -234,13 +241,29 @@
     @RequestMapping(value = "/locDetl/update/auth")
     @ManagerAuth(memo = "搴撲綅鏄庣粏淇敼")
     public R update(LocDetl locDetl) {
-        if (Cools.isEmpty(locDetl) || null == locDetl.getMatnr()) {
-            return R.error();
+        if (Cools.isEmpty(locDetl) || null == locDetl.getMatnr() || Cools.isEmpty(locDetl.getLocNo())) {
+            return R.error("鍙傛暟涓嶅畬鏁达紝闇�瑕� locNo 鍜� matnr");
         }
         locDetl.setModiUser(getUserId());
         locDetl.setModiTime(new Date());
-        locDetlService.updateById(locDetl);
-        return R.ok();
+        
+        // asr_loc_detl 琛ㄦ病鏈� id 涓婚敭锛屼娇鐢� EntityWrapper 鏍规嵁 loc_no 鍜� matnr 鏇存柊
+        EntityWrapper<LocDetl> wrapper = new EntityWrapper<>();
+        wrapper.eq("loc_no", locDetl.getLocNo());
+        wrapper.eq("matnr", locDetl.getMatnr());
+        
+        // 濡傛灉鏈夋壒娆′俊鎭紝涔熷姞鍏ユ潯浠�
+        if (!Cools.isEmpty(locDetl.getBatch())) {
+            wrapper.eq("batch", locDetl.getBatch());
+        } else {
+            wrapper.andNew("(batch IS NULL OR batch = '')");
+        }
+        
+        boolean result = locDetlService.update(locDetl, wrapper);
+        if (result) {
+            return R.ok();
+        }
+        return R.error("鏇存柊澶辫触锛屾湭鎵惧埌鍖归厤鐨勮褰�");
     }
 
     @RequestMapping(value = "/locDetl/delete/auth")
diff --git a/src/main/java/com/zy/asrs/entity/LocDetl.java b/src/main/java/com/zy/asrs/entity/LocDetl.java
index 8a69749..4099582 100644
--- a/src/main/java/com/zy/asrs/entity/LocDetl.java
+++ b/src/main/java/com/zy/asrs/entity/LocDetl.java
@@ -3,9 +3,7 @@
 import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
 import com.alibaba.excel.annotation.ExcelProperty;
 import com.baomidou.mybatisplus.annotations.TableField;
-import com.baomidou.mybatisplus.annotations.TableId;
 import com.baomidou.mybatisplus.annotations.TableName;
-import com.baomidou.mybatisplus.enums.IdType;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.core.common.Cools;
 import com.core.common.SpringUtils;
@@ -32,9 +30,10 @@
 
     private static final long serialVersionUID = 1L;
 
-    @TableId(value = "id", type = IdType.AUTO)
-    private Long id;
-
+    // 娉ㄦ剰锛歛sr_loc_detl 琛ㄤ腑娌℃湁 id 鍒楋紝鍥犳涓嶄娇鐢� @TableId 娉ㄨВ
+    // 濡傛灉鍚庣画闇�瑕佹坊鍔犱富閿紝璇峰厛纭鏁版嵁搴撹〃缁撴瀯
+    // @TableId(value = "id", type = IdType.AUTO)
+    // private Long id;
 
     @TableField("loc_id")
     private Long locId;

--
Gitblit v1.9.1