From 5d826a90e007b36e8108c2b9a5bda14010d17d35 Mon Sep 17 00:00:00 2001
From: skyouc <creaycat@gmail.com>
Date: 星期六, 10 一月 2026 14:14:11 +0800
Subject: [PATCH] 释放已锁定库位信息

---
 src/main/java/com/zy/api/service/impl/HmesApiServiceImpl.java |   14 +++++++++++++-
 1 files changed, 13 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/zy/api/service/impl/HmesApiServiceImpl.java b/src/main/java/com/zy/api/service/impl/HmesApiServiceImpl.java
index f86c4cb..9a60b44 100644
--- a/src/main/java/com/zy/api/service/impl/HmesApiServiceImpl.java
+++ b/src/main/java/com/zy/api/service/impl/HmesApiServiceImpl.java
@@ -90,6 +90,7 @@
      * @return com.core.common.R
      */
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public R releaseLock(ReceviceTaskParams params) {
         if (Objects.isNull(params) || Objects.isNull(params.getDeviceNo())) {
             return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒");
@@ -106,7 +107,18 @@
         }
         Set<String> locs = binds.stream().map(LocAroundBind::getBLocNo).collect(Collectors.toSet());
 
+        List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>().in("loc_no", locs).eq("loc_sts", LocStsType.LOC_STS_TYPE_X.type));
+        if (Objects.isNull(locMasts) || locMasts.isEmpty()) {
+            throw new CoolException("娌℃湁绂佺敤搴撲綅锛屼笉闇�瑕侀噴鏀撅紒锛�");
+        }
 
-        return null;
+        locMasts.forEach(loc -> {
+           loc.setLocSts(LocStsType.LOC_STS_TYPE_O.type);
+           if (!locMastService.updateById(loc)) {
+               throw new CoolException("搴撲綅閲婃斁澶辫触锛岃妫�鏌ュ悗鍐嶆搷浣滐紒锛�");
+           }
+        });
+
+        return R.ok();
     }
 }

--
Gitblit v1.9.1