From 30bb734c3c5de070ab9513128980bfdbe1880857 Mon Sep 17 00:00:00 2001
From: skyouc <creaycat@gmail.com>
Date: 星期三, 03 十二月 2025 12:54:15 +0800
Subject: [PATCH] 入库流程功能开发

---
 src/main/webapp/static/js/orderPakin/order.js |  267 +++++++++++++++++++++++++---------------------------
 1 files changed, 128 insertions(+), 139 deletions(-)

diff --git a/src/main/webapp/static/js/orderPakin/order.js b/src/main/webapp/static/js/orderPakin/order.js
index 6b38ea5..c9c0414 100644
--- a/src/main/webapp/static/js/orderPakin/order.js
+++ b/src/main/webapp/static/js/orderPakin/order.js
@@ -14,21 +14,21 @@
 
     // 娓叉煋鎼滅储妯℃澘
     $.ajax({
-        url: baseUrl+"/docType/list/auth",
-        headers: {'token': localStorage.getItem('token')},
+        url: baseUrl + "/docType/list/auth",
+        headers: { 'token': localStorage.getItem('token') },
         data: {
             limit: 9999
         },
         method: 'POST',
         success: function (res) {
-            if (res.code === 200){
+            if (res.code === 200) {
                 let template = Handlebars.compile($('#docTypeTpl').html());
                 $('#docType-query').html(template(res.data));
                 layui.form.render('select');
-            } else if (res.code === 403){
-                top.location.href = baseUrl+"/";
+            } else if (res.code === 403) {
+                top.location.href = baseUrl + "/";
             } else {
-                layer.msg(res.msg, {icon: 2})
+                layer.msg(res.msg, { icon: 2 })
             }
         }
     })
@@ -36,19 +36,19 @@
     // 娓叉煋琛ㄦ牸
     var insTb = table.render({
         elem: '#order',
-        url: baseUrl+'/order/pakin/order/head/page/auth',
-        headers: {token: localStorage.getItem('token')},
+        url: baseUrl + '/order/pakin/order/head/page/auth',
+        headers: { token: localStorage.getItem('token') },
         page: true,
         cellMinWidth: 100,
         cols: [[
-            {type: 'numbers'},
-            {field: 'orderNo', title: '鍗曟嵁缂栧彿', templet: '#orderNoTpl'},
-            {field: 'docType$', align: 'center', title: '绫诲瀷',  minWidth: 160, width: 160},
-            {align: 'center', title: '鏄庣粏', toolbar: '#tbLook', minWidth: 160, width: 160},
-            {field: 'createTime$', title: '鍒涘缓鏃堕棿', minWidth: 200, width: 200},
-            {field: 'settle$', align: 'center', title: '鐘舵��', templet: '#settleTpl',  minWidth: 160, width: 160},
-            {field: 'memo', align: 'center',title: '澶囨敞', hide: true},
-            {align: 'center', title: '鎿嶄綔', toolbar: '#operate', width: 180}
+            { type: 'numbers' },
+            { field: 'orderNo', title: '鍗曟嵁缂栧彿', templet: '#orderNoTpl' },
+            { field: 'docType$', align: 'center', title: '绫诲瀷', minWidth: 160, width: 160 },
+            { align: 'center', title: '鏄庣粏', toolbar: '#tbLook', minWidth: 160, width: 160 },
+            { field: 'createTime$', title: '鍒涘缓鏃堕棿', minWidth: 200, width: 200 },
+            { field: 'settle$', align: 'center', title: '鐘舵��', templet: '#settleTpl', minWidth: 160, width: 160 },
+            { field: 'memo', align: 'center', title: '澶囨敞', hide: true },
+            { align: 'center', title: '鎿嶄綔', toolbar: '#operate', width: 180 }
         ]],
         request: {
             pageName: 'curr',
@@ -68,7 +68,7 @@
         done: function (res, curr, count) {
             limit();
             if (res.code === 403) {
-                top.location.href = baseUrl+"/";
+                top.location.href = baseUrl + "/";
             }
             insTbCount = count;
         }
@@ -76,7 +76,7 @@
 
     // 鎼滅储
     form.on('submit(tbSearch)', function (data) {
-        insTb.reload({where: data.field, page: {curr: 1}});
+        insTb.reload({ where: data.field, page: { curr: 1 } });
     });
 
     // 娣诲姞
@@ -98,45 +98,33 @@
             doModify(data.id, data.orderNo, 4);
         } else if (layEvent === 'look') {
             var $a = $(obj.tr).find('a[lay-event="look"]');
-            var offset = $a.offset();
-            var top = offset.top;
-            var left = offset.left;
-            layer.open({
+            admin.open({
                 type: 1,
-                title: false,
-                area: '820px',
-                offset: [top + 'px', (left - 530 + $a.outerWidth()) + 'px'],
-                shade: .01,
-                shadeClose: true,
-                fixed: false,
-                content: '<table id="lookSSXMTable" lay-filter="lookSSXMTable"></table>',
-                success: function (layero) {
+                title: '鍗曟嵁鏄庣粏',
+                height: '450px',
+                content: $('#orderItem').html(),
+                area: '78%',
+                success: function (layero, dIndex) {
                     table.render({
-                        elem: '#lookSSXMTable',
-                        headers: {token: localStorage.getItem('token')},
-                        url: baseUrl+'/order/pakin/orderDetl/list/auth',
+                        elem: '#itemTable',
+                        headers: { token: localStorage.getItem('token') },
+                        url: baseUrl + '/order/pakin/orderDetl/list/auth',
                         where: {
                             order_id: data.id
                         },
                         page: true,
+                        height: '450px;',
                         cellMinWidth: 100,
                         cols: [[
-                            {type: 'numbers'},
-                            {field: 'matnr', title: '鍟嗗搧缂栫爜', width: 160},
-                            {field: 'maktx', title: '鍟嗗搧鍚嶇О', width: 160},
-                            {field: 'batch', title: '鎵瑰彿'},
-                            {field: 'anfme', title: '鏁伴噺'},
-                            {field: 'workQty', title: '浣滀笟鏁伴噺'},
-                            {field: 'qty', title: '瀹屾垚鏁伴噺', style: 'font-weight: bold'},
-                            // {field: 'unit', title: '鍗曚綅'},
-                            // {
-                            //     field: 'createTime$', title: '鍒涘缓鏃堕棿', sort: true, templet: function (d) {
-                            //         return util.toDateString(d.createTime);
-                            //     },  width: 180
-                            // },
-                            // {field: 'inQty', title: '宸插叆搴撻噺'},
-                            // {field: 'color', title: '棰滆壊'},
-                            {field: 'specs', title: '瑙勬牸'}
+                            { type: 'numbers' },
+                            { field: 'matnr', title: '鍟嗗搧缂栫爜', width: 160 },
+                            { field: 'maktx', title: '鍟嗗搧鍚嶇О', width: 160 },
+                            { field: 'suppCode', title: '渚涘簲鍟嗙紪鐮�', width: 160 },
+                            { field: 'batch', title: '鎵瑰彿' },
+                            { field: 'anfme', title: '鏁伴噺' },
+                            { field: 'workQty', title: '浣滀笟鏁伴噺' },
+                            { field: 'qty', title: '瀹屾垚鏁伴噺', style: 'font-weight: bold' },
+                            { field: 'specs', title: '瑙勬牸' }
                         ]],
                         request: {
                             pageName: 'curr',
@@ -182,42 +170,42 @@
                 form.on('submit(orderEditSubmit)', function (data) {
                     // 缁勮鏁版嵁
                     if (xxDataList.length <= 0) {
-                        layer.tips('璇锋坊鍔犲崟鎹槑缁�', '#matAddBtnComment', {tips: [1, '#ff4c4c']});
+                        layer.tips('璇锋坊鍔犲崟鎹槑缁�', '#matAddBtnComment', { tips: [1, '#ff4c4c'] });
                         return false;
                     }
                     let nList = admin.util.deepClone(xxDataList);
                     for (let xi = 0; xi < nList.length; xi++) {
-                        if (nList[xi].anfme <= 0){
-                            layer.msg('鏄庣粏淇敼鏁伴噺涓嶅悎娉�', {icon: 2});
+                        if (nList[xi].anfme <= 0) {
+                            layer.msg('鏄庣粏淇敼鏁伴噺涓嶅悎娉�', { icon: 2 });
                             return false;
                         }
-                        if (nList[xi].anfme < nList[xi].workQty){
-                            layer.msg('鏁伴噺涓嶈兘灏忎簬宸蹭綔涓氭暟閲�', {icon: 2});
+                        if (nList[xi].anfme < nList[xi].workQty) {
+                            layer.msg('鏁伴噺涓嶈兘灏忎簬宸蹭綔涓氭暟閲�', { icon: 2 });
                             return false;
                         }
                     }
                     layer.load(2);
                     $.ajax({
-                        url: baseUrl+"/order/pakin/order/form/" + (isExpAdd?"add":"modify") + "/auth",
-                        headers: {'token': localStorage.getItem('token')},
+                        url: baseUrl + "/order/pakin/order/form/" + (isExpAdd ? "add" : "modify") + "/auth",
+                        headers: { 'token': localStorage.getItem('token') },
                         data: JSON.stringify({
                             orderId: Number(data.field.id),
                             docType: Number(data.field.docType),
                             orderNo: data.field.orderNo,
                             orderDetlPakinList: nList
                         }),
-                        contentType:'application/json;charset=UTF-8',
+                        contentType: 'application/json;charset=UTF-8',
                         method: 'POST',
                         success: function (res) {
                             layer.closeAll('loading');
-                            if (res.code === 200){
+                            if (res.code === 200) {
                                 layer.close(dIndex);
                                 $(".layui-laypage-btn")[0].click();
-                                layer.msg(res.msg, {icon: 1});
-                            } else if (res.code === 403){
-                                top.location.href = baseUrl+"/";
-                            }else {
-                                layer.msg(res.msg, {icon: 2});
+                                layer.msg(res.msg, { icon: 1 });
+                            } else if (res.code === 403) {
+                                top.location.href = baseUrl + "/";
+                            } else {
+                                layer.msg(res.msg, { icon: 2 });
                             }
                         }
                     })
@@ -227,22 +215,23 @@
                 var xxDataList = [];
                 var tbOptions = {
                     elem: '#formSSXMTable',
-                    headers: {token: localStorage.getItem('token')},
+                    headers: { token: localStorage.getItem('token') },
                     data: xxDataList,
                     page: true,
                     height: '350px;',
                     cellMinWidth: 100,
                     cols: [[
-                        {type: 'numbers', title: '#'},
-                        {field: 'matnr', title: '鍟嗗搧缂栫爜', width: 160},
-                        {field: 'maktx', title: '鍟嗗搧鍚嶇О', width: 200},
-                        {field: 'batch', title: '鎵瑰彿', edit: true},
-                        {field: 'specs', title: '瑙勬牸'},
-                        {field: 'anfme', title: '鏁伴噺(淇敼)', style: 'color: blue;font-weight: bold', edit: true, minWidth: 110, width: 110},
-                        {field: 'workQty', title: '浣滀笟鏁伴噺',  minWidth: 100, width: 100},
+                        { type: 'numbers', title: '#' },
+                        { field: 'matnr', title: '鍟嗗搧缂栫爜', width: 160 },
+                        { field: 'maktx', title: '鍟嗗搧鍚嶇О', width: 200 },
+                        { field: 'suppCode', title: '渚涘簲鍟嗙紪鐮�', width: 160 },
+                        { field: 'batch', title: '鎵瑰彿', edit: true },
+                        { field: 'specs', title: '瑙勬牸' },
+                        { field: 'anfme', title: '鏁伴噺(淇敼)', style: 'color: blue;font-weight: bold', edit: true, minWidth: 110, width: 110 },
+                        { field: 'workQty', title: '浣滀笟鏁伴噺', minWidth: 100, width: 100 },
                         // {field: 'unit', title: '鍗曚綅', width: 80},
-                        {field: 'memo', title: '澶囨敞' , edit: true},
-                        {align: 'center', title: '鎿嶄綔', toolbar: '#formSSXMTableBar', minWidth: 80, width: 80, fixed: 'right'}
+                        { field: 'memo', title: '澶囨敞', edit: true },
+                        { align: 'center', title: '鎿嶄綔', toolbar: '#formSSXMTableBar', minWidth: 80, width: 80, fixed: 'right' }
                     ]],
                     done: function (res) {
                         $(layero).find('.layui-table-view').css('margin', '0');
@@ -251,18 +240,18 @@
                 };
                 if (!isExpAdd) {
                     $.ajax({
-                        url: baseUrl+"/order/pakin/order/detl/all/auth?orderId=" + expTpe.id,
-                        headers: {'token': localStorage.getItem('token')},
+                        url: baseUrl + "/order/pakin/order/detl/all/auth?orderId=" + expTpe.id,
+                        headers: { 'token': localStorage.getItem('token') },
                         method: 'GET',
                         async: false,
                         success: function (res) {
-                            if (res.code === 200){
+                            if (res.code === 200) {
                                 xxDataList = res.data;
                                 tbOptions.data = xxDataList;
-                            } else if (res.code === 403){
-                                top.location.href = baseUrl+"/";
-                            }else {
-                                layer.msg(res.msg, {icon: 2})
+                            } else if (res.code === 403) {
+                                top.location.href = baseUrl + "/";
+                            } else {
+                                layer.msg(res.msg, { icon: 2 })
                             }
                         }
                     })
@@ -275,8 +264,8 @@
                     if (layEvent === 'edit') {
                         showEditModel2(data);
                     } else if (layEvent === 'del') {
-                        if(data.workQty > 0){
-                            layer.msg("宸插瓨鍦ㄤ綔涓氭暟閲忥紝涓嶈兘鍒犻櫎", {icon: 2});
+                        if (data.workQty > 0) {
+                            layer.msg("宸插瓨鍦ㄤ綔涓氭暟閲忥紝涓嶈兘鍒犻櫎", { icon: 2 });
                             return;
                         }
                         layer.confirm('纭畾瑕佸垹闄ゅ悧锛�', {
@@ -290,7 +279,7 @@
                                     break;
                                 }
                             }
-                            insTbSSXM.reload({data: xxDataList, page: {curr: 1}});
+                            insTbSSXM.reload({ data: xxDataList, page: { curr: 1 } });
                         });
                     }
                 });
@@ -298,20 +287,20 @@
                 table.on('edit(formSSXMTable)', function (obj) {
                     let index = obj.tr.attr("data-index");
                     let data = xxDataList[index];
-                    if (obj.field === 'anfme'){
+                    if (obj.field === 'anfme') {
                         let vle = Number(obj.value);
                         if (isNaN(vle)) {
-                            layer.msg("璇疯緭鍏ユ暟瀛�", {icon: 2});
+                            layer.msg("璇疯緭鍏ユ暟瀛�", { icon: 2 });
                             return false;
                         } else {
                             if (vle <= 0) {
-                                layer.msg("鏁伴噺蹇呴』澶т簬闆�", {icon: 2});
+                                layer.msg("鏁伴噺蹇呴』澶т簬闆�", { icon: 2 });
                                 // data[obj.field] = 0;
                                 // insTbSSXM.reload({data: xxDataList});
                                 return false;
                             }
-                            if(obj.value < data.workQty){
-                                layer.msg("杈撳叆鏁伴噺涓嶈兘灏忎簬浣滀笟涓暟閲�", {icon: 2});
+                            if (obj.value < data.workQty) {
+                                layer.msg("杈撳叆鏁伴噺涓嶈兘灏忎簬浣滀笟涓暟閲�", { icon: 2 });
                                 // data[obj.field] = 0;
                                 // insTbSSXM.reload({data: xxDataList});
                                 return false;
@@ -319,7 +308,7 @@
                         }
                     }
                     data[obj.field] = obj.value;
-                    insTbSSXM.reload({data: xxDataList});
+                    insTbSSXM.reload({ data: xxDataList });
                 });
 
                 $('#matAddBtnComment').click(function () {
@@ -340,22 +329,22 @@
                             // 琛ㄥ崟鎻愪氦浜嬩欢
                             form.on('submit(matEditSubmit)', function (data) {
                                 let selectList = matXmSelect.getValue();
-                                for (let i = 0; i<selectList.length; i++) {
+                                for (let i = 0; i < selectList.length; i++) {
                                     let item = selectList[i];
                                     // 鏌ヨ鐗╂枡璇︽儏
                                     $.ajax({
-                                        url: baseUrl+"/mat/covert/"+item.value+"/auth",
-                                        headers: {'token': localStorage.getItem('token')},
+                                        url: baseUrl + "/mat/covert/" + item.value + "/auth",
+                                        headers: { 'token': localStorage.getItem('token') },
                                         method: 'GET',
                                         async: false,
                                         success: function (res) {
-                                            if (res.code === 200){
+                                            if (res.code === 200) {
                                                 xxDataList.push(res.data);
-                                                insTbSSXM.reload({data: xxDataList, page: {curr: 1}});
-                                            } else if (res.code === 403){
-                                                top.location.href = baseUrl+"/";
-                                            }else {
-                                                layer.msg(res.msg, {icon: 2})
+                                                insTbSSXM.reload({ data: xxDataList, page: { curr: 1 } });
+                                            } else if (res.code === 403) {
+                                                top.location.href = baseUrl + "/";
+                                            } else {
+                                                layer.msg(res.msg, { icon: 2 })
                                             }
                                         }
                                     })
@@ -373,20 +362,20 @@
                                 toolbar: { show: true },
                                 filterable: true,
                                 remoteSearch: true,
-                                remoteMethod: function(val, cb, show){
+                                remoteMethod: function (val, cb, show) {
                                     $.ajax({
-                                        url: baseUrl+"/mat/all/get/kv",
-                                        headers: {'token': localStorage.getItem('token')},
+                                        url: baseUrl + "/mat/all/get/kv",
+                                        headers: { 'token': localStorage.getItem('token') },
                                         data: {
                                             condition: val
                                         },
                                         method: 'POST',
                                         success: function (res) {
-                                            if (res.code === 200){
+                                            if (res.code === 200) {
                                                 cb(res.data)
                                             } else {
                                                 cb([]);
-                                                layer.msg(res.msg, {icon: 2});
+                                                layer.msg(res.msg, { icon: 2 });
                                             }
                                         }
                                     });
@@ -412,25 +401,25 @@
             layer.close(i);
             layer.load(2);
             $.ajax({
-                url: baseUrl+"/order/pakin/order/delete/auth",
-                headers: {'token': localStorage.getItem('token')},
+                url: baseUrl + "/order/pakin/order/delete/auth",
+                headers: { 'token': localStorage.getItem('token') },
                 data: {
                     orderId: orderId
                 },
                 method: 'POST',
                 success: function (res) {
                     layer.closeAll('loading');
-                    if (res.code === 200){
+                    if (res.code === 200) {
                         if (insTbCount === 0) {
-                            insTb.reload({page: {curr: 1}});
+                            insTb.reload({ page: { curr: 1 } });
                         } else {
                             $(".layui-laypage-btn")[0].click();
                         }
-                        layer.msg(res.msg, {icon: 1});
-                    } else if (res.code === 403){
-                        top.location.href = baseUrl+"/";
-                    }else {
-                        layer.msg(res.msg, {icon: 2});
+                        layer.msg(res.msg, { icon: 1 });
+                    } else if (res.code === 403) {
+                        top.location.href = baseUrl + "/";
+                    } else {
+                        layer.msg(res.msg, { icon: 2 });
                     }
                 }
             })
@@ -448,8 +437,8 @@
             console.log(orderId);
             console.log(settle);
             $.ajax({
-                url: baseUrl+"/order/pakin/order/update/auth",
-                headers: {'token': localStorage.getItem('token')},
+                url: baseUrl + "/order/pakin/order/update/auth",
+                headers: { 'token': localStorage.getItem('token') },
                 data: {
                     id: orderId,
                     orderNo: orderNo,
@@ -458,17 +447,17 @@
                 method: 'POST',
                 success: function (res) {
                     layer.closeAll('loading');
-                    if (res.code === 200){
+                    if (res.code === 200) {
                         if (insTbCount === 0) {
-                            insTb.reload({page: {curr: 1}});
+                            insTb.reload({ page: { curr: 1 } });
                         } else {
                             $(".layui-laypage-btn")[0].click();
                         }
-                        layer.msg(res.msg, {icon: 1});
-                    } else if (res.code === 403){
-                        top.location.href = baseUrl+"/";
-                    }else {
-                        layer.msg(res.msg, {icon: 2});
+                        layer.msg(res.msg, { icon: 1 });
+                    } else if (res.code === 403) {
+                        top.location.href = baseUrl + "/";
+                    } else {
+                        layer.msg(res.msg, { icon: 2 });
                     }
                 }
             })
@@ -477,17 +466,17 @@
 
     // 浠诲姟杩芥函
     function showWrkTrace(orderId) {
-        let loadIndex = layer.msg('璇锋眰涓�...', {icon: 16, shade: 0.01, time: false});
+        let loadIndex = layer.msg('璇锋眰涓�...', { icon: 16, shade: 0.01, time: false });
         $.ajax({
-            url: baseUrl+"/order/pakin/order/wrk/trace/auth",
-            headers: {'token': localStorage.getItem('token')},
+            url: baseUrl + "/order/pakin/order/wrk/trace/auth",
+            headers: { 'token': localStorage.getItem('token') },
             data: {
                 orderId: orderId
             },
             method: 'POST',
             success: function (res) {
                 layer.close(loadIndex);
-                if (res.code === 200){
+                if (res.code === 200) {
                     laytpl(wrkTraceDialog.innerHTML).render(res.data, function (html) {
                         admin.open({
                             type: 1,
@@ -502,26 +491,26 @@
                                 var traceOptions = {
                                     title: {
                                         text: '鎬婚噺/浣滀笟/瀹屾垚', x: 'center', y: '38%',
-                                        textStyle: {fontSize: 18, color: '#262626', fontWeight: 'normal'},
-                                        subtextStyle: {fontSize: 36, color: '#10B4E8'},
+                                        textStyle: { fontSize: 18, color: '#262626', fontWeight: 'normal' },
+                                        subtextStyle: { fontSize: 36, color: '#10B4E8' },
                                         itemGap: 20
                                     },
                                     color: ['#10B4E8', '#E0E0E0', '#FF0000'],
-                                    tooltip: {trigger: 'item'},
-                                    series: [{name: '鏁伴噺', type: 'pie', radius: ['75%', '80%'], label: {normal: {show: false}}}]
+                                    tooltip: { trigger: 'item' },
+                                    series: [{ name: '鏁伴噺', type: 'pie', radius: ['75%', '80%'], label: { normal: { show: false } } }]
                                 };
                                 traceCharts.setOption(traceOptions);
                                 // 璧嬪��
                                 traceCharts.setOption({
                                     title: {
-                                        subtext: res.data.totalQty+"/"+res.data.wrkQty+"/"+res.data.endQty
+                                        subtext: res.data.totalQty + "/" + res.data.wrkQty + "/" + res.data.endQty
                                     },
                                     series: [
                                         {
                                             data: [
-                                                {name: '宸蹭綔涓�', value: res.data.wrkQty},
-                                                {name: '鏈綔涓�', value: res.data.totalQty-res.data.wrkQty-res.data.lackQty},
-                                                {name: '搴撳瓨涓嶈冻', value: res.data.lackQty},
+                                                { name: '宸蹭綔涓�', value: res.data.wrkQty },
+                                                { name: '鏈綔涓�', value: res.data.totalQty - res.data.wrkQty - res.data.lackQty },
+                                                { name: '搴撳瓨涓嶈冻', value: res.data.lackQty },
                                             ]
                                         }
                                     ]
@@ -529,10 +518,10 @@
                             }
                         });
                     });
-                } else if (res.code === 403){
-                    top.location.href = baseUrl+"/";
-                }else {
-                    layer.msg(res.msg, {icon: 2});
+                } else if (res.code === 403) {
+                    top.location.href = baseUrl + "/";
+                } else {
+                    layer.msg(res.msg, { icon: 2 });
                 }
             }
         })
@@ -540,7 +529,7 @@
 
     layDate.render({
         elem: '.layui-laydate-range'
-        ,type: 'datetime'
-        ,range: true
+        , type: 'datetime'
+        , range: true
     });
 });

--
Gitblit v1.9.1