From 5c1927cae2e50e31a4fe56762c040837bd80334b Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期二, 11 十一月 2025 16:43:44 +0800
Subject: [PATCH] *

---
 src/main/java/com/zy/asrs/controller/OrderPakoutController.java         |   83 ++++++++++++++++++++
 src/main/java/com/zy/asrs/service/impl/OrderPakoutServiceImpl.java      |    7 +
 src/main/java/com/zy/asrs/service/OrderDetlPakoutService.java           |    1 
 src/main/java/com/zy/asrs/mapper/OrderDetlPakoutMapper.java             |    3 
 src/main/java/com/zy/asrs/mapper/OrderPakoutMapper.java                 |    3 
 src/main/java/com/zy/asrs/controller/OrderDetlPakoutController.java     |   15 ---
 src/main/java/com/zy/asrs/entity/param/QualityGroupListParam.java       |   40 ++++++++++
 src/main/resources/mapper/OrderDetlPakoutMapper.xml                     |    6 +
 src/main/resources/mapper/OrderPakoutMapper.xml                         |    9 ++
 src/main/webapp/views/orderCargoGrouping/orderCargoGroupingOperate.html |   14 +--
 src/main/java/com/zy/asrs/service/impl/OrderDetlPakoutServiceImpl.java  |    5 +
 src/main/java/com/zy/asrs/service/OrderPakoutService.java               |    1 
 12 files changed, 160 insertions(+), 27 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/OrderDetlPakoutController.java b/src/main/java/com/zy/asrs/controller/OrderDetlPakoutController.java
index 2c8b610..37e2592 100644
--- a/src/main/java/com/zy/asrs/controller/OrderDetlPakoutController.java
+++ b/src/main/java/com/zy/asrs/controller/OrderDetlPakoutController.java
@@ -183,19 +183,4 @@
         return R.ok();
     }
 
-    @RequestMapping(value = "/orderDetl/order/v1/report/auth")
-    @ManagerAuth(memo = "涓婃姤MES瀹為檯缁勮揣鍗�")
-    public R reportBatchOrder(ReportOrderBatchDetlParam param) {
-        List<OrderDetlPakout> orderDetlPakoutList = orderDetlPakoutService.selectList(new EntityWrapper<OrderDetlPakout>()
-                .eq("batch", param.getBatch())
-        );
-        for (OrderDetlPakout orderDetl : orderDetlPakoutList){
-            orderDetl.setStatus(param.getStatus());
-            orderDetlService.updateById(orderDetl);
-        }
-        return R.ok();
-    }
-
-
-
 }
diff --git a/src/main/java/com/zy/asrs/controller/OrderPakoutController.java b/src/main/java/com/zy/asrs/controller/OrderPakoutController.java
index 95377a2..1011d48 100644
--- a/src/main/java/com/zy/asrs/controller/OrderPakoutController.java
+++ b/src/main/java/com/zy/asrs/controller/OrderPakoutController.java
@@ -1,5 +1,6 @@
 package com.zy.asrs.controller;
 
+import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.mapper.Wrapper;
@@ -9,11 +10,16 @@
 import com.core.exception.CoolException;
 import com.zy.asrs.entity.*;
 import com.zy.asrs.entity.param.OrderDomainParam;
+import com.zy.asrs.entity.param.QualityGroupListParam;
+import com.zy.asrs.entity.result.OrderPakoutDetailVo;
 import com.zy.asrs.entity.result.OrderPakoutMainVo;
 import com.zy.asrs.entity.result.WrkTraceVo;
 import com.zy.asrs.service.*;
+import com.zy.common.constant.MesConstant;
 import com.zy.common.model.DetlDto;
+import com.zy.common.utils.HttpHandler;
 import com.zy.common.web.BaseController;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
@@ -21,6 +27,7 @@
 
 import java.util.*;
 
+@Slf4j
 @RestController
 @RequestMapping("order/pakout")
 public class OrderPakoutController extends BaseController {
@@ -43,6 +50,8 @@
     private WrkMastService wrkMastService;
     @Autowired
     private WrkMastLogService wrkMastLogService;
+    @Autowired
+    private ApiLogService apiLogService;
 
     @RequestMapping(value = "/order/nav/list/auth")
     @ManagerAuth
@@ -352,4 +361,78 @@
         }
         return R.error();
     }
