From b4d4aa34f057ea33dc81031cf569e43215f10485 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期二, 18 十月 2022 15:14:57 +0800
Subject: [PATCH] #

---
 src/main/webapp/static/js/order/out.js                  |   31 ++++++++++++++++---------------
 src/main/java/com/zy/common/model/LocDto.java           |    2 ++
 src/main/java/com/zy/asrs/controller/OutController.java |   22 ++++++++++++++--------
 3 files changed, 32 insertions(+), 23 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/OutController.java b/src/main/java/com/zy/asrs/controller/OutController.java
index 1e8569f..b97beb9 100644
--- a/src/main/java/com/zy/asrs/controller/OutController.java
+++ b/src/main/java/com/zy/asrs/controller/OutController.java
@@ -1,5 +1,6 @@
 package com.zy.asrs.controller;
 
+import com.alibaba.fastjson.JSON;
 import com.core.annotations.ManagerAuth;
 import com.core.common.BaseRes;
 import com.core.common.Cools;
@@ -39,6 +40,8 @@
     private WorkService workService;
     @Autowired
     private BasDevpService basDevpService;
+    @Autowired
+    private MatService matService;
 
     @PostMapping("/out/pakout/orderDetlIds/auth")
     @ManagerAuth
@@ -174,18 +177,16 @@
         if (Cools.isEmpty(list)) {
             return R.parse(BaseRes.PARAM);
         }
-        List<OrderDetl> orderDetls = orderDetlService.selectBatchIds(ids);
+        Set<String> exist = new HashSet<>();
         List<LocDto> locDtos = new ArrayList<>();
 
