var ResManager = { UserGrid: undefined, Server: function () { var config = (function () { var URL_GetList = "/SystemSet/ResAjax/GetResMenuList"; var URL_Delete = "/SystemSet/ResAjax/DeleteResMenu"; var URL_Add = "/SystemSet/ResAjax/AddResMenu"; var URL_ToExcel = "/SystemSet/ResAjax/ToExcel"; return { URL_GetList: URL_GetList, URL_Delete: URL_Delete, URL_Add: URL_Add, URL_ToExcel: URL_ToExcel }; })(); //数据操作服务 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({ 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 ToExcel = function (data, callback) { $.gitAjax({ url: config.URL_ToExcel, data: data, type: "post", dataType: "json", success: function (result) { if (callback != undefined && typeof callback == "function") { callback(result); } } }); } return { GetList: GetList, Delete: Delete, Add: Add, ToExcel: ToExcel } })($, config); return dataServer; }, Dialog: function (ResNum, Command) { var submit = function (v, h, f) { if (v) { var ResNum = h.find('input[name="ResNum"]').val(); var ResName = h.find('input[name="ResName"]').val(); var ParentName = h.find('select[name="ParentName"]').val(); var Url = h.find('input[name="Url"]').val(); var ResType = h.find('input[name="ResType"]').val(); var CssName = h.find('input[name="CssName"]').val(); if (git.IsEmpty(ResNum)) { $.jBox.tip("请输入菜单编号", "warn"); return false; } else { if (ResNum.indexOf("_") < 0) { ResNum += "_"; } } if (git.IsEmpty(ResName)) { $.jBox.tip("请输入菜单名称", "warn"); return false; } var param = {}; param["Operation"] = Command; param["ResNum"] = ResNum; param["ResName"] = ResName; param["ParentName"] = ParentName; param["Url"] = Url; param["ResType"] = ResType; param["CssName"] = CssName; var Server = ResManager.Server(); Server.Add(param, function (result) { if (result.Code == 1) { var pageSize = $("#mypager").pager("GetPageSize"); var pageIndex = $("#mypager").pager("GetCurrent"); if (Command == "Add") { ResManager.PageClick(pageIndex, pageSize); } else if (Command == "Edit") { ResManager.Refresh(); } } else { $.jBox.tip(result.Message, "warn"); } }); } } //窗体加载完成回调事件 var loaded = function (h) { h.find('input[name="ResNum"]').attr("disabled", true); } if (Command == "Add") { $.jBox.open("get:/SystemSet/ResMenu/AddResMenu", "新增菜单", 650, 250, { buttons: { "确定": true, "关闭": false }, submit: submit }); } else if (Command == "Edit") { $.jBox.open("get:/SystemSet/ResMenu/AddResMenu?ResNum=" + ResNum, "编辑菜单", 650, 250, { buttons: { "确定": true, "关闭": false }, submit: submit, loaded: loaded }); } }, PageClick: function (PageIndex, PageSize) { $.jBox.tip("正在努力加载数据...", "loading"); var Server = ResManager.Server(); var search = ResManager.GetSearch(); search["PageIndex"] = PageIndex; search["PageSize"] = PageSize; console.log(JSON.stringify(search)); Server.GetList(search, function (result) { ResManager.SetTable(result); $.jBox.closeTip(); }); }, Refresh: function () { var PageSize = $("#mypager").pager("GetPageSize"); var PageIndex = $("#mypager").pager("GetCurrent"); $.jBox.tip("正在努力加载数据...", "loading"); var Server = ResManager.Server(); var search = ResManager.GetSearch(); search["PageIndex"] = PageIndex; search["PageSize"] = PageSize; Server.GetList(search, function (result) { ResManager.SetTable(result); $.jBox.closeTip(); }); }, SetTable: function (result) { var ht = masterUI.MMGridHeight(); var cols = [ { title: '菜单编号', name: 'ResNum', width: 100, align: 'left', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '菜单名称', name: 'ResName', width: 100, align: 'left', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '父级菜单', name: 'ParentName', width: 100, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '类型', name: 'ResType', width: 90, align: 'left', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '样式', name: 'CssName', width: 100, align: 'left', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '路径', name: 'Url', width: 160, align: 'left', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '创建人', name: 'CreatUser', width: 70, align: 'center', hidden: true, lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '创建时间', name: 'CreatTime', width: 160, align: 'center', hidden: true, lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return git.JsonToDateTimeto(data); } }, { title: '更新人', name: 'UpdateUser', width: 70, align: 'center', hidden: true, lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '更新时间', name: 'UpdateTime', width: 160, align: 'center', hidden: true, lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return git.JsonToDateTimeto(data); } }, { title: '操作', name: 'ID', width: 80, align: 'left', lockWidth: false, renderer: function (data, item, rowIndex) { var html = ""; html += '编辑  '; //html += '打印  '; //html += '删除  '; return html; } }, ]; if (this.UserGrid == undefined) { this.UserGrid = $("#tabList").mmGrid({ cols: cols, items: result.Result.List, checkCol: true, nowrap: true, fullWidthRows: true, remoteSort: true, multiSelect: true, height: ht }); //绑定事件 ResManager.BindEvent(); } else { this.UserGrid.load(result.Result.List); } var pageInfo = result.PageInfo; if (pageInfo != undefined) { $("#mypager").pager({ pagenumber: pageInfo.PageIndex, recordCount: pageInfo.RowCount, pageSize: pageInfo.PageSize, buttonClickCallback: ResManager.PageClick }); } }, BindEvent: function () { this.UserGrid.off("loadSuccess").on('loadSuccess', function (e, data) { LoadBtn.SetBtn(); }); //编辑删除事件都绑定 this.UserGrid.off("cellSelected").on("cellSelected", function (e, item, rowIndex, colIndex) { if ($(e.target).is("a.edit")) { var ResNum = item.ResNum; ResManager.Dialog(ResNum, "Edit"); } else if ($(e.target).is("a.delete")) { var ResNum = item.ResNum; var submit = function (v, h, f) { if (v == "ok") { var list = []; list.push(ResNum); var param = {}; param["list"] = JSON.stringify(list); var Server = ResManager.Server(); Server.Delete(param, function (result) { $.jBox.tip(result.Message, "success"); var pageSize = $("#mypager").pager("GetPageSize"); ResManager.PageClick(1, pageSize); }); } } $.jBox.confirm("确定要删除该菜单吗?", "提示", submit); } else if ($(e.target).is("a.pass")) { var ResNum = item.ResNum; ResManager.AdminPass(ResNum); } }); }, GetSelect: function () { var list = []; if (this.UserGrid != undefined) { var rows = this.UserGrid.selectedRows(); if (rows != undefined && rows.length > 0) { for (var i = 0; i < rows.length; i++) { list.push(rows[i].ResNum); } } } return list; }, GetSearch: function () { var searchBar = $("div[data-condition='search']"); var ResNum = searchBar.find("input[name='ResNum']").val(); var ResName = searchBar.find("input[name='ResName']").val(); var ParentNum = searchBar.find("select[name='ParentName']").val(); var search = {}; search["ResNum"] = ResNum; search["ResName"] = ResName; search["ParentNum"] = ParentNum; return search; }, ToolBar: function () { //工具栏按钮点击事件 $("div.toolbar").find("a.btn").click(function () { var command = $(this).attr("data-command"); if (command == "Add") { ResManager.Dialog(undefined, command); } else if (command == "Edit") { var list = ResManager.GetSelect(); if (list.length == 0) { $.jBox.tip("请选择要编辑的项", "warn"); return false; } var UserNum = list[0]; ResManager.Dialog(UserNum, command); } else if (command == "Delete") { var submit = function (v, h, f) { if (v == "ok") { var list = ResManager.GetSelect(); if (list.length == 0) { $.jBox.tip("请选择要删除的项", "warn"); return false; } var param = {}; param["list"] = JSON.stringify(list); var Server = ResManager.Server(); Server.Delete(param, function (result) { $.jBox.tip(result.Message, "success"); var pageSize = $("#mypager").pager("GetPageSize"); ResManager.PageClick(1, pageSize); }); } } $.jBox.confirm("确定要删除该菜单吗?", "提示", submit); } else if (command == "Excel") { var list = ResManager.GetSelect(); if (list.length == 0) { $.jBox.tip("请选择要导出的项", "warn"); return false; } var param = {}; param["list"] = JSON.stringify(list); var Server = ResManager.Server(); Server.ToExcel(param, function (result) { if (result.Code == 1000) { var path = unescape(result.Message); window.location.href = path; } else { $.jBox.info(result.Message, "提示"); } }); } else if (command == "Refresh") { ResManager.Refresh(); } }); //搜索 var searchBar = $("div[data-condition='search']"); searchBar.find("a[data-command='search']").click(function () { ResManager.PageClick(1, 50); }); //监听回车事件,用于扫描 $("input[name='ResNum']").keydown(function (event) { if (event.keyCode == 13) { var value = $(this).val(); if (!git.IsEmpty(value)) { ResManager.PageClick(1, 50); setTimeout(function () { $("input[name='ResNum']").val(""); $("input[name='ResNum']").focus(); }, 300); } } }); $("input[name='ResNum']").focus(); //加载默认数据 ResManager.PageClick(1, 50); } };