var locDetlLayerIdx; var locDetlData = []; function getCol() { var cols = [ {field: 'count', align: 'center',title: '出库数量', edit:'text', width: 130, style:'color: blue;font-weight: bold'} ,{field: 'anfme', align: 'center',title: '库存数量'} ,{field: 'locNo$', align: 'center',title: '库位号'} ]; arrRemove(detlCols, 'field', 'anfme'); cols.push.apply(cols, detlCols); cols.push({fixed: 'right', title:'操作', align: 'center', toolbar: '#operate', width: 80}) return cols; } layui.config({ base: baseUrl + "/static/layui/lay/modules/" }).use(['table','laydate', 'form', 'admin'], function() { var table = layui.table; var $ = layui.jquery; var layer = layui.layer; var form = layui.form; var admin = layui.admin; tableIns = table.render({ elem: '#chooseData', headers: {token: localStorage.getItem('token')}, data: [], even: true, toolbar: '#toolbar', cellMinWidth: 50, limit: 500, cols: [getCol()], done: function(res, curr, count) { limit(); getOutBound(); } }); // 页面修改 table.on('edit(chooseData)', function (obj) { let index = obj.tr.attr("data-index"); let data = locDetlData[index]; let modify = true; if (obj.field === 'count'){ let vle = Number(obj.value); if (isNaN(vle)) { layer.msg("请输入数字", {icon: 2}); modify = false; } else { if (vle <= 0) { layer.msg("数量必须大于零", {icon: 2}); modify = false; } if (vle > Number(data.anfme)) { layer.msg("出库数量不得大于库存数量", {icon: 2}); modify = false; } } } if (modify) { data[obj.field] = obj.value; } tableIns.reload({data: locDetlData}); }); // 监听头工具栏事件 table.on('toolbar(chooseData)', function (obj) { switch (obj.event) { case 'outbound': if (locDetlData.length === 0){ layer.msg('请先提取商品库存', {icon: 2}); } else { var staNo = $("#staNoSelect").val(); if (staNo === "" || staNo === null){ layer.msg("请选择出库口", {icon: 2}); return; } let param = { outSite: staNo, locDetls: locDetlData } $.ajax({ url: baseUrl+"/plate/out/start", headers: {'token': localStorage.getItem('token')}, data: JSON.stringify(param), contentType:'application/json;charset=UTF-8', method: 'POST', success: function (res) { if (res.code === 200){ locDetlData = []; tableIns.reload({data: locDetlData,done:function (res) {limit();getOutBound();}}); layer.msg(res.msg, {icon: 1}); } else if (res.code === 403){ top.location.href = baseUrl+"/"; } else { layer.msg(res.msg, {icon: 2}) } } }); } break; } }); // 监听行工具事件 table.on('tool(chooseData)', function(obj){ switch (obj.event) { case 'remove': let index = obj.tr.attr("data-index"); locDetlData.splice(index, 1); tableIns.reload({data: locDetlData}); break; } }); // 获取出库口 function getOutBound(){ $.ajax({ url: baseUrl+"/available/take/site", headers: {'token': localStorage.getItem('token')}, method: 'POST', async: false, success: function (res) { if (res.code === 200){ var tpl = $("#takeSiteSelectTemplate").html(); var template = Handlebars.compile(tpl); var html = template(res); $('#staNoSelect').append(html); form.render('select'); } else if (res.code === 403){ top.location.href = baseUrl+"/"; }else { layer.msg(res.msg) } } }) } $(document).on('click','#mat-query', function () { let loadIndex = layer.msg('请求中...', {icon: 16, shade: 0.01, time: false}); locDetlLayerIdx = layer.open({ type: 2, title: false, closeBtn: false, maxmin: false, area: ['90%', '85%'], shadeClose: true, content: 'locDetlQuery.html', success: function(layero, index){ layer.close(loadIndex); } }); }) }) // 添加表格数据 function addTableData(data) { for (var i=0;i