+
+
+
+    @RequestMapping(value = "/actual/shipment/order/report/auth")
+    @ManagerAuth(memo = "涓婃姤MES瀹為檯缁勮揣鍗�")
+    public R actualShipmentOrder(@RequestParam String itemName) {
+        Long userId = getUserId();
+        List<OrderPakoutDetailVo> OrderPakoutDetailVoList = orderDetlService.selectOrderPakoutDetailVoListV1(itemName);
+        List<String> boxList = new ArrayList<>();
+        List<String> rollList = new ArrayList<>();
+        for (OrderPakoutDetailVo orderDetl : OrderPakoutDetailVoList){
+            if (!boxList.contains(orderDetl.getBatch())){
+                boxList.add(orderDetl.getBatch());
+            }
+            if (!rollList.contains(orderDetl.getModel())){
+                rollList.add(orderDetl.getModel());
+            }
+        }
+        String box = String.join(",", boxList);
+        String roll = String.join(",", rollList);
+
+        QualityGroupListParam qualityGroupListParam = new QualityGroupListParam(itemName,box,roll);
+
+
+
+        String response = "";
+        boolean success = false;
+        try {
+            response = new HttpHandler.Builder()
+                    .setUri(MesConstant.URL)
+                    .setPath(MesConstant.PAKIN_URL)
+                    .setJson(JSON.toJSONString(qualityGroupListParam))
+                    .build()
+                    .doPost();
+            JSONObject jsonObject = JSON.parseObject(response);
+            if (jsonObject.getBoolean("state")) {
+                success = true;
+                // 淇敼璁㈠崟鐘舵�� 4.瀹屾垚 ===>> 16.宸蹭笂鎶�
+                if (!orderService.updateItemName(itemName, 16L, userId)) {
+                    throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
+                }
+            } else {
+                // 淇敼璁㈠崟鐘舵�� 4.瀹屾垚 ===>> 17.宸蹭笂鎶�
+                if (!orderService.updateItemName(itemName, 17L, userId)) {
+                    throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
+                }
+                log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", MesConstant.URL+MesConstant.PAKIN_URL, JSON.toJSONString(qualityGroupListParam), response);
+                throw new CoolException("涓婃姤mes绯荤粺澶辫触");
+            }
+        } catch (Exception e) {
+            // 淇敼璁㈠崟鐘舵�� 4.瀹屾垚 ===>> 17.宸蹭笂鎶�
+            if (!orderService.updateItemName(itemName, 17L, userId)) {
+                throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
+            }
+            log.error("fail", e);
+        } finally {
+            try {
+                // 淇濆瓨鎺ュ彛鏃ュ織
+                apiLogService.save(
+                        "涓婃姤MES瀹為檯缁勮揣鍗�",
+                        MesConstant.URL + MesConstant.PAKIN_URL,
+                        null,
+                        "127.0.0.1",
+                        JSON.toJSONString(qualityGroupListParam),
+                        response,
+                        success
+                );
+            } catch (Exception e) { log.error("", e); }
+        }
+
+
+
+        return R.ok();
+    }
 }
diff --git a/src/main/java/com/zy/asrs/entity/param/QualityGroupListParam.java b/src/main/java/com/zy/asrs/entity/param/QualityGroupListParam.java
new file mode 100644
index 0000000..35d1832
--- /dev/null
+++ b/src/main/java/com/zy/asrs/entity/param/QualityGroupListParam.java
@@ -0,0 +1,40 @@
+package com.zy.asrs.entity.param;
+
+import lombok.Data;
+
+/**
+ * Created by vincent on 2021/3/31
+ */
+@Data
+public class QualityGroupListParam {
+
+    private String groupOrderNumber;//缁勮揣鍗曞彿锛堝敮涓�鏍囪瘑锛�
+
+    private String sjalbz;//涓�鍘傜珛搴撳疄闄呭嚭搴撳寘瑁呯粍鍙凤紙澶氫釜閫楀彿鎷兼帴锛�  //绠卞彿
+    private String sjaljh;//涓�鍘傜珛搴撳疄闄呭嚭搴撳嵎鍙凤紙澶氫釜閫楀彿鎷兼帴锛�  //鍗峰彿  ,鍒嗛殧
+
+    private String factory = "1";//鍘傞儴淇℃伅锛�1涓�鍘傦紝2浜屽巶锛�
+    private String groupStatus = "1";//缁勮揣鐘舵�侊紙1纭鍑哄簱锛�
+
+
+    //鏃犵敤
+    private String sjapbz = "";//涓�鍘傚钩搴撳疄闄呭嚭搴撳寘瑁呯粍鍙凤紙澶氫釜閫楀彿鎷兼帴锛�
+    private String sjapjh = "";//涓�鍘傚钩搴撳疄闄呭嚭搴撳嵎鍙凤紙澶氫釜閫楀彿鎷兼帴锛�
+    private String sjbpbz = "";//浜屽巶骞冲簱瀹為檯鍑哄簱鍖呰缁勫彿锛堝涓�楀彿鎷兼帴锛�
+    private String sjbpjh = "";//浜屽巶骞冲簱瀹為檯鍑哄簱鍗峰彿锛堝涓�楀彿鎷兼帴锛�
+    private String sjblbz = "";//浜屽巶绔嬪簱瀹為檯鍑哄簱鍖呰缁勫彿锛堝涓�楀彿鎷兼帴锛�
+    private String sjbljh = "";//浜屽巶绔嬪簱瀹為檯鍑哄簱鍗峰彿锛堝涓�楀彿鎷兼帴锛�
+
+    public QualityGroupListParam() {
+    }
+
+    public QualityGroupListParam(String groupOrderNumber) {
+        this.groupOrderNumber = groupOrderNumber;
+    }
+
+    public QualityGroupListParam(String groupOrderNumber, String sjalbz, String sjaljh) {
+        this.groupOrderNumber = groupOrderNumber;
+        this.sjalbz = sjalbz;
+        this.sjaljh = sjaljh;
+    }
+}
diff --git a/src/main/java/com/zy/asrs/mapper/OrderDetlPakoutMapper.java b/src/main/java/com/zy/asrs/mapper/OrderDetlPakoutMapper.java
index 7ffba3e..84e3179 100644
--- a/src/main/java/com/zy/asrs/mapper/OrderDetlPakoutMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/OrderDetlPakoutMapper.java
@@ -37,13 +37,14 @@
 
     int increaseWorkQty(@Param("orderId")Long orderId, @Param("matnr")String matnr, @Param("batch")String batch, @Param("workQty")Double workQty);
 
