Commit b39e0840 by liuyongshuai Committed by liuyongshuai

修复普通用户菜单无法加载的bug;修改给用户赋值角色的逻辑,不再进行父子级关联,但是给角色赋值权限可以进行父子级关联。

parent a0c2fdf5
...@@ -37,8 +37,7 @@ public class AccessController { ...@@ -37,8 +37,7 @@ public class AccessController {
}finally { }finally {
if (msg == null) { if (msg == null) {
SysUser user1 = TokenUtil.getUser(); SysUser user1 = TokenUtil.getUser();
String userId = user1.getId(); List<List<SysPermissionNew>> list= userService.selectMenusByUserId(user1);
List<List<SysPermissionNew>> list= userService.selectMenusByUserId(userId);
//System.out.println(list); //System.out.println(list);
model.addAttribute("list", list); model.addAttribute("list", list);
return ""; return "";
......
...@@ -36,7 +36,8 @@ public class PageJunpController { ...@@ -36,7 +36,8 @@ public class PageJunpController {
//获取用户信息 //获取用户信息
SysUser user = TokenUtil.getUser(); SysUser user = TokenUtil.getUser();
String userId = user.getId(); String userId = user.getId();
List<List<SysPermissionNew>> list= userService.selectMenusByUserId(userId); //获取菜单
List<List<SysPermissionNew>> list= userService.selectMenusByUserId(user);
//System.out.println(list); //System.out.println(list);
model.addAttribute("list", list); model.addAttribute("list", list);
return "index"; return "index";
...@@ -50,6 +51,6 @@ public class PageJunpController { ...@@ -50,6 +51,6 @@ public class PageJunpController {
*/ */
@RequestMapping(value = "/welcome", method = RequestMethod.GET) @RequestMapping(value = "/welcome", method = RequestMethod.GET)
public String welcome(Model model) throws Exception { public String welcome(Model model) throws Exception {
return "welcome"; return "redirect:/admin/user/index?msg=success";
} }
} }
...@@ -75,8 +75,7 @@ public class PermissionNewController { ...@@ -75,8 +75,7 @@ public class PermissionNewController {
*/ */
@RequestMapping(value = "/add", method = RequestMethod.GET) @RequestMapping(value = "/add", method = RequestMethod.GET)
public String addIndex(Model model) { public String addIndex(Model model) {
JSONArray json =permissionService.selectAllPermissions(); setZtreeData(model,userService,permissionService);
model.addAttribute("parantMenus",json);
return "admin/permission/add"; return "admin/permission/add";
} }
......
...@@ -483,7 +483,7 @@ ...@@ -483,7 +483,7 @@
<select id="selectMencusByUserId" resultType="com.xzxtshiro.pojo.SysPermissionNew"> <select id="selectMencusByUserId" resultType="com.xzxtshiro.pojo.SysPermissionNew">
<!----> <!---->
SELECT SELECT
ID, NAME, MENUNAME, PID, PERMISSION, URL, ZINDEX ID, NAME, MENUNAME, PID, PERMISSION, URL, TYPE
FROM FROM
VW_USER_PERMISSION VW_USER_PERMISSION
where flag=1/*生成菜单*/ where flag=1/*生成菜单*/
......
...@@ -22,7 +22,7 @@ public interface SysUserService { ...@@ -22,7 +22,7 @@ public interface SysUserService {
SysUser login(String username, String password); SysUser login(String username, String password);
List<List<SysPermissionNew>> selectMenusByUserId(String userId); List<List<SysPermissionNew>> selectMenusByUserId(SysUser user);
BaseModel selectSysUserPage(SysUser user); BaseModel selectSysUserPage(SysUser user);
......
...@@ -48,15 +48,19 @@ public class SysUserServiceImpl implements SysUserService { ...@@ -48,15 +48,19 @@ public class SysUserServiceImpl implements SysUserService {
return user; return user;
} }
/**
* 查询菜单
* @param user
* @return
*/
@Override @Override
public List<List<SysPermissionNew>> selectMenusByUserId(String userId) { public List<List<SysPermissionNew>> selectMenusByUserId(SysUser user) {
List<String> roleIds = userDao.selectSysRoleIdByUserId(userId);
List<SysPermissionNew> permissions = null; List<SysPermissionNew> permissions = null;
//如果角色id包含,说明当前登录用户拥有超级管理员身份 //如果登陆用户为admin,则查询所有的菜单
if (roleIds.contains("6b281f7b1531106578cnv9ejyt4nsc")) { if ("admin".equals(user.getUsername())) {
permissions = userDao.selectAllMenus(); permissions = userDao.selectAllMenus();
} else { } else {
permissions = userDao.selectMencusByUserId(userId); permissions = userDao.selectMencusByUserId(user.getId());
} }
List<List<SysPermissionNew>> list = null; List<List<SysPermissionNew>> list = null;
if (permissions.size() > 0) { if (permissions.size() > 0) {
......
...@@ -11,7 +11,6 @@ import com.xzxtshiro.service.SysRoleService; ...@@ -11,7 +11,6 @@ import com.xzxtshiro.service.SysRoleService;
import com.xzxtshiro.service.SysUserService; import com.xzxtshiro.service.SysUserService;
import net.sf.json.JSONArray; import net.sf.json.JSONArray;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.ui.Model; import org.springframework.ui.Model;
import java.util.List; import java.util.List;
...@@ -51,20 +50,21 @@ public class ZtreeDataUtil { ...@@ -51,20 +50,21 @@ public class ZtreeDataUtil {
String usergrade = user.getGrade(); String usergrade = user.getGrade();
SysDictitem dictitem = new SysDictitem(); SysDictitem dictitem = new SysDictitem();
dictitem.setGroupid("CODE_UNIT"); dictitem.setGroupid("CODE_UNIT");
if(usergrade==null||usergrade.equals("")){ dictitem.setCodeStr(unitStr.substring(0,2)+"%");
dictitem.setCodeStr(unitStr+"%"); // if(usergrade==null||usergrade.equals("")){
}else{ //
if (usergrade.equals("S") || usergrade.equals("T")) { // }else{
dictitem.setCodeStr(unitStr.substring(0,2)+"%"); // if (usergrade.equals("S") || usergrade.equals("T")) {
} else if (usergrade.equals("D")) { // dictitem.setCodeStr(unitStr.substring(0,2)+"%");
dictitem.setCodeStr(unitStr.substring(0,4)+"%"); // } else if (usergrade.equals("D")) {
} else if (usergrade.equals("X")) { // dictitem.setCodeStr(unitStr.substring(0,4)+"%");
dictitem.setCodeStr(unitStr.substring(0,6)+"%"); // } else if (usergrade.equals("X")) {
} // dictitem.setCodeStr(unitStr.substring(0,6)+"%");
else if (usergrade.equals("P")) { // }
dictitem.setCodeStr(unitStr+"%"); // else if (usergrade.equals("P")) {
} // dictitem.setCodeStr(unitStr+"%");
} // }
// }
//从缓存中取内容 //从缓存中取内容
try { try {
String result = jedisClient.hget("CODE_UNIT", dictitem.getCodeStr()); String result = jedisClient.hget("CODE_UNIT", dictitem.getCodeStr());
......
...@@ -32,7 +32,7 @@ ...@@ -32,7 +32,7 @@
</bean> </bean>
<!-- jedis客户端单机版 --> <!-- jedis客户端单机版 -->
<bean id="redisClient" class="redis.clients.jedis.JedisPool"> <bean id="redisClient" class="redis.clients.jedis.JedisPool">
<constructor-arg name="host" value="192.168.193.128"></constructor-arg> <constructor-arg name="host" value="192.168.121.1"></constructor-arg>
<constructor-arg name="port" value="6379"></constructor-arg> <constructor-arg name="port" value="6379"></constructor-arg>
<constructor-arg name="poolConfig" ref="jedisPoolConfig"></constructor-arg> <constructor-arg name="poolConfig" ref="jedisPoolConfig"></constructor-arg>
</bean> </bean>
......
...@@ -202,7 +202,7 @@ ...@@ -202,7 +202,7 @@
for (var i=0;i<data.length;i++){ for (var i=0;i<data.length;i++){
zNodes.push({id:data[i].id,pId:data[i].pid,name:data[i].name,open:false,file:"core/simpleData"}); zNodes.push({id:data[i].id,pId:data[i].pid,name:data[i].name,open:false,file:"core/simpleData"});
} }
setTree(zNodes,"tree","nocheck","pid","pidName"); setTree(zNodes,"tree","nocheck","pid","pidName","");
}); });
</script> </script>
......
...@@ -147,7 +147,7 @@ ...@@ -147,7 +147,7 @@
$("#pidName").val("${oldPermission.name}"); $("#pidName").val("${oldPermission.name}");
} }
} }
setTree(zNodes,"tree","nocheck","pid","pidName"); setTree(zNodes,"tree","nocheck","pid","pidName","");
}); });
</script> </script>
......
...@@ -72,7 +72,7 @@ ...@@ -72,7 +72,7 @@
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">父级角色</label> <label class="layui-form-label">父级角色</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input type="text" name="pidName" id="pidName" lay-verify="required" <input type="text" name="pidName" id="pidName"
class="layui-input"> class="layui-input">
<input type="text" id="pid" Name="pid" style="display: none;"> <input type="text" id="pid" Name="pid" style="display: none;">
<span class="layui-btn" id="checkRolePid" onclick="checkTree('myRoleTree');">选择父级</span> <span class="layui-btn" id="checkRolePid" onclick="checkTree('myRoleTree');">选择父级</span>
...@@ -134,14 +134,14 @@ ...@@ -134,14 +134,14 @@
for (var i=0;i<data.length;i++){ for (var i=0;i<data.length;i++){
zNodes.push({id:data[i].id,pId:data[i].pid,name:data[i].name,open:false,file:"core/simpleData"}); zNodes.push({id:data[i].id,pId:data[i].pid,name:data[i].name,open:false,file:"core/simpleData"});
} }
setTree(zNodes,"permissionTree","check","permissionId","permissionName"); setTree(zNodes,"permissionTree","check","permissionId","permissionName","ps");
var data = ${role}; var data = ${role};
console.log(data); console.log(data);
var zNodes =[]; var zNodes =[];
for (var i=0;i<data.length;i++){ for (var i=0;i<data.length;i++){
zNodes.push({id:data[i].id,pId:data[i].pid,name:data[i].rolename,open:false,file:"core/simpleData"}); zNodes.push({id:data[i].id,pId:data[i].pid,name:data[i].rolename,open:false,file:"core/simpleData"});
} }
setTree(zNodes,"roleTree","nocheck","pid","pidName"); setTree(zNodes,"roleTree","nocheck","pid","pidName","");
}); });
......
...@@ -76,7 +76,7 @@ ...@@ -76,7 +76,7 @@
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">父级角色</label> <label class="layui-form-label">父级角色</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input type="text" name="pidName" id="pidName" lay-verify="required" <input type="text" name="pidName" id="pidName"
class="layui-input"> class="layui-input">
<input type="text" id="pid" Name="pid" style="display: none;"> <input type="text" id="pid" Name="pid" style="display: none;">
<span class="layui-btn" id="checkRolePid" onclick="checkTree('myRoleTree');">选择父级</span> <span class="layui-btn" id="checkRolePid" onclick="checkTree('myRoleTree');">选择父级</span>
...@@ -159,7 +159,7 @@ ...@@ -159,7 +159,7 @@
$("#permissionId").val(oldPerIdStr); $("#permissionId").val(oldPerIdStr);
$("#permissionName").val(oldPerStr); $("#permissionName").val(oldPerStr);
//设置权限树 //设置权限树
setTree(zNodes,"permissionTree","check","permissionId","permissionName"); setTree(zNodes,"permissionTree","check","permissionId","permissionName","ps");
data = ${role}; data = ${role};
console.log(data); console.log(data);
var zNodes =[]; var zNodes =[];
...@@ -171,7 +171,7 @@ ...@@ -171,7 +171,7 @@
} }
zNodes.push({id:data[i].id,pId:data[i].pid,name:data[i].rolename,open:false,file:"core/simpleData"}); zNodes.push({id:data[i].id,pId:data[i].pid,name:data[i].rolename,open:false,file:"core/simpleData"});
} }
setTree(zNodes,"roleTree","nocheck","pid","pidName"); setTree(zNodes,"roleTree","nocheck","pid","pidName","");
}); });
</script> </script>
......
...@@ -17,6 +17,9 @@ ...@@ -17,6 +17,9 @@
width: 110px; width: 110px;
height: 140px; height: 140px;
} }
.btx>label{
color: red;
}
</style> </style>
</head> </head>
...@@ -48,7 +51,7 @@ ...@@ -48,7 +51,7 @@
<form class="layui-form layui-form-pane" <form class="layui-form layui-form-pane"
action="${pageContext.request.contextPath}/admin/user/add/" action="${pageContext.request.contextPath}/admin/user/add/"
method="post" enctype="multipart/form-data"> method="post" enctype="multipart/form-data">
<div class="layui-form-item"> <div class="layui-form-item btx">
<label class="layui-form-label">用户姓名</label> <label class="layui-form-label">用户姓名</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input type="text" name="trueName" lay-verify="required" placeholder="请输入用户姓名" <input type="text" name="trueName" lay-verify="required" placeholder="请输入用户姓名"
...@@ -56,7 +59,7 @@ ...@@ -56,7 +59,7 @@
class="layui-input"> class="layui-input">
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item btx">
<label class="layui-form-label">用户账号</label> <label class="layui-form-label">用户账号</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input type="text" name="username" lay-verify="required" placeholder="请输入用户账号" <input type="text" name="username" lay-verify="required" placeholder="请输入用户账号"
...@@ -73,42 +76,49 @@ ...@@ -73,42 +76,49 @@
<input type="hidden" id="yhzpPath" name="yhzpPath" value=""/> <input type="hidden" id="yhzpPath" name="yhzpPath" value=""/>
<button type="button" class="layui-btn" id="yhzpBtn"><i class="layui-icon"></i>上传照片</button> <button type="button" class="layui-btn" id="yhzpBtn"><i class="layui-icon"></i>上传照片</button>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item btx">
<label class="layui-form-label">登录密码</label> <label class="layui-form-label">登录密码</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input type="password" name="password" placeholder="请输入密码" <input type="password" name="password" placeholder="请输入密码"
value="${user.password}" class="layui-input"> value="${user.password}" class="layui-input">
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item btx">
<label class="layui-form-label">密码确认</label> <label class="layui-form-label">密码确认</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input type="password" name="repassword" placeholder="请输入确认密码" <input type="password" name="repassword" placeholder="请输入确认密码"
value="${user.password}" class="layui-input"> value="${user.password}" class="layui-input">
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item btx">
<label class="layui-form-label">身份证号码</label> <label class="layui-form-label">身份证号码</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input type="text" name="identitycard" placeholder="请输入身份证号" <input type="text" name="identitycard" lay-verify="identity" placeholder="请输入身份证号"
value="${user.identitycard}" class="layui-input"> value="${user.identitycard}" class="layui-input">
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">出生日期</label>
<div class="layui-input-block">
<input type="text" name="birthday" id="birthday" placeholder=""
value="${user.birthday}" class="layui-laydate-list">
</div>
</div>
<div class="layui-form-item btx">
<label class="layui-form-label">联系电话</label> <label class="layui-form-label">联系电话</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input type="text" name="telephone" placeholder="请输入联系电话" <input type="text" name="telephone" lay-verify="phone" placeholder="请输入联系电话"
value="${user.telephone}" class="layui-input"> value="${user.telephone}" class="layui-input">
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item btx">
<label class="layui-form-label">用户警号</label> <label class="layui-form-label">用户警号</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input type="text" name="policemanid" placeholder="请输入警号" <input type="text" name="policemanid" placeholder="请输入警号"
value="${user.policemanid}" class="layui-input"> value="${user.policemanid}" class="layui-input">
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item btx">
<label class="layui-form-label">用户等级</label> <label class="layui-form-label">用户等级</label>
<div class="layui-input-block"> <div class="layui-input-block">
<select id="grade" name="grade" lay-verify="" lay-filter="type"> <select id="grade" name="grade" lay-verify="" lay-filter="type">
...@@ -121,7 +131,7 @@ ...@@ -121,7 +131,7 @@
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item btx">
<label class="layui-form-label">所属单位</label> <label class="layui-form-label">所属单位</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input type="text" name="unitname" id="unitname" lay-verify="required" <input type="text" name="unitname" id="unitname" lay-verify="required"
...@@ -134,7 +144,7 @@ ...@@ -134,7 +144,7 @@
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item btx">
<label class="layui-form-label">用户角色</label> <label class="layui-form-label">用户角色</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input type="text" name="roleName" id="roleName" lay-verify="required" <input type="text" name="roleName" id="roleName" lay-verify="required"
...@@ -146,7 +156,13 @@ ...@@ -146,7 +156,13 @@
</div> </div>
</div> </div>
</div> </div>
<div class="layui-form-item">
<label class="layui-form-label">备注</label>
<div class="layui-input-block">
<input type="text" name="remark" placeholder="请输入备注"
value="${user.remark}" class="layui-input">
</div>
</div>
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">用户状态</label> <label class="layui-form-label">用户状态</label>
<div class="layui-input-block"> <div class="layui-input-block">
...@@ -161,6 +177,19 @@ ...@@ -161,6 +177,19 @@
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">性别</label>
<div class="layui-input-block">
<c:if test="${user.sex==1 or user.sex==null}">
<input type="radio" name="sex" value="1" title="男" checked>
<input type="radio" name="sex" value="2" title="女">
</c:if>
<c:if test="${user.sex==2}">
<input type="radio" name="sex" value="1" title="男">
<input type="radio" name="sex" value="2" title="女" checked>
</c:if>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">显示照片</label> <label class="layui-form-label">显示照片</label>
<div class="layui-input-block"> <div class="layui-input-block">
<c:if test="${user.isShow==0 or user.isShow==null}"> <c:if test="${user.isShow==0 or user.isShow==null}">
...@@ -173,6 +202,8 @@ ...@@ -173,6 +202,8 @@
</c:if> </c:if>
</div> </div>
</div> </div>
<div class="layui-form-item" style="text-align: center"> <div class="layui-form-item" style="text-align: center">
<div class="layui-form-item"> <div class="layui-form-item">
<button class="layui-btn" lay-submit="" lay-filter="rulesSubmit">提交</button> <button class="layui-btn" lay-submit="" lay-filter="rulesSubmit">提交</button>
...@@ -186,6 +217,10 @@ ...@@ -186,6 +217,10 @@
<span hidden id="msg">${msg}</span> <span hidden id="msg">${msg}</span>
<script src="${pageContext.request.contextPath}/resources/layui/layui.js"></script> <script src="${pageContext.request.contextPath}/resources/layui/layui.js"></script>
<script> <script>
//加载日期插件
laydate.render({
elem: '#birthday' //指定元素
});
layui.use(['element', 'form', 'jquery'], function () { layui.use(['element', 'form', 'jquery'], function () {
var form = layui.form, var form = layui.form,
layer = layui.layer, layer = layui.layer,
...@@ -218,13 +253,13 @@ ...@@ -218,13 +253,13 @@
for (var i=0;i<data.length;i++){ for (var i=0;i<data.length;i++){
zNodes.push({id:data[i].codeStr,pId:data[i].pid,name:data[i].name,open:false,file:"core/simpleData"}); zNodes.push({id:data[i].codeStr,pId:data[i].pid,name:data[i].name,open:false,file:"core/simpleData"});
} }
setTree(zNodes,"unit","nocheck","unitcode","unitname"); setTree(zNodes,"unit","nocheck","unitcode","unitname","");
data = ${role}; data = ${role};
var zNodes =[]; var zNodes =[];
for (var i=0;i<data.length;i++){ for (var i=0;i<data.length;i++){
zNodes.push({id:data[i].id,pId:data[i].pid,name:data[i].rolename,open:false,file:"core/simpleData"}); zNodes.push({id:data[i].id,pId:data[i].pid,name:data[i].rolename,open:false,file:"core/simpleData"});
} }
setTree(zNodes,"roleTree","check","roleId","roleName"); setTree(zNodes,"roleTree","check","roleId","roleName","");
}); });
</script> </script>
<script> <script>
......
...@@ -5,6 +5,7 @@ ...@@ -5,6 +5,7 @@
<script src="${pageContext.request.contextPath}/resources/ztree/ztree/jquery.ztree.core.js"></script> <script src="${pageContext.request.contextPath}/resources/ztree/ztree/jquery.ztree.core.js"></script>
<script src="${pageContext.request.contextPath}/resources/ztree/ztree/jquery.ztree.excheck.js"></script> <script src="${pageContext.request.contextPath}/resources/ztree/ztree/jquery.ztree.excheck.js"></script>
<script src="${pageContext.request.contextPath}/resources/common/common.js"></script> <script src="${pageContext.request.contextPath}/resources/common/common.js"></script>
<script src="${pageContext.request.contextPath}/resources/layui/laydate/laydate.js"></script>
<style> <style>
body { body {
margin: 10px; margin: 10px;
......
...@@ -205,13 +205,13 @@ ...@@ -205,13 +205,13 @@
for (var i=0;i<data.length;i++){ for (var i=0;i<data.length;i++){
zNodes.push({id:data[i].codeStr,pId:data[i].pid,name:data[i].name,open:false,file:"core/simpleData"}); zNodes.push({id:data[i].codeStr,pId:data[i].pid,name:data[i].name,open:false,file:"core/simpleData"});
} }
setTree(zNodes,"unit","nocheck","unitcode","unitname"); setTree(zNodes,"unit","nocheck","unitcode","unitname","");
data = ${role}; data = ${role};
var zNodes =[]; var zNodes =[];
for (var i=0;i<data.length;i++){ for (var i=0;i<data.length;i++){
zNodes.push({id:data[i].id,pId:data[i].pid,name:data[i].rolename,open:false,file:"core/simpleData"}); zNodes.push({id:data[i].id,pId:data[i].pid,name:data[i].rolename,open:false,file:"core/simpleData"});
} }
setTree(zNodes,"roleTree","nocheck","roleId","roleName"); setTree(zNodes,"roleTree","nocheck","roleId","roleName","");
}); });
......
...@@ -222,7 +222,7 @@ ...@@ -222,7 +222,7 @@
for (var i=0;i<data.length;i++){ for (var i=0;i<data.length;i++){
zNodes.push({id:data[i].codeStr,pId:data[i].pid,name:data[i].name,open:false,file:"core/simpleData"}); zNodes.push({id:data[i].codeStr,pId:data[i].pid,name:data[i].name,open:false,file:"core/simpleData"});
} }
setTree(zNodes,"unit","nocheck","unitcode","unitname"); setTree(zNodes,"unit","nocheck","unitcode","unitname","");
var data = ${role}; var data = ${role};
var checkData = ${oldRole}; var checkData = ${oldRole};
var oldPerStr = "",oldPerIdStr=""; var oldPerStr = "",oldPerIdStr="";
...@@ -239,7 +239,7 @@ ...@@ -239,7 +239,7 @@
} }
zNodes.push({id:data[i].id,pId:data[i].pid,name:data[i].rolename,checked:bool,open:false,file:"core/simpleData"}); zNodes.push({id:data[i].id,pId:data[i].pid,name:data[i].rolename,checked:bool,open:false,file:"core/simpleData"});
} }
setTree(zNodes,"roleTree","check","roleId","roleName"); setTree(zNodes,"roleTree","check","roleId","roleName","");
//设置原有权限回显 //设置原有权限回显
$("#roleId").val(oldPerIdStr); $("#roleId").val(oldPerIdStr);
$("#roleName").val(oldPerStr); $("#roleName").val(oldPerStr);
......
...@@ -64,7 +64,7 @@ ...@@ -64,7 +64,7 @@
</shiro:hasRole> </shiro:hasRole>
<li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;员工工号:&nbsp;&nbsp;&nbsp;&nbsp;<shiro:principal <li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;员工工号:&nbsp;&nbsp;&nbsp;&nbsp;<shiro:principal
property="username"/> property="username"/>
&nbsp;&nbsp;姓名: &nbsp;&nbsp;&nbsp;&nbsp;
</li> </li>
<%-- <shiro:hasRole name="administrator"> <%-- <shiro:hasRole name="administrator">
<li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;员工工号22:&nbsp;&nbsp;&nbsp;&nbsp;<shiro:principal <li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;员工工号22:&nbsp;&nbsp;&nbsp;&nbsp;<shiro:principal
...@@ -72,20 +72,20 @@ ...@@ -72,20 +72,20 @@
&nbsp;&nbsp;姓名: &nbsp;&nbsp;姓名:
</li> </li>
</shiro:hasRole>--%> </shiro:hasRole>--%>
<li class="dropDown dropDown_hover"> <%--<li class="dropDown dropDown_hover">
<a href="#" class="dropDown_A"><shiro:principal property="trueName"/><i class="Hui-iconfont">&#xe6d5;</i></a> <a href="#" class="dropDown_A"><shiro:principal property="trueName"/><i class="Hui-iconfont">&#xe6d5;</i></a>
<ul class="dropDown-menu menu radius box-shadow"> <ul class="dropDown-menu menu radius box-shadow">
<%--<li> &lt;%&ndash;<li>
<a href="javascript:;" onClick="member_info()">个人信息</a> <a href="javascript:;" onClick="member_info()">个人信息</a>
</li> </li>
<li> <li>
<a href="javascript:;" onClick="member_password_edit()">修改密码</a> <a href="javascript:;" onClick="member_password_edit()">修改密码</a>
</li>--%> </li>&ndash;%&gt;
<li> <li>
<a href="${pageContext.request.contextPath}/logout">退出</a> <a href="${pageContext.request.contextPath}/logout">退出</a>
</li> </li>
</ul> </ul>
</li> </li>--%>
<%--<li id="Hui-msg"> <%--<li id="Hui-msg">
<a href="#" title="消息"><span class="badge badge-danger">1</span><i class="Hui-iconfont" <a href="#" title="消息"><span class="badge badge-danger">1</span><i class="Hui-iconfont"
style="font-size:18px">&#xe68a;</i></a> style="font-size:18px">&#xe68a;</i></a>
...@@ -131,20 +131,20 @@ ...@@ -131,20 +131,20 @@
</c:forEach> </c:forEach>
</div> </div>
</c:forEach> </c:forEach>
<div class="menu_dropdown bk_2"> <%--<div class="menu_dropdown bk_2">
<dl id="menu-member"> <dl id="menu-member">
<dt><%--<i class="Hui-iconfont"></i>--%><a data-href="${pageContext.request.contextPath}/logout" <dt>&lt;%&ndash;<i class="Hui-iconfont"></i>&ndash;%&gt;<a data-href="${pageContext.request.contextPath}/logout"
data-title="退出登录" href="javascript:;">退出登录</a> data-title="退出登录" href="javascript:;">退出登录</a>
</dt> </dt>
</dl> </dl>
</div> </div>--%>
</aside> </aside>
<section class="Hui-article-box"> <section class="Hui-article-box">
<div id="Hui-tabNav" class="Hui-tabNav hidden-xs"> <div id="Hui-tabNav" class="Hui-tabNav hidden-xs">
<div class="Hui-tabNav-wp"> <div class="Hui-tabNav-wp">
<ul id="min_title_list" class="acrossTab cl"> <ul id="min_title_list" class="acrossTab cl">
<li class="active"> <li class="active">
<span title="我的桌面" data-href="${pageContext.request.contextPath}/admin/pagejump/welcome">我的桌面</span> <span title="用户中心" data-href="${pageContext.request.contextPath}/admin/user/list">用户中心</span>
<em></em></li> <em></em></li>
</ul> </ul>
</div> </div>
......
...@@ -7,8 +7,14 @@ var timestamp=new Date().getTime(); ...@@ -7,8 +7,14 @@ var timestamp=new Date().getTime();
* @param type 树类型,check为带多选框的,nocheck为不带多选框的 * @param type 树类型,check为带多选框的,nocheck为不带多选框的
* @param kid 即页面所需要传到后台的数据的input的id * @param kid 即页面所需要传到后台的数据的input的id
* @param vid 即页面所需要展现数据的input的id * @param vid 即页面所需要展现数据的input的id
* @param glcs 父子级关联参数
* chkboxType: { “Y”: “ps”, “N”: “ps” }
* Y 属性定义 checkbox 被勾选后的情况;
* N 属性定义 checkbox 取消勾选后的情况;
* “p” 表示操作会影响父级节点;
* “s” 表示操作会影响子级节点。
*/ */
function setTree(data,treeId,type,kid,vid) { function setTree(data,treeId,type,kid,vid,glcs) {
var setting = {} var setting = {}
if (type=="check"){ if (type=="check"){
setting = { setting = {
...@@ -18,7 +24,7 @@ function setTree(data,treeId,type,kid,vid) { ...@@ -18,7 +24,7 @@ function setTree(data,treeId,type,kid,vid) {
nocheckInherit: true, nocheckInherit: true,
chkDisabledInherit: true, chkDisabledInherit: true,
chkStyle: "checkbox", chkStyle: "checkbox",
chkboxType: { "Y": "ps", "N": "ps" } chkboxType: { "Y": glcs, "N": glcs }
}, },
async: { async: {
enable: true, enable: true,
......
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
<!--
2013-9-30: Created.
-->
<svg>
<metadata>
Created by iconfont
</metadata>
<defs>
<font id="laydate-icon" horiz-adv-x="1024" >
<font-face
font-family="laydate-icon"
font-weight="500"
font-stretch="normal"
units-per-em="1024"
ascent="896"
descent="-128"
/>
<missing-glyph />
<glyph glyph-name="x" unicode="x" horiz-adv-x="1001"
d="M281 543q-27 -1 -53 -1h-83q-18 0 -36.5 -6t-32.5 -18.5t-23 -32t-9 -45.5v-76h912v41q0 16 -0.5 30t-0.5 18q0 13 -5 29t-17 29.5t-31.5 22.5t-49.5 9h-133v-97h-438v97zM955 310v-52q0 -23 0.5 -52t0.5 -58t-10.5 -47.5t-26 -30t-33 -16t-31.5 -4.5q-14 -1 -29.5 -0.5
t-29.5 0.5h-32l-45 128h-439l-44 -128h-29h-34q-20 0 -45 1q-25 0 -41 9.5t-25.5 23t-13.5 29.5t-4 30v167h911zM163 247q-12 0 -21 -8.5t-9 -21.5t9 -21.5t21 -8.5q13 0 22 8.5t9 21.5t-9 21.5t-22 8.5zM316 123q-8 -26 -14 -48q-5 -19 -10.5 -37t-7.5 -25t-3 -15t1 -14.5
t9.5 -10.5t21.5 -4h37h67h81h80h64h36q23 0 34 12t2 38q-5 13 -9.5 30.5t-9.5 34.5q-5 19 -11 39h-368zM336 498v228q0 11 2.5 23t10 21.5t20.5 15.5t34 6h188q31 0 51.5 -14.5t20.5 -52.5v-227h-327z" />
<glyph glyph-name="youyou" unicode="&#58882;" d="M283.648 721.918976 340.873216 780.926976 740.352 383.997952 340.876288-12.925952 283.648 46.077952 619.52 383.997952Z" horiz-adv-x="1024" />
<glyph glyph-name="zuozuo" unicode="&#58883;" d="M740.352 721.918976 683.126784 780.926976 283.648 383.997952 683.123712-12.925952 740.352 46.077952 404.48 383.997952Z" horiz-adv-x="1024" />
<glyph glyph-name="xiayiye" unicode="&#58970;" d="M62.573 384.103l423.401 423.662c18.985 18.985 49.757 18.985 68.727 0 18.982-18.972 18.985-49.746 0-68.729l-355.058-355.067 356.796-356.796c18.977-18.971 18.976-49.746 0-68.727-18.982-18.976-49.751-18.976-68.727 0l-39.753 39.753 0.269 0.246-385.655 385.661zM451.365 384.103l423.407 423.662c18.985 18.985 49.757 18.985 68.727 0 18.982-18.972 18.985-49.746 0-68.729l-355.058-355.067 356.796-356.796c18.977-18.971 18.976-49.746 0-68.727-18.982-18.976-49.757-18.977-68.727 0l-39.762 39.754 0.273 0.249-385.662 385.661zM451.365 384.103z" horiz-adv-x="1024" />
<glyph glyph-name="xiayiye1" unicode="&#58971;" d="M948.066926 382.958838l-411.990051-412.24426c-18.47333-18.47333-48.417689-18.47333-66.875207 0-18.47333 18.461167-18.47333 48.405526 0 66.875207L814.691135 383.088983 467.512212 730.269123c-18.466032 18.458735-18.466032 48.405526 0 66.873991 18.468465 18.464816 48.410391 18.464816 66.872774 0l38.682336-38.682336-0.261507-0.239614 375.259894-375.265975v0.003649m-378.312834 0L157.756743-29.285422c-18.47333-18.47333-48.415256-18.47333-66.872775 0-18.47333 18.461167-18.47333 48.405526 0 66.875207L436.369787 383.088983 89.19208 730.269123c-18.4636 18.458735-18.4636 48.405526 0 66.873991 18.470898 18.464816 48.415256 18.464816 66.872774 0l38.692067-38.682336-0.266372-0.239614 375.267191-375.265975-0.004865 0.003649m0 0z" horiz-adv-x="1024" />
</font>
</defs></svg>
/*! laydate-v5.0.9 日期与时间组件 MIT License http://www.layui.com/laydate/ By 贤心 */
.laydate-set-ym,.layui-laydate,.layui-laydate *,.layui-laydate-list{box-sizing:border-box}html #layuicss-laydate{display:none;position:absolute;width:1989px}.layui-laydate *{margin:0;padding:0}.layui-laydate{position:absolute;z-index:66666666;margin:5px 0;border-radius:2px;font-size:14px;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-name:laydate-upbit;animation-name:laydate-upbit}.layui-laydate-main{width:272px}.layui-laydate-content td,.layui-laydate-header *,.layui-laydate-list li{transition-duration:.3s;-webkit-transition-duration:.3s}@-webkit-keyframes laydate-upbit{from{-webkit-transform:translate3d(0,20px,0);opacity:.3}to{-webkit-transform:translate3d(0,0,0);opacity:1}}@keyframes laydate-upbit{from{transform:translate3d(0,20px,0);opacity:.3}to{transform:translate3d(0,0,0);opacity:1}}.layui-laydate-static{position:relative;z-index:0;display:inline-block;margin:0;-webkit-animation:none;animation:none}.laydate-ym-show .laydate-next-m,.laydate-ym-show .laydate-prev-m{display:none!important}.laydate-ym-show .laydate-next-y,.laydate-ym-show .laydate-prev-y{display:inline-block!important}.laydate-time-show .laydate-set-ym span[lay-type=month],.laydate-time-show .laydate-set-ym span[lay-type=year],.laydate-time-show .layui-laydate-header .layui-icon,.laydate-ym-show .laydate-set-ym span[lay-type=month]{display:none!important}.layui-laydate-header{position:relative;line-height:30px;padding:10px 70px 5px}.laydate-set-ym span,.layui-laydate-header i{padding:0 5px;cursor:pointer}.layui-laydate-header *{display:inline-block;vertical-align:bottom}.layui-laydate-header i{position:absolute;top:10px;color:#999;font-size:18px}.layui-laydate-header i.laydate-prev-y{left:15px}.layui-laydate-header i.laydate-prev-m{left:45px}.layui-laydate-header i.laydate-next-y{right:15px}.layui-laydate-header i.laydate-next-m{right:45px}.laydate-set-ym{width:100%;text-align:center;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.laydate-time-text{cursor:default!important}.layui-laydate-content{position:relative;padding:10px;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.layui-laydate-content table{border-collapse:collapse;border-spacing:0}.layui-laydate-content td,.layui-laydate-content th{width:36px;height:30px;padding:5px;text-align:center}.layui-laydate-content td{position:relative;cursor:pointer}.laydate-day-mark{position:absolute;left:0;top:0;width:100%;height:100%;line-height:30px;font-size:12px;overflow:hidden}.laydate-day-mark::after{position:absolute;content:'';right:2px;top:2px;width:5px;height:5px;border-radius:50%}.layui-laydate-footer{position:relative;height:46px;line-height:26px;padding:10px 20px}.layui-laydate-footer span{margin-right:15px;display:inline-block;cursor:pointer;font-size:12px}.layui-laydate-footer span:hover{color:#5FB878}.laydate-footer-btns{position:absolute;right:10px;top:10px}.laydate-footer-btns span{height:26px;line-height:26px;margin:0 0 0 -1px;padding:0 10px;border:1px solid #C9C9C9;background-color:#fff;white-space:nowrap;vertical-align:top;border-radius:2px}.layui-laydate-list>li,.layui-laydate-range .layui-laydate-main{display:inline-block;vertical-align:middle}.layui-laydate-list{position:absolute;left:0;top:0;width:100%;height:100%;padding:10px;background-color:#fff}.layui-laydate-list>li{position:relative;width:33.3%;height:36px;line-height:36px;margin:3px 0;text-align:center;cursor:pointer}.laydate-month-list>li{width:25%;margin:17px 0}.laydate-time-list>li{height:100%;margin:0;line-height:normal;cursor:default}.laydate-time-list p{position:relative;top:-4px;line-height:29px}.laydate-time-list ol{height:181px;overflow:hidden}.laydate-time-list>li:hover ol{overflow-y:auto}.laydate-time-list ol li{width:130%;padding-left:33px;line-height:30px;text-align:left;cursor:pointer}.layui-laydate-hint{position:absolute;top:115px;left:50%;width:250px;margin-left:-125px;line-height:20px;padding:15px;text-align:center;font-size:12px}.layui-laydate-range{width:546px}.layui-laydate-range .laydate-main-list-0 .laydate-next-m,.layui-laydate-range .laydate-main-list-0 .laydate-next-y,.layui-laydate-range .laydate-main-list-1 .laydate-prev-m,.layui-laydate-range .laydate-main-list-1 .laydate-prev-y{display:none}.layui-laydate-range .laydate-main-list-1 .layui-laydate-content{border-left:1px solid #e2e2e2}.layui-laydate,.layui-laydate-hint{border:1px solid #d2d2d2;box-shadow:0 2px 4px rgba(0,0,0,.12);background-color:#fff;color:#666}.layui-laydate-header{border-bottom:1px solid #e2e2e2}.layui-laydate-header i:hover,.layui-laydate-header span:hover{color:#5FB878}.layui-laydate-content{border-top:none 0;border-bottom:none 0}.layui-laydate-content th{font-weight:400;color:#333}.layui-laydate-content td{color:#666}.layui-laydate-content td.laydate-selected{background-color:#00F7DE}.laydate-selected:hover{background-color:#00F7DE!important}.layui-laydate-content td:hover,.layui-laydate-list li:hover{background-color:#eaeaea;color:#333}.laydate-time-list li ol{margin:0;padding:0;border:1px solid #e2e2e2;border-left-width:0}.laydate-time-list li:first-child ol{border-left-width:1px}.laydate-time-list>li:hover{background:0 0}.layui-laydate-content .laydate-day-next,.layui-laydate-content .laydate-day-prev{color:#d2d2d2}.laydate-selected.laydate-day-next,.laydate-selected.laydate-day-prev{background-color:#f8f8f8!important}.layui-laydate-footer{border-top:1px solid #e2e2e2}.layui-laydate-hint{color:#FF5722}.laydate-day-mark::after{background-color:#5FB878}.layui-laydate-content td.layui-this .laydate-day-mark::after{display:none}.layui-laydate-footer span[lay-type=date]{color:#5FB878}.layui-laydate .layui-this{background-color:#009688!important;color:#fff!important}.layui-laydate .laydate-disabled,.layui-laydate .laydate-disabled:hover{background:0 0!important;color:#d2d2d2!important;cursor:not-allowed!important;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.laydate-theme-molv{border:none}.laydate-theme-molv.layui-laydate-range{width:548px}.laydate-theme-molv .layui-laydate-main{width:274px}.laydate-theme-molv .layui-laydate-header{border:none;background-color:#009688}.laydate-theme-molv .layui-laydate-header i,.laydate-theme-molv .layui-laydate-header span{color:#f6f6f6}.laydate-theme-molv .layui-laydate-header i:hover,.laydate-theme-molv .layui-laydate-header span:hover{color:#fff}.laydate-theme-molv .layui-laydate-content{border:1px solid #e2e2e2;border-top:none;border-bottom:none}.laydate-theme-molv .laydate-main-list-1 .layui-laydate-content{border-left:none}.laydate-theme-grid .laydate-month-list>li,.laydate-theme-grid .laydate-year-list>li,.laydate-theme-grid .layui-laydate-content td,.laydate-theme-grid .layui-laydate-content thead,.laydate-theme-molv .layui-laydate-footer{border:1px solid #e2e2e2}.laydate-theme-grid .laydate-selected,.laydate-theme-grid .laydate-selected:hover{background-color:#f2f2f2!important;color:#009688!important}.laydate-theme-grid .laydate-selected.laydate-day-next,.laydate-theme-grid .laydate-selected.laydate-day-prev{color:#d2d2d2!important}.laydate-theme-grid .laydate-month-list,.laydate-theme-grid .laydate-year-list{margin:1px 0 0 1px}.laydate-theme-grid .laydate-month-list>li,.laydate-theme-grid .laydate-year-list>li{margin:0 -1px -1px 0}.laydate-theme-grid .laydate-year-list>li{height:43px;line-height:43px}.laydate-theme-grid .laydate-month-list>li{height:71px;line-height:71px}@font-face{font-family:laydate-icon;src:url(font/iconfont.eot);src:url(font/iconfont.eot#iefix) format('embedded-opentype'),url(font/iconfont.svg#iconfont) format('svg'),url(font/iconfont.woff) format('woff'),url(font/iconfont.ttf) format('truetype')}.laydate-icon{font-family:laydate-icon!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment