From 0b5dc6887e46ac956b5b783c70244d40589fbd25 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期四, 13 十一月 2025 16:11:21 +0800
Subject: [PATCH] *

---
 src/main/webapp/static/js/locDetl/locDetl.js                      |   59 ++++++++++++++
 src/main/webapp/views/locDetl/locDetl.html                        |    1 
 src/main/java/com/zy/asrs/task/handler/GroupOrderFormHandler.java |   40 ++++------
 src/main/java/com/zy/asrs/controller/LocDetlController.java       |   81 ++++++++++++++++++++
 4 files changed, 157 insertions(+), 24 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/LocDetlController.java b/src/main/java/com/zy/asrs/controller/LocDetlController.java
index ff7875f..e25eb46 100644
--- a/src/main/java/com/zy/asrs/controller/LocDetlController.java
+++ b/src/main/java/com/zy/asrs/controller/LocDetlController.java
@@ -2,6 +2,7 @@
 
 import com.alibaba.excel.EasyExcel;
 import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
+import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
@@ -15,12 +16,18 @@
 import com.zy.asrs.entity.LocDetl;
 import com.zy.asrs.entity.ManLocDetl;
 import com.zy.asrs.entity.Mat;
+import com.zy.asrs.entity.param.OrderInspectionRollParam;
+import com.zy.asrs.entity.param.QualityGroupListParam;
+import com.zy.asrs.entity.result.OrderPakoutDetailVo;
 import com.zy.asrs.mapper.LocDetlMapper;
+import com.zy.asrs.service.ApiLogService;
 import com.zy.asrs.service.LocDetlService;
 import com.zy.asrs.service.ManLocDetlService;
 import com.zy.asrs.service.MatService;
+import com.zy.common.utils.HttpHandler;
 import com.zy.common.web.BaseController;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletResponse;
@@ -38,6 +45,13 @@
     private LocDetlMapper locDetlMapper;
     @Autowired
     private MatService matService;
+    @Autowired
+    private ApiLogService apiLogService;
+
+    @Value("${srXghyMes.qualityFinishedCheckoutUrl}")
+    private String qualityFinishedCheckoutUrl;
+    @Value("${srXghyMes.qualityFinishedCheckout}")
+    private String qualityFinishedCheckout;
 
     @RequestMapping(value = "/locDetl/update")
     public R update1() {
@@ -303,4 +317,71 @@
         return R.ok(sum);
     }
 
+    @RequestMapping(value = "/actual/shipment/locDetl/report/auth")
+    @ManagerAuth(memo = "鍗峰彿鏄惁鍚堟牸鎵嬪姩鏍¢獙")
+    public R actualShipmentLocDetl(@RequestParam String model) {
+        Long userId = null;
+        try {
+            userId = getUserId();
+            if (Cools.isEmpty(userId)) {
+                return R.error("鐢ㄦ埛寮傚父").add("鐢ㄦ埛寮傚父");
+            }
+        } catch (Exception e){
+            return R.error("鐢ㄦ埛寮傚父").add("鐢ㄦ埛寮傚父");
+        }
+        List<LocDetl> locDetlList = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("model", model));
+        OrderInspectionRollParam orderInspectionRollParam = new OrderInspectionRollParam(model);
+        String response = "";
+        boolean success = false;
+        Map<String, Object> params = JSON.parseObject(JSON.toJSONString(orderInspectionRollParam), Map.class);
+        try {
+            response = new HttpHandler.Builder()
+                    .setUri(qualityFinishedCheckoutUrl)
+                    .setPath(qualityFinishedCheckout)
+                    .setParams(params)
+                    .setUseFormUrlEncoded(true)
+                    .build()
+                    .doPost();
+            JSONObject jsonObject = JSON.parseObject(response);
+            if (jsonObject.getBoolean("state")) {
+                String value = jsonObject.getString("value");
+                if (value.equals("鍚堟牸")){
+                    for (LocDetl locDetl : locDetlList) {
+                        locDetl.setDanger(1);
+                        locDetlService.updateById(locDetl);
+                    }
+                } else if (value.equals("涓嶅悎鏍�")){
+                    for (LocDetl locDetl : locDetlList) {
+                        locDetl.setDanger(2);
+                        locDetlService.updateById(locDetl);
+                    }
+                } else {
+                    for (LocDetl locDetl : locDetlList) {
+                        locDetl.setDanger(0);
+                        locDetlService.updateById(locDetl);
+                    }
+                }
+                success = true;
+            } else {
+                return R.error("鏌ヨ鍗峰彿鏄惁鍚堟牸澶辫触");
+            }
+        } catch (Exception e) {
+            return R.error("鏌ヨ鍗峰彿鏄惁鍚堟牸澶辫触"+e.getMessage());
+        } finally {
+            try {
+                // 淇濆瓨鎺ュ彛鏃ュ織
+                apiLogService.save(
+                        "鏌ヨ鍗峰彿鏄惁鍚堟牸",
+                        qualityFinishedCheckoutUrl+"/"+qualityFinishedCheckout,
+                        null,
+                        "127.0.0.1",
+                        JSON.toJSONString(orderInspectionRollParam),
+                        response,
+                        success
+                );
+            } catch (Exception e) { }
+        }
+        return R.error("涓婃姤澶辫触").add("涓婃姤澶辫触");
+    }
+
 }