-
     List<OrderPakoutDetailVo> selectOrderPakoutDetailVoList(@Param("itemName") String itemName,
                                                 @Param("modiTimeStart") Date modiTimeStart,
                                                 @Param("modiTimeEnd") Date modiTimeEnd,
                                                 @Param("pageNumber") Integer curr,
                                                 @Param("pageSize") Integer limit);
 
+    List<OrderPakoutDetailVo> selectOrderPakoutDetailVoListV1(@Param("itemName") String itemName);
+
     Long selectOrderPakoutDetailVoListTotal(@Param("itemName") String itemName,
                                 @Param("modiTimeStart") Date modiTimeStart,
                                 @Param("modiTimeEnd") Date modiTimeEnd);
diff --git a/src/main/java/com/zy/asrs/mapper/OrderPakoutMapper.java b/src/main/java/com/zy/asrs/mapper/OrderPakoutMapper.java
index c024228..100f8f7 100644
--- a/src/main/java/com/zy/asrs/mapper/OrderPakoutMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/OrderPakoutMapper.java
@@ -41,4 +41,7 @@
                                                         @Param("status") Integer status,
                                                         @Param("modiTimeStart") Date modiTimeStart,
                                                         @Param("modiTimeEnd") Date modiTimeEnd);
+
+    int updateItemName(@Param("itemName")String itemName,
+            @Param("settle")Long settle,@Param("userId") Long userId);
 }
diff --git a/src/main/java/com/zy/asrs/service/OrderDetlPakoutService.java b/src/main/java/com/zy/asrs/service/OrderDetlPakoutService.java
index 727fb68..d6fdb3c 100644
--- a/src/main/java/com/zy/asrs/service/OrderDetlPakoutService.java
+++ b/src/main/java/com/zy/asrs/service/OrderDetlPakoutService.java
@@ -41,5 +41,6 @@
     boolean increaseWorkQty(Long orderId, String matnr, String batch, Double workQty);
 
     List<OrderPakoutDetailVo> selectOrderPakoutDetailVoList(String itemName, Date modiTimeStart, Date modiTimeEnd, Integer curr, Integer limit);
+    List<OrderPakoutDetailVo> selectOrderPakoutDetailVoListV1(String itemName);
     Long selectOrderPakoutDetailVoListTotal(String itemName,Date modiTimeStart,Date modiTimeEnd);
 }
diff --git a/src/main/java/com/zy/asrs/service/OrderPakoutService.java b/src/main/java/com/zy/asrs/service/OrderPakoutService.java
index 87c8fbf..46b1506 100644
--- a/src/main/java/com/zy/asrs/service/OrderPakoutService.java
+++ b/src/main/java/com/zy/asrs/service/OrderPakoutService.java
@@ -33,4 +33,5 @@
 
     Long selectOrderPakoutMainVoListTotal(String itemName, String cstmrName, Integer settle, Integer status, Date modiTimeStart,Date modiTimeEnd);
 
+    boolean updateItemName(String itemName,Long settle, Long userId);
 }
