From 6d5b1cf59e0e013ab740998ca50c9d9cf52e4375 Mon Sep 17 00:00:00 2001 From: mrzhssss <pro6@qq.com> Date: 星期六, 09 四月 2022 13:53:36 +0800 Subject: [PATCH] # --- src/main/java/pickoutDetl.sql | 12 src/main/java/zy/cloud/wms/manager/controller/OrderController.java | 51 +++ src/main/webapp/static/js/order/orderResult.js | 568 +++++++++++++++++++++++++++++++++++++ src/main/webapp/views/order/orderResult.html | 266 +++++++++++++++++ 4 files changed, 891 insertions(+), 6 deletions(-) diff --git a/src/main/java/pickoutDetl.sql b/src/main/java/pickoutDetl.sql index f49f864..d303b39 100644 --- a/src/main/java/pickoutDetl.sql +++ b/src/main/java/pickoutDetl.sql @@ -9,10 +9,10 @@ insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'pickoutDetl#btn-export', '瀵煎嚭', '', '3', '4', '1'); -- sqlserver -insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'pickoutDetl/pickoutDetl.html', N'pickoutDetl绠$悊', null, '2', null, '1'); +insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'order/orderResult.html', N'鎾璧勬枡', 30450, '2', '8', '1'); -insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'pickoutDetl#view', N'鏌ヨ', '30570', '3', '0', '1'); -insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'pickoutDetl#btn-add', N'鏂板', '30570', '3', '1', '1'); -insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'pickoutDetl#btn-edit', N'缂栬緫', '30570', '3', '2', '1'); -insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'pickoutDetl#btn-delete', N'鍒犻櫎', '30570', '3', '3', '1'); -insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'pickoutDetl#btn-export', N'瀵煎嚭', '30570', '3', '4', '1'); +insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'orderResult#view', N'鏌ヨ', '30589', '3', '0', '1'); +insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'orderResult#btn-add', N'鏂板', '30589', '3', '1', '1'); +insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'orderResult#btn-edit', N'缂栬緫', '30589', '3', '2', '1'); +insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'orderResult#btn-delete', N'鍒犻櫎', '30589', '3', '3', '1'); +insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'orderResult#btn-export', N'瀵煎嚭', '30589', '3', '4', '1'); diff --git a/src/main/java/zy/cloud/wms/manager/controller/OrderController.java b/src/main/java/zy/cloud/wms/manager/controller/OrderController.java index 29dd6ce..b9cebdf 100644 --- a/src/main/java/zy/cloud/wms/manager/controller/OrderController.java +++ b/src/main/java/zy/cloud/wms/manager/controller/OrderController.java @@ -305,4 +305,55 @@ return R.ok("宸茬敓鎴愭尝娆�"); } + /** + * 閫氳繃鎵瑰彿璁㈠崟涓寘鍚殑鍑哄簱鍗� + */ + + @RequestMapping("/order/orderByWave/auth") + @ManagerAuth + public R getOrderDetailByWave(@RequestParam(defaultValue = "1")Integer curr, + @RequestParam(defaultValue = "10")Integer limit, + @RequestParam(required = false)String orderByField, + @RequestParam(required = false)String orderByType, + @RequestParam Map<String, Object> param, + String research){ + EntityWrapper<Wave> wrapper = new EntityWrapper<>(); + excludeTrash(param); + convert(param, wrapper); + hostEq(wrapper); + wrapper.orderBy("create_time",false); + List<Wave> waves = waveService.selectList(wrapper); + if (Cools.isEmpty(waves)) { + throw new CoolException("鎵句笉鍒拌娉㈡"); + } + HashSet<String> allOrders = new HashSet<>(); + for (Wave wave : waves) { + List<WaveDetl> waveDetls = waveDetlService.selectList(new EntityWrapper<WaveDetl>() + .eq("wave_id", wave.getId())); + for (WaveDetl waveDetl : waveDetls) { + String[] split = waveDetl.getOrderNos().split(","); + for (String s : split) { + allOrders.add(s); + } + } + } + ArrayList<String> allOrdersList = new ArrayList<>(allOrders); + EntityWrapper<OrderDetl> orderDetailWrapper = new EntityWrapper<>(); + for (int i = 0; i < allOrdersList.size(); i++) { + String s = allOrdersList.get(i); + if (i == 0){ + orderDetailWrapper + .eq("order_no",s); + }else { + orderDetailWrapper + .or() + .eq("order_no",s); + } + } + if (!Cools.isEmpty(research)) { + orderDetailWrapper.eq("order_no",research); + } + Page<OrderDetl> orderDetlPage = orderDetlService.selectPage(new Page<>(curr, limit),orderDetailWrapper); + return R.ok(orderDetlPage); + } } diff --git a/src/main/webapp/static/js/order/orderResult.js b/src/main/webapp/static/js/order/orderResult.js new file mode 100644 index 0000000..2716189 --- /dev/null +++ b/src/main/webapp/static/js/order/orderResult.js @@ -0,0 +1,568 @@ +var pageCurr; +layui.config({ + base: baseUrl + "/static/layui/lay/modules/" +}).use(['table','laydate', 'form', 'util', 'admin', 'tableMerge'], function(){ + var table = layui.table; + var $ = layui.jquery; + var layer = layui.layer; + var layDate = layui.laydate; + var form = layui.form; + var admin = layui.admin; + var tableMerge = layui.tableMerge; + var util = layui.util; + + /****************************************** 宸﹁竟琛� *************************************************/ + + /* 娓叉煋琛ㄦ牸 */ + var insTb = table.render({ + elem: '#docTypeTable', + url: baseUrl + '/wave/list/auth', + height: 'full-100', + headers: {token: localStorage.getItem('token')}, + request: { + pageName: 'curr', + pageSize: 'limit' + }, + parseData: function (res) { + return { + 'code': res.code, + 'msg': res.msg, + 'count': res.data.total, + 'data': res.data.records + } + }, + response: { + statusCode: 200 + }, + where:{ + status:1 + }, + defaultToolbar: [], + cols: [[ + {field: 'waveNo', title: '娉㈡鍙�'}, + {field: 'status$', title: '宸ヤ綔鐘舵��', width:100} + + ]], + done: function (res, curr, count) { + $('#dictTable+.layui-table-view .layui-table-body tbody>tr:first').trigger('click'); + } + }); + + + /* 琛ㄦ牸鎼滅储 */ + form.on('submit(docTypeTableSearch)', function (data) { + insTb.reload({ + where: { + wave_no: data.field.wave_no, + status:1} + }); + return false; + }); + + /* 琛ㄦ牸澶村伐鍏锋爮鐐瑰嚮浜嬩欢 */ + table.on('toolbar(docTypeTable)', function (obj) { + if (obj.event === 'add') { // 娣诲姞 + showEditModel(); + } else if (obj.event === 'edit') { // 淇敼 + if (selObj == null) { + return; + } + showEditModel(selObj.data); + } else if (obj.event === 'del') { // 鍒犻櫎 + if (selObj == null) { + return; + } + doDel(selObj); + } + }); + + /* 鐩戝惉琛屽崟鍑讳簨浠� */ + var selObj; + table.on('row(docTypeTable)', function (obj) { + console.log(obj); + selObj = obj; + obj.tr.addClass('layui-table-click').siblings().removeClass('layui-table-click'); + insTb2.reload({where: {wave_no: obj.data.waveNo}, page: {curr: 1}}); + }); + + /* 鏄剧ず琛ㄥ崟寮圭獥 */ + function showEditModel(mData) { + admin.open({ + type: 1, + title: (mData ? '淇敼' : '娣诲姞') + '鍗曟嵁绫诲瀷', + content: $('#docTypeEditDialog').html(), + success: function (layero, dIndex) { + // 鍥炴樉琛ㄥ崟鏁版嵁 + form.val('docTypeEditForm', mData); + if(mData){ + // $('#docId').addClass("layui-input").attr("disabled",true); + $('input[name="docId"]').addClass("layui-input").attr("disabled",true); + } + // 琛ㄥ崟鎻愪氦浜嬩欢 + form.on('submit(docTypeEditSubmit)', function (data) { + var loadIndex = layer.load(2); + $.ajax({ + url: baseUrl+"/docType/"+(mData?'update':'add')+"/auth", + headers: {'token': localStorage.getItem('token')}, + data: data.field, + method: 'POST', + success: function (res) { + layer.close(loadIndex); + selObj = null; + if (res.code === 200){ + layer.close(dIndex); + layer.msg(res.msg, {icon: 1}); + insTb.reload(); + } else if (res.code === 403){ + top.location.href = baseUrl+"/"; + } else { + layer.msg(res.msg, {icon: 2}); + } + } + }) + return false; + }); + } + }); + } + + /* 鍒犻櫎 */ + function doDel(obj) { + layer.confirm('纭畾瑕佸垹闄ゆ鍗曟嵁绫诲瀷鍚楋紵', { + skin: 'layui-layer-admin', + shade: .1 + }, function (i) { + layer.close(i); + var loadIndex = layer.load(2); + $.ajax({ + url: baseUrl+"/docType/delete/one/auth", + headers: {'token': localStorage.getItem('token')}, + data: {param: JSON.stringify(obj.data)}, + method: 'POST', + success: function (res) { + selObj = null; + layer.close(loadIndex); + if (res.code === 200){ + layer.closeAll(); + insTb.reload(); + $('#dictTable+.layui-table-view .layui-table-body tbody>tr:first').trigger('click'); + } else if (res.code === 403){ + top.location.href = baseUrl+"/"; + } else { + layer.msg(res.msg, {icon: 2}); + } + } + }) + }); + } + + + /****************************************** 鍙宠竟琛� *************************************************/ + + /* 娓叉煋琛ㄦ牸2 */ + var insTb2 = table.render({ + elem: '#orderTable', + headers: {token: localStorage.getItem('token')}, + url: baseUrl+'/order/orderByWave/auth', + page: true, + // size: 'lg', + limit: 15, + limits: [15, 30, 50, 100, 200, 500], + height: 'full-100', + cols: [[ + {type: 'checkbox'} + ,{field: 'orderNo', align: 'center',title: '鍗曟嵁缂栧彿'} + ,{field: 'matnr', align: 'center',title: '鐗╂枡ID'} + ,{field: 'maktx', align: 'center',title: '鐗╂枡鍚嶇О'} + ,{field: 'anfme', align: 'center',title: '搴斿嚭搴撻噺', minWidth: 100} + ,{field: 'outQty', align: 'center',title: '宸插嚭搴撻噺', minWidth: 100} + + ]], + request: { + pageName: 'curr', + pageSize: 'limit' + }, + parseData: function (res) { + return { + 'code': res.code, + 'msg': res.msg, + 'count': res.data.total, + 'data': res.data.records + } + }, + response: { + statusCode: 200 + }, + done: function(res, curr, count) { + if (res.code === 403) { + top.location.href = baseUrl+"/"; + } + pageCurr=curr; + limit(); + } + }); + /* 琛ㄦ牸2鎼滅储 */ + form.on('submit(orderTbSearch)', function (data) { + console.log(data); + insTb2.reload({ + where: { + research: data.field.order_no + }, + page: {curr: 1} + }); + return false; + }); + /* 琛ㄦ牸2閲嶇疆 */ + form.on('submit(orderTbReset)', function (data) { + $("#orderNo").val(""); + insTb2.reload({where: null,page: {curr: 1}}); + return false; + }); + + /* 琛ㄦ牸2澶村伐鍏锋爮鐐瑰嚮浜嬩欢 */ + table.on('toolbar(orderTable)', function (obj) { + if (obj.event === 'add') { // 娣诲姞 + right(); + } else if (obj.event === 'del') { // 鍒犻櫎 + var checkRows = table.checkStatus('orderTable'); + if (checkRows.data.length === 0) { + layer.msg('璇烽�夋嫨瑕佸垹闄ょ殑鏁版嵁', {icon: 2}); + return; + } + var ids = checkRows.data.map(function (d) { + return d.id; + }); + doDelOrder({ids: ids}); + }else if (obj.event === 'wave'){ + var checkRows = table.checkStatus('orderTable'); + if (checkRows.data.length === 0) { + layer.msg('璇烽�夋嫨瑕佺敓鎴愭尝娆$殑鏁版嵁', {icon: 2}); + return; + } + doWaveOrder(checkRows); + } + }); + + /* 琛ㄦ牸2宸ュ叿鏉$偣鍑讳簨浠� */ + table.on('tool(orderTable)', function (obj) { + var data = obj.data; + switch (obj.event) { + // 鎷h揣 + case 'stockOut': + var loadIndex = layer.load(2); + $.ajax({ + url: baseUrl + "/work/stock/out/preview", + headers: {'token': localStorage.getItem('token')}, + contentType: 'application/json;charset=UTF-8', + data: JSON.stringify({ + orderNo: data.orderNo + }), + method: 'POST', + success: function (res) { + layer.close(loadIndex); + if (res.code === 200){ + layer.open({ + type: 1 + ,title: false + ,closeBtn: false + ,offset: '100px' + ,area: '1000px' + ,shade: 0.5 + ,shadeClose: true + ,btn: ['绔嬪嵆鐢熸垚', '绋嶅悗澶勭悊'] + ,btnAlign: 'c' + ,moveType: 1 //鎷栨嫿妯″紡锛�0鎴栬��1 + ,content: $('#stoukOutPreview') + ,success: function(layero, index){ + table.render({ + elem: '#stoPreTab', + data: res.data, + page: true, + cellMinWidth: 100, + height: 432, + cols: [[ + {field: 'title', title: '鍟嗗搧', merge: true, align: 'center'}, + {field: 'anfme', title: '鎬绘暟閲�', merge: ['title'], align: 'center', style: 'font-weight: bold', width: 90}, + {field: 'type', title: '浠撳簱', merge: true, align: 'center', templet: '#typeTpl', width: 90}, + {field: 'locNo', title: '璐т綅', align: 'center'}, + {field: 'prior$', title: '鎺ㄨ崘璐т綅', align: 'center', width: 100}, + {field: 'reduce', title: '鏁伴噺', align: 'center', width: 90, style: 'font-weight: bold'}, + // {field: 'remQty', title: '浣欓噺', align: 'center', width: 80}, + {field: 'total', title: '鎬婚噺', align: 'center', width: 90}, + ]], + done: function () { + tableMerge.render(this); + $('.layui-table-body.layui-table-main').css("overflow", "auto") + } + }); + + } + ,yes: function(index, layero){ + //鎸夐挳銆愰┈涓婃嫞璐с�戠殑鍥炶皟 + stockOut(data.orderNo); + } + ,btn2: function(index, layero){ + //鎸夐挳銆愮◢鍚庡鐞嗐�戠殑鍥炶皟 + //return false 寮�鍚浠g爜鍙姝㈢偣鍑昏鎸夐挳鍏抽棴 + } + }); + } else if (res.code === 403){ + top.location.href = baseUrl+"/"; + } else { + layer.msg(res.msg, {icon: 2}) + } + } + }) + break; + // 鎵撳嵃 + case 'print': + layer.confirm('寮�濮嬫墦鍗�' +data.orderNo + ' 鎷h揣鍗曪紵', {shadeClose: true}, function(){ + layer.closeAll(); + printPakouts(data.orderNo); + }) + break; + // 鍒犻櫎 + case 'del': + var ids = [obj.id]; + doDelOrder({ids: ids}); + break; + // 鏄庣粏 + case 'look': + var $a = $(obj.tr).find('a[lay-event="look"]'); + var offset = $a.offset(); + layer.open({ + type: 1, + title: false, + area: '700px', + offset: [offset.top + 'px', (offset.left - 530 + $a.outerWidth()) + 'px'], + shade: .01, + shadeClose: true, + fixed: false, + content: '<table id="lookSSXMTable" lay-filter="lookSSXMTable"></table>', + success: function (layero) { + table.render({ + elem: '#lookSSXMTable', + headers: {token: localStorage.getItem('token')}, + url: baseUrl+'/orderDetl/list/auth', + where: { + order_id: data.id + }, + limit: 5, + page: true, + cellMinWidth: 100, + cols: [[ + {type: 'numbers'}, + {field: 'matnr', title: '鍟嗗搧缂栫爜'}, + {field: 'maktx', title: '鍟嗗搧鍚嶇О', width: 200}, + {field: 'anfme', title: '鏁伴噺', width: 70}, + { + field: 'createTime$', title: '鍒涘缓鏃堕棿', sort: true, templet: function (d) { + return util.toDateString(d.createTime); + }, width: 180 + } + ]], + request: { + pageName: 'curr', + pageSize: 'limit' + }, + parseData: function (res) { + return { + 'code': res.code, + 'msg': res.msg, + 'count': res.data.total, + 'data': res.data.records + } + }, + response: { + statusCode: 200 + }, + done: function () { + $(layero).find('.layui-table-view').css('margin', '0'); + }, + size: '' + }); + } + }); + break; + + } + }); + + /* 鍒犻櫎璁㈠崟 */ + function doDelOrder(obj) { + layer.confirm('纭畾瑕佸垹闄ら�変腑鏁版嵁鍚楋紵', { + skin: 'layui-layer-admin', + shade: .1 + }, function (i) { + layer.close(i); + var loadIndex = layer.load(2); + $.ajax({ + url: baseUrl+"/orders/delete/auth", + headers: {'token': localStorage.getItem('token')}, + data: {ids: obj.ids}, + method: 'POST', + success: function (res) { + layer.close(loadIndex); + if (res.code === 200){ + layer.msg(res.msg, {icon: 1}); + $(".layui-laypage-btn")[0].click(); + } else if (res.code === 403){ + top.location.href = baseUrl+"/"; + }else { + layer.msg(res.msg, {icon: 2}); + } + } + }) + + }); + } + /* 鐢熸垚娉㈡ */ + function doWaveOrder(obj) { + console.log(obj.data); + layer.confirm('纭畾瑕佺敓鎴愭尝娆�?', { + skin: 'layui-layer-admin', + shade: .1 + }, function (i) { + layer.close(i); + var loadIndex = layer.load(2); + $.ajax({ + url: baseUrl+"/orders/wave/auth", + headers: {'token': localStorage.getItem('token')}, + data: JSON.stringify(obj.data), + contentType: 'application/json;charset=UTF-8', + method: 'POST', + success: function (res) { + layer.close(loadIndex); + if (res.code === 200){ + layer.msg(res.msg, {icon: 1}); + $(".layui-laypage-btn")[0].click(); + } else if (res.code === 403){ + top.location.href = baseUrl+"/"; + }else { + layer.msg(res.msg, {icon: 2}); + } + } + }) + + }); + } + + // 鐢熸垚鎷h揣鍗� + function stockOut(orderNo) { + $.ajax({ + url: baseUrl+"/work/stock/out/create", + headers: {'token': localStorage.getItem('token')}, + contentType:'application/json;charset=UTF-8', + data: JSON.stringify({ + orderNo: orderNo + }), + method: 'POST', + success: function (res) { + // 鎴愬姛 + if (res.code === 200){ + layer.closeAll(); + $(".layui-laypage-btn")[0].click(); + layer.confirm(res.msg, { + shadeClose: true + , btn: ['鎵撳嵃鎷h揣鍗�'] + }, function() { + layer.closeAll(); + printPakouts(orderNo); + } + ) + } else if (res.code === 403){ + top.location.href = baseUrl+"/"; + } else { + layer.msg(res.msg, {icon: 2}) + } + } + }) + // }); + } + + // 鎵撳嵃鎷h揣鍗� + function printPakouts(orderNo) { + $.ajax({ + url: baseUrl+"/work/stock/out/print", + headers: {'token': localStorage.getItem('token')}, + data: JSON.stringify({ + orderNo: orderNo + }), + contentType:'application/json;charset=UTF-8', + method: 'POST', + success: function (res) { + if (res.code === 200){ + res.data["barcodeUrl"]=baseUrl+"/order/code/auth?type=1¶m="+res.data.docNum; + var tpl = $('#pakoutPrintTpl').html(); + var template = Handlebars.compile(tpl); + var html = template(res); + var box = $("#pakoutPrintBox"); + box.html(html);box.show(); + box.print({ + mediaPrint:true, + deferred: $.Deferred().done(function () { + layer.confirm('[閲嶈] 鎵撳嵃鏄惁鎴愬姛锛�', {btn: ['Yes', 'No']}, function(){ + $.ajax({ + url: baseUrl+"/pakout/print/auth", + headers: {'token': localStorage.getItem('token')}, + data: { + docNumber: orderNo + }, + method: 'POST', + success: function (res) { + if (res.code === 200){ + layer.closeAll(); + $(".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}) + } + } + }) + }); + }) + }); + box.hide(); + } else if (res.code === 403){ + top.location.href = baseUrl+"/"; + } else { + layer.msg(res.msg, {icon: 2}) + } + } + }) + } + +}); + +function right(){ + top.popupRight = top.layui.admin.popupRight({ + id: 'LAY_adminPopupLayerTest' + , area: '890px' + , type: 2 + , shade: [0.5,'#000'] + , content:'order/matQuery.html' + , success: function(){ + // $('#'+ this.id).html('<div style="padding: 20px;">鏀惧叆鍐呭</div>'); + //admin.view(this.id).render('system/xxx') + } + , end: function () { + $(".layui-laypage-btn")[0].click(); + } + }); +} + +function tableReload(child) { + var searchData = {}; + $.each($('#search-box [name]').serializeArray(), function() { + searchData[this.name] = this.value; + }); + (child ? parent.tableIns : tableIns).reload({ + where: searchData, + page: { + curr: pageCurr + } + }); +} + diff --git a/src/main/webapp/views/order/orderResult.html b/src/main/webapp/views/order/orderResult.html new file mode 100644 index 0000000..8e4e31f --- /dev/null +++ b/src/main/webapp/views/order/orderResult.html @@ -0,0 +1,266 @@ +<!DOCTYPE html> +<html lang="en"> +<head> + <meta charset="utf-8"> + <title></title> + <meta name="renderer" content="webkit"> + <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> + <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> + <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all"> + <link rel="stylesheet" href="../../static/css/admin.css?v=318" media="all"> + <link rel="stylesheet" href="../../static/css/cool.css" media="all"> + <style> + body { + color: #595959; + background-color: #f5f7f9; + } + + /* 宸﹁〃 */ + #docTypeTable + .layui-table-view .layui-table-tool-temp { + padding-right: 0; + } + + #docTypeTable + .layui-table-view .layui-table-body tbody > tr td { + cursor: pointer; + } + + #docTypeTable + .layui-table-view .layui-table-body tbody > tr.layui-table-click { + background-color: #fff3e0; + } + + #docTypeTable + .layui-table-view .layui-table-body tbody > tr.layui-table-click td:last-child > div:before { + position: absolute; + right: 6px; + content: "\e602"; + font-size: 12px; + font-style: normal; + font-family: layui-icon,serif !important; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + } + + #left-table .layui-table-grid-down { + display: none; + } + + + .layui-form.layui-border-box.layui-table-view { + border-width: 1px; + } + #left-table .layui-table thead th { + /* font-weight: bold; */ + text-align: left; + } + </style> +</head> +<body> +<!-- 姝f枃寮�濮� --> +<div class="layui-fluid" style="padding-bottom: 0;"> + <div class="layui-row layui-col-space15"> + <div class="layui-col-md3" id="left-table"> + <div class="layui-card"> + <div class="layui-card-body" style="padding: 10px;"> + <!-- 琛ㄦ牸宸ュ叿鏍�1 --> + <form class="layui-form toolbar"> + <div class="layui-form-item"> + <div class="layui-inline" style="max-width: 140px;"> + <input name="wave_no" class="layui-input" placeholder="杈撳叆娉㈡鍙�"/> + </div> + <div class="layui-inline"> + <button class="layui-btn icon-btn" lay-filter="docTypeTableSearch" lay-submit> + <i class="layui-icon"></i>鎼滅储 + </button> + </div> + </div> + </form> + <!-- 鏁版嵁琛ㄦ牸1 --> + <table id="docTypeTable" lay-filter="docTypeTable"></table> + </div> + </div> + </div> + <div class="layui-col-md9"> + <div class="layui-card"> + <div class="layui-card-body" style="padding: 10px;"> + <!-- 琛ㄦ牸宸ュ叿鏍�2 --> + <form class="layui-form toolbar"> + <div class="layui-form-item"> + <div class="layui-inline"> + <label class="layui-form-label">璁㈠崟缂栧彿:</label> + <div class="layui-input-inline"> + <input name="order_no" class="layui-input" id="orderNo" placeholder="杈撳叆璁㈠崟缂栧彿"/> + </div> + </div> + <div class="layui-inline">  + <button class="layui-btn icon-btn" lay-filter="orderTbSearch" lay-submit> + <i class="layui-icon"></i>鎼滅储 + </button> + <button class="layui-btn icon-btn" lay-filter="orderTbReset" lay-submit> + <i class="layui-icon"></i>閲嶇疆 + </button> + </div> + </div> + </form> + <!-- 鏁版嵁琛ㄦ牸2 --> + <table id="orderTable" lay-filter="orderTable"></table> + </div> + </div> + </div> + </div> +</div> + +<script type="text/html" id="docTypeTpl"> + <span name="docType" class="layui-badge layui-badge-gray">{{d.docType$}}</span> +</script> + +<script type="text/html" id="operate"> + {{#if (d.settle == 1){ }} + <a class="layui-btn layui-btn-xs layui-btn-danger" lay-event="stockOut" style="font-size: 16px">鎷h揣鍗�</a> + {{# } }} + {{#if (d.settle == 2 || d.settle == 4){ }} + <a class="layui-btn layui-btn-xs layui-btn-normal" lay-event="print" style="font-size: 16px">鎵撳嵃</a> + {{# } }} +</script> + +<script type="text/html" id="settleTpl"> + <span name="settle" + {{# if( d.settle === 1){ }} + class="layui-badge layui-badge-blue" + {{# } else if(d.settle === 2){ }} + class="layui-badge layui-badge-red" + {{# } else if(d.settle === 3){ }} + class="layui-badge layui-badge-gray" + {{# } else if(d.settle === 4){ }} + class="layui-badge layui-badge-green" + {{# } else if(d.settle === 11){ }} + class="layui-badge layui-badge-green" + {{# } else if(d.settle === 12){ }} + class="layui-badge layui-badge-blue" + {{# } else { }} + class="layui-badge layui-badge-gray" + {{# } }} + >{{d.settle$}}</span> +</script> + +<script type="text/html" id="typeTpl"> + <span name="type" + {{# if( d.type === 1){ }} + class="layui-badge layui-badge-blue" ><span style="display: none">{{d.number}}</span>骞充粨</span> + {{# } else if(d.type === 2){ }} + class="layui-badge layui-badge-green" ><span style="display: none">{{d.number}}</span>绔嬪簱</span> + {{# } else if(d.type === 0){ }} + class="layui-badge layui-badge-red" ><span style="display: none">{{d.number}}</span>缂鸿揣</span> + {{# } }} +</script> + +<!-- 琛ㄦ牸鎿嶄綔鍒� --> +<script type="text/html" id="tbLook"> + <span class="layui-text"> + <a href="javascript:;" lay-event="look"> + <i class="layui-icon" style="font-size: 12px;"></i> 鏌ョ湅鏄庣粏 + </a> + </span> +</script> + +<!-- 鎵撳嵃瀹瑰櫒 --> +<div id="pakoutPrintBox" style="display: none"></div> +<!-- 鍑哄簱棰勮瀹瑰櫒 --> +<div id="stoukOutPreview" style="display: none"> + <div style="padding: 25px; line-height: 22px; background-color: #393D49; color: #fff; font-weight: 300;"> + <span style="font-size: large; font-weight: bold">鎷h揣鍗曢瑙�</span> + </div> + <table id="stoPreTab" lay-filter="stoPreTab"></table> +</div> + +<!-- 鍗曟嵁绫诲瀷琛ㄥ崟 --> +<script type="text/html" id="docTypeEditDialog"> + <form id="docTypeEditForm" lay-filter="docTypeEditForm" class="layui-form model-form"> + <input name="dictId" type="hidden"/> + <input name="docClass" value="2" type="hidden"/> + <div class="layui-form-item"> + <label class="layui-form-label layui-form-required">绫诲瀷缂栫爜:</label> + <div class="layui-input-block"> + <input name="docId" placeholder="璇疯緭鍏ョ被鍨嬬紪鐮�" class="layui-input" + lay-verType="tips" lay-verify="required" required/> + </div> + </div> + <div class="layui-form-item"> + <label class="layui-form-label layui-form-required">绫诲瀷鍚嶇О:</label> + <div class="layui-input-block"> + <input name="docName" placeholder="璇疯緭鍏ョ被鍨嬪悕绉�" class="layui-input" + lay-verType="tips" lay-verify="required" required/> + </div> + </div> + <div class="layui-form-item"> + <label class="layui-form-label">澶囨敞:</label> + <div class="layui-input-block"> + <textarea name="memo" placeholder="璇疯緭鍏ュ娉�" class="layui-textarea"></textarea> + </div> + </div> + <div class="layui-form-item text-right"> + <button class="layui-btn" lay-filter="docTypeEditSubmit" lay-submit>淇濆瓨</button> + <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">鍙栨秷</button> + </div> + </form> +</script> + +<!-- 璁㈠崟琛ㄥご鎿嶄綔 --> +<script type="text/html" id="orderToolbar"> + <div class="layui-btn-container"> + <button class="layui-btn layui-btn-sm layui-btn-normal" id="btn-add" lay-event="add"><i class="layui-icon"></i>鏂板</button> + <button class="layui-btn layui-btn-sm layui-btn-danger" id="btn-delete" lay-event="del"><i class="layui-icon"></i>鍒犻櫎</button> + <button class="layui-btn layui-btn-sm layui-btn" id="btn-wave" lay-event="wave"><i class="layui-icon"></i>鐢熸垚娉㈡璁″垝</button> + </div> +</script> + +<script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> +<script type="text/javascript" src="../../static/js/jquery/jQuery.print.js"></script> +<script type="text/javascript" src="../../static/js/handlebars/handlebars-v4.5.3.js"></script> +<script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> +<script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> +<script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> +<script type="text/javascript" src="../../static/js/order/orderResult.js" charset="utf-8"></script> + +</body> +<script type="text/template" id="pakoutPrintTpl"> + <!-- 澶� --> + <div id="print-header" style="margin: 20px 0"> + <div style="text-align: center"> + <div style="text-align: center;margin-bottom: 10px"> + <span style="font-family: 瀹嬩綋"> 鎷h揣鍗� </span> + </div> + + <img class="template-code template-qrcode" src="{{data.barcodeUrl}}" style="width: 80%"> + <p style="letter-spacing: 2px;margin-top: 5px">{{data.docNum}}</p> + </div> + <div style="font-size: xx-small; text-align: left; margin-top: 10px"> + <span style="font-family: 瀹嬩綋">瀹㈡埛锛歿{data.cstmrName}}</span> + </div> + <div style="margin-top: 10px"> + <div style="float: left;width: 50%; text-align: left"> + <span style="font-size: xx-small;font-family: 瀹嬩綋">鎷h揣鏁伴噺锛歿{data.total}}</span> + </div> + <div style="float: left; width: 50%; text-align: right"> + <span style="font-size: xx-small;font-family: 瀹嬩綋">鎷h揣浜猴細{{data.workerName}}</span> + </div> + <div style="clear:both;"></div> + </div> + </div> + + <!-- 涓讳綋 --> + <div style="margin-top: 10px"> + {{#each data.list}} + <div class="pakout-item" style="padding: 10px 5px 10px 5px;border-top: 1px solid #525252"> + <div class="item-header" style="margin-top: 10px;font-family: 瀹嬩綋; font-size: x-small"> + {{maktx}} + </div> + <div class="item-content" style="margin: 10px 0 "> + <div style="float: left;font-family: 瀹嬩綋; font-size: xx-small">{{anfme}}{{unit}}</div> + <div style="float: right;font-family: 瀹嬩綋; font-size: xx-small">璐т綅锛歿{locNo}}</div> + <div style="clear: both;"></div> + </div> + </div> + {{/each}} + </div> +</script> +</html> + -- Gitblit v1.9.1