From 35173cda98e2be25cf30a028697e6d363f8c4f77 Mon Sep 17 00:00:00 2001
From: zhou zhou <3272660260@qq.com>
Date: 星期四, 13 十一月 2025 14:54:06 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/common/config/ControllerResAdvice.java       |    4 +-
 src/main/java/com/zy/asrs/entity/param/PKInventoryAdjustment.java |   13 ++++++
 src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java     |   49 ++++++++++++++++++++++++
 src/main/java/com/zy/asrs/controller/MobileController.java        |   38 +++++++++++++++++++
 src/main/java/com/zy/asrs/service/MobileService.java              |   11 +++--
 5 files changed, 109 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/MobileController.java b/src/main/java/com/zy/asrs/controller/MobileController.java
index b859aa7..37bb33d 100644
--- a/src/main/java/com/zy/asrs/controller/MobileController.java
+++ b/src/main/java/com/zy/asrs/controller/MobileController.java
@@ -3,6 +3,7 @@
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.core.annotations.AppAuth;
 import com.core.annotations.ManagerAuth;
 import com.core.common.BaseRes;
 import com.core.common.Cools;
@@ -22,6 +23,7 @@
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 
+import javax.servlet.http.HttpServletRequest;
 import java.text.DecimalFormat;
 import java.text.SimpleDateFormat;
 import java.util.*;
@@ -34,6 +36,11 @@
 @RequestMapping("mobile")
 @Slf4j
 public class MobileController extends BaseController  {
+
+    private static final boolean auth = true;
+    public static final ArrayList<String> APP_KEY_LIST = new ArrayList<String>() {{
+        add("ea1f0459efc02a79f046f982767939ae");
+    }};
 
     @Autowired
     private MobileService mobileService;
@@ -352,6 +359,37 @@
         return R.ok();
     }
 
+    @RequestMapping("/pingKu/getList/auth")
+    @ManagerAuth(memo = "骞冲簱鑾峰彇搴撳瓨鍒楄〃")
+    @AppAuth(memo = "骞冲簱鑾峰彇搴撳瓨鍒楄〃")
+    public R pingKuGetList(@RequestBody PKInventoryAdjustment combParam){
+        auth("", combParam, request);
+        if (Cools.isEmpty(combParam.getLocno())) {
+            throw new CoolException(BaseRes.PARAM);
+        }
+        List<ManLocDetl> manLocDetls = mobileService.pingKuGetList(combParam);
+
+        return R.ok(manLocDetls);
+    }
+
+    @RequestMapping("/pingKu/inventoryAdjustment/auth")
+    @ManagerAuth(memo = "搴撳瓨璋冩暣")
+    @AppAuth(memo = "搴撳瓨璋冩暣")
+    public R pingKuInventoryAdjustment(@RequestBody PKInventoryAdjustment combParam, HttpServletRequest request){
+        auth("", combParam, request);
+        if (Cools.isEmpty(combParam.getLocno())) {
+            throw new CoolException(BaseRes.PARAM);
+        }
+        mobileService.pingKuInventoryAdjustment(combParam);
+
+        return R.ok();
+    }
+
+    private void auth(String appkey, Object obj, HttpServletRequest request) {
+//            log.info("{}鎺ュ彛琚闂紱appkey:{}锛涜姹傛暟鎹細{}", request.getRequestURI(), appkey, JSON.toJSONString(obj));
+        request.setAttribute("cache", obj);
+    }
+
     @RequestMapping("/pack/get/auth")
     @ManagerAuth
     public R packGet(@RequestParam String barcode){
diff --git a/src/main/java/com/zy/asrs/entity/param/PKInventoryAdjustment.java b/src/main/java/com/zy/asrs/entity/param/PKInventoryAdjustment.java
new file mode 100644
index 0000000..1cb2414
--- /dev/null
+++ b/src/main/java/com/zy/asrs/entity/param/PKInventoryAdjustment.java
@@ -0,0 +1,13 @@
+package com.zy.asrs.entity.param;
+
+import com.zy.asrs.entity.ManLocDetl;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class PKInventoryAdjustment {
+    private String locno;
+    private String matnr;
+    private List<ManLocDetl> manLocDetls;
+}
diff --git a/src/main/java/com/zy/asrs/service/MobileService.java b/src/main/java/com/zy/asrs/service/MobileService.java
index b39ee36..8deb5c8 100644
--- a/src/main/java/com/zy/asrs/service/MobileService.java
+++ b/src/main/java/com/zy/asrs/service/MobileService.java
@@ -4,13 +4,12 @@
 import com.core.common.R;
 import com.zy.asrs.entity.BasDevp;
 import com.zy.asrs.entity.LocDetl;
+import com.zy.asrs.entity.ManLocDetl;
 import com.zy.asrs.entity.OrderDetl;
-import com.zy.asrs.entity.param.CombParam;
-import com.zy.asrs.entity.param.MobileAdjustParam;
-import com.zy.asrs.entity.param.OffSaleParam;
-import com.zy.asrs.entity.param.pdaAdjustParam;
+import com.zy.asrs.entity.param.*;
 
 import java.util.Date;
+import java.util.List;
 import java.util.Map;
 
 public interface MobileService {
@@ -72,4 +71,8 @@
     R FinishedCall(Map<String, Object> map);
 
     R agv2fPack(Map<String, Object> map);
+
+    List<ManLocDetl> pingKuGetList(PKInventoryAdjustment combParam);
+
+    void pingKuInventoryAdjustment(PKInventoryAdjustment combParam);
 }
diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
index d004dc4..2bcb32b 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -179,6 +179,55 @@
     }
 
     @Override