diff --git a/src/main/java/com/zy/asrs/service/impl/OrderDetlPakoutServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OrderDetlPakoutServiceImpl.java
index f60e624..6f74bdd 100644
--- a/src/main/java/com/zy/asrs/service/impl/OrderDetlPakoutServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OrderDetlPakoutServiceImpl.java
@@ -94,6 +94,11 @@
     }
 
     @Override
+    public List<OrderPakoutDetailVo> selectOrderPakoutDetailVoListV1(String itemName) {
+        return this.baseMapper.selectOrderPakoutDetailVoListV1(itemName);
+    }
+
+    @Override
     public List<OrderPakoutDetailVo> selectOrderPakoutDetailVoList(String itemName, Date modiTimeStart, Date modiTimeEnd, Integer curr, Integer limit) {
         return this.baseMapper.selectOrderPakoutDetailVoList(itemName,modiTimeStart,modiTimeEnd,curr,limit);
     }
diff --git a/src/main/java/com/zy/asrs/service/impl/OrderPakoutServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OrderPakoutServiceImpl.java
index bf9a2a6..9177294 100644
--- a/src/main/java/com/zy/asrs/service/impl/OrderPakoutServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OrderPakoutServiceImpl.java
@@ -46,8 +46,6 @@
         return this.baseMapper.updateSettle(orderId, settle, userId) > 0;
     }
 
-
-
     @Override
     public void remove(Long orderId) {
         if (!this.deleteById(orderId)) {
@@ -92,4 +90,9 @@
         return this.baseMapper.selectOrderPakoutMainVoListTotal(itemName,cstmrName,settle, status,modiTimeStart,modiTimeEnd);
     }
 
+    @Override
+    public boolean updateItemName(String itemName,Long settle, Long userId) {
+        return this.baseMapper.updateItemName(itemName,settle, userId) > 0;
+    }
+
 }
diff --git a/src/main/resources/mapper/OrderDetlPakoutMapper.xml b/src/main/resources/mapper/OrderDetlPakoutMapper.xml
index 5957e37..aacf6a5 100644
--- a/src/main/resources/mapper/OrderDetlPakoutMapper.xml
+++ b/src/main/resources/mapper/OrderDetlPakoutMapper.xml
@@ -271,6 +271,12 @@
         where d.row1 between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize}) order by d.update_time desc
     </select>
 
+    <select id="selectOrderPakoutDetailVoListV1" resultMap="PakoutDetailResultMap">
+        select a.* from v_pakout_detail as a
+        where 1=1
+        AND item_name = #{itemName}
+    </select>
+
     <select id="selectOrderPakoutDetailVoListTotal" resultType="Long">
         SELECT count(1) FROM v_pakout_detail
         WHERE 1 = 1
diff --git a/src/main/resources/mapper/OrderPakoutMapper.xml b/src/main/resources/mapper/OrderPakoutMapper.xml
index e756812..63141ba 100644
--- a/src/main/resources/mapper/OrderPakoutMapper.xml
+++ b/src/main/resources/mapper/OrderPakoutMapper.xml
@@ -144,6 +144,15 @@
         and (settle = 10 or settle = 13 or settle = 98)
     </update>
 
+    <update id="updateItemName">
+        update man_order_pakout
+        set settle = #{settle}
+          ,update_by = #{userId}
+          ,update_time = getdate()
+        where 1=1
+          and item_name = #{itemName}
+    </update>
+
     <select id="selectOrderPakoutMainVoList" resultMap="PakoutMainResultMap">
         select d.* from (
             select
diff --git a/src/main/webapp/views/orderCargoGrouping/orderCargoGroupingOperate.html b/src/main/webapp/views/orderCargoGrouping/orderCargoGroupingOperate.html
index cc09ec8..c0b867a 100644
--- a/src/main/webapp/views/orderCargoGrouping/orderCargoGroupingOperate.html
+++ b/src/main/webapp/views/orderCargoGrouping/orderCargoGroupingOperate.html
@@ -575,16 +575,12 @@
 
 				// 璋冪敤鍚庡彴API涓婃姤鏁版嵁
 				$.ajax({
-					url: baseUrl + "/api/report/confirm",
-					headers: {
-						'token': localStorage.getItem('token')
+					url: baseUrl + "/order/pakout/actual/shipment/order/report/auth",
+					headers: {'token': localStorage.getItem('token')},
+					data: {
+						itemName: groupOrderNo // 浼犻�掔粍璐у崟鍙�
 					},
-					data: JSON.stringify({
-						item_name: groupOrderNo // 浼犻�掔粍璐у崟鍙�
-					}),
-					dataType: 'json',
-					contentType: 'application/json;charset=UTF-8',
-					method: 'post',
+					method: 'POST',
 					success: (res) => {
 						this.reportLoading = false;
 						if (typeof done === 'function') {

--
Gitblit v1.9.1