123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201 |
- layui.use(['layer', 'form', 'ztree', 'laydate', 'admin', 'ax', 'table', 'treetable'], function () {
- var layer = layui.layer;
- var form = layui.form;
- var $ZTree = layui.ztree;
- var $ax = layui.ax;
- var laydate = layui.laydate;
- var admin = layui.admin;
- var table = layui.table;
- var treetable = layui.treetable;
- /**
- * 系统管理--菜单管理
- */
- var Menu = {
- tableId: "menuTable", //表格id
- condition: {
- menuId: "",
- menuName: "",
- level: ""
- }
- };
- /**
- * 初始化表格的列
- */
- Menu.initColumn = function () {
- return [[
- {type: 'numbers'},
- {field: 'menuId', hide: true, sort: true, title: 'id'},
- {field: 'name', sort: true, title: '菜单名称'},
- {field: 'code', sort: true, title: '菜单编号'},
- {field: 'pcode', sort: true, title: '菜单父编号'},
- {field: 'url', sort: true, title: '请求地址'},
- {field: 'sort', sort: true, title: '排序'},
- {field: 'levels', sort: true, title: '层级'},
- {field: 'isMenuName', sort: true, title: '是否是菜单'},
- {field: 'statusName', sort: true, title: '状态'},
- {align: 'center', toolbar: '#tableBar', title: '操作', minWidth: 200}
- ]];
- };
- /**
- * 点击菜单树时
- */
- Menu.onClickMenu = function (e, treeId, treeNode) {
- Menu.condition.menuId = treeNode.id;
- Menu.search();
- };
- /**
- * 点击查询按钮
- */
- Menu.search = function () {
- var queryData = {};
- queryData['menuName'] = $("#menuName").val();
- queryData['level'] = $("#level").val();
- Menu.initTable(Menu.tableId, queryData);
- };
- /**
- * 弹出添加菜单对话框
- */
- Menu.openAddMenu = function () {
- admin.putTempData('formOk', false);
- top.layui.admin.open({
- type: 2,
- title: '添加菜单',
- content: Feng.ctxPath + '/menu/menu_add',
- end: function () {
- admin.getTempData('formOk') && Menu.initTable(Menu.tableId);
- }
- });
- };
- /**
- * 导出excel按钮
- */
- Menu.exportExcel = function () {
- var checkRows = table.checkStatus(Menu.tableId);
- if (checkRows.data.length === 0) {
- Feng.error("请选择要导出的数据");
- } else {
- table.exportFile(tableResult.config.id, checkRows.data, 'xls');
- }
- };
- /**
- * 点击编辑菜单按钮时
- *
- * @param data 点击按钮时候的行数据
- */
- Menu.onEditMenu = function (data) {
- admin.putTempData('formOk', false);
- top.layui.admin.open({
- type: 2,
- title: '编辑菜单',
- content: Feng.ctxPath + '/menu/menu_edit?menuId=' + data.menuId,
- end: function () {
- admin.getTempData('formOk') && Menu.initTable(Menu.tableId);
- }
- });
- };
- /**
- * 点击删除菜单按钮
- *
- * @param data 点击按钮时候的行数据
- */
- Menu.onDeleteMenu = function (data) {
- var operation = function () {
- var ajax = new $ax(Feng.ctxPath + "/menu/remove", function () {
- Feng.success("删除成功!");
- Menu.condition.menuId = "";
- Menu.initTable(Menu.tableId);
- }, function (data) {
- Feng.error("删除失败!" + data.responseJSON.message + "!");
- });
- ajax.set("menuId", data.menuId);
- ajax.start();
- };
- Feng.confirm("是否删除菜单" + data.name + "?", operation);
- };
- /**
- * 初始化表格
- */
- Menu.initTable = function (menuId, data) {
- return treetable.render({
- elem: '#' + menuId,
- url: Feng.ctxPath + '/menu/listTree',
- where: data,
- page: false,
- height: "full-158",
- cellMinWidth: 100,
- cols: Menu.initColumn(),
- treeColIndex: 2,
- treeSpid: "0",
- treeIdName: 'code',
- treePidName: 'pcode',
- treeDefaultClose: false,
- treeLinkage: true
- });
- };
- // 渲染表格
- var tableResult = Menu.initTable(Menu.tableId);
- $('#expandAll').click(function () {
- treetable.expandAll('#' + Menu.tableId);
- });
- $('#foldAll').click(function () {
- treetable.foldAll('#' + Menu.tableId);
- });
- //渲染时间选择框
- laydate.render({
- elem: '#timeLimit',
- range: true,
- max: Feng.currentDate()
- });
- //初始化左侧部门树
- var ztree = new $ZTree("menuTree", "/menu/selectMenuTreeList");
- ztree.bindOnClick(Menu.onClickMenu);
- ztree.init();
- // 搜索按钮点击事件
- $('#btnSearch').click(function () {
- Menu.search();
- });
- // 添加按钮点击事件
- $('#btnAdd').click(function () {
- Menu.openAddMenu();
- });
- // 工具条点击事件
- table.on('tool(' + Menu.tableId + ')', function (obj) {
- var data = obj.data;
- var layEvent = obj.event;
- if (layEvent === 'edit') {
- Menu.onEditMenu(data);
- } else if (layEvent === 'delete') {
- Menu.onDeleteMenu(data);
- } else if (layEvent === 'roleAssign') {
- Menu.roleAssign(data);
- } else if (layEvent === 'reset') {
- Menu.resetPassword(data);
- }
- });
- // 修改user状态
- form.on('switch(status)', function (obj) {
- var userId = obj.elem.value;
- var checked = obj.elem.checked ? true : false;
- Menu.changeUserStatus(userId, checked);
- });
- });
|