清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>
<script type="text/javascript"> // ztree组树配置 var groupTree_setting = { data: { simpleData: { enable: true, idKey: 'groupId', pIdKey: 'parentGroupId' } }, view: { showTitle: false, expandSpeed: "" },check: { enable: true, chkStyle: "radio", radioType: "all" }, callback: {onClick: clickGroupNode, onCheck: clickGroupNode} }; // ztree菜单树配置 var setting = { data: { key:{name: 'menuCnName'}, simpleData: { enable: true, idKey: 'menuId', pIdKey: 'parentMenuId' } }, view: { showTitle: false, expandSpeed: "" }, callback: {onClick: clickTreeNode} }; $(function(){ // 加载当前用户所拥有的菜单 loadUserMenu(); // 选项卡右键菜单事件 tabCloseEven(); }); // 单击树节点动作 function clickTreeNode(event, treeId, treeNode) { // 处理特殊上下文,是否新打开窗口 var isRedirect = treeNode.menuAction.indexOf("redirect"); if(isRedirect == 0) {// 以redirect开头的菜单打开新窗口 var url = treeNode.menuAction.substring(isRedirect + 9, treeNode.menuAction.length); window.open(url, treeNode.menuCnName); } else { // 点击叶子节点时进行跳转操作 if(!treeNode.isParent) { openTab(treeNode); } } } var systemSign;// 系统标识 var systemIndex;// 首页 var systemMsg;// 提示信息 var isShow = false;//提示标志 var formGroupId;// 上次选择组id var groupTreeObj; var groupIdList; // 加载用户所拥有的系统权限 function loadUserMenu() { // 导航菜单动作 $("#navList").accordion({animate:false}); // 动态加载菜单数据 $.post( "/smp/manager-menu/manager-menu!getSystemMenu.action", function(data){ if(typeof(data) == 'string'){// 系统超时 if(data.indexOf('j_spring_cas_security_check') >0 ){ window.location.reload(); } } $.each(data, function(i, menu) { // 拼接左侧菜单 var treeid = 'menu_' + menu.systemSign; var menulist = '<ul><li id=' + treeid + ' class="ztree"></li></ul>'; var divid = 'div' + treeid; var addDiv = '<div id=' + divid + ' class="expand"></div>' // 添加系统菜单列表 $('#navList').accordion('add', { title: menu.menuName, content: addDiv + menulist, iconCls: 'icon icon-sys' }); }); if(data == '') { return; } else if(data.length == 1) { var urlPath = data[0].context; if(window.location.href.indexOf(".corp") > 0) { if(urlPath.indexOf(".com.cn") > 0) { urlPath = urlPath.replace(".com.cn", ".corp"); } else if(urlPath.indexOf(".cn") > 0) { urlPath = urlPath.replace(".cn", ".corp"); } } // 慧正系统跳转 if(data[0].systemSign == constants.huizheng) { window.location.href = urlPath; }else if(data[0].systemSign == constants.callcenter){ //========= callcenter ========== window.location.href = urlPath; } // 只有一个系统使用自带的onSelect事件 $("#navList").accordion({onSelect:changeSystem}); } else { // 点击左侧系统列表后触发事件(替换自带的onSelect事件,初始只加载一次) $("div.panel-header.accordion-header").find("a").click(function(){ // 菜单导航展开后切换系统 var systemName = $('div.accordion-header.accordion-header-selected').children(".panel-title").html(); changeSystem(systemName); }); } // 默认展开第一个 var panels = $('#navList').accordion('panels'); var t = panels[0].panel('options').title; $('#navList').accordion('select', t); } ); // 切换系统 function changeSystem(systemName) { if(null != systemName) { // 切换系统名称 $('#logo').html(systemName); $.post( "/smp/manager-menu/manager-menu!getSystemContext.action", {systemName:systemName}, function(data) { if(typeof(data) == 'string'){// 系统超时 if(data.indexOf('j_spring_cas_security_check') >0 ){ window.location.reload(); } } // 切换组显示菜单 systemSign = data.systemSign; systemIndex = data.systemIndex; systemMsg = data.systemMsg; if(data.groupList.length > 0) {// 当前员工有组信息 groupTreeObj = $.fn.zTree.init($("#groupTree"), groupTree_setting, data.groupList); groupIdList = data.userGroup.split(','); var groupId; if(groupIdList.length == 1) { var curNode = groupTreeObj.getNodesByParam("groupId", groupIdList[0], null); groupId = curNode[0].groupId; $('#group').val(curNode[0].name); } else { var curNode = groupTreeObj.getNodesByParam("groupId", -1, null); groupId = curNode[0].groupId; $('#group').val(curNode[0].name); } // 除叶子节点,其他不可选 var nodes = groupTreeObj.getNodesByParamFuzzy("name", "", null); if(nodes != '') { for (var i=0, l=nodes.length; i < l; i++) { groupTreeObj.setChkDisabled(nodes[i], true); } for (var m=0, n=groupIdList.length; m < n; m++) { var curNode = groupTreeObj.getNodesByParam("groupId", groupIdList[m], null); groupTreeObj.setChkDisabled(curNode[0], false); } var curNode = groupTreeObj.getNodesByParam("groupId", -1, null); groupTreeObj.setChkDisabled(curNode[0], false); } getMenuByGroupId(groupId); } } ); } } } // 获取组下菜单 function getMenuByGroupId(groupId) { $.post( "/smp/manager-menu/manager-menu!getManagerMenu.action", {systemSign:systemSign,groupId:groupId}, function(data) { if(typeof(data) == 'string'){// 系统超时 if(data.indexOf('j_spring_cas_security_check') >0 ){ window.location.reload(); } } else { // 记录上次选择的组id formGroupId = groupId; // 关闭所有tab页,切换首页 $('.tabs-inner span').each(function(i,n){ var t = $(n).text(); $('#tabs').tabs('close',t); }); // 没有配置首页不打开tab页 if(systemIndex.indexOf("#") != (systemIndex.length-1)) { openTabOrRefresh(parent.creatTabObj("首页", systemIndex)); } // 首页增加提示信息 if(systemMsg != '' && isShow == false) { // 主框架提示信息 $.messager.show({ title:'提示',msg:systemMsg, timeout:0,showType:'slide' }); // 只提示一次 isShow = true; } // 加载菜单 var treeid = 'menu_' + systemSign; $.fn.zTree.init($("#" + treeid), setting, data); var html = '<img id="img_'+ treeid +'" src="resourse/images/btn_expand.gif" title="全部展开" onclick="expandAll('+ treeid +')"></img>'; $('#div' + treeid).html(html); } } ); } // 切换组 function changeGroup() { var groupOffset = $("#group").offset(); $("#groupDiv").css({left:groupOffset.left + "px", top:groupOffset.top + $("#group").outerHeight() + "px"}).slideDown(0); $("body").bind("mousedown", onBodyDown); // 树节点全部展开 groupTreeObj.expandAll(true); var nodes = groupTreeObj.getNodesByParam("groupId", formGroupId, null); if(nodes != '') { // 选中并展开选中级别节点 var node = nodes[0]; groupTreeObj.checkNode(node, true); } } function hideMenu() { $("#groupDiv").fadeOut(0); $("body").unbind("mousedown", onBodyDown); } function onBodyDown(event) { if (!(event.target.id == "group" || $(event.target).parents("#groupDiv").length > 0)) { hideMenu(); } } // 点击组树 function clickGroupNode(event, treeId, treeNode) { for (var m=0, n=groupIdList.length; m < n; m++) { if(treeNode.groupId == groupIdList[m] || treeNode.groupId == -1) { hideMenu(); if(formGroupId == treeNode.groupId) {//下拉选择的组没有变化 return; } else { formGroupId = treeNode.groupId; $('#group').val(treeNode.name); getMenuByGroupId(formGroupId); } } } } // 全部展开关闭功能 function expandAll(treeid) { var src = $('#img_' + treeid.id).attr('src'); if(src.indexOf('expand') > 0) { src = src.replace('expand', 'collapse'); $('#img_' + treeid.id).attr('title', "全部关闭"); $.fn.zTree.getZTreeObj(treeid.id).expandAll(true); } else { src = src.replace('collapse', 'expand'); $('#img_' + treeid.id).attr('title', "全部展开"); $.fn.zTree.getZTreeObj(treeid.id).expandAll(false); } $('#img_' + treeid.id).attr('src', src); } // 修改密码 function modifyPassword() { $('#empPwdWin')[0].style.display = "block"; $('#empPwdWin').window('open'); } // 取消密码重置 function empCancelReset() { $('#empPwdForm')[0].reset(); $('#empPwdWin').window('close'); } // 密码重置 function empPwdReset() { // 校验表单是否合法 if($('#empPwdForm').form('validate')) { // 提交表单 $('#empPwdForm').form('submit', { url:"/smp/employee/employee!modifyPassword.action", success:function(result){ if(result == 'success') { $('#empPwdForm')[0].reset(); $('#empPwdWin').window('close'); $.messager.alert('提示','密码修改成功!'); } else { $.messager.alert('提示','密码修改失败!'); } } }); } } // 退出系统 function logout() { $.messager.confirm('提示', '您确定要退出当前系统?', function(btn){ if(btn) { $.post(//清空当前员工组映射 "/smp/manager-menu/manager-menu!removeGroupIdMap.action", function(data) { window.location.href = "/smp/j_spring_security_logout"; } ); } }); } </script>