+    public List<ManLocDetl> pingKuGetList(PKInventoryAdjustment combParam) {
+        Node node = nodeService.selectOne(new EntityWrapper<Node>().eq("name", combParam.getLocno()).eq("type", 3));
+        if (Cools.isEmpty(node)){
+            throw new CoolException("鏈壘鍒板钩搴撳簱浣嶄俊鎭�");
+        }
+        EntityWrapper<ManLocDetl> manLocDetlEntityWrapper = new EntityWrapper<>();
+        manLocDetlEntityWrapper.eq("loc_no", node.getName());
+        manLocDetlEntityWrapper.eq(!Cools.isEmpty(combParam.getMatnr()),"matnr", combParam.getMatnr());
+        List<ManLocDetl> manLocDetls = manLocDetlService.selectList(manLocDetlEntityWrapper);
+        if (Cools.isEmpty(manLocDetls)){
+            throw new CoolException("鏈壘鍒板簱瀛樹俊鎭�");
+        }
+        return manLocDetls;
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void pingKuInventoryAdjustment(PKInventoryAdjustment combParam) {
+        Node node = nodeService.selectOne(new EntityWrapper<Node>().eq("name", combParam.getLocno()).eq("type", 3));
+        if (Cools.isEmpty(node)){
+            throw new CoolException("鏈壘鍒板钩搴撳簱浣嶄俊鎭�");
+        }
+        for (ManLocDetl manLocDetl :combParam.getManLocDetls()){
+            EntityWrapper<ManLocDetl> manLocDetlEntityWrapper = new EntityWrapper<>();
+            manLocDetlEntityWrapper.eq("loc_no", manLocDetl.getLocNo());
+            manLocDetlEntityWrapper.eq("matnr", manLocDetl.getMatnr());
+            manLocDetlEntityWrapper.eq("batch", manLocDetl.getBatch());
+            List<ManLocDetl> manLocDetls = manLocDetlService.selectList(manLocDetlEntityWrapper);
+            if (Cools.isEmpty(manLocDetls) || manLocDetls.size() > 1){
+                throw new CoolException("鏁版嵁閿欒");
+            }
+
+            ManLocDetl manLocDetl1 = manLocDetls.get(0);
+            BigDecimal adjustBigDecimal = new BigDecimal(manLocDetl.getAnfme().toString());
+            BigDecimal orgBigDecimal = new BigDecimal(manLocDetl1.getAnfme().toString());
+            if (orgBigDecimal.compareTo(adjustBigDecimal) == 0){
+                continue;
+            }
+            manLocDetl1.setAnfme(adjustBigDecimal.doubleValue());
+            if (!manLocDetlService.update(manLocDetl1,manLocDetlEntityWrapper)){
+                throw new CoolException("鏇存柊鏁版嵁澶辫触");
+            }
+
+
+
+        }
+    }
+
+    @Override
     public R inLocCallAgv(String sta, String inSta) {
 
         BasDevp basDevp = basDevpMapper.selectById(inSta);
diff --git a/src/main/java/com/zy/common/config/ControllerResAdvice.java b/src/main/java/com/zy/common/config/ControllerResAdvice.java
index a4cdc97..8892a69 100644
--- a/src/main/java/com/zy/common/config/ControllerResAdvice.java
+++ b/src/main/java/com/zy/common/config/ControllerResAdvice.java
@@ -46,7 +46,7 @@
                 if (o instanceof R) {
                     String appkey = request.getHeader("appkey");
                     Object reqCache = request.getAttribute("cache");
-                    if (!Cools.isEmpty(appkey)) {
+
                         // 淇濆瓨鎺ュ彛鏃ュ織
                         apiLogService.save(
                                 String.valueOf(appAuth),
@@ -57,7 +57,7 @@
                                 JSON.toJSONString(o),
                                 String.valueOf(((R) o).get("code")).equalsIgnoreCase("200")
                         );
-                    }
+
                 }
             }
         }

--
Gitblit v1.9.1