Test configuration menu about main page

jsp code ===

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%@page import="java.util.*"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE html>
<html>
<head>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort()
+ path + "/";
String user_no = session.getAttribute("user_no").toString(); //从session里把a拿出来,并赋值给M
String role_name = session.getAttribute("role_name").toString(); //从session里把a拿出来,并赋值给M
String user_name = session.getAttribute ( "user_name") toString ( );. // in the session from a out, and assigned to M <Meta charset = "UTF-. 8">
%>

<link href="<%=basePath%>css/themes/default/easyui.css" rel="stylesheet" type="text/css"/>
<link href="<%=basePath%>css/themes/icon.css" rel="stylesheet" type="text/css"/>
<link href="<%=basePath%>css/themes/color.css" rel="stylesheet" type="text/css"/>
<link href="<%=basePath%>css/themes/demo.css" rel="stylesheet" type="text/css"/>



<script type="text/javascript" src="<%=basePath%>js/jquery.min.js"></script>
<script type="text/javascript" src="<%=basePath%>js/easyloader.js"></script>
<script type="text/javascript" src="<%=basePath%>js/jquery.easyui.min.js"></script>
<script type="text/javascript" src="<%=basePath%>js/jquery.easyui.mobile.js"></script>
<script type="text/javascript" src="<%=basePath%>js/plugins/jquery.parser.js"></script>
<script type="text/javascript" src="<%=basePath%>js/plugins/jquery.pagination.js"></script>
<script type="text/javascript" src="<%=basePath%>js/plugins/jquery.form.js"></script>
<style type="text/css">

</style>

</head>
<body>
<!--logo和左侧导航:start-->
<div class="NewLeft" style="border:1px solid;width:300px;height:100%; overflow:hidden;display: inline-block;float: left;">
<div style=" clear:both; width:100%;"></div>

<div class="LeftMenu" scroll="no" style="height:800px;">
<div class="lfloat" id="LeftFatherMenu" style="width:100% ;">
<ul id="nav" style="width:200px;">
<c:forEach var="a" varStatus="status" items="${resAllList }">
<c:if test="${status.index == 0}">
<li class="bb" id="tb_${status.index+1 }" onClick="x:hoverli(${status.index+1 });">
<span class="MenuIco0${status.index+1 }"></span>
<p>${a.get("NAME") }</p>
</li>
</c:if>
<c:if test="${status.index != 0}">
<li class="aa" id="tb_${status.index+1 }" onClick="x:hoverli(${status.index+1 });">
<span class="MenuIco0${status.index+1 }"></span>
<p>${a.get("NAME") }</p>
</li>
</c:if>
</c:forEach>
</ul>
</div>

<!--二级导航:start-->
<div class="lfloat" id="LeftMenuList" style="width:253px;">
<div id="newinfo">
<div class="ctt list2">
<c:forEach var="a" varStatus="status" items="${resAllList }">

<c:if test="${status.index == 0 }">
<div class="dis" id="tbc_0${status.index+1 }">
<div class="subNavBox">
<c:forEach var="b" varStatus="status_b" items="${a.get('children') }">
<c:if test="${b.get('pid') == a.get('id') }">
<div class="subNav" data-check="true">${b.get("NAME") }</div>
<ul class="navContent " style="width:200px;">
<c:forEach var="c" varStatus="status_c" items="${b.get('children') }">

<li>
<script type="text/javascript">

var x${c.get('id')} = "${c.get('id')}";
var y${c.get('id')} = "${c.get('url')}";
var z${c.get('id')} = "${b.get('NAME')}";
</script >
<a href="#" onclick="loadUrl(x${c.get('id')},y${c.get('id')},z${c.get('id')});">${c.get('NAME') }</a></li>
</c:forEach>
</ul>
</c:if>
</c:forEach>
</div>
</div>
</c:if>

<c:if test="${status.index != 0 }">
<div class="undis" id="tbc_0${status.index+1 }">
<div class="subNavBox">
<c:forEach var="b" varStatus="status_b" items="${a.get('children') }">
<c:if test="${b.get('pid') == a.get('id') }">
<div class="subNav" data-check="true">${b.get("NAME") }</div>
<ul class="navContent " style="width:200px;">
<c:forEach var="c" varStatus="status_c" items="${b.get('children') }">
<li>
<script type="text/javascript">

var x${c.get('id')} = "${c.get('id')}";
var y${c.get('id')} = "${c.get('url')}";
z${c.get('id')} = "${b.get('NAME')}";
</script >
<a href="#" onclick="loadUrl(x${c.get('id')},y${c.get('id')},z${c.get('id')});">${c.get('NAME') }</a></li>
</c:forEach>
</ul>
</c:if>
</c:forEach>
</div>
</div>
</c:if>

 

