From c26f14542b18a9442df8bc75c0d6bb9fbaad2474 Mon Sep 17 00:00:00 2001
From: skyouc <creaycat@gmail.com>
Date: 星期五, 09 一月 2026 08:56:45 +0800
Subject: [PATCH] 入库流程完结

---
 src/main/java/com/zy/asrs/entity/WrkDetl.java                 |    1 
 src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java |   26 +++---
 src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java  |    1 
 src/main/webapp/static/js/common.js                           |  204 +++++++++++++++++++++++++++++---------------------
 4 files changed, 132 insertions(+), 100 deletions(-)

diff --git a/src/main/java/com/zy/asrs/entity/WrkDetl.java b/src/main/java/com/zy/asrs/entity/WrkDetl.java
index 4d10ea7..d367151 100644
--- a/src/main/java/com/zy/asrs/entity/WrkDetl.java
+++ b/src/main/java/com/zy/asrs/entity/WrkDetl.java
@@ -16,7 +16,6 @@
 import java.util.Date;
 
 @Data
-@Accessors(chain = true)
 @TableName("asr_wrk_detl")
 public class WrkDetl implements Serializable {
 
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 de45437..3308d17 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -1237,6 +1237,17 @@
             } else {
                 throw new CoolException(dto.getLocNo() + "鐩爣搴撲綅宸茶鍗犵敤");
             }
+
+            // 鏇存柊鍏ュ簱閫氱煡妗� ioStatus ===>> Y
+            Wrapper<WaitPakin> wrapper = new EntityWrapper<WaitPakin>()
+                    .eq("zpallet", pakin.getZpallet());
+            WaitPakin setParam = new WaitPakin();
+            setParam.setLocNo(dto.getLocNo());
+            setParam.setIoStatus("Y");
+            setParam.setModiTime(now);
+            if (!waitPakinService.update(setParam, wrapper)) {
+                throw new CoolException("鏇存柊閫氱煡妗eけ璐�");
+            }
         }
 
         // 鐢熸垚宸ヤ綔妗f槑缁�
@@ -1245,25 +1256,14 @@
             wrkDetl.sync(waitPakin);
             wrkDetl.setWrkNo(wrkMast.getWrkNo());
             wrkDetl.setIoTime(wrkMast.getIoTime());
+            double v = Math.round(waitPakin.getAnfme() * waitPakin.getVolume() * 100) / 100.0;
+            wrkDetl.setAnfme(v);
             wrkDetl.setAppeTime(now);
             wrkDetl.setModiTime(now);
             if (!wrkDetlService.insert(wrkDetl)) {
                 throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏澶辫触");
             }
         });
-
-
-
-//        // 鏇存柊鍏ュ簱閫氱煡妗� ioStatus ===>> Y
-//        Wrapper<WaitPakin> wrapper = new EntityWrapper<WaitPakin>()
-//                .eq("zpallet", pakin.getZpallet());
-//        WaitPakin setParam = new WaitPakin();
-//        setParam.setLocNo(dto.getLocNo());
-//        setParam.setIoStatus("Y");
-//        setParam.setModiTime(now);
-//        if (!waitPakinService.update(setParam, wrapper)) {
-//            throw new CoolException("鏇存柊閫氱煡妗eけ璐�");
-//        }
     }
 
 //    /**
diff --git a/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java b/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java
index 11553ef..15ef7cc 100644
--- a/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java
@@ -154,6 +154,7 @@
                         waitPakin.setZpallet(orderDetl.getBarcode());
                     }
                     waitPakin.setOrderId(pakinOrder.getId());
+                    waitPakin.setAnfme(orderDetl.getAnfme());
                     waitPakin.setOrderNo(pakinOrder.getOrderNo());
                     waitPakin.setIoStatus("N");
                     waitPakin.setStatus("Y");
diff --git a/src/main/webapp/static/js/common.js b/src/main/webapp/static/js/common.js
index b826257..7c7961f 100644
--- a/src/main/webapp/static/js/common.js
+++ b/src/main/webapp/static/js/common.js
@@ -80,7 +80,7 @@
         var resourceId = param.split("=")[1];
         $.ajax({
             url: baseUrl + "/power/menu/" + resourceId + "/auth",
-            headers: { 'token': localStorage.getItem('token') },
+            headers: {'token': localStorage.getItem('token')},
             method: 'GET',
             async: false,
             success: function (res) {
@@ -113,7 +113,7 @@
                 url: url,
                 data: data,
                 dataType: 'json',
-                header: { 'token': localStorage.getItem('token') },
+                header: {'token': localStorage.getItem('token')},
                 timeout: 10000,
                 cache: false,
                 success: function (res) {
@@ -134,9 +134,9 @@
         post: function (url, param, callback, type) {
             var headerType;
             if (type === 'json') {
-                headerType = { 'Content-Type': 'application/json' }
+                headerType = {'Content-Type': 'application/json'}
             } else {
-                headerType = { 'Content-Type': 'application/x-www-form-urlencoded' }
+                headerType = {'Content-Type': 'application/x-www-form-urlencoded'}
             }
             headerType['token'] = localStorage.getItem('token');
             http.toAjax({
@@ -169,6 +169,7 @@
 
 /*************************************************************************************************************/
 /********************************************** 鐗╂枡涓氬姟鎶借薄 ***************************************************/
+
 /*************************************************************************************************************/
 
 function arrRemove(arr, key, val) {
@@ -180,37 +181,14 @@
 }
 
 var matCols = [
-    { field: 'matnr', align: 'center', title: '鍟嗗搧缂栧彿锛堝搧鍙凤級', width: 180 }
+    {field: 'matnr', align: 'center', title: '鍟嗗搧缂栧彿锛堝搧鍙凤級', width: 180}
     // {field: 'id', align: 'center',title: 'ID'}
     // ,{field: 'uuid', align: 'center',title: '缂栧彿'}
-    , { field: 'maktx', align: 'center', title: '鍟嗗搧鍚嶇О锛堝搧鍚嶏級', width: 200 }
-    , { field: 'specs', align: 'center', title: '瑙勬牸' }
-    , { field: 'safeQty', align: 'center', title: '褰掗浂闃�鍊�' , templet: function (d) {
-            var raw = d.safeQty; 
-            if (raw === null || raw === undefined) return '';
-            if (typeof raw === 'string' && raw.trim() === '') return '';
-            var num = Number(raw);
-            if (!isFinite(num)) return '';
-            return num.toFixed(2);
-        }}
-    , { field: 'model', align: 'center', title: '浠g爜', hide: true }
-    , { field: 'color', align: 'center', title: '棰滆壊', hide: true }
-    , { field: 'brand', align: 'center', title: '鍝佺墝', hide: true }
-    , { field: 'upQty', align: 'center', title: '缁勬墭涓婇檺', hide: true }
-    , { field: 'unit', align: 'center', title: '鍗曚綅', hide: false }
-    , { field: 'price', align: 'center', title: '鍗曚环', hide: true }
-    , { field: 'sku', align: 'center', title: 'sku', hide: true }
-    , { field: 'units', align: 'center', title: '鍗曚綅閲�', hide: true }
-    , { field: 'barcode', align: 'center', title: '鏉$爜', hide: true }
-    , { field: 'origin', align: 'center', title: '浜у湴', hide: true }
-    , { field: 'manu', align: 'center', title: '鍘傚', hide: true }
-    , { field: 'manuDate', align: 'center', title: '鐢熶骇鏃ユ湡', hide: true }
-    , { field: 'itemNum', align: 'center', title: '鍝侀」鏁�', hide: true }
-    , { field: 'weight', align: 'center', title: '鍗曠鍑�閲�', hide: true }
-    , { field: 'length', align: 'center', title: '鍗曠姣涢噸', hide: true }
+    , {field: 'maktx', align: 'center', title: '鍟嗗搧鍚嶇О锛堝搧鍚嶏級', width: 200}
+    , {field: 'specs', align: 'center', title: '瑙勬牸'}
     , {
-        field: 'volume', align: 'center', title: 'kg/cm', templet: function (d) {
-            var raw = d.volume; 
+        field: 'safeQty', align: 'center', title: '褰掗浂闃�鍊�', templet: function (d) {
+            var raw = d.safeQty;
             if (raw === null || raw === undefined) return '';
             if (typeof raw === 'string' && raw.trim() === '') return '';
             var num = Number(raw);
@@ -218,33 +196,58 @@
             return num.toFixed(2);
         }
     }
-    , { field: 'threeCode', align: 'center', title: '绠卞瓙灏哄', hide: true }
-    , { field: 'supp', align: 'center', title: '渚涘簲鍟�', hide: true }
-    , { field: 'suppCode', align: 'center', title: '渚涘簲鍟嗙紪鐮�', hide: true }
-    , { field: 'beBatch$', align: 'center', title: '鏄惁鎵规', hide: true } 
-    , { field: 'deadTime', align: 'center', title: '淇濊川鏈�', hide: true }
-    , { field: 'deadWarn', align: 'center', title: '棰勮澶╂暟', hide: true }
-    , { field: 'source$', align: 'center', title: '鍒惰喘', hide: true }
-    , { field: 'check$', align: 'center', title: '瑕佹眰妫�楠�', hide: true }
-    , { field: 'danger$', align: 'center', title: '鍗遍櫓鍝�', hide: true }
+    , {field: 'model', align: 'center', title: '浠g爜', hide: true}
+    , {field: 'color', align: 'center', title: '棰滆壊', hide: true}
+    , {field: 'brand', align: 'center', title: '鍝佺墝', hide: true}
+    , {field: 'upQty', align: 'center', title: '缁勬墭涓婇檺', hide: true}
+    , {field: 'unit', align: 'center', title: '鍗曚綅', hide: false}
+    , {field: 'price', align: 'center', title: '鍗曚环', hide: true}
+    , {field: 'sku', align: 'center', title: 'sku', hide: true}
+    , {field: 'units', align: 'center', title: '鍗曚綅閲�', hide: true}
+    , {field: 'barcode', align: 'center', title: '鏉$爜', hide: true}
+    , {field: 'origin', align: 'center', title: '浜у湴', hide: true}
+    , {field: 'manu', align: 'center', title: '鍘傚', hide: true}
+    , {field: 'manuDate', align: 'center', title: '鐢熶骇鏃ユ湡', hide: true}
+    , {field: 'itemNum', align: 'center', title: '鍝侀」鏁�', hide: true}
+    , {field: 'weight', align: 'center', title: '鍗曠鍑�閲�', hide: true}
+    , {field: 'length', align: 'center', title: '鍗曠姣涢噸', hide: true}
+    , {
+        field: 'volume', align: 'center', title: 'kg/cm', templet: function (d) {
+            var raw = d.volume;
+            if (raw === null || raw === undefined) return '';
+            if (typeof raw === 'string' && raw.trim() === '') return '';
+            var num = Number(raw);
+            if (!isFinite(num)) return '';
+            return num.toFixed(2);
+        }
+    }
+    , {field: 'threeCode', align: 'center', title: '绠卞瓙灏哄', hide: true}
+    , {field: 'supp', align: 'center', title: '渚涘簲鍟�', hide: true}
+    , {field: 'suppCode', align: 'center', title: '渚涘簲鍟嗙紪鐮�', hide: true}
+    , {field: 'beBatch$', align: 'center', title: '鏄惁鎵规', hide: true}
+    , {field: 'deadTime', align: 'center', title: '淇濊川鏈�', hide: true}
+    , {field: 'deadWarn', align: 'center', title: '棰勮澶╂暟', hide: true}
+    , {field: 'source$', align: 'center', title: '鍒惰喘', hide: true}
+    , {field: 'check$', align: 'center', title: '瑕佹眰妫�楠�', hide: true}
+    , {field: 'danger$', align: 'center', title: '鍗遍櫓鍝�', hide: true}
     // ,{field: 'status$', align: 'center',title: '鐘舵��'}
     // ,{field: 'createBy$', align: 'center',title: '娣诲姞浜哄憳'}
     // ,{field: 'createTime$', align: 'center',title: '娣诲姞鏃堕棿'}
-    , { field: 'updateBy$', align: 'center', title: '淇敼浜哄憳', hide: true }
-    , { field: 'updateTime$', align: 'center', title: '淇敼鏃堕棿', hide: true }
-    , { field: 'memo', align: 'center', title: '澶囨敞', hide: true }
+    , {field: 'updateBy$', align: 'center', title: '淇敼浜哄憳', hide: true}
+    , {field: 'updateTime$', align: 'center', title: '淇敼鏃堕棿', hide: true}
+    , {field: 'memo', align: 'center', title: '澶囨敞', hide: true}
 ]
 
 var cacheCols = [
-    { field: 'matnr', align: 'center', title: '鍟嗗搧缂栧彿锛堝搧鍙凤級', sort: true }
-    , { field: 'maktx', align: 'center', title: '鍟嗗搧鍚嶇О锛堝搧鍚嶏級', sort: true }
-    , { field: 'anfme', align: 'center', title: '鏁伴噺', hide: false }
-    , { field: 'specs', align: 'center', title: '瑙勬牸', hide: false }
-    , { field: 'model', align: 'center', title: '浠g爜', hide: true }
-    , { field: 'color', align: 'center', title: '棰滆壊', hide: true }
-    , { field: 'brand', align: 'center', title: '鍝佺墝', hide: true }
-    , { field: 'unit', align: 'center', title: '鍗曚綅', hide: false }
-    , { field: 'batch', align: 'center', title: '璐у搧鐗瑰緛', sort: true }
+    {field: 'matnr', align: 'center', title: '鍟嗗搧缂栧彿锛堝搧鍙凤級', sort: true}
+    , {field: 'maktx', align: 'center', title: '鍟嗗搧鍚嶇О锛堝搧鍚嶏級', sort: true}
+    , {field: 'anfme', align: 'center', title: '鏁伴噺', hide: false}
+    , {field: 'specs', align: 'center', title: '瑙勬牸', hide: false}
+    , {field: 'model', align: 'center', title: '浠g爜', hide: true}
+    , {field: 'color', align: 'center', title: '棰滆壊', hide: true}
+    , {field: 'brand', align: 'center', title: '鍝佺墝', hide: true}
+    , {field: 'unit', align: 'center', title: '鍗曚綅', hide: false}
+    , {field: 'batch', align: 'center', title: '璐у搧鐗瑰緛', sort: true}
     , {
         field: 'frozen$', align: 'center', title: '鍐荤粨鍚�', hide: true,
         templet: function (d) {
@@ -259,38 +262,65 @@
 ]
 
 var detlCols = [
-    { field: 'matnr', align: 'center', title: '鍟嗗搧缂栧彿锛堝搧鍙凤級', sort: true }
-    , { field: 'maktx', align: 'center', title: '鍟嗗搧鍚嶇О锛堝搧鍚嶏級', sort: true }
-    , { field: 'orderNo', align: 'center', title: '鍗曟嵁缂栧彿', hide: false }
-    , { field: 'batch', align: 'center', title: '璐у搧鐗瑰緛', sort: true }
-    , { field: 'anfme', align: 'center', title: '鏁伴噺', hide: false }
-    , { field: 'zpallet', align: 'center', title: '鎵樼洏鏉$爜', hide: false }
-    , { field: 'specs', align: 'center', title: '瑙勬牸', hide: false }
-    , { field: 'model', align: 'center', title: '浠g爜', hide: true }
-    , { field: 'color', align: 'center', title: '棰滆壊', hide: true }
-    , { field: 'brand', align: 'center', title: '鍝佺墝', hide: true }
-    , { field: 'unit', align: 'center', title: '鍗曚綅', hide: false }
-    , { field: 'price', align: 'center', title: '鍗曚环', hide: true }
-    , { field: 'sku', align: 'center', title: 'sku', hide: true }
-    , { field: 'units', align: 'center', title: '鍗曚綅閲�', hide: true }
-    , { field: 'barcode', align: 'center', title: '鏉$爜', hide: true }
-    , { field: 'origin', align: 'center', title: '浜у湴', hide: true }
-    , { field: 'manu', align: 'center', title: '鍘傚', hide: true }
-    , { field: 'manuDate', align: 'center', title: '鐢熶骇鏃ユ湡', hide: true }
-    , { field: 'itemNum', align: 'center', title: '鍝侀」鏁�', hide: true }
-    , { field: 'safeQty', align: 'center', title: '瀹夊叏搴撳瓨閲�', hide: true }
-    , { field: 'weight', align: 'center', title: '鍗曠鍑�閲�', hide: true }
-    , { field: 'length', align: 'center', title: '鍗曠姣涢噸', hide: true }
-    , { field: 'volume', align: 'center', title: '鍗曠浣撶Н', hide: true }
-    , { field: 'threeCode', align: 'center', title: '绠卞瓙灏哄', hide: true }
-    , { field: 'supp', align: 'center', title: '渚涘簲鍟�', hide: true }
-    , { field: 'suppCode', align: 'center', title: '渚涘簲鍟嗙紪鐮�', hide: true }
-    , { field: 'beBatch$', align: 'center', title: '鏄惁鎵规', hide: true }
-    , { field: 'deadTime', align: 'center', title: '淇濊川鏈�', hide: true }
-    , { field: 'deadWarn', align: 'center', title: '棰勮澶╂暟', hide: true }
-    , { field: 'source$', align: 'center', title: '鍒惰喘', hide: true }
-    , { field: 'check$', align: 'center', title: '瑕佹眰妫�楠�', hide: true }
-    , { field: 'danger$', align: 'center', title: '鍗遍櫓鍝�', hide: true }
+    {field: 'matnr', align: 'center', title: '鍟嗗搧缂栧彿锛堝搧鍙凤級', sort: true}
+    , {field: 'maktx', align: 'center', title: '鍟嗗搧鍚嶇О锛堝搧鍚嶏級', sort: true}
+    , {field: 'orderNo', align: 'center', title: '鍗曟嵁缂栧彿', hide: false}
+    , {field: 'batch', align: 'center', title: '璐у搧鐗瑰緛', sort: true}
+    , {
+        field: 'anfme', align: 'center', title: '鏁伴噺', hide: false, templet: function (d) {
+            var raw = d.anfme;
+            if (raw === null || raw === undefined) return '';
+            if (typeof raw === 'string' && raw.trim() === '') return '';
+            var num = Number(raw);
+            if (!isFinite(num)) return '';
+            return num.toFixed(2);
+        }
+    }
+    , {field: 'zpallet', align: 'center', title: '鎵樼洏鏉$爜', hide: false}
+    , {field: 'specs', align: 'center', title: '瑙勬牸', hide: false}
+    , {
+        field: 'safeQty', align: 'center', title: '褰掗浂闃�鍊�', hide: false, templet: function (d) {
+            var raw = d.safeQty;
+            if (raw === null || raw === undefined) return '';
+            if (typeof raw === 'string' && raw.trim() === '') return '';
+            var num = Number(raw);
+            if (!isFinite(num)) return '';
+            return num.toFixed(2);
+        }
+    }
+    , {
+        field: 'volume', align: 'center', title: 'km/cm', hide: false, templet: function (d) {
+            var raw = d.volume;
+            if (raw === null || raw === undefined) return '';
+            if (typeof raw === 'string' && raw.trim() === '') return '';
+            var num = Number(raw);
+            if (!isFinite(num)) return '';
+            return num.toFixed(2);
+        }
+    }
+    , {field: 'model', align: 'center', title: '浠g爜', hide: true}
+    , {field: 'color', align: 'center', title: '棰滆壊', hide: true}
+    , {field: 'brand', align: 'center', title: '鍝佺墝', hide: true}
+    , {field: 'unit', align: 'center', title: '鍗曚綅', hide: false}
+    , {field: 'price', align: 'center', title: '鍗曚环', hide: true}
+    , {field: 'sku', align: 'center', title: 'sku', hide: true}
+    , {field: 'units', align: 'center', title: '鍗曚綅閲�', hide: true}
+    , {field: 'barcode', align: 'center', title: '鏉$爜', hide: true}
+    , {field: 'origin', align: 'center', title: '浜у湴', hide: true}
+    , {field: 'manu', align: 'center', title: '鍘傚', hide: true}
+    , {field: 'manuDate', align: 'center', title: '鐢熶骇鏃ユ湡', hide: true}
+    , {field: 'itemNum', align: 'center', title: '鍝侀」鏁�', hide: true}
+    , {field: 'weight', align: 'center', title: '鍗曠鍑�閲�', hide: true}
+    , {field: 'length', align: 'center', title: '鍗曠姣涢噸', hide: true}
+    , {field: 'threeCode', align: 'center', title: '绠卞瓙灏哄', hide: true}
+    , {field: 'supp', align: 'center', title: '渚涘簲鍟�', hide: true}
+    , {field: 'suppCode', align: 'center', title: '渚涘簲鍟嗙紪鐮�', hide: true}
+    , {field: 'beBatch$', align: 'center', title: '鏄惁鎵规', hide: true}
+    , {field: 'deadTime', align: 'center', title: '淇濊川鏈�', hide: true}
+    , {field: 'deadWarn', align: 'center', title: '棰勮澶╂暟', hide: true}
+    , {field: 'source$', align: 'center', title: '鍒惰喘', hide: true}
+    , {field: 'check$', align: 'center', title: '瑕佹眰妫�楠�', hide: true}
+    , {field: 'danger$', align: 'center', title: '鍗遍櫓鍝�', hide: true}
     , {
         field: 'frozen$', align: 'center', title: '鍐荤粨鍚�', hide: true,
         templet: function (d) {
@@ -309,7 +339,9 @@
     var vars = query.split("&");
     for (var i = 0; i < vars.length; i++) {
         var pair = vars[i].split("=");
-        if (pair[0] == variable) { return pair[1]; }
+        if (pair[0] == variable) {
+            return pair[1];
+        }
     }
     return (false);
 }

--
Gitblit v1.9.1