var StorageManager = { StorageGrid: undefined, Server: function () { var config = (function () { var URL_GetList = "/StorageAjax/GetStorageList"; var URL_Add = "/StorageAjax/AddStorage"; var URL_Delete = "/StorageAjax/DelStorage"; var URL_Pass = "/StorageAjax/Createlocation"; // 生成库位 var URL_Print = "/StorageAjax/PrintBarCode"; // 打印条形码 return { URL_GetList: URL_GetList, URL_Add: URL_Add, URL_Delete: URL_Delete, URL_Pass: URL_Pass, URL_Print: URL_Print, }; })(); //数据操作服务 var dataServer = (function ($, config) { //查询分页列表 var GetList = function (data, callback) { $.gitAjax({ url: config.URL_GetList, data: { ajaxdata: JSON.stringify(data) }, type: "post", dataType: "json", success: function (result) { if (callback != undefined && typeof callback == "function") { callback(result); } } }); } var Add = function (data, callback) { $.gitAjax({ url: config.URL_Add, data: { ajaxdata: JSON.stringify(data) }, type: "post", dataType: "json", success: function (result) { if (callback != undefined && typeof callback == "function") { callback(result); } } }); } // 创建库位 var Create = function (data, callback) { $.gitAjax({ url: config.URL_Pass, data: data, type: "post", dataType: "json", success: function (result) { if (callback != undefined && typeof callback == "function") { callback(result); } } }); } // 打印条形码 var PrintBarCode = function (data, callback) { $.gitAjax({ url: config.URL_Print, data: data, type: "post", dataType: "json", success: function (result) { if (callback != undefined && typeof callback == "function") { callback(result); } } }); } var Delete = function (data, callback) { $.gitAjax({ url: config.URL_Delete, data: data, type: "post", dataType: "json", success: function (result) { if (callback != undefined && typeof callback == "function") { callback(result); } } }); } return { GetList: GetList, Add: Add, Delete: Delete, Create: Create, PrintBarCode: PrintBarCode, } })($, config); return dataServer; }, Dialog: function (StorageNo, Command) { var submit = function (v, h, f) { if (v) { var regPos = /^[1-9]\d*$/; // 正则 整数 var regPosStr = /^[A-Za-z]+$/; // 正则 字母 var StorageNo = h.find('input[name="StorageNo"]').val(); var StorageName = h.find('input[name="StorageName"]').val(); var Demo = h.find('input[name="Demo"]').val(); var Pai = h.find('input[name="Pai"]').val(); var Lie = h.find('input[name="Lie"]').val(); var Ceng = h.find('input[name="Ceng"]').val(); if (git.IsEmpty(StorageNo)) { $.jBox.tip("请输入两位库区的编码", "warn"); return false; } else if (StorageNo.length != 2) { $.jBox.tip("请输入两位库区的编码", "warn"); return false; } if (git.IsEmpty(StorageName)) { $.jBox.tip("请输入库区名称", "warn"); return false; } if (git.IsEmpty(Pai)) { $.jBox.tip("请输入总排数", "warn"); return false; } if (git.IsEmpty(Lie)) { $.jBox.tip("请输入总列数", "warn"); return false; } if (git.IsEmpty(Ceng)) { $.jBox.tip("请输入总层数", "warn"); return false; } if (!regPosStr.test(StorageNo)) { $.jBox.tip("库区编码:请输入字母", "warn"); return false; } if (!regPos.test(Pai)) { $.jBox.tip("总排数 :请输入数字", "warn"); return false; } if (!regPos.test(Lie)) { $.jBox.tip("总列数:请输入数字", "warn"); return false; } if (!regPos.test(Ceng)) { $.jBox.tip("总层数:请输入数字", "warn"); return false; } var param = {}; param["Operation"] = Command; param["StorageNo"] = StorageNo.toUpperCase(); // 将小写字母转换为大写 param["StorageName"] = StorageName; param["Demo"] = Demo; param["Pai"] = Pai; param["Ceng"] = Ceng; param["Lie"] = Lie; var Server = StorageManager.Server(); Server.Add(param, function (result) { if (result.Code == 1) { $.jBox.tip(result.Message, "info"); var pageSize = $("#mypager").pager("GetPageSize"); var pageIndex = $("#mypager").pager("GetCurrent"); StorageManager.PageClick(pageIndex, pageSize); } else { $.jBox.tip(result.Message, "warn"); } }); } } //窗体加载完成回调事件 var loaded = function (h) { h.find('input[name="StorageNo"]').attr("disabled", true); h.find('input[name="Pai"]').attr("disabled", true); // 库区编码 总排 列 行 禁止编辑 h.find('input[name="Lie"]').attr("disabled", true); h.find('input[name="Ceng"]').attr("disabled", true); } if (Command == "Add") { $.jBox.open("get:/BasicInfo/Storage/Add", "添加库区", 650, 250, { buttons: { "确定": true, "取消": false }, submit: submit }); } if (Command == "Edit") { $.jBox.open("get:/BasicInfo/Storage/Add?StorageNo=" + StorageNo, "编辑库区", 650, 250, { buttons: { "确定": true, "取消": false }, submit: submit, loaded: loaded }); } }, PageClick: function (PageIndex, PageSize) { $.jBox.tip("正在努力加载数据...", "loading"); var Server = StorageManager.Server(); var search = StorageManager.GetSearch(); search["PageIndex"] = PageIndex; search["PageSize"] = PageSize; console.log(JSON.stringify(search)); Server.GetList(search, function (result) { StorageManager.SetTable(result); $.jBox.closeTip(); }); }, Refresh: function () { var PageSize = $("#mypager").pager("GetPageSize"); var PageIndex = $("#mypager").pager("GetCurrent"); $.jBox.tip("正在努力加载数据...", "loading"); var Server = StorageManager.Server(); var search = StorageManager.GetSearch(); search["PageIndex"] = PageIndex; search["PageSize"] = PageSize; Server.GetList(search, function (result) { StorageManager.SetTable(result); $.jBox.closeTip(); }); }, SetTable: function (result) { var cols = [ { title: '库区编码', name: 'StorageNo', width: 110, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '库区名称', name: 'StorageName', width: 90, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '总排数', name: 'Pai', width: 60, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '总列数', name: 'Lie', width: 60, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '总层数', name: 'Ceng', width: 60, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '描述', name: 'Demo', width: 150, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '操作', name: 'ID', width: 180, align: 'left', lockWidth: false, renderer: function (data, item, rowIndex) { var html = ""; html += '打印  '; html += '生成库位  '; return html; } }, ]; if (this.StorageGrid == undefined) { var ht = masterUI.MMGridHeight(); this.StorageGrid = $("#tabList").mmGrid({ cols: cols, items: result.Result.List, checkCol: true, nowrap: true, remoteSort: true, multiSelect: true, height: ht }); //绑定事件 StorageManager.BindEvent(); } else { this.StorageGrid.load(result.Result.List); } var pageInfo = result.PageInfo; if (pageInfo != undefined) { $("#mypager").pager({ pagenumber: pageInfo.PageIndex, recordCount: pageInfo.RowCount, pageSize: pageInfo.PageSize, buttonClickCallback: StorageManager.PageClick }); } }, BindEvent: function () { this.StorageGrid.on('loadSuccess', function (e, data) { LoadBtn.SetBtn(); }); this.StorageGrid.off("cellSelected").on("cellSelected", function (e, item, rowIndex, colIndex) { // 编辑绑定生成库位事件 if ($(e.target).is("a.pass")) { var StorageNo = item.StorageNo; var StorageName = item.StorageName; var submit = function (v, h, f) { if (v == "ok") { var list = []; list.push(StorageNo); var param = {}; param["list"] = JSON.stringify(list); var Server = StorageManager.Server(); Server.Create(param, function (result) { // 此方法内的执行顺序是由下往上。 // 刷新页面 var pageSize = $("#mypager").pager("GetPageSize"); StorageManager.PageClick(1, pageSize); $.jBox.tip(result.Message, "warn"); // 库位生成成功! 提示 }); } } $.jBox.confirm("确认生成" + StorageName + "库区的库位?", "提示", submit); } // 打印条形码 else if ($(e.target).is("a.print")) { var StorageNo = item.StorageNo; var submit = function (v, h, f) { if (v == "ok") { var list = []; list.push(StorageNo); list.push(item.StorageName); var param = {}; param["list"] = JSON.stringify(list); var Server = StorageManager.Server(); Server.PrintBarCode(param, function (result) { // 此方法内的执行顺序是由下往上。 // 刷新页面 var pageSize = $("#mypager").pager("GetPageSize"); StorageManager.PageClick(1, pageSize); $.jBox.tip(result.Message, "warn"); // 条形码打印完毕! 提示 }); } } $.jBox.confirm("批量打印" + StorageName + "库区的库位条形码?", "提示", submit); } }); }, GetSelect: function () { var list = []; if (this.StorageGrid != undefined) { var rows = this.StorageGrid.selectedRows(); if (rows != undefined && rows.length > 0) { for (var i = 0; i < rows.length; i++) { list.push(rows[i].StorageNo); } } } return list; }, GetSearch: function () { var searchBar = $("div[data-condition='search']"); var StorageNo = searchBar.find("input[name='StorageNo']").val(); var StorageName = searchBar.find("input[name='StorageName']").val(); var search = {}; search["StorageNo"] = StorageNo; search["StorageName"] = StorageName; return search; }, ToolBar: function () { //工具栏按钮点击事件 $("div.toolbar").find("a.btn").click(function () { var command = $(this).attr("data-command"); if (command == "Add") { var list = StorageManager.Dialog("", "Add"); } else if (command == "Edit") { var list = StorageManager.GetSelect(); if (list.length == 0) { $.jBox.tip("请选择要编辑项", "warn"); return false; } var StorageNo = list[0]; StorageManager.Dialog(StorageNo, "Edit"); } else if (command == "Delete") { var submit = function (v, h, f) { if (v == "ok") { var list = StorageManager.GetSelect(); if (list.length == 0) { $.jBox.tip("请选择要删除的项", "warn"); return false; } var param = {}; param["list"] = JSON.stringify(list); var Server = StorageManager.Server(); Server.Delete(param, function (result) { $.jBox.tip(result.Message, "success"); var pageSize = $("#mypager").pager("GetPageSize"); StorageManager.PageClick(1, pageSize); }); } } $.jBox.confirm("确定要删除吗?", "提示", submit); } else if (command == "Refresh") { MatManager.Refresh(); } }); //搜索 var searchBar = $("div[data-condition='search']"); searchBar.find("a[data-command='search']").click(function () { StorageManager.PageClick(1, 10); }); //监听回车事件,用于扫描 $("input[name='StorageNo']").keydown(function (event) { if (event.keyCode == 13) { var value = $(this).val(); if (!git.IsEmpty(value)) { StorageManager.PageClick(1, 10); setTimeout(function () { $("input[name='StorageNo']").val(""); $("input[name='StorageNo']").focus(); }, 300); } } }); $("input[name='StorageNo']").focus(); //加载默认数据 StorageManager.PageClick(1, 10); }, };