var initCountVal = 0; var matCodeData = []; function getCol() { var cols = [ {fixed: 'left', field: 'count', title: '数量(必填)', align: 'center', edit:'text', width: 120, style:'color: blue;font-weight: bold'} ,{field: 'billNo', title:'单据编号', align: 'center'} ,{field: 'seqNo', title:'序号', align: 'center', width:80} ,{field: 'qty', title:'通知入库量', align: 'center'} ,{field: 'inQty', title:'已入库量', align: 'center'} ]; cols.push.apply(cols, matCols); cols.push( {field: 'memo', title:'备注', align: 'center'}, {fixed: 'right', title:'操作', align: 'center', toolbar: '#operate', width:120} ) return cols; } 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; tableIns = table.render({ elem: '#chooseData', data: [], even: true, limit: 500, cellMinWidth: 50, toolbar: '#toolbar', cols: [getCol()], done: function (res, curr, count) { $('td[data-field=count] div').html(initCountVal); setMatCodeData(res.data); limit(); getInBound(); } }); // 页面修改 table.on('edit(chooseData)', function (obj) { updateMatCodeData(obj.data.billNo,obj.data.seqNo,obj.data.matNo, Number(obj.value),Number(obj.data.qty),Number(obj.data.inQty)); }); // 监听头工具栏事件 table.on('toolbar(chooseData)', function (obj) { var checkStatus = table.checkStatus(obj.config.id); var data = checkStatus.data; switch(obj.event) { case 'comb': // 判断是否存在产品 if (matCodeData.length === 0) { layer.msg("请先添加产品"); return; } // 判断产品数量是否存在异常 for (var i=0;i (matCodeData[i].qty - matCodeData[i].inQty)){ layer.msg("入库数量不能超过可入库量"); return; } } console.log(matCodeData) $.ajax({ url: baseUrl+"/mat/store/start", headers: {'token': localStorage.getItem('token')}, data: JSON.stringify({ devpNo: Number($('#putSiteSelect').val()), list: matCodeData }), contentType:'application/json;charset=UTF-8', method: 'POST', async: false, success: function (res) { if (res.code === 200){ layer.msg("入库启动成功,目标库位:" + res.data); matCodeData = []; tableIns.reload({data: matCodeData,done:function (res) { limit(); getInBound();}}); } else if (res.code === 403){ top.location.href = baseUrl+"/"; }else { layer.msg(res.msg) } } }) break; } }); // 监听行工具事件 table.on('tool(chooseData)', function(obj){ var data = obj.data; switch (obj.event) { case 'remove': for (var i = matCodeData.length - 1; i >= 0; i--) { if (matCodeData[i].matNo === data.matNo) { matCodeData.splice(i, 1); } } tableIns.reload({data: matCodeData,done:function (res) { limit(); getInBound(); // 覆盖render方法的done }}); break; case 'memo': var memoLayer = layer.open({ type: 2, title: '备注', maxmin: true, area: ['400px', '215px'], shadeClose: false, content: 'matMemo.html', btn: ['保存', '取消'], style: 'text-algin: center', yes: function(index, layero){ var memo = layer.getChildFrame('body', index).find("#memo")[0].value; matCodeData.map(function (item) { if (item.matNo === data.matNo) { item.memo = memo; } }); // 重置表格数据 tableIns.reload({data: matCodeData,done:function (res) { limit(); getInBound(); layer.close(memoLayer); }}); }, success: function(layero, index){ var iframeWin = window[layero.find('iframe')[0]['name']];//得到iframe页的窗口对象 iframeWin.setMatMemo(data.memo); } }); break; } }); function setMatCodeData(data) { matCodeData = data; for (var i=0;i (qty-inQty) ){ layer.msg("入库数量不能超过可入库量"); } if (count > 0) { for (var i=0;i