123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339 |
- /*
- * 描 述:顶部菜单皮肤
- */
- var bootstrap = function ($, learun) {
- "use strict";
- // 菜单操作
- var meuns = {
- init: function () {
- this.newload();
- //this.load();
- this.bind();
- },
- newload: function () {
- var modulesTree = learun.clientdata.get(['modulesTree']);
- var AuthorizeUser = learun.clientdata.get(['useracl']);
-
- // 第一级菜单
- var parentId = 'Web';
- var modules = modulesTree[parentId] || [];
- var $firstmenus = $('<ul class="lr-first-menu-list"></ul>');
- var loginInfo = learun.clientdata.get(['userinfo']);
- if (!(JSON.stringify(AuthorizeUser) == "{}")) {
- sessionStorage.setItem('CurrentWarehouse', AuthorizeUser.authWarehouses.WarehouseList[0].id);
- }
-
- for (var i = 0, l = modules.length; i < l; i++) {
- var item = modules[i];
- //if (item.F_NO == 'Web_DevelopmentM') {
- // if (loginInfo.LOGINUSER.UserType != 1) {
- // continue;
- // }
- //}
- //if (item.F_NO == 'Web_SystemM' ) {
- // if (loginInfo.LOGINUSER.UserType != 1 && loginInfo.LOGINUSER.UserType != 2) {
- // continue;
- // }
- //}
- if (loginInfo.LOGINUSER.UserType == 4) {
- if (!AuthorizeUser[item.Code]) {
- continue;
- }
- }
- //if (item.F_NO == 'Web_ACLM') {
- // if (loginInfo.LOGINUSER.UserType == 4) {
- // continue;
- // }
- //}
- if (item.IsMenu == 1) {
- var $firstMenuItem = $('<li></li>');
- if (!!item.Memo) {
- $firstMenuItem.attr('title', item.Memo);
- }
- var menuItemHtml = '<a id="' + item.Code + '" href="javascript:void(0);" class="lr-menu-item">';
- menuItemHtml += '<i class="' + item.Icon + ' lr-menu-item-icon"></i>';
- menuItemHtml += '<span class="lr-menu-item-text">' + item.Name + '</span>';
- menuItemHtml += '</a>';
- $firstMenuItem.append(menuItemHtml);
- // 第二级菜单
- var secondModules = modulesTree[item.Code] || [];
- var $secondMenus = $('<ul class="lr-second-menu-list"></ul>');
- var secondMenuHad = false;
- for (var j = 0, sl = secondModules.length; j < sl; j++) {
- var secondItem = secondModules[j];
- if (loginInfo.LOGINUSER.UserType == 4) {
- if (!AuthorizeUser[secondItem.Code]) {
- continue;
- }
- }
- if (secondItem.IsMenu == 1) {
- secondMenuHad = true;
- var $secondMenuItem = $('<li></li>');
- if (!!secondItem.Memo) {
- $secondMenuItem.attr('title', secondItem.Memo);
- }
- var secondItemHtml = '<a id="' + secondItem.Code + '" href="javascript:void(0);" class="lr-menu-item" >';
- secondItemHtml += '<i class="' + secondItem.Icon + ' lr-menu-item-icon"></i>';
- secondItemHtml += '<span class="lr-menu-item-text">' + secondItem.Name + '</span>';
- secondItemHtml += '</a>';
- $secondMenuItem.append(secondItemHtml);
- // 第三级菜单
- var threeModules = modulesTree[secondItem.Code] || [];
- var $threeMenus = $('<ul class="lr-three-menu-list"></ul>');
- var threeMenuHad = false;
- for (var m = 0, tl = threeModules.length; m < tl; m++) {
- var threeItem = threeModules[m];
- if (threeItem.IsMenu == 1) {
- threeMenuHad = true;
- var $threeMenuItem = $('<li></li>');
- $threeMenuItem.attr('title', threeItem.Name);
- var threeItemHtml = '<a id="' + threeItem.Code + '" href="javascript:void(0);" class="lr-menu-item" >';
- threeItemHtml += '<i class="' + threeItem.Icon + ' lr-menu-item-icon"></i>';
- threeItemHtml += '<span class="lr-menu-item-text">' + threeItem.Name + '</span>';
- threeItemHtml += '</a>';
- $threeMenuItem.append(threeItemHtml);
- $threeMenus.append($threeMenuItem);
- }
- }
- if (threeMenuHad) {
- $secondMenuItem.addClass('lr-meun-had');
- $secondMenuItem.find('a').addClass('open').append('<span class="lr-menu-item-arrow"><i class="fa fa-angle-left"></i></span>');
- $secondMenuItem.append($threeMenus);
- }
- $secondMenus.append($secondMenuItem);
- }
- }
- if (secondMenuHad) {
- $secondMenus.attr('data-value', item.Code);
- $('#lr_second_menu_wrap').append($secondMenus);
- }
- $firstmenus.append($firstMenuItem);
- }
- }
- $('#lr_frame_menu').html($firstmenus);
- // 语言包翻译
- $('.lr-menu-item-text').each(function () {
- var $this = $(this);
- var text = $this.text();
- learun.language.get(text, function (_text) {
- $this.text(_text);
- $this.parent().parent().attr('title', _text);
- });
- });
- },
- load: function () {
- debugger;
- var modulesTree = learun.clientdata.get(['modulesTree']);
- var AuthorizeUser = learun.clientdata.get(['useracl']);
- // 第一级菜单
- var parentId = 'Web';
- var modules = modulesTree[parentId] || [];
- var $firstmenus = $('<ul class="lr-first-menu-list"></ul>');
- var loginInfo = learun.clientdata.get(['userinfo']);
- for (var i = 0, l = modules.length; i < l; i++) {
- var item = modules[i];
- //if (item.F_NO == 'Web_DevelopmentM') {
- // if (loginInfo.LOGINUSER.UserType != 1) {
- // continue;
- // }
- //}
- //if (item.F_NO == 'Web_SystemM' ) {
- // if (loginInfo.LOGINUSER.UserType != 1 && loginInfo.LOGINUSER.UserType != 2) {
- // continue;
- // }
- //}
- if (loginInfo.LOGINUSER.UserType == 4) {
- if (!AuthorizeUser[item.F_NO]) {
- continue;
- }
- }
- //if (item.F_NO == 'Web_ACLM') {
- // if (loginInfo.LOGINUSER.UserType == 4) {
- // continue;
- // }
- //}
- if (item.F_ISMENU == 1) {
- var $firstMenuItem = $('<li></li>');
- if (!!item.F_MEMO) {
- $firstMenuItem.attr('title', item.F_MEMO);
- }
- var menuItemHtml = '<a id="' + item.F_NO + '" href="javascript:void(0);" class="lr-menu-item">';
- menuItemHtml += '<i class="' + item.F_ICON + ' lr-menu-item-icon"></i>';
- menuItemHtml += '<span class="lr-menu-item-text">' + item.F_NAME + '</span>';
- menuItemHtml += '</a>';
- $firstMenuItem.append(menuItemHtml);
- // 第二级菜单
- var secondModules = modulesTree[item.F_NO] || [];
- var $secondMenus = $('<ul class="lr-second-menu-list"></ul>');
- var secondMenuHad = false;
- for (var j = 0, sl = secondModules.length; j < sl; j++) {
- var secondItem = secondModules[j];
- if (loginInfo.LOGINUSER.UserType == 4) {
- if (!AuthorizeUser[secondItem.F_NO]) {
- continue;
- }
- }
- if (secondItem.F_ISMENU == 1) {
- secondMenuHad = true;
- var $secondMenuItem = $('<li></li>');
- if (!!secondItem.F_MEMO) {
- $secondMenuItem.attr('title', secondItem.F_MEMO);
- }
- var secondItemHtml = '<a id="' + secondItem.F_NO + '" href="javascript:void(0);" class="lr-menu-item" >';
- secondItemHtml += '<i class="' + secondItem.F_ICON + ' lr-menu-item-icon"></i>';
- secondItemHtml += '<span class="lr-menu-item-text">' + secondItem.F_NAME + '</span>';
- secondItemHtml += '</a>';
- $secondMenuItem.append(secondItemHtml);
- // 第三级菜单
- var threeModules = modulesTree[secondItem.F_NO] || [];
- var $threeMenus = $('<ul class="lr-three-menu-list"></ul>');
- var threeMenuHad = false;
- for (var m = 0, tl = threeModules.length; m < tl; m++) {
- var threeItem = threeModules[m];
- if (threeItem.F_ISMENU == 1) {
- threeMenuHad = true;
- var $threeMenuItem = $('<li></li>');
- $threeMenuItem.attr('title', threeItem.F_NAME);
- var threeItemHtml = '<a id="' + threeItem.F_NO + '" href="javascript:void(0);" class="lr-menu-item" >';
- threeItemHtml += '<i class="' + threeItem.F_ICON + ' lr-menu-item-icon"></i>';
- threeItemHtml += '<span class="lr-menu-item-text">' + threeItem.F_NAME + '</span>';
- threeItemHtml += '</a>';
- $threeMenuItem.append(threeItemHtml);
- $threeMenus.append($threeMenuItem);
- }
- }
- if (threeMenuHad) {
- $secondMenuItem.addClass('lr-meun-had');
- $secondMenuItem.find('a').addClass('open').append('<span class="lr-menu-item-arrow"><i class="fa fa-angle-left"></i></span>');
- $secondMenuItem.append($threeMenus);
- }
- $secondMenus.append($secondMenuItem);
- }
- }
- if (secondMenuHad) {
- $secondMenus.attr('data-value', item.F_NO);
- $('#lr_second_menu_wrap').append($secondMenus);
- }
- $firstmenus.append($firstMenuItem);
- }
- }
- $('#lr_frame_menu').html($firstmenus);
- // 语言包翻译
- $('.lr-menu-item-text').each(function () {
- var $this = $(this);
- var text = $this.text();
- learun.language.get(text, function (_text) {
- $this.text(_text);
- $this.parent().parent().attr('title', _text);
- });
- });
- },
- bind: function () {
- $("#lr_frame_menu").lrscroll();
- $("#lr_second_menu_wrap").lrscroll();
- var w = 0;
- var width = $('.lr-first-menu-list').children().each(function () {
- w += $(this).outerWidth();
- });
- $('.lr-first-menu-list').css({ 'width': w });
- $('.lr-first-menu-list').parent().css({ 'width': w });
- // 添加点击事件
- $('#lr_frame_menu .lr-menu-item').on('click', function () {
- var $obj = $(this);
- var id = $obj.attr('id');
- var _module = learun.clientdata.get(['modulesMap', id]);
- switch (_module.Target) { //_module.F_TARGET
- case 1:// 窗口
- if (learun.validator.isNotNull(_module.URLAddr).code) {//_module.F_URLADDR
- learun.frameTab.open(_module);
- }
- else {
- }
- break;
- case 2:
- if (!$obj.hasClass('active')) {
- $('#lr_frame_menu .active').removeClass('active');
- $obj.addClass('active');
- $obj.parent().addClass('active');
- var $subMenu = $('#lr_second_menu_wrap');
- $subMenu.find('.lr-second-menu-list').hide();
- $subMenu.find('.lr-second-menu-list[data-value="' + id + '"]').show();
- }
- break;
- }
- });
- // 添加点击事件
- $('#lr_second_menu_wrap .lr-menu-item').on('click', function () {
- var $obj = $(this);
- var id = $obj.attr('id');
- var _module = learun.clientdata.get(['modulesMap', id]);
- switch (_module.Target) { //_module.F_TARGET
- case 1:// 窗口
- if (learun.validator.isNotNull(_module.URLAddr).code) {//_module.F_URLADDR
- if (_module.IsShared == 0) {
- var curr = sessionStorage.getItem('CurrentWarehouse');
- if (_module.URLAddr.indexOf(curr) < 0) {
- _module.URLAddr = '/' + curr + _module.URLAddr.replace('/HJManager', '');
- }
-
- }
- learun.frameTab.open(_module);
- }
- else {
- }
- break;
- case 2:// 打开子菜单
- var $ul = $obj.next();
- if ($ul.is(':visible')) {
- $ul.slideUp(500, function () {
- $obj.removeClass('open');
- });
- }
- else {
- $ul.slideDown(300, function () {
- $obj.addClass('open');
- });
- }
- break;
- }
- });
- $('.lr-first-menu-list>li').eq(0).find('a').trigger('click');
- $('#lr_frame_menu_btn').on('click', function () {
- var $body = $('body');
- if ($body.hasClass('lr-menu-closed')) {
- $body.removeClass('lr-menu-closed');
- }
- else {
- $body.addClass('lr-menu-closed');
- }
- });
- $('#lr_second_menu_wrap a').hover(function () {
- if ($('body').hasClass('lr-menu-closed')) {
- var id = $(this).attr('id');
- var text = $('#' + id + '>span').text();
- layer.tips(text, $(this));
- }
- }, function () {
- if ($('body').hasClass('lr-menu-closed')) {
- layer.closeAll('tips');
- }
- });
- }
- };
- meuns.init();
- };
|