var MatManager = { MatGrid: undefined, Server: function () { var config = (function () { var URL_GetList = "/MatAjax/GetMatList"; var URL_Delete = "/MatAjax/DeleteMat"; var URL_Add = "/MatAjax/AddMat"; var URL_OutExcel = "/MatAjax/ToExcel"; var URL_InExcel = "/MatAjax/InExcel"; var URL_Audit = "/MatAjax/AuditMat"; return { URL_GetList: URL_GetList, URL_Delete: URL_Delete, URL_Add: URL_Add, URL_OutExcel: URL_OutExcel, URL_InExcel: URL_InExcel, URL_Audit: URL_Audit }; })(); //数据操作服务 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 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); } } }); } var Add = function (data, callback) { $.gitAjax({ async: false, 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 OutExcel = function (data, callback) { $.gitAjax({ url: config.URL_OutExcel, data: data, type: "post", dataType: "json", success: function (result) { if (callback != undefined && typeof callback == "function") { callback(result); } } }); } var InExcel = function (data, callback) { $.gitAjax({ url: config.URL_InExcel, data: data, type: "post", dataType: "json", success: function (result) { if (callback != undefined && typeof callback == "function") { callback(result); } } }); } var Audit = function (data, callback) { $.gitAjax({ url: config.URL_Audit, data: { ajaxdata: JSON.stringify(data) }, type: "post", dataType: "json", success: function (result) { if (callback != undefined && typeof callback == "function") { callback(result); } } }); } return { GetList: GetList, Delete: Delete, Add: Add, OutExcel: OutExcel, InExcel: InExcel, Audit: Audit } })($, config); return dataServer; }, Dialog: function (Guid, Command) { var submit = function (v, h, f) { if (v) { var MatNo = h.find('input[name="MatNo"]').val(); var MatName = h.find('input[name="MatName"]').val(); var Unit = h.find('select[name="Unit"]').val(); var PackFormat = h.find('input[name="PackFormat"]').val(); var Demo = h.find('input[name="Demo"]').val(); var Weight = h.find('input[name="Weight"]').val(); var Long = h.find('input[name="Long"]').val(); var Width = h.find('input[name="Width"]').val(); var Height = h.find('input[name="Height"]').val(); var Brand = h.find('select[name="Brand"]').val(); var MatType = h.find('select[name="MatType"]').val(); if (git.IsEmpty(MatNo)) { $.jBox.tip("请输入物料编码", "warn"); return false; } if (git.IsEmpty(MatName)) { $.jBox.tip("请输入物料名称", "warn"); return false; } //if (git.IsEmpty(PackFormat)) { // $.jBox.tip("请输入规格型号", "warn"); // return false; //} if (git.IsEmpty(Unit)) { $.jBox.tip("请选择计量单位", "warn"); return false; } //if (git.IsEmpty(Brand)) { // $.jBox.tip("请选择品牌", "warn"); // return false; //} if (git.IsEmpty(MatType)) { $.jBox.tip("请选择类别", "warn"); return false; } var regPos = /^[+-]?(0|([1-9]\d*))(\.\d+)?$/; // 正则 数字 var regex = /^[0]+/; Weight = Weight.replace(regex, ""); if (!regPos.test(Weight) && !git.IsEmpty(Weight)) { $.jBox.tip("重量为数字!", "warn"); return false; } Long = Long.replace(regex, ""); if (!regPos.test(Long) && !git.IsEmpty(Long)) { $.jBox.tip("长为数字!", "warn"); return false; } Width = Width.replace(regex, ""); if (!regPos.test(Width) && !git.IsEmpty(Width)) { $.jBox.tip("宽为数字!", "warn"); return false; } Height = Height.replace(regex, ""); if (!regPos.test(Height) && !git.IsEmpty(Height)) { $.jBox.tip("高为数字!", "warn"); return false; } var param = {}; param["Operation"] = Command; param["MatNo"] = MatNo; param["MatName"] = MatName; param["Unit"] = Unit; param["PackFormat"] = PackFormat; param["Demo"] = Demo; param["NWeight"] = Weight; param["Long"] = Long; param["Width"] = Width; param["Height"] = Height; param["MatTypeId"] = MatType; param["BrandId"] = Brand; param["Guid"] = Guid param["IsDel"] = 0; var bl = false; var Server = MatManager.Server(); Server.Add(param, function (result) { if (result.Code == 1) { bl = true; var pageSize = $("#mypager").pager("GetPageSize"); var pageIndex = $("#mypager").pager("GetCurrent"); if (Command == "Add") { MatManager.PageClick(1, pageSize); } else if (Command == "Edit") { MatManager.Refresh(); } } else { $.jBox.tip(result.Message, "warn"); } }); return bl; } } //窗体加载完成回调事件 var loaded = function (h) { h.find('input[name="MatNo"]').attr("disabled", true); } if (Command == "Add") { $.jBox.open("get:/BasicInfo/Mat/AddMat", "新增物料", 560, 340, { buttons: { "确定": true, "关闭": false }, submit: submit}); } else if (Command == "Edit") { $.jBox.open("get:/BasicInfo/Mat/AddMat?MatNo=" + Guid, "编辑物料", 560, 340, { buttons: { "确定": true, "关闭": false }, submit: submit, loaded: loaded }); } }, PageClick: function (PageIndex, PageSize) { $.jBox.tip("正在努力加载数据...", "loading"); var Server = MatManager.Server(); var search = MatManager.GetSearch(); search["PageIndex"] = PageIndex; search["PageSize"] = PageSize; console.log(JSON.stringify(search)); Server.GetList(search, function (result) { MatManager.SetTable(result); $.jBox.closeTip(); }); }, Refresh: function () { var PageSize = $("#mypager").pager("GetPageSize"); var PageIndex = $("#mypager").pager("GetCurrent"); $.jBox.tip("正在努力加载数据...", "loading"); var Server = MatManager.Server(); var search = MatManager.GetSearch(); search["PageIndex"] = PageIndex; search["PageSize"] = PageSize; Server.GetList(search, function (result) { MatManager.SetTable(result); $.jBox.closeTip(); }); }, SetTable: function (result) { var ht = masterUI.MMGridHeight(); var cols = [ { title: '物料编码', name: 'MatNo', width: 100, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '物料名称', name: 'MatName', width: 260, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '规格型号', name: 'PackFormat', width: 100, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '单位', name: 'Unit', width: 80, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '品牌', name: 'BrandName', width: 80, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '类别', name: 'MatType', width: 80, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '状态', name: 'IsDel', width: 80, align: 'center', lockWidth: false, hidden: true, sortable: true, renderer: function (data, item, rowIndex) { if (data == 0) { return "在用"; } else { return "删除"; } } }, { title: '重量', name: 'Nweight', width: 80, align: 'center', lockWidth: false, hidden: true, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '长', name: 'Long', width: 60, align: 'center', lockWidth: false, hidden: true, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '宽', name: 'Width', width: 60, align: 'center', lockWidth: false, hidden: true, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '高', name: 'Height', width: 60, align: 'center', lockWidth: false, hidden: true, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '创建人', name: 'CreateUser', width: 80, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '创建时间', name: 'CreateTime', width: 160, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return git.JsonToDateTimeto(data); //return data; } }, { title: '更新人', name: 'UpdateUser', width: 80, align: 'center', lockWidth: false, hidden: true, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '更新时间', name: 'UpdateTime', width: 160, align: 'center', lockWidth: false, hidden: true, sortable: true, renderer: function (data, item, rowIndex) { return git.JsonToDateTimeto(data); //return data; } }, { title: '备注', name: 'Demo', width: 150, align: 'center', lockWidth: false, sortable: false, renderer: function (data, item, rowIndex) { return data; } }, { title: '操作', name: 'ID', width: 60, align: 'left', lockWidth: false, renderer: function (data, item, rowIndex) { if (item.IsDel == 0) { var html = ""; html += '编辑 '; return html; } } }, ]; if (this.MatGrid == undefined) { this.MatGrid = $("#tabList").mmGrid({ cols: cols, items: result.Result.List, checkCol: true, nowrap: true, fullWidthRows: true, remoteSort: true, multiSelect: true, height: ht }); //绑定事件 MatManager.BindEvent(); } else { this.MatGrid.load(result.Result.List); } var pageInfo = result.PageInfo; if (pageInfo != undefined) { $("#mypager").pager({ pagenumber: pageInfo.PageIndex, recordCount: pageInfo.RowCount, pageSize: pageInfo.PageSize, buttonClickCallback: MatManager.PageClick }); } }, BindEvent: function () { this.MatGrid.on('loadSuccess', function (e, data) { LoadBtn.SetBtn(); }); //编辑删除事件都绑定 this.MatGrid.off("cellSelected").on("cellSelected", function (e, item, rowIndex, colIndex) { if ($(e.target).is("a.edit")) { var Guid = item.Guid; MatManager.Dialog(Guid, "Edit"); } else if ($(e.target).is("a.delete")) { var Guid = item.Guid; var submit = function (v, h, f) { if (v == "ok") { var list = []; list.push(Guid); var param = {}; param["list"] = JSON.stringify(list); var Server = MatManager.Server(); Server.Delete(param, function (result) { $.jBox.tip(result.Message, "success"); var pageSize = $("#mypager").pager("GetPageSize"); MatManager.PageClick(1, pageSize); }); } } $.jBox.confirm("确定要删除该物料吗?", "提示", submit); } else if ($(e.target).is("a.audit")) { var MatNo = item.MatNo; var AuditFlag = item.AuditFlag; if (AuditFlag == "已审核") { $.jBox.tip("该项目已审核,无需再审核", "warn"); return false; } var submit = function (v, h, f) { if (v) { var list = []; list.push(MatNo); var param = {}; param["list"] = JSON.stringify(list); if (f.AuditMat == "Yes") param["Operation"] = "AD02"; else if (f.AuditMat == "No") param["Operation"] = "AD03"; var Server = MatManager.Server(); Server.Audit(param, function (result) { $.jBox.tip(result.Message, "success"); var pageSize = $("#mypager").pager("GetPageSize"); MatManager.PageClick(1, pageSize); }); } }; var html = "