matCodeData = []; var tableIns; function getCol() { var cols = [ { fixed: 'left', field: 'count', title: '数量(必填)', align: 'center', edit: 'text', width: 120, style: 'color: blue;font-weight: bold' } ]; cols.push.apply(cols, matCols); cols.push({fixed: 'right', title: '操作', align: 'center', toolbar: '#operate', width: 80}) 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) { limit(); } }); // 监听行工具事件-移除 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].matnr === data.matnr) { matCodeData.splice(i, 1); } } tableIns.reload({ data: matCodeData, done: function (res) { limit(); // 覆盖render方法的done } }); break; } }); // 页面修改 table.on('edit(chooseData)', function (obj) { updateMatCodeData(obj.data.matnr, Number(obj.value)); }); // 操作栏重置事件 form.on('submit(reset)', function (data) { $("#type").val(""); form.render(); matCodeData = []; tableIns.reload({data: []}); }); // 操作栏提交事件 form.on('submit(submit)', function (data) { var type = $("#type").val(); if (isEmpty(type)) { layer.msg("请选择盈亏情况"); return; } if (!matCodeData || matCodeData.length == 0) { layer.msg("商品信息不可为空"); return; } for (var i = 0; i < matCodeData.length; i++) { if (matCodeData[i].count == 0) { layer.msg("商品" + matCodeData[i].maktx + "数量不可为空"); return; } } // 调用上传erp接口 console.log('matCodeData:', matCodeData, ";type:", type); $.ajax({ url : baseUrl+'/work/check/upload', headers: {'token': localStorage.getItem('token')}, method: 'POST', contentType: 'application/json;charset=UTF-8', data: JSON.stringify({ mats: matCodeData, type: type, }), success : function(res) { if (res.code == 200) { layer.msg(res.data) matCodeData = []; tableIns.reload({data: []}); } else if (res.code === 403) { top.location.href = baseUrl + "/"; } else { layer.msg(res.msg, {icon: 2}); } } }); }); }); // 提取物料 var matCodeLayerIdx; function getMat() { matCodeLayerIdx = layer.open({ type: 2, title: '提取物料', maxmin: true, area: [top.detailWidth, top.detailHeight], shadeClose: true, content: '../ioWorks/matQuery.html', success: function (layero, index) { } }); } // 添加表格数据 function addTableData(data) { for (var i = 0; i < data.length; i++) { let pass = false; for (var j = 0; j < matCodeData.length; j++) { if (data[i].matnr === matCodeData[j].matnr) { pass = true; break; } } if (pass) { data.splice(i--, 1); } else { data[i]["count"] = 0; } } matCodeData.push.apply(matCodeData, data); tableIns.reload({data: matCodeData}); layer.close(matCodeLayerIdx); } function updateMatCodeData(matnr, count) { if (isNaN(count)) { layer.msg("请输入数字"); } else { if (count > 0) { for (var i = 0; i < matCodeData.length; i++) { if (matCodeData[i]["matnr"] === matnr) { matCodeData[i]["count"] = count; } } } else { layer.msg("数量必须大于零"); } } tableIns.reload({ data: matCodeData, done: function (res) { limit(); // 覆盖render方法的done } }); }