From ac78112a61f2b6350ef3064edfc148ba572046d4 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期三, 24 九月 2025 08:43:51 +0800 Subject: [PATCH] AGV任务日志 --- src/main/webapp/static/js/taskLog/taskLog.js | 578 +++++++++++++++++++++++++++++--------------------------- 1 files changed, 299 insertions(+), 279 deletions(-) diff --git a/src/main/webapp/static/js/taskLog/taskLog.js b/src/main/webapp/static/js/taskLog/taskLog.js index d0c663f..762510f 100644 --- a/src/main/webapp/static/js/taskLog/taskLog.js +++ b/src/main/webapp/static/js/taskLog/taskLog.js @@ -1,89 +1,39 @@ var pageCurr; -layui.config({ - base: baseUrl + "/static/layui/lay/modules/" -}).use(['table','laydate', 'form', 'admin'], function(){ +var wrkNo; +var ioTime; +layui.use(['table', 'laydate', 'form'], function () { var table = layui.table; var $ = layui.jquery; var layer = layui.layer; var layDate = layui.laydate; var form = layui.form; - var admin = layui.admin; // 鏁版嵁娓叉煋 tableIns = table.render({ elem: '#taskLog', headers: {token: localStorage.getItem('token')}, - url: baseUrl+'/taskLog/list/auth', + url: baseUrl + '/taskLog/list/auth', page: true, - limit: 15, - limits: [15, 30, 50, 100, 200, 500], + limit: 16, + limits: [16, 30, 50, 100, 200, 500], + even: true, toolbar: '#toolbar', cellMinWidth: 50, - height: 'full-120', cols: [[ - {type: 'checkbox'} - ,{field: 'id', align: 'center',title: ''} - ,{field: 'wrkNo$', align: 'center',title: '宸ヤ綔鍙�'} - ,{field: 'logId', align: 'center',title: ''} - ,{field: 'invWh', align: 'center',title: ''} - ,{field: 'ymd$', align: 'center',title: ''} - ,{field: 'mk', align: 'center',title: ''} - ,{field: 'whsType', align: 'center',title: ''} - ,{field: 'wrkSts$', align: 'center',title: '宸ヤ綔鐘舵��'} - ,{field: 'ioType$', align: 'center',title: '鍏ュ嚭搴撶被鍨�'} - ,{field: 'crnNo$', align: 'center',title: '鍫嗗灈鏈哄彿'} - ,{field: 'sheetNo', align: 'center',title: ''} - ,{field: 'ioPri', align: 'center',title: '浼樺厛绾�'} - ,{field: 'wrkDate$', align: 'center',title: ''} - ,{field: 'locNo$', align: 'center',title: '鐩爣搴撲綅'} - ,{field: 'staNo$', align: 'center',title: '鐩爣绔�'} - ,{field: 'sourceStaNo$', align: 'center',title: '婧愮珯'} - ,{field: 'sourceLocNo$', align: 'center',title: '婧愬簱浣�'} - ,{field: 'locSts', align: 'center',title: ''} - ,{field: 'picking', align: 'center',title: '鎷f枡(checkBox)'} - ,{field: 'linkMis', align: 'center',title: ''} - ,{field: 'onlineYn', align: 'center',title: ''} - ,{field: 'updMk', align: 'center',title: ''} - ,{field: 'exitMk', align: 'center',title: '閫�鍑�(checkBox)'} - ,{field: 'pltType', align: 'center',title: ''} - ,{field: 'emptyMk', align: 'center',title: '绌烘澘(checkBox)'} - ,{field: 'ioTime$', align: 'center',title: '宸ヤ綔鏃堕棿'} - ,{field: 'ctnType', align: 'center',title: ''} - ,{field: 'packed', align: 'center',title: ''} - ,{field: 'oveMk', align: 'center',title: ''} - ,{field: 'mtnType', align: 'center',title: ''} - ,{field: 'userNo', align: 'center',title: ''} - ,{field: 'crnStrTime$', align: 'center',title: '鍫嗗灈鏈哄惎鍔ㄦ椂闂�'} - ,{field: 'crnEndTime$', align: 'center',title: '鍫嗗灈鏈哄仠姝㈡椂闂�'} - ,{field: 'plcStrTime$', align: 'center',title: '鎷f枡鏃堕棿'} - ,{field: 'crnPosTime$', align: 'center',title: ''} - ,{field: 'loadTime', align: 'center',title: ''} - ,{field: 'expTime', align: 'center',title: ''} - ,{field: 'refWrkno', align: 'center',title: ''} - ,{field: 'refIotime$', align: 'center',title: ''} - ,{field: 'modiUser$', align: 'center',title: '淇敼浜哄憳'} - ,{field: 'modiTime$', align: 'center',title: '淇敼鏃堕棿'} - ,{field: 'appeUser$', align: 'center',title: '鍒涘缓鑰�'} - ,{field: 'appeTime$', align: 'center',title: '娣诲姞鏃堕棿'} - ,{field: 'pauseMk', align: 'center',title: ''} - ,{field: 'errorTime$', align: 'center',title: ''} - ,{field: 'errorMemo', align: 'center',title: ''} - ,{field: 'ctnKind', align: 'center',title: ''} - ,{field: 'manuType', align: 'center',title: ''} - ,{field: 'memoM', align: 'center',title: ''} - ,{field: 'scWeight', align: 'center',title: ''} - ,{field: 'logMk', align: 'center',title: ''} - ,{field: 'logErrTime$', align: 'center',title: ''} - ,{field: 'logErrMemo', align: 'center',title: ''} - ,{field: 'barcode', align: 'center',title: '鏉$爜'} - ,{field: 'PdcType', align: 'center',title: ''} - ,{field: 'ctnNo', align: 'center',title: ''} - ,{field: 'fullPlt', align: 'center',title: '婊℃澘(checkBox)'} - ,{field: 'preHave', align: 'center',title: ''} - ,{field: 'takeNone', align: 'center',title: ''} - ,{field: 'lineNumber', align: 'center',title: ''} - - ,{fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operate', width:120} + {field: 'wrkNo', align: 'center', title: '宸ヤ綔鍙�', event: 'wrkNo', sort: true} + , {field: 'ioTime$', align: 'center', title: '宸ヤ綔鏃堕棿', width: 160, sort: true} + , {field: 'wrkSts$', align: 'center', title: '宸ヤ綔鐘舵��', width: 160} + , {field: 'ioType$', align: 'center', title: '鍏ュ嚭搴撶被鍨�', width: 160} + , {field: 'ioPri', align: 'center', title: '浼樺厛绾�'} + , {field: 'crnNo$', align: 'center', title: '鍫嗗灈鏈哄彿'} + , {field: 'sourceStaNo$', align: 'center', title: '婧愮珯'} + , {field: 'staNo$', align: 'center', title: '鐩爣绔�'} + , {field: 'sourceLocNo$', align: 'center', title: '婧愬簱浣�'} + , {field: 'locNo$', align: 'center', title: '鐩爣搴撲綅'} + , {field: 'modiUser$', align: 'center', title: '淇敼浜哄憳', hide: true} + , {field: 'modiTime$', align: 'center', title: '淇敼鏃堕棿', hide: true} + , {field: 'barcode', align: 'center', title: '鏉$爜'} + , {fixed: 'right', title: '鎿嶄綔', align: 'center', toolbar: '#operate', width: 80} ]], request: { pageName: 'curr', @@ -100,172 +50,188 @@ response: { statusCode: 200 }, - done: function(res, curr, count) { + done: function (res, curr, count) { if (res.code === 403) { - top.location.href = baseUrl+"/"; + top.location.href = baseUrl + "/"; } - pageCurr=curr; + pageCurr = curr; limit(); + form.on('checkbox(tableCheckbox)', function (data) { + var _index = $(data.elem).attr('table-index') || 0; + if (data.elem.checked) { + res.data[_index][data.value] = 'Y'; + } else { + res.data[_index][data.value] = 'N'; + } + }); } }); // 鐩戝惉鎺掑簭浜嬩欢 table.on('sort(taskLog)', function (obj) { var searchData = {}; - $.each($('#search-box [name]').serializeArray(), function() { + $.each($('#search-box [name]').serializeArray(), function () { searchData[this.name] = this.value; }); searchData['orderByField'] = obj.field; searchData['orderByType'] = obj.type; tableIns.reload({ where: searchData, - page: {curr: 1} + page: { + curr: 1 + }, + done: function (res, curr, count) { + if (res.code === 403) { + top.location.href = baseUrl + "/"; + } + pageCurr = curr; + limit(); + } }); - }); - - // 鐩戝惉澶村伐鍏锋爮浜嬩欢 - table.on('toolbar(taskLog)', function (obj) { - var checkStatus = table.checkStatus(obj.config.id).data; - switch(obj.event) { - case 'addData': - showEditModel(); - break; - case 'deleteData': - if (checkStatus.length === 0) { - layer.msg('璇烽�夋嫨瑕佸垹闄ょ殑鏁版嵁', {icon: 2}); - return; - } - del(checkStatus.map(function (d) { - return d.id; - })); - break; - case 'exportData': - admin.confirm('纭畾瀵煎嚭Excel鍚�', {shadeClose: true}, function(){ - var titles=[]; - var fields=[]; - obj.config.cols[0].map(function (col) { - if (col.type === 'normal' && col.hide === false && col.toolbar == null) { - titles.push(col.title); - fields.push(col.field); - } - }); - var exportData = {}; - $.each($('#search-box [name]').serializeArray(), function() { - exportData[this.name] = this.value; - }); - var param = { - 'taskLog': exportData, - 'fields': fields - }; - $.ajax({ - url: baseUrl+"/taskLog/export/auth", - headers: {'token': localStorage.getItem('token')}, - data: JSON.stringify(param), - dataType:'json', - contentType:'application/json;charset=UTF-8', - method: 'POST', - success: function (res) { - layer.closeAll(); - if (res.code === 200) { - table.exportFile(titles,res.data,'xls'); - } else if (res.code === 403) { - top.location.href = baseUrl+"/"; - } else { - layer.msg(res.msg, {icon: 2}) - } - } - }); - }); - break; - } }); // 鐩戝惉琛屽伐鍏蜂簨浠� - table.on('tool(taskLog)', function(obj){ + table.on('tool(taskLog)', function (obj) { var data = obj.data; switch (obj.event) { - case 'edit': - showEditModel(data); - break; - case "del": - del([data.id]); + // 鏄庣粏灞曠ず + case 'detlShow': + wrkNo = data.wrkNo; + ioTime = data.ioTime; + // 琛ㄦ牸涓嬫柟鏄剧ず + // locDetl(data.wrkNo); + // 寮瑰眰鏄剧ず + layer.open({ + type: 2, + title: '宸ヤ綔鏄庣粏鍘嗗彶妗�', + maxmin: true, + area: [top.detailWidth, top.detailHeight], + shadeClose: true, + content: 'taskLog_detail.html', + success: function (layero, index) { + } + }); break; } }); - /* 寮圭獥 - 鏂板銆佷慨鏀� */ - function showEditModel(mData) { - admin.open({ - type: 1, - area: '600px', - title: (mData ? '淇敼' : '娣诲姞') + '璁㈠崟鐘舵��', - content: $('#editDialog').html(), - success: function (layero, dIndex) { - layDateRender(mData); - form.val('detail', mData); - form.on('submit(editSubmit)', function (data) { - var loadIndex = layer.load(2); - $.ajax({ - url: baseUrl+"/taskLog/"+(mData?'update':'add')+"/auth", - headers: {'token': localStorage.getItem('token')}, - data: data.field, - method: 'POST', - success: function (res) { - layer.close(loadIndex); - if (res.code === 200){ - layer.close(dIndex); - layer.msg(res.msg, {icon: 1}); - tableReload(); - } else if (res.code === 403){ - top.location.href = baseUrl+"/"; - }else { - layer.msg(res.msg, {icon: 2}); - } - } - }) - return false; - }); - $(layero).children('.layui-layer-content').css('overflow', 'visible'); - layui.form.render('select'); - } - }); - } + // 鏁版嵁淇濆瓨鍔ㄤ綔 + form.on('submit(save)', function () { + if (banMsg != null) { + layer.msg(banMsg); + return; + } + method("add"); + }); - /* 鍒犻櫎 */ - function del(ids) { - layer.confirm('纭畾瑕佸垹闄ら�変腑鏁版嵁鍚楋紵', { - skin: 'layui-layer-admin', - shade: .1 - }, function (i) { - layer.close(i); - var loadIndex = layer.load(2); - $.ajax({ - url: baseUrl+"/taskLog/delete/auth", - headers: {'token': localStorage.getItem('token')}, - data: {ids: ids}, - method: 'POST', - success: function (res) { - layer.close(loadIndex); - if (res.code === 200){ - layer.msg(res.msg, {icon: 1}); - tableReload(); - } else if (res.code === 403){ - top.location.href = baseUrl+"/"; - } else { - layer.msg(res.msg, {icon: 2}); - } + // 鏁版嵁淇敼鍔ㄤ綔 + form.on('submit(edit)', function () { + method("update") + }); + + function method(name) { + var index = layer.load(1, { + shade: [0.5, '#000'] //0.1閫忔槑搴︾殑鑳屾櫙 + }); + var data = { +// id: $('#id').val(), + id: $('#id').val(), + wrkNo: $('#wrkNo').val(), + invWh: $('#invWh').val(), + ymd: top.strToDate($('#ymd\\$').val()), + mk: $('#mk').val(), + whsType: $('#whsType').val(), + wrkSts: $('#wrkSts').val(), + ioType: $('#ioType').val(), + crnNo: $('#crnNo').val(), + sheetNo: $('#sheetNo').val(), + ioPri: $('#ioPri').val(), + wrkDate: top.strToDate($('#wrkDate\\$').val()), + locNo: $('#locNo').val(), + staNo: $('#staNo').val(), + sourceStaNo: $('#sourceStaNo').val(), + sourceLocNo: $('#sourceLocNo').val(), + locSts: $('#locSts').val(), + picking: $('#picking').val(), + linkMis: $('#linkMis').val(), + onlineYn: $('#onlineYn').val(), + updMk: $('#updMk').val(), + exitMk: $('#exitMk').val(), + pltType: $('#pltType').val(), + emptyMk: $('#emptyMk').val(), + ioTime: top.strToDate($('#ioTime\\$').val()), + ctnType: $('#ctnType').val(), + packed: $('#packed').val(), + oveMk: $('#oveMk').val(), + mtnType: $('#mtnType').val(), + userNo: $('#userNo').val(), + crnStrTime: top.strToDate($('#crnStrTime\\$').val()), + crnEndTime: top.strToDate($('#crnEndTime\\$').val()), + plcStrTime: top.strToDate($('#plcStrTime\\$').val()), + crnPosTime: top.strToDate($('#crnPosTime\\$').val()), + loadTime: $('#loadTime').val(), + expTime: $('#expTime').val(), + refWrkno: $('#refWrkno').val(), + refIotime: top.strToDate($('#refIotime\\$').val()), + modiUser: $('#modiUser').val(), + modiTime: top.strToDate($('#modiTime\\$').val()), + appeUser: $('#appeUser').val(), + appeTime: top.strToDate($('#appeTime\\$').val()), + pauseMk: $('#pauseMk').val(), + errorTime: top.strToDate($('#errorTime\\$').val()), + errorMemo: $('#errorMemo').val(), + ctnKind: $('#ctnKind').val(), + manuType: $('#manuType').val(), + memoM: $('#memoM').val(), + scWeight: $('#scWeight').val(), + logMk: $('#logMk').val(), + logErrTime: top.strToDate($('#logErrTime\\$').val()), + logErrMemo: $('#logErrMemo').val(), + barcode: $('#barcode').val(), + PdcType: $('#PdcType').val(), + ctnNo: $('#ctnNo').val(), + fullPlt: $('#fullPlt').val(), + + }; + $.ajax({ + url: baseUrl + "/taskLog/" + name + "/auth", + headers: {'token': localStorage.getItem('token')}, + data: top.reObject(data), + method: 'POST', + success: function (res) { + if (res.code === 200) { + parent.layer.closeAll(); + parent.$(".layui-laypage-btn")[0].click(); + $("#data-detail :input").each(function () { + $(this).val(""); + }); + } else if (res.code === 403) { + top.location.href = baseUrl + "/"; + } else { + layer.msg(res.msg) } - }) - }); + layer.close(index); + } + }) } - // 鎼滅储 + // 澶嶉�夋浜嬩欢 + form.on('checkbox(detailCheckbox)', function (data) { + var el = data.elem; + if (el.checked) { + $(el).val('Y'); + } else { + $(el).val('N'); + } + }); + + // 鎼滅储鏍忔悳绱簨浠� form.on('submit(search)', function (data) { pageCurr = 1; tableReload(false); }); - // 閲嶇疆 + // 鎼滅储鏍忛噸缃簨浠� form.on('submit(reset)', function (data) { pageCurr = 1; clearFormVal($('#search-box')); @@ -273,92 +239,146 @@ }); // 鏃堕棿閫夋嫨鍣� - function layDateRender(data) { - setTimeout(function () { - layDate.render({ - elem: '.layui-laydate-range' - ,type: 'datetime' - ,range: true - }); - layDate.render({ - elem: '#ymd\\$', - type: 'datetime', - value: data!==undefined?data['ymd\\$']:null - }); - layDate.render({ - elem: '#wrkDate\\$', - type: 'datetime', - value: data!==undefined?data['wrkDate\\$']:null - }); - layDate.render({ - elem: '#ioTime\\$', - type: 'datetime', - value: data!==undefined?data['ioTime\\$']:null - }); - layDate.render({ - elem: '#crnStrTime\\$', - type: 'datetime', - value: data!==undefined?data['crnStrTime\\$']:null - }); - layDate.render({ - elem: '#crnEndTime\\$', - type: 'datetime', - value: data!==undefined?data['crnEndTime\\$']:null - }); - layDate.render({ - elem: '#plcStrTime\\$', - type: 'datetime', - value: data!==undefined?data['plcStrTime\\$']:null - }); - layDate.render({ - elem: '#crnPosTime\\$', - type: 'datetime', - value: data!==undefined?data['crnPosTime\\$']:null - }); - layDate.render({ - elem: '#refIotime\\$', - type: 'datetime', - value: data!==undefined?data['refIotime\\$']:null - }); - layDate.render({ - elem: '#modiTime\\$', - type: 'datetime', - value: data!==undefined?data['modiTime\\$']:null - }); - layDate.render({ - elem: '#appeTime\\$', - type: 'datetime', - value: data!==undefined?data['appeTime\\$']:null - }); - layDate.render({ - elem: '#errorTime\\$', - type: 'datetime', - value: data!==undefined?data['errorTime\\$']:null - }); - layDate.render({ - elem: '#logErrTime\\$', - type: 'datetime', - value: data!==undefined?data['logErrTime\\$']:null - }); - - }, 300); - } - layDateRender(); + layDate.render({ + elem: '#ymd\\$', + type: 'datetime' + }); + layDate.render({ + elem: '#wrkDate\\$', + type: 'datetime' + }); + layDate.render({ + elem: '#ioTime\\$', + type: 'datetime' + }); + layDate.render({ + elem: '#crnStrTime\\$', + type: 'datetime' + }); + layDate.render({ + elem: '#crnEndTime\\$', + type: 'datetime' + }); + layDate.render({ + elem: '#plcStrTime\\$', + type: 'datetime' + }); + layDate.render({ + elem: '#crnPosTime\\$', + type: 'datetime' + }); + layDate.render({ + elem: '#refIotime\\$', + type: 'datetime' + }); + layDate.render({ + elem: '#modiTime\\$', + type: 'datetime' + }); + layDate.render({ + elem: '#appeTime\\$', + type: 'datetime' + }); + layDate.render({ + elem: '#errorTime\\$', + type: 'datetime' + }); + layDate.render({ + elem: '#logErrTime\\$', + type: 'datetime' + }); + layDate.render({ + elem: '.layui-laydate-range' + , type: 'datetime' + , range: true + }); }); // 鍏抽棴鍔ㄤ綔 -$(document).on('click','#data-detail-close', function () { +$(document).on('click', '#data-detail-close', function () { parent.layer.closeAll(); }); function tableReload(child) { var searchData = {}; - $.each($('#search-box [name]').serializeArray(), function() { + $.each($('#search-box [name]').serializeArray(), function () { searchData[this.name] = this.value; }); - tableIns.reload({ + (child ? parent.tableIns : tableIns).reload({ where: searchData, - page: {curr: pageCurr} - }); + page: { + curr: pageCurr + }, + done: function (res, curr, count) { + if (res.code === 403) { + top.location.href = baseUrl + "/"; + } + pageCurr = curr; + if (res.data.length === 0 && count !== 0) { + tableIns.reload({ + where: searchData, + page: { + curr: pageCurr - 1 + } + }); + pageCurr -= 1; + } + limit(child); + } + }); } + +function setFormVal(el, data, showImg) { + for (var val in data) { + var find = el.find(":input[id='" + val + "']"); + if (find[0] != null) { + if (find[0].type === 'checkbox') { + if (data[val] === 'Y') { + find.attr("checked", "checked"); + find.val('Y'); + } else { + find.remove("checked"); + find.val('N'); + } + continue; + } + } + find.val(data[val]); + if (showImg) { + var next = find.next(); + if (next.get(0)) { + if (next.get(0).localName === "img") { + find.hide(); + next.attr("src", data[val]); + next.show(); + } + } + } + } +} + +function clearFormVal(el) { + $(':input', el) + .val('') + .removeAttr('checked') + .removeAttr('selected'); +} + +function detailScreen(index) { + var detail = layer.getChildFrame('#data-detail', index); + var height = detail.height() + 60; + if (height > ($(window).height() * 0.9)) { + height = ($(window).height() * 0.8); + } + layer.style(index, { +// top: (($(window).height()-height)/3)+"px", + height: height + 'px' + }); +} + +$('body').keydown(function () { + if (event.keyCode === 13) { + $("#search").click(); + } +}); -- Gitblit v1.9.1