diff --git a/src/main/java/com/zy/asrs/task/handler/GroupOrderFormHandler.java b/src/main/java/com/zy/asrs/task/handler/GroupOrderFormHandler.java
index 0017ff6..17f9386 100644
--- a/src/main/java/com/zy/asrs/task/handler/GroupOrderFormHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/GroupOrderFormHandler.java
@@ -158,37 +158,29 @@
                         .build()
                         .doPost();
                 JSONObject jsonObject = JSON.parseObject(response);
-                if (jsonObject.getInteger("code").equals(200)) {
-                    if (jsonObject.getBoolean("state")) {
-                        String value = jsonObject.getString("value");
-                        if (value.equals("鍚堟牸")){
-                            orderDetl.setDanger(1);
-                            orderDetlPakoutService.updateById(orderDetl);
-                        } else if (!Cools.isEmpty(orderDetl.getDanger$()) && value.equals(orderDetl.getDanger$())){
-                            if (Cools.isEmpty(memo)){
-                                memo = "鍗峰彿"+ orderDetl.getModel()+"鏌ヨ缁撴灉锛�"+jsonObject.getString("message");
-                            }else {
-                                memo = memo+";鍗峰彿"+ orderDetl.getModel()+"鏌ヨ缁撴灉锛�"+jsonObject.getString("message");
-                            }
-                            continue;
-                        } else {
-                            if (Cools.isEmpty(memo)){
-                                memo = "鍗峰彿"+ orderDetl.getModel()+"鏌ヨ缁撴灉锛�"+jsonObject.getString("message");
-                            }else {
-                                memo = memo+";鍗峰彿"+ orderDetl.getModel()+"鏌ヨ缁撴灉锛�"+jsonObject.getString("message");
-                            }
-                            if (value.equals("涓嶅悎鏍�")){
-                                orderDetl.setDanger(2);
-                                orderDetlPakoutService.updateById(orderDetl);
-                            }
-                            continue;
+                if (jsonObject.getBoolean("state")) {
+                    String value = jsonObject.getString("value");
+                    if (value.equals("鍚堟牸")){
+                        orderDetl.setDanger(1);
+                        orderDetlPakoutService.updateById(orderDetl);
+                    } else if (!Cools.isEmpty(orderDetl.getDanger$()) && value.equals(orderDetl.getDanger$())){
+                        if (Cools.isEmpty(memo)){
+                            memo = "鍗峰彿"+ orderDetl.getModel()+"鏌ヨ缁撴灉锛�"+jsonObject.getString("message");
+                        }else {
+                            memo = memo+";鍗峰彿"+ orderDetl.getModel()+"鏌ヨ缁撴灉锛�"+jsonObject.getString("message");
                         }
+                        continue;
                     } else {
                         if (Cools.isEmpty(memo)){
                             memo = "鍗峰彿"+ orderDetl.getModel()+"鏌ヨ缁撴灉锛�"+jsonObject.getString("message");
                         }else {
                             memo = memo+";鍗峰彿"+ orderDetl.getModel()+"鏌ヨ缁撴灉锛�"+jsonObject.getString("message");
                         }
+                        if (value.equals("涓嶅悎鏍�")){
+                            orderDetl.setDanger(2);
+                            orderDetlPakoutService.updateById(orderDetl);
+                        }
+                        continue;
                     }
                     success = true;
                 } else {
diff --git a/src/main/webapp/static/js/locDetl/locDetl.js b/src/main/webapp/static/js/locDetl/locDetl.js
index a5c21d6..18b853c 100644
--- a/src/main/webapp/static/js/locDetl/locDetl.js
+++ b/src/main/webapp/static/js/locDetl/locDetl.js
@@ -261,6 +261,65 @@
                     }
                 });
                 break;
+            case 'edit':
+                var model = top.reObject(data).model;
+                if (model === undefined) {
+                    layer.msg("鏃犳暟鎹�");
+                }
+                this.$confirm(
+                    '纭鍚慚ES鏍″噯鏄惁鍚堟牸锛�',
+                    '纭淇敼',
+                    {
+                        confirmButtonText: '纭',
+                        cancelButtonText: '鍙栨秷',
+                        type: 'warning',
+                        dangerouslyUseHTMLString: true
+                    }
+                ).then(() => {
+                    // 璋冪敤鍚庡彴API涓婃姤鏁版嵁
+                    $.ajax({
+                        url: baseUrl + "/actual/shipment/locDetl/report/auth",
+                        headers: {'token': localStorage.getItem('token')},
+                        data: {
+                            model: model // 浼犻�掔粍璐у崟鍙�
+                        },
+                        method: 'POST',
+                        success: (res) => {
+                            this.reportLoading = false;
+                            if (typeof done === 'function') {
+                                done();
+                            }
+                            if (res.code === 200 || res.success) {
+                                this.$message({
+                                    message: `缁勮揣鍗曞彿 ${groupOrderNo} 涓婃姤鎴愬姛`,
+                                    type: 'success',
+                                    duration: 3000
+                                });
+                                // 涓婃姤鎴愬姛鍚庡叧闂脊绐楀苟鍒锋柊鏁版嵁
+                                setTimeout(() => {
+                                    this.closeDetailDialog();
+                                    this.getTableDataA(); // 鍒锋柊涓昏〃鏁版嵁
+                                }, 1500);
+                            } else {
+                                this.$message.error(res.message || '涓婃姤澶辫触');
+                            }
+                        },
+                        error: (error) => {
+                            this.reportLoading = false;
+                            if (typeof done === 'function') {
+                                done();
+                            }
+                            console.error('涓婃姤澶辫触:', error);
+                            this.$message.error('涓婃姤澶辫触锛岃妫�鏌ョ綉缁滆繛鎺�');
+                        }
+                    });
+                }).catch(() => {
+                    this.$message({
+                        type: 'info',
+                        message: '宸插彇娑堜慨鏀�'
+                    });
+                });
+                break;
             case 'locNo':
                 var param = top.reObject(data).locNo;
                 if (param === undefined) {
diff --git a/src/main/webapp/views/locDetl/locDetl.html b/src/main/webapp/views/locDetl/locDetl.html
index 544d89e..72e2ca2 100644
--- a/src/main/webapp/views/locDetl/locDetl.html
+++ b/src/main/webapp/views/locDetl/locDetl.html
@@ -78,6 +78,7 @@
 <script type="text/html" id="operate">
 <!--    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">璇︽儏</a>-->
     <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="edit">缂栬緫</a>
+    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="inspection">妫�楠�</a>
 
 </script>
 

--
Gitblit v1.9.1