define(function (require) { return function (context) { var $grid, $form, $comb, $s1, $s2; function queryGrid1() { var queryUrl = '/sys/menu/queryAll';// 自行替换此参数 $grid.jqGrid("clearGridData"); var queryForm = $form.formGet(); $grid.reload({ mtype: 'GET', url: api(queryUrl), queryParams: queryForm }); } function enterQueryGrid1(e) { if (e.keyCode === 13) { var tmp = $(this).val(); $form.formSet({queryProperties: tmp}); queryGrid1(); } } // 更新启用停用状态 function updateStatus() { var row = $grid.rowData(); if (!row) { $.yvan.msg('请先选择一行数据'); return; } var obj = {}; obj.name = row.menuName;// 自行替换此参数 obj.status = row.status; obj.isTree = 1;// 树为1,非树为0 obj = setStatusMsg(obj); //返回rtnStatus var msg = obj.msg; var status = obj.rtnStatus; /*|-----------------------自行替换start-----------------------*/ var apiUrl = '/sys/menu/updateStatus';// 自行替换此参数 var apiData = { menuId: row.menuId,// 自行替换此参数 status: status }; /*-----------------------自行替换end-----------------------|*/ $.yvan.confirm(msg, { yes: function (index) { $.yvan.ajax({ method: 'post', url: api(apiUrl), data: apiData, success: function (data) { $.yvan.msg(data.msg); $grid.reload(); } }); } }); } //获取平台列表 function getDataSysList() { var _datas = []; $.yvan.ajax({ url: api('/sys/system/query'), data: {status: 1}, method: 'post', async: false, success: function (data) { if (data.data != null && data.data != undefined) { for (var i = 0; i < data.data.length; i++) { _datas.push({ "id": data.data[i].sysId, "text": data.data[i].sysName }) } } } }); return _datas; } //获取一级菜单列表 function getDataMenuList() { var _datas = []; var sysId = null; if ($form) { sysId = $form.formGet().sysId; } $.yvan.ajax({ url: api('/sys/menu/queryAll'), data: {status: 1, treeLev: 1, sysId: sysId}, method: 'get', async: false, success: function (data) { if (data.data != null && data.data != undefined) { for (var i = 0; i < data.data.length; i++) { _datas.push({ "id": data.data[i].menuId, "text": data.data[i].menuName }) } } } }); return _datas; } //检索工具栏 var queryToolbarTitle = '菜单管理';// 自行替换此参数 var queryToolbar = { xtype: 'toolbar', title: queryToolbarTitle, items: [ { text: '查询', iconCls: 'fa fa-search', onClick: function () { queryGrid1(); } }, { text: '重置', iconCls: 'fa fa-refresh', onClick: function () { $form.formClear(); queryGrid1(); } }, { text: '关闭', iconCls: 'fa fa-times-circle', onClick: function () { App.closeMe(); } } ] }; //检索条件表单 var queryFormPrompt = '菜单名称/功能URL/备注';// 自行替换此参数 var queryForm = { onRender: function () { $form = $(this); }, xtype: 'form', items: [[ { xtype: 'textbox', label: '检索条件', name: 'queryProperties', prompt: queryFormPrompt, labelWidth: 'auto', onRender:function(){ $s1 = $(this) }, events: {keydown: enterQueryGrid1} }, { xtype: 'yvselect', label: '所属平台', name: 'sysId', labelWidth: 'auto', width: 260, data: getDataSysList(), onChange: function () { queryGrid1(); $comb.yvselect({'data': getDataMenuList()}); } }, { xtype: 'yvselect', label: '一级菜单', name: 'treeUp', labelWidth: 'auto', panelHeight: 300, width: 220, data: getDataMenuList(), onRender: function () { $comb = $(this); }, onChange: function () { queryGrid1(); } }, { xtype: 'yvselect', label: '启用状态', name: 'status', labelWidth: 'auto', width: 180, value: '', data: $.yvan.sysDict('status').combowithAll(), onChange: function () { queryGrid1(); } } ]] }; //编辑工具栏 var gridToolbarTitle = '菜单列表';// 自行替换此参数 var gridToolbar = { xtype: 'toolbar', title: gridToolbarTitle, items: [ { text: '新增', iconCls: 'fa fa-plus-circle', onClick: function () { $.yvan.showDialog(this, require('/app/sys/menu/dialogMenu.js')({ confirm: function () { $grid.reload(); }, isEdit: false, sysId: $form.formGet().sysId, }) ); } }, { text: '编辑', iconCls: 'fa fa-pencil-square-o', onClick: function () { var row = $grid.rowData(); if (!row) { $.yvan.msg('请先选择一行数据'); return; } $.yvan.showDialog(this, require('/app/sys/menu/dialogMenu.js')({ confirm: function () { $grid.reload(); }, isEdit: true, menuId: row.menuId, }) ); } }, { text: '菜单排序', iconCls: 'fa fa-pencil-square-o', onClick: function () { var row = $grid.rowData(); if (!row) { $.yvan.msg('请先选择一行数据'); return; } $.yvan.showDialog(this, require('/app/sys/menu/dialogMenuSort.js')({ confirm: function () { $grid.reload(); }, sysId: row.sysId, treeLev: row.treeLev, treeUp: row.treeUp, treeCode: row.treeCode, }) ); } }, { text: '启用/停用', iconCls: 'fa fa-circle-o-notch', onClick: function () { updateStatus(); } }, { text: '打印', iconCls: 'fa fa-circle-o-notch', onClick: function () { updateStatus(); } } ] } return { center: { border: false, items: { onRender: function () { $grid = $(this); }, xtype: 'grid', pagination: false, idField: "menuId", toolbar: { xtype: 'div', items: [ queryToolbar, queryForm, gridToolbar ] }, columns: [[ {title: '菜单ID', field: 'menuId', hidden: true}, {title: '平台ID', field: 'sysId', hidden: true}, { title: '图标', field: 'menuIcon', align: "center", formatter: function (v) { return ""; } }, {title: '菜单名称', field: 'menuName', hidden: true}, {title: '菜单名称', field: 'menuNameView', formatter: $.fn.fmatter.treeNameView},// 树结构需要fmatter {title: '菜单编码', field: 'menuCode'},//align:"center","left","right" {title: '菜单拼音', field: 'menuNamePy', hidden: true}, {title: '功能URL', field: 'menuUrl'}, {title: '所属平台', field: 'sysName', hidden: true}, {title: '备注', field: 'remark'}, {title: '上级', field: 'treeUp', hidden: true}, {title: '级别', field: 'treeLev', hidden: true}, {title: '树编码', field: 'treeCode', hidden: true}, {title: '排序', field: 'treeSort', hidden: true}, {title: '状态', field: 'status', hidden: true}, {title: '启用状态', field: 'statusView', align: "center", formatter: $.fn.fmatter.statusView}, {title: '新增时间', field: 'timeCreate', formatter: 'ts', align: "center"}, {title: '更新日期', field: 'timeUpdate', formatter: 'ts', align: "center"} ]] } } }; }; });