var ExcelData, ExcelKind; function ConfirmImport() { var index = layer.load(1, { shade: [0.5, '#000'] }); $.ajax({ type: "POST", url: "/Admin/StoreHouse/Import?r=" + Math.random(1), data: "Kind=" + ExcelKind + "&ExcelData=" + encodeURIComponent(JSON.stringify(ExcelData)), dataType: "text", success: function (data) { layer.close(index); if (data.indexOf("success") == 0) { layer.msg("成功操作" + data.split('|')[1] + "部机具", { time: 2000 }, function () { window.location.reload(); }); } else { layer.msg(data); } } }); } function CheckImport(table, key, loadindex, index) { $.ajax({ url: "/Admin/StoreHouse/CheckImport?r=" + Math.random(1), data: "key=" + key, dataType: "text", success: function (data) { if (data.indexOf('success') == 0) { layer.msg("成功操作" + data.split('|')[1] + "部机具", { time: 2000 }, function () { layer.close(index); //关闭弹层 layer.close(loadindex); table.reload('LAY-list-manage'); //数据刷新 }); } else { layer.msg(data, { time: 1000 }, function () { CheckImport(table, key, loadindex, index); }); } } }); } var excel; layui.config({ base: '/layuiadmin/' //静态资源所在路径 }).extend({ myexcel: 'layui/lay/modules/excel', index: 'lib/index' //主入口模块 }).use(['index', 'table', 'excel', 'laydate'], function () { var $ = layui.$, form = layui.form, table = layui.table; //- 筛选条件-日期 var laydate = layui.laydate; var layCreateDate = laydate.render({ elem: '#CreateDate', type: 'datetime', range: true, trigger: 'click', change: function (value, date, endDate) { var op = true; if (date.year == endDate.year && endDate.month - date.month <= 1) { if (endDate.month - date.month == 1 && endDate.date > date.date) { op = false; layCreateDate.hint('日期范围请不要超过1个月'); setTimeout(function () { $(".laydate-btns-confirm").addClass("laydate-disabled"); }, 1); } } else { op = false; layCreateDate.hint('日期范围请不要超过1个月'); setTimeout(function () { $(".laydate-btns-confirm").addClass("laydate-disabled"); }, 1); } if (op) { $('#CreateDate').val(value); } } }); //excel导入 excel = layui.excel; $('#ExcelFile').change(function (e) { var files = e.target.files; excel.importExcel(files, {}, function (data) { ExcelData = data[0].Sheet1; }); }); //监听单元格编辑 table.on('edit(LAY-list-manage)', function (obj) { var value = obj.value //得到修改后的值 , data = obj.data //得到所在行所有键值 , field = obj.field; //得到字段 if (field == "Sort") { $.ajax({ type: "POST", url: "/Admin/StoreHouse/Sort?r=" + Math.random(1), data: "Id=" + data.Id + "&Sort=" + value, dataType: "text", success: function (data) {} }); } }); //列表数据 table.render({ elem: '#LAY-list-manage', url: '/Admin/StoreHouse/IndexData' //模拟接口 , cols: [ [{ type: 'checkbox', fixed: 'left' }, { field: 'Id', fixed: 'left', title: 'ID', width: 80, sort: true, unresize: true }, { field: 'StoreNo', width: 200, title: '仓库编号', sort: true }, { field: 'StoreName', width: 200, title: '仓库名称', sort: true }, { field: 'ManageUserIdMakerCode', width: 200, title: '仓库负责人编号', sort: true, templet: '#ManageTpl' }, { field: 'ManageUserIdRealName', width: 200, title: '仓库管理员', sort: true }, { field: 'UserIdMakerCode', width: 200, title: '仓库归属创客编号', sort: true, templet: '#MakerCodeTpl' }, { field: 'UserIdRealName', width: 200, title: '仓库归属人真实姓名', sort: true }, { field: 'BrandId', width: 300, title: '产品类型', sort: true }, { field: 'Address', width: 200, title: '仓库地址', sort: true }, { field: 'ManageUserIdMobile', width: 200, title: '仓库管理员手机号', sort: true }, { field: 'ManagerEmail', width: 200, title: '管理者邮箱', sort: true }, { field: 'StoreType', width: 200, title: '仓库类型', sort: true }, { field: 'TotalNum', width: 200, title: '总库存数', sort: true }, { field: 'LaveNum', width: 200, title: '剩余库存数', sort: true }, { field: 'OutNum', width: 200, title: '出库数', sort: true }, { field: 'LimitTopUserId', width: 200, title: '限制创客特殊仓库', sort: true }, { field: 'StoreStatus', width: 200, title: '仓库状态', sort: true }, { field: 'StoreKind', width: 200, title: '仓库归属类型', sort: true }, { field: 'CreateMan', width: 200, title: '创建人', sort: true }, { field: 'CreateDate', width: 200, title: '创建时间', sort: true } , { field: 'Sort', fixed: 'right', title: '排序', width: 80, edit: 'text' }, { title: '操作', width: 200, align: 'center', fixed: 'right', toolbar: '#table-list-tools' } ] ], where: { }, page: true, limit: 30, height: 'full-' + String($('.layui-card-header').height() + 130), text: '对不起,加载出现异常!', done: function (res, curr, count) { $(".layui-none").text("无数据"); } }); //监听工具条 table.on('tool(LAY-list-manage)', function (obj) { var data = obj.data; if (obj.event === 'del') { var index = layer.confirm('确定要删除吗?删除后不能恢复!', function (index) { $.ajax({ type: "POST", url: "/Admin/StoreHouse/Delete?r=" + Math.random(1), data: "Id=" + data.Id, dataType: "text", success: function (data) { if (data == "success") { obj.del(); layer.close(index); } else { parent.layer.msg(data); } } }); }); } else if (obj.event === 'sycn') { var index = layer.confirm('确定要同步该仓库的库存数据吗?', function (index) { layer.close(index); var loadindex = layer.load(1, { shade: [0.5, '#000'] }); $.ajax({ type: "POST", url: "/Admin/StoreHouse/SycnData?r=" + Math.random(1), data: "Id=" + data.Id, dataType: "text", success: function (data) { layer.close(loadindex); if (data == "success") { layer.msg('同步成功'); table.reload('LAY-list-manage'); } else { layer.msg(data); } } }); }); } else if (obj.event === 'edit') { var tr = $(obj.tr); var perContent = layer.open({ type: 2, title: '仓库-编辑', content: 'Edit?Id=' + data.Id + '', maxmin: true, area: ['800px', '650px'], btn: ['确定', '取消'], yes: function (index, layero) { var iframeWindow = window['layui-layer-iframe' + index], submitID = 'LAY-list-front-submit', submit = layero.find('iframe').contents().find('#' + submitID); setTimeout(function () { layero.find('iframe').contents().find('.layui-tab-item').each(function (i) { var errObj = $(this).find('.layui-form-danger'); if (errObj.length > 0) { iframeWindow.element.tabChange('mytabbar', String(i + 1)); submit.click(); } }); }, 300); //监听提交 iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) { var field = data.field; //获取提交的字段 var userdata = ""; for (var prop in field) { userdata += prop + "=" + encodeURIComponent(field[prop]) + "&"; } //提交 Ajax 成功后,静态更新表格中的数据 //$.ajax({}); $.ajax({ type: "POST", url: "/Admin/StoreHouse/Edit?r=" + Math.random(1), data: userdata, dataType: "text", success: function (data) { if (data == "success") { layer.close(index); //关闭弹层 table.reload('LAY-list-manage'); //数据刷新 } else { layer.msg(data); } } }); }); submit.trigger('click'); }, success: function (layero, index) { } }); } }); //监听搜索 form.on('submit(LAY-list-front-search)', function (data) { var field = data.field; //执行重载 table.reload('LAY-list-manage', { where: field }); }); form.on('submit(LAY-list-front-searchall)', function (data) { table.reload('LAY-list-manage', { where: null }); }); //事件 var active = { batchdel: function () { var checkStatus = table.checkStatus('LAY-list-manage'), data = checkStatus.data; //得到选中的数据 if (data.length < 1) { parent.layer.msg("请选择要删除的项"); } else { var ids = ""; $.each(data, function (index, value) { ids += data[index].Id + ","; }); ids = ids.substring(0, ids.length - 1); var index = layer.confirm('确定要删除吗?删除后不能恢复!', function (index) { $.ajax({ type: "POST", url: "/Admin/StoreHouse/Delete?r=" + Math.random(1), data: "Id=" + ids, dataType: "text", success: function (data) { layer.close(index); if (data == "success") { table.reload('LAY-list-manage'); } else { layer.msg(data); } } }); }); } }, add: function () { var perContent = layer.open({ type: 2, title: '仓库-添加', content: 'Add', maxmin: true, area: ['950px', '650px'], btn: ['确定', '取消'], yes: function (index, layero) { var iframeWindow = window['layui-layer-iframe' + index], submitID = 'LAY-list-front-submit', submit = layero.find('iframe').contents().find('#' + submitID); setTimeout(function () { layero.find('iframe').contents().find('.layui-tab-item').each(function (i) { var errObj = $(this).find('.layui-form-danger'); if (errObj.length > 0) { iframeWindow.element.tabChange('mytabbar', String(i + 1)); submit.click(); } }); }, 300); //监听提交 iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) { var field = data.field; //获取提交的字段 var userdata = ""; for (var prop in field) { userdata += prop + "=" + encodeURIComponent(field[prop]) + "&"; } //提交 Ajax 成功后,静态更新表格中的数据 //$.ajax({}); $.ajax({ type: "POST", url: "/Admin/StoreHouse/Add?r=" + Math.random(1), data: userdata, dataType: "text", success: function (data) { if (data == "success") { layer.close(index); //关闭弹层 table.reload('LAY-list-manage'); //数据刷新 } else { layer.msg(data); } } }); }); submit.trigger('click'); } }); }, ImportMachine: function () { var perContent = layer.open({ type: 2, title: '机具入库', content: 'Import?ExcelKind=1', maxmin: true, area: ['650px', '350px'], btn: ['确定', '取消'], yes: function (index, layero) { var iframeWindow = window['layui-layer-iframe' + index], submitID = 'LAY-list-front-submit', submit = layero.find('iframe').contents().find('#' + submitID); //监听提交 iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) { var field = data.field; //获取提交的字段 var userdata = ""; for (var prop in field) { userdata += prop + "=" + encodeURIComponent(field[prop]) + "&"; } //提交 Ajax 成功后,静态更新表格中的数据 //$.ajax({}); var loadindex = layer.load(1, { shade: [0.5, '#000'] }); $.ajax({ type: "POST", url: "/Admin/StoreHouse/ImportPost?r=" + Math.random(1), data: userdata, dataType: "text", success: function (data) { if (data.indexOf("success") == 0) { var datalist = data.split('|'); var key = datalist[1]; CheckImport(table, key, loadindex, index); } else { layer.msg(data); } } }); }); submit.trigger('click'); } }); }, ImportChange: function () { var perContent = layer.open({ type: 2, title: '仓库调拨', content: 'Import?ExcelKind=2', maxmin: true, area: ['650px', '350px'], btn: ['确定', '取消'], yes: function (index, layero) { var iframeWindow = window['layui-layer-iframe' + index], submitID = 'LAY-list-front-submit', submit = layero.find('iframe').contents().find('#' + submitID); //监听提交 iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) { var field = data.field; //获取提交的字段 var userdata = ""; for (var prop in field) { userdata += prop + "=" + encodeURIComponent(field[prop]) + "&"; } //提交 Ajax 成功后,静态更新表格中的数据 //$.ajax({}); var loadindex = layer.load(1, { shade: [0.5, '#000'] }); $.ajax({ type: "POST", url: "/Admin/StoreHouse/ImportPost?r=" + Math.random(1), data: userdata, dataType: "text", success: function (data) { if (data.indexOf("success") == 0) { var datalist = data.split('|'); var key = datalist[1]; CheckImport(table, key, loadindex, index); } else { layer.msg(data); } } }); }); submit.trigger('click'); } }); }, ImportSend: function () { var perContent = layer.open({ type: 2, title: '仓库发货至创客', content: 'Import?ExcelKind=3', maxmin: true, area: ['650px', '350px'], btn: ['确定', '取消'], yes: function (index, layero) { var iframeWindow = window['layui-layer-iframe' + index], submitID = 'LAY-list-front-submit', submit = layero.find('iframe').contents().find('#' + submitID); //监听提交 iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) { var field = data.field; //获取提交的字段 var userdata = ""; for (var prop in field) { userdata += prop + "=" + encodeURIComponent(field[prop]) + "&"; } //提交 Ajax 成功后,静态更新表格中的数据 //$.ajax({}); var loadindex = layer.load(1, { shade: [0.5, '#000'] }); $.ajax({ type: "POST", url: "/Admin/StoreHouse/ImportPost?r=" + Math.random(1), data: userdata, dataType: "text", success: function (data) { if (data.indexOf("success") == 0) { var datalist = data.split('|'); var key = datalist[1]; CheckImport(table, key, loadindex, index); } else { layer.msg(data); } } }); }); submit.trigger('click'); } }); }, ExportExcel: function () { var userdata = ''; $(".layuiadmin-card-header-auto input").each(function (i) { userdata += $(this).attr('name') + '=' + encodeURIComponent($(this).val()) + '&'; }); $(".layuiadmin-card-header-auto select").each(function (i) { userdata += $(this).attr('name') + '=' + encodeURIComponent($(this).val()) + '&'; }); $.ajax({ type: "GET", url: "/Admin/StoreHouse/ExportExcel?r=" + Math.random(1), data: userdata, dataType: "json", success: function (data) { data.Obj.unshift(data.Fields); excel.exportExcel(data.Obj, data.Info, 'xlsx'); } }); }, Open: function () { var checkStatus = table.checkStatus('LAY-list-manage'), data = checkStatus.data; //得到选中的数据 if (data.length < 1) { parent.layer.msg("请选择要开启的项"); } else { var ids = ""; $.each(data, function (index, value) { ids += data[index].Id + ","; }); ids = ids.substring(0, ids.length - 1); var index = layer.confirm('确定要开启吗?', function (index) { $.ajax({ type: "POST", url: "/Admin/StoreHouse/Open?r=" + Math.random(1), data: "Id=" + ids, dataType: "text", success: function (data) { layer.close(index); if (data == "success") { table.reload('LAY-list-manage'); } else { layer.msg(data); } } }); }); } }, Close: function () { var checkStatus = table.checkStatus('LAY-list-manage'), data = checkStatus.data; //得到选中的数据 if (data.length < 1) { parent.layer.msg("请选择要关闭的项"); } else { var ids = ""; $.each(data, function (index, value) { ids += data[index].Id + ","; }); ids = ids.substring(0, ids.length - 1); var index = layer.confirm('确定要关闭吗?', function (index) { $.ajax({ type: "POST", url: "/Admin/StoreHouse/Close?r=" + Math.random(1), data: "Id=" + ids, dataType: "text", success: function (data) { layer.close(index); if (data == "success") { table.reload('LAY-list-manage'); } else { layer.msg(data); } } }); }); } }, SycnData: function () { var index = layer.confirm('确定要同步所有仓库的库存数据吗?', function (index) { layer.close(index); var loadindex = layer.load(1, { shade: [0.5, '#000'] }); $.ajax({ type: "POST", url: "/Admin/StoreHouse/SycnData?r=" + Math.random(1), data: "Id=0", dataType: "text", success: function (data) { layer.close(loadindex); if (data == "success") { layer.msg('同步成功'); table.reload('LAY-list-manage'); } else { layer.msg(data); } } }); }); }, }; $('.layui-btn').on('click', function () { var type = $(this).data('type'); active[type] ? active[type].call(this) : ''; }); });