-        Set<String> exist = new HashSet<>();
-
-        for (OrderDetl orderDetl : orderDetls) {
-            double issued = Optional.of(orderDetl.getAnfme() - orderDetl.getQty()).orElse(0.0D);
+        for (OrderMergeVo vo : list) {
+            double issued = Optional.of(vo.getAnfme()).orElse(0.0D);
             if (issued <= 0.0D) { continue; }
-            List<LocDetl> locDetls = locDetlService.queryStock(orderDetl.getMatnr(), orderDetl.getBatch(), null, exist);
+            List<LocDetl> locDetls = locDetlService.queryStock(vo.getMatnr(), vo.getBatch(), null, exist);
             for (LocDetl locDetl : locDetls) {
                 if (issued > 0) {
-                    LocDto locDto = new LocDto(locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getMaktx(), locDetl.getBatch(), orderDetl.getOrderNo(),
+                    LocDto locDto = new LocDto(locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getMaktx(), locDetl.getBatch(), JSON.toJSONString(vo.getOrderDtos()),
                             issued >= locDetl.getAnfme() ? locDetl.getAnfme() : issued);
                     List<Integer> staNos = staDescService.queryOutStaNosByLocNo(locDetl.getLocNo(), issued >= locDetl.getAnfme() ? 101 : 103);
                     locDto.setStaNos(staNos);
@@ -198,11 +199,16 @@
                 }
             }
             if (issued > 0) {
-                LocDto locDto = new LocDto(null, orderDetl.getMatnr(), orderDetl.getMaktx(), orderDetl.getBatch(), orderDetl.getOrderNo(), issued);
+                LocDto locDto = new LocDto(null, vo.getMatnr(), vo.getMaktx(), vo.getBatch(), JSON.toJSONString(vo.getOrderDtos()), issued);
                 locDto.setLack(Boolean.TRUE);
                 locDtos.add(locDto);
             }
         }
+        for (LocDto locDto : locDtos) {
+            Mat mat = matService.selectByMatnr(locDto.getMatnr());
+            assert mat != null;
+            locDto.setSpecs(mat.getSpecs());
+        }
         return R.ok().add(locDtos);
     }
 
diff --git a/src/main/java/com/zy/common/model/LocDto.java b/src/main/java/com/zy/common/model/LocDto.java
index ca099a3..59dcf61 100644
--- a/src/main/java/com/zy/common/model/LocDto.java
+++ b/src/main/java/com/zy/common/model/LocDto.java
@@ -29,6 +29,8 @@
 
     private Integer staNo;
 
+    private String specs;
+
     public LocDto() {
     }
 
diff --git a/src/main/webapp/static/js/order/out.js b/src/main/webapp/static/js/order/out.js
index c397e8b..a870dbe 100644
--- a/src/main/webapp/static/js/order/out.js
+++ b/src/main/webapp/static/js/order/out.js
@@ -413,8 +413,8 @@
                                 success: function (res) {
                                     layer.close(loadIndex);
                                     if (res.code === 200){
-                                        console.log(res.data)
-                                        // pakoutPreviewMergeDialog(res.data)
+                                        layer.close(index)
+                                        pakoutPreviewMergeDialog(res.data)
                                     } else if (res.code === 403){
                                         top.location.href = baseUrl+"/";
                                     } else {
@@ -453,7 +453,7 @@
             ,moveType: 1 //鎷栨嫿妯″紡锛�0鎴栬��1
             ,content: $('#pakoutPreviewMergeBox').html()
             ,success: function(layero, index){
-                stoPreTabIdx = table.render({
+                stoPreTabMergeIdx = table.render({
                     elem: '#stoPreTabMerge',
                     data: data,
                     height: 520,
@@ -462,8 +462,8 @@
                     cellMinWidth: 100,
                     cols: [[
                         // {type: 'checkbox', merge: ['orderNo']},
-                        {field: 'orderNo', title: '鍗曟嵁缂栧彿', merge: true, align: 'center'},
                         {field: 'title', title: '鍟嗗搧', merge: true, align: 'center', width: 350},
+                        {field: 'specs', title: '瑙勬牸', align: 'center'},
                         {field: 'batch', title: '搴忓垪鐮�', align: 'center'},
                         {field: 'anfme', title: '鏁伴噺', align: 'center', width: 90, style: 'font-weight: bold'},
                         {field: 'locNo', title: '璐т綅', align: 'center', width: 100, templet: '#locNoTpl'},
@@ -479,10 +479,10 @@
                 // 淇敼鍑哄簱绔�
                 form.on('select(tbBasicTbStaNos)', function (obj) {
                     let index  = obj.othis.parents('tr').attr("data-index");
-                    let data = tableCache[index];
-                    for (let i = 0; i<tableCache.length; i++) {
-                        if (tableCache[i].locNo === data.locNo) {
-                            tableCache[i]['staNo'] = Number(obj.elem.value);
+                    let data = mergeTabCache[index];
+                    for (let i = 0; i<mergeTabCache.length; i++) {
+                        if (mergeTabCache[i].locNo === data.locNo) {
+                            mergeTabCache[i]['staNo'] = Number(obj.elem.value);
                         }
                     }
                     obj.othis.children().find("input").css("color", "blue");
@@ -496,8 +496,8 @@
                 function modifySta() {
                     // 鍑哄簱绔欏彇浜ら泦
                     let staBatchSelectVal = [];
-                    for(let i = 0; i<tableCache.length; i++) {
-                        let staNos = tableCache[i].staNos;
+                    for(let i = 0; i<mergeTabCache.length; i++) {
+                        let staNos = mergeTabCache[i].staNos;
                         if (staNos !== null) {
                             if (staBatchSelectVal.length === 0) {
                                 staBatchSelectVal = staNos;
@@ -529,17 +529,18 @@
                                 let loadIdx = layer.load(2);
                                 let batchSta = Number(obj.field.batchSta);
                                 let arr = [];
-                                for (let i = 0; i<tableCache.length; i++) {
-                                    tableCache[i]['staNo'] = batchSta;
+                                for (let i = 0; i<mergeTabCache.length; i++) {
+                                    mergeTabCache[i]['staNo'] = batchSta;
                                     arr.push(i);
                                 }
-                                stoPreTabIdx.reload({data: tableCache});
+                                console.log(mergeTabCache)
+                                stoPreTabMergeIdx.reload({data: mergeTabCache});
                                 arr.forEach(item => {
-                                    $('div[lay-id=stoPreTab] tr[data-index="' + item + '"] .order-sta-select').val(batchSta);
+                                    $('div[lay-id=stoPreTabMerge] tr[data-index="' + item + '"] .order-sta-select').val(batchSta);
                                 });
                                 layui.form.render('select');
                                 arr.forEach(item => {
-                                    $('div[lay-id=stoPreTab] tr[data-index="' + item + '"] .layui-select-title').find("input").css("color", "blue");
+                                    $('div[lay-id=stoPreTabMerge] tr[data-index="' + item + '"] .layui-select-title').find("input").css("color", "blue");
                                 });
                                 layer.close(loadIdx); layer.close(ddIndex);
                                 return false;

--
Gitblit v1.9.1