define(['utils', 'api', 'constant', 'common', 'jquery_app'], function(utils, api, constant, common, jquery_app) { function init() { bindEvents(); // 绑定事件 getUserMenu(); // 获取用户权限下菜单列表 生成侧边栏菜单 } // 判断是否要打开新的标签页 function openNewTab() { var params = utils.getUrlParams(window.location.href); // 获取页面 跳转路径,打开一个新的tab页 if (params.redirect_url !== undefined) { open_addTab(params.redirect_url); } } function bindEvents() { $('#logout').on('click', function(e) { logout(); }); $('#ownerHtml').on('click', 'a', function(e) { var ownerId = $(this).attr("id"); changeOwner(ownerId); }); // 点击之后,右键菜单隐藏 $(document).click(function() { $("#contextmenu").hide(); }); } /** * 获取用户权限下菜单列表 */ function getUserMenu() { function requestFunction(ret) { if (ret.code === 200) { var returnData = buildMenuHtml(ret.obj); $('#asideMenu').html(returnData.menusHtml); jquery_app.init(); var defaultLoadMenu = returnData.defaultLoadMenu; // 默认加载菜单 // var token = localStorage.getItem('token'); // 登录时存的token var url = defaultLoadMenu.menuUrl; open_addTab(url, defaultLoadMenu.menuName, 'menu-' + defaultLoadMenu.id, false); openNewTab(); // 判断是否有新的标签页需要打开 $('#headBar').on('click', function() { if ($('#iframe_body').find('iframe').length) { $('#iframe_body').show(); $('#content_body').hide(); } else { var url = constant.ONLY.STYSTEM_URL + 'cn/visualise/visualise.html' + '?token=' + token; var html = ''; $('#iframe_body').append(html); $('#iframe_body').show(); $('#content_body').hide(); } }); } else { layer.msg('code:' + ret.code + ' 信息: ' + ret.msg, { icon: 2 }); } } var option = { type: 'get', url: api.authority.queryMenuByUser, data: { //"level": "1,2,3", "platform": 0 }, success: requestFunction }; utils.ajax(option); // 发送请求 } /** * 构建菜单html,并获取登录进来时默认要打开的第一个菜单 * @author [刘耀填] * @date 2018-09-30 */ function buildMenuHtml(menusData) { var defaultLoadMenu = null; // 默认要打开的菜单(第一个菜单下menuUrl不为空的菜单(即页面)) var defaultLoadMenuParentId = ''; // 登录进来默认打开的菜单的父菜单id var menusHtml = ''; var level1Menus = menusData.first, level2Menus = menusData.second, level3Menus = menusData.third; var pageAuthorityCodes = []; // 页面权限编码 var pageMenus = []; for (var i = 0; i < level1Menus.length; i++) { // 一级 var level1 = level1Menus[i]; // ------判断默认加载菜单(1)------- if (i === 0) { if (level1.menuUrl !== '') { // 是模块 // 只有一级菜单 defaultLoadMenu = level1; } else { // 是页面 defaultLoadMenuParentId = level1.id; } } // ------判断默认加载菜单------- if (level1.menuUrl !== '') { // 只有一级 (是页面) pageAuthorityCodes.push(level1.permission); // (页面权限1) var name = (/^fa/).test(level1.menuIcon) ? (level1.menuIcon + ' fa') : level1.menuIcon if (i === 0) { menusHtml += '