</ C: forEach>
</ div>
</ div>
</ div>
<- two Navigation:! End ->
</ div>
<- left navigation:! End ->
</ div>
<- logo and left navigation:! end ->

<- head right navigation:! Start ->
<% - <div-Data Options = "Region: 'North', border: to true" class = "of IgY-header">
! <- Close Click Left side menu button ->
<a href="#" class="leftMenuIco" id="leftMenuBut"> </a>
<- add bread crumbs:! Start ->
<div class = "headerMiddle">
< a href = "#" class = "Hm_nav1"> navigation </a>
<-! <A href = "#" class = "Hm_nav2"> Home </a> -
<-! <A href = "# "class =" Hm_nav2 "> new </a> needs ->
</ div>
<- add bread crumbs:! End ->
<- a new version of the right side of the head:! Start ->
<div = class "of IgY-header-right" style = "width: 300px by;">
<ul class="headerRight" style="width:200px;">



<li>
<div id="topSelect">
单位:
<select id="company" onchange="changeCompany()">
<c:forEach var="coma" varStatus="abc" items="${companys}">
<option value="${coma.get('company_id')}">${coma.get('company_name')}</option>
</c:forEach>
</select>
</div>
</li>
<li>
<div id="topSelect">
角色:
<select id="role" onchange="changeRole()">
<c:forEach var="rolesa" varStatus="abc" items="${roles}">
<option value="${rolesa.get('role_id')}">${rolesa.get('role_name')}</option>
</c:forEach>
</select>
</div>
</li>
<li>


<div class="userName">

<p id="wdwd">欢迎,<%=name%></p>
<p id="current_data"></p>
</div>
<div class="userImgD" onclick="goback()">
<!--性别男-->
<i class="IcoSexM"></i>
<!--性别女
<i class="IcoSexF"></i>-->
<img class="userImg" src="<%=basePath%>css/images/121.jpg">
</div>
</li>

<li><a style="color: #262b3a;" id="loginout" href="javascript:void(0);">退出</a> </li>

</ul>
</div>
<!--新版头部右侧:end-->

</div> --%>
<!--右侧头部导航:end-->
<div style="border:1px;display:inline-block;position: absolute;float: left;z-index: 9;">

<table>
<tr>
<td align="right">角色: </td>
<td>
<select id="role_name" name="role_name" style="width:160px;height: 30px;" onchange="changeRole()">
</select>
</td>
<td align="right">欢迎: </td>
<td>
<input id="user_name" name="user_name" value="<%=user_name%>" readonly="readonly" style="border:none;"></input>
</td>
<td align="right"></td>
<td>
<input type="button" onclick="logout()" value="退出"></input>
</td>

</tr>
</table>
</div>
<div class="IndexRight" id="mainPanle" style="width: 100%;border:1px solid;display:inline-block;position: absolute;float: left;">

</div>
<script type="text/javascript" language="javascript">
var resSize = '${resSize}';
var resIndex ='0'; var resName ='';var resId ='';
//<!cdata[
function g(o) {return document.getElementById(o);}
function hoverli(n){
for(var i=1;i<=resSize;i++){
g('tb_'+i).className='aa';
g('tbc_0'+i).className='undis';
}
g('tbc_0'+n).className='list2';
g('tb_'+n).= className 'BB'; </ Script>// if you want to set and then clicks made <li> onmouseover change in the onclick;
}


<script type="text/javascript">
$(function(){

$(".subNav").click(function(){
if($(this).attr('data-check') == 'true'){
$(this).toggleClass("currentDd").siblings(".subNav").removeClass("currentDd")
$(this).toggleClass("currentDt").siblings(".subNav").removeClass("currentDt")

// 修改数字控制速度, slideUp(500)控制卷起速度
$(this).next(".navContent").slideToggle(500).siblings(".navContent").slideUp(500);
}
})

$('#mainPanle').height($(window).height() - $('.lgy-header').height());
$('#mainPanle').load('<%=basePath %>xyData/user/getMain.do?credit=${credit }&no_auth=${no_auth }'); // queries that the user has returned roles based on user numbers

// drop-down box to a role assignment

$.post('<%=basePath%>user/findAllotControlByUserNo.do?user_no='+'<%=user_no%>',
function(data){
$('#role_name').empty();
var obj=data.row;
for(var i=0;i<obj.length;i++){
$('#role_name').append('<option value="'+obj[i].role_name+'">'+obj[i].role_name+'</option>');

}
$("#role_name").val(Array('<%=role_name%>'));
});
})

$('#loginout').bind("click",function(){
$.messager.confirm('退出系统', '您确定退出系统吗?', function(r){
if (r){
window.location.href = '<%=basePath %>xyData/user/userloginOut.do';
}
});
});
$('.navContent li a').click(function(){
$(this).parent().addClass("cur");
$(this).parent().siblings().removeClass("cur");
});
function loadUrl(id, url,name){
//alert('id='+id+'url=='+url+'name=='+name)
$('.Hm_nav1').text(name);
$('.easyui-fluid').remove();
$('#mainPanle').load('<%=basePath %>user/hydJump.do?menuid=' + id + '&url=' + url);
}

function ooooo(){
if(resName==''||resId==''){
return
}
$('#mainPanle').load('<%=basePath %>hydJump.do?menuid=' + resId + '&url=' + resId);
}
function changeCompany(){
//alert("changeCompany"+$("#company").val());
window.location.href="changeCompany.do?company_id="+$("#company").val();

}
function changeRole(){
Alert // ( "changeRole" + $ ( "# Role") Val ().);
window.location.href = "changeRole.do?role_id =" + $ ( "# Role") Val ();.

}
/ / Log
function Zimbabwe Logout () {
$ .messager.confirm ( 'Log', 'Are you sure Log out?', function (r) {
window.location.href = "<% =% basePath> the User / login.do ";
})
}
// Check to select different roles different permissions
function changeRole () {
var the remark = $ ( '# ROLE_NAME') Val ();.
// Alert (the remark);
window.location.href =" < ?% =% the basePath> User / = toUserMainjsp.do the remark "the remark +;
}
</ Script>
</ body>
</ HTML>

=== java code

package controller.loadmenu;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpRequest;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import service.LoadMenuService;

@Controller
@RequestMapping("/user")
public class LoadMenuController {
@Autowired
private LoadMenuService loadMenuService;
/**
* 查询用户权限
* @param remark
* @return
*/
@RequestMapping("/findMenuList.do")
@ResponseBody
public Map findMenuList(String remark,HttpServletRequest request, ModelMap modmap) {
System.out.println("查询menu权限开始");
Map<String,Object>map=new HashMap<String,Object>();
try {
List<Map<String,Object>>list=loadMenuService.findMenuList(remark);
System.out.println("list===="+list);
modmap.addAttribute("resAllList", list);
modmap.addAttribute("resSize", list.size());
map.put ( "msg", "query succeeds");
map.put ( "resAllList", List);
} the catch (Exception E) {
map.put ( "msg", "query failed");
e.printStackTrace ( );

}
return the Map;
}
/ **
* page, click button to jump page
* @param url
* @return
* /
@ RequestMapping ( "/ hydJump.do")
public String hydJump (String url) {
System.out.println ( "URL ============" + URL);
return "/"+url.replace(".jsp", "");
}

}

 

controller Code

/**
* 查询用户权限
* @param remark
* @return
*/
@RequestMapping("/findMenuList.do")
@ResponseBody
public Map findMenuList(String remark,HttpServletRequest request, ModelMap modmap) {
System.out.println("查询menu权限开始");
Map<String,Object>map=new HashMap<String,Object>();
try {
List<Map<String,Object>>list=loadMenuService.findMenuList(remark);
System.out.println("list===="+list);
modmap.addAttribute("resAllList", list);
modmap.addAttribute("resSize", list.size());
map.put("msg", "查询成功");
map.put("resAllList", list);
} catch (Exception e) {
map.put ( "msg", "query failed"); }
e.printStackTrace ();


return map;
}

 

=== implementation class

/**
* 查询权限
*/
@Override
public List<Map<String, Object>> findMenuList(String remark) {
System.out.println("findMenuList-remark=="+remark);
List<Map<String, Object>>list =loadMenuDao.findMenuList(remark);
list=getTreeList("id","pid","children",list);
System.out.println("treelist======"+list);
return list;
}
//把带有父子机构的数据变成treelist形式
public static List<Map<String, Object>> getTreeList(String id,String pid,String children,List<Map<String, Object>>list) {
//List<Map<String, Object>>listmap=new ArrayList<Map<String, Object>>();
//给list的每一项加一个子项
for(int i=0;i<list.size();i++) {
list.get(i).put(children, new ArrayList<Map<String, Object>>());
}
List<Map<String, Object>>treelist=new ArrayList<Map<String, Object>>();
for(Map<String, Object> outmap:list) {
for(Map<String, Object> inmap:list) {
String outid=outmap.get(id).toString();
String inpid=inmap.get(pid).toString();
if(outid.equals(inpid)) {
List<Map<String, Object>>maplist=(ArrayList) outmap.get(children);
maplist.add(inmap);
}
}
String prid=outmap.get(pid).toString();
if(StringUtils.isBlank(prid)) {
treelist.add(outmap);
}
}
return treelist;
}

Guess you like

Origin www.cnblogs.com/xianz666/p/12004755.html