| | |
| | | } |
| | | } |
| | | if (issued > 0) { |
| | | locDtos.add(new LocDto("缺货", orderDetl.getMatnr(), orderDetl.getMaktx(), orderDetl.getBatch(), orderDetl.getOrderNo(), issued)); |
| | | LocDto locDto = new LocDto("缺货", orderDetl.getMatnr(), orderDetl.getMaktx(), orderDetl.getBatch(), orderDetl.getOrderNo(), issued); |
| | | locDto.setLack(Boolean.TRUE); |
| | | locDtos.add(locDto); |
| | | } |
| | | } |
| | | return R.ok().add(locDtos); |
| | |
| | | |
| | | private Double anfme; |
| | | |
| | | private boolean lack = false; |
| | | |
| | | public LocDto() { |
| | | } |
| | | |
| | |
| | | base: baseUrl + "/static/layui/lay/modules/" |
| | | }).extend({ |
| | | notice: 'notice/notice', |
| | | }).use(['table','laydate', 'form', 'util', 'admin', 'notice', 'treeTable', 'xmSelect'], function(){ |
| | | }).use(['table','laydate', 'form', 'util', 'admin', 'notice', 'treeTable', 'xmSelect', 'tableMerge'], function(){ |
| | | var table = layui.table; |
| | | var $ = layui.jquery; |
| | | var layer = layui.layer; |
| | |
| | | var notice = layui.notice; |
| | | var treeTable = layui.treeTable; |
| | | var xmSelect = layui.xmSelect; |
| | | var tableMerge = layui.tableMerge; |
| | | |
| | | insTb2 = table.render({ |
| | | elem: '#orderDetlTable', |
| | |
| | | ,closeBtn: false |
| | | ,offset: '100px' |
| | | // ,area: ['1000px', '700px'] |
| | | ,area: '1000px' |
| | | ,area: '1200px' |
| | | ,shade: 0.5 |
| | | ,shadeClose: true |
| | | ,btn: ['立即生成', '稍后处理'] |
| | | ,btnAlign: 'c' |
| | | ,moveType: 1 //拖拽模式,0或者1 |
| | | ,content: $('#pakoutPreviewBox') |
| | | ,content: $('#pakoutPreviewBox').html() |
| | | ,success: function(layero, index){ |
| | | console.log(res.data) |
| | | table.render({ |
| | | elem: '#stoPreTab', |
| | | data: res.data, |
| | | page: false, |
| | | cellMinWidth: 100, |
| | | height: 432, |
| | | page: false, |
| | | limit: Number.MAX_VALUE, |
| | | cellMinWidth: 100, |
| | | cols: [[ |
| | | {type: 'checkbox', merge: ['orderNo']}, |
| | | {field: 'orderNo', title: '单据编号', merge: true, align: 'center'}, |
| | | {field: 'title', title: '商品', merge: true, align: 'center', width: 300}, |
| | | {field: 'title', title: '商品', align: 'center', width: 350}, |
| | | {field: 'batch', title: '批号', merge: ['title'], align: 'center'}, |
| | | // {field: 'anfme', title: '总数量', merge: ['title'], align: 'center', style: 'font-weight: bold', width: 90}, |
| | | {field: 'locNo', title: '货位', align: 'center', width: 90}, |
| | | {field: 'batch', title: '批号', align: 'center'}, |
| | | {field: 'anfme', 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") |
| | | } |
| | | }); |
New file |
| | |
| | | /** |
| | | * Created by YujieYang. |
| | | * @name: 子表格扩展 |
| | | * @author: 杨玉杰 |
| | | * @version 1.0 |
| | | */ |
| | | layui.define(['table'], function (exports) { |
| | | |
| | | var $ = layui.jquery; |
| | | |
| | | // 封装方法 |
| | | var mod = { |
| | | /** |
| | | * 渲染入口 |
| | | * @param myTable |
| | | */ |
| | | render: function (myTable) { |
| | | var tableBox = $(myTable.elem).next().children('.layui-table-box'), |
| | | $main = $(tableBox.children('.layui-table-body').children('table').children('tbody').children('tr').toArray().reverse()), |
| | | $fixLeft = $(tableBox.children('.layui-table-fixed-l').children('.layui-table-body').children('table').children('tbody').children('tr').toArray().reverse()), |
| | | $fixRight = $(tableBox.children('.layui-table-fixed-r').children('.layui-table-body').children('table').children('tbody').children('tr').toArray().reverse()), |
| | | cols = myTable.cols[0], mergeRecord = {}; |
| | | |
| | | for (let i = 0; i < cols.length; i++) { |
| | | var item3 = cols[i], field=item3.field; |
| | | if (item3.merge) { |
| | | var mergeField = [field]; |
| | | if (item3.merge !== true) { |
| | | if (typeof item3.merge == 'string') { |
| | | mergeField = [item3.merge] |
| | | } else { |
| | | mergeField = item3.merge |
| | | } |
| | | } |
| | | mergeRecord[i] = {mergeField: mergeField, rowspan:1} |
| | | } |
| | | } |
| | | |
| | | $main.each(function (i) { |
| | | |
| | | for (var item in mergeRecord) { |
| | | if (i==$main.length-1 || isMaster(i, item)) { |
| | | $(this).children('[data-key$="-'+item+'"]').attr('rowspan', mergeRecord[item].rowspan).css('position','static'); |
| | | $fixLeft.eq(i).children('[data-key$="-'+item+'"]').attr('rowspan', mergeRecord[item].rowspan).css('position','static'); |
| | | $fixRight.eq(i).children('[data-key$="-'+item+'"]').attr('rowspan', mergeRecord[item].rowspan).css('position','static'); |
| | | mergeRecord[item].rowspan = 1; |
| | | } else { |
| | | $(this).children('[data-key$="-'+item+'"]').remove(); |
| | | $fixLeft.eq(i).children('[data-key$="-'+item+'"]').remove(); |
| | | $fixRight.eq(i).children('[data-key$="-'+item+'"]').remove(); |
| | | mergeRecord[item].rowspan +=1; |
| | | } |
| | | } |
| | | }) |
| | | |
| | | function isMaster (index, item) { |
| | | var mergeField = mergeRecord[item].mergeField; |
| | | var dataLength = layui.table.cache[myTable.id].length; |
| | | for (var i=0; i<mergeField.length; i++) { |
| | | |
| | | if (layui.table.cache[myTable.id][dataLength-2-index][mergeField[i]] |
| | | !== layui.table.cache[myTable.id][dataLength-1-index][mergeField[i]]) { |
| | | return true; |
| | | } |
| | | } |
| | | return false; |
| | | } |
| | | |
| | | } |
| | | }; |
| | | |
| | | // 输出 |
| | | exports('tableMerge', mod); |
| | | }); |
| | | |
| | |
| | | </script> |
| | | |
| | | <!-- 出库预览 --> |
| | | <div id="pakoutPreviewBox" style="display: none"> |
| | | <script type="text/html" id="pakoutPreviewBox" 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">出库预览</span> |
| | | </div> |
| | | <table id="stoPreTab" lay-filter="stoPreTab"></table> |
| | | </div> |
| | | <div class="layui-card"> |
| | | <div class="layui-card-body" style="padding: 10px"> |
| | | <table id="stoPreTab" lay-filter="stoPreTab"></table> |
| | | </div> |
| | | </div> |
| | | </script> |
| | | |
| | | <!-- 行样式 --> |
| | | <script type="text/html" id="orderNoTpl"> |