Commit 044665ec by java-李谡

修改role 名称校验接口

parent 9f6ea048
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ include file="/WEB-INF/views/include/taglib.jsp"%>
<%@ include file="/WEB-INF/views/include/taglib.jsp" %>
<html>
<head>
<title>角色管理</title>
<meta name="decorator" content="default"/>
<%@include file="/WEB-INF/views/include/treeview.jsp" %>
<script type="text/javascript">
$(document).ready(function(){
$(document).ready(function () {
// $("#name").focus();
$("#inputForm").validate({
rules: {
name: {remote: "${ctx}/sys/role/checkName?oldName=" + encodeURIComponent("${role.name}")},
enname: {remote: "${ctx}/sys/role/checkEnname?oldEnname=" + encodeURIComponent("${role.enname}")}
enname: {remote: "${ctx}/sys/role/checkEnname?oldEnName=" + encodeURIComponent("${role.enname}")}
},
messages: {
name: {remote: "角色名已存在"},
enname: {remote: "英文名已存在"}
},
submitHandler: function(form){
submitHandler: function (form) {
var ids = [], nodes = tree.getCheckedNodes(true);
for(var i=0; i<nodes.length; i++) {
for (var i = 0; i < nodes.length; i++) {
ids.push(nodes[i].id);
}
$("#menuIds").val(ids);
var ids2 = [], nodes2 = tree2.getCheckedNodes(true);
for(var i=0; i<nodes2.length; i++) {
for (var i = 0; i < nodes2.length; i++) {
ids2.push(nodes2[i].id);
}
$("#officeIds").val(ids2);
......@@ -32,9 +32,9 @@
form.submit();
},
errorContainer: "#messageBox",
errorPlacement: function(error, element) {
errorPlacement: function (error, element) {
$("#messageBox").text("输入有误,请先更正。");
if (element.is(":checkbox")||element.is(":radio")||element.parent().is(".input-append")){
if (element.is(":checkbox") || element.is(":radio") || element.parent().is(".input-append")) {
error.appendTo(element.parent().parent());
} else {
error.insertAfter(element);
......@@ -42,73 +42,96 @@
}
});
var setting = {check:{enable:true,nocheckInherit:true},view:{selectedMulti:false},
data:{simpleData:{enable:true}},callback:{beforeClick:function(id, node){
var setting = {
check: {enable: true, nocheckInherit: true}, view: {selectedMulti: false},
data: {simpleData: {enable: true}}, callback: {
beforeClick: function (id, node) {
tree.checkNode(node, !node.checked, true, true);
return false;
}}};
}
}
};
// 用户-菜单
var zNodes=[
<c:forEach items="${menuList}" var="menu">{id:"${menu.id}", pId:"${not empty menu.parent.id?menu.parent.id:0}", name:"${not empty menu.parent.id?menu.name:'权限列表'}"},
var zNodes = [
<c:forEach items="${menuList}" var="menu">{
id: "${menu.id}",
pId: "${not empty menu.parent.id?menu.parent.id:0}",
name: "${not empty menu.parent.id?menu.name:'权限列表'}"
},
</c:forEach>];
// 初始化树结构
var tree = $.fn.zTree.init($("#menuTree"), setting, zNodes);
// 不选择父节点
tree.setting.check.chkboxType = { "Y" : "ps", "N" : "s" };
tree.setting.check.chkboxType = {"Y": "ps", "N": "s"};
// 默认选择节点
var ids = "${role.menuIds}".split(",");
for(var i=0; i<ids.length; i++) {
for (var i = 0; i < ids.length; i++) {
var node = tree.getNodeByParam("id", ids[i]);
try{tree.checkNode(node, true, false);}catch(e){}
try {
tree.checkNode(node, true, false);
} catch (e) {
}
}
// 默认展开全部节点
tree.expandAll(true);
// 用户-机构
var zNodes2=[
<c:forEach items="${officeList}" var="office">{id:"${office.id}", pId:"${not empty office.parent?office.parent.id:0}", name:"${office.name}"},
var zNodes2 = [
<c:forEach items="${officeList}" var="office">{
id: "${office.id}",
pId: "${not empty office.parent?office.parent.id:0}",
name: "${office.name}"
},
</c:forEach>];
// 初始化树结构
var tree2 = $.fn.zTree.init($("#officeTree"), setting, zNodes2);
// 不选择父节点
tree2.setting.check.chkboxType = { "Y" : "ps", "N" : "s" };
tree2.setting.check.chkboxType = {"Y": "ps", "N": "s"};
// 默认选择节点
var ids2 = "${role.officeIds}".split(",");
for(var i=0; i<ids2.length; i++) {
for (var i = 0; i < ids2.length; i++) {
var node = tree2.getNodeByParam("id", ids2[i]);
try{tree2.checkNode(node, true, false);}catch(e){}
try {
tree2.checkNode(node, true, false);
} catch (e) {
}
}
// 默认展开全部节点
tree2.expandAll(true);
// 刷新(显示/隐藏)机构
refreshOfficeTree();
$("#dataScope").change(function(){
$("#dataScope").change(function () {
refreshOfficeTree();
});
});
function refreshOfficeTree(){
if($("#dataScope").val()==9){
function refreshOfficeTree() {
if ($("#dataScope").val() == 9) {
$("#officeTree").show();
}else{
} else {
$("#officeTree").hide();
}
}
</script>
</head>
<body>
<ul class="nav nav-tabs">
<ul class="nav nav-tabs">
<li><a href="${ctx}/sys/role/">角色列表</a></li>
<li class="active"><a href="${ctx}/sys/role/form?id=${role.id}">角色<shiro:hasPermission name="sys:role:edit">${not empty role.id?'修改':'添加'}</shiro:hasPermission><shiro:lacksPermission name="sys:role:edit">查看</shiro:lacksPermission></a></li>
</ul><br/>
<form:form id="inputForm" modelAttribute="role" action="${ctx}/sys/role/save" method="post" class="form-horizontal">
<li class="active"><a href="${ctx}/sys/role/form?id=${role.id}">角色<shiro:hasPermission
name="sys:role:edit">${not empty role.id?'修改':'添加'}</shiro:hasPermission><shiro:lacksPermission
name="sys:role:edit">查看</shiro:lacksPermission></a></li>
</ul>
<br/>
<form:form id="inputForm" modelAttribute="role" action="${ctx}/sys/role/save" method="post" class="form-horizontal">
<form:hidden path="id"/>
<sys:message content="${message}"/>
<div class="control-group">
<label class="control-label">归属机构:</label>
<div class="controls">
<sys:treeselect id="office" name="office.id" value="${role.office.id}" labelName="office.name" labelValue="${role.office.name}"
title="机构" url="/sys/office/treeData" />
<sys:treeselect id="office" name="office.id" value="${role.office.id}" labelName="office.name"
labelValue="${role.office.name}"
title="机构" url="/sys/office/treeData"/>
</div>
</div>
<div class="control-group">
......@@ -131,10 +154,10 @@
<label class="control-label">角色类型:</label>
<div class="controls">
<form:select path="roleKind" class="input-large required" >
<form:option value="" label="请选择" />
<form:select path="roleKind" class="input-large required">
<form:option value="" label="请选择"/>
<form:options items="${fns:getDictList('role_kind')}"
itemLabel="label" itemValue="value" htmlEscape="false" />
itemLabel="label" itemValue="value" htmlEscape="false"/>
</form:select>
<%--
<form:input path="roleType" htmlEscape="false" maxlength="50" class="required"/>
......@@ -153,7 +176,8 @@
<label class="control-label">是否系统数据:</label>
<div class="controls">
<form:select path="sysData">
<form:options items="${fns:getDictList('yes_no')}" itemLabel="label" itemValue="value" htmlEscape="false"/>
<form:options items="${fns:getDictList('yes_no')}" itemLabel="label" itemValue="value"
htmlEscape="false"/>
</form:select>
<span class="help-inline">“是”代表此数据只有超级管理员能进行修改,“否”则表示拥有角色修改人员的权限都能进行修改</span>
</div>
......@@ -162,7 +186,8 @@
<label class="control-label">是否可用</label>
<div class="controls">
<form:select path="useable">
<form:options items="${fns:getDictList('yes_no')}" itemLabel="label" itemValue="value" htmlEscape="false"/>
<form:options items="${fns:getDictList('yes_no')}" itemLabel="label" itemValue="value"
htmlEscape="false"/>
</form:select>
<span class="help-inline">“是”代表此数据可用,“否”则表示此数据不可用</span>
</div>
......@@ -171,7 +196,8 @@
<label class="control-label">数据范围:</label>
<div class="controls">
<form:select path="dataScope" class="input-medium">
<form:options items="${fns:getDictList('sys_data_scope')}" itemLabel="label" itemValue="value" htmlEscape="false"/>
<form:options items="${fns:getDictList('sys_data_scope')}" itemLabel="label" itemValue="value"
htmlEscape="false"/>
</form:select>
<span class="help-inline">特殊情况下,设置为“按明细设置”,可进行跨机构授权</span>
</div>
......@@ -193,10 +219,11 @@
</div>
<div class="form-actions">
<c:if test="${(role.sysData eq fns:getDictValue('是', 'yes_no', '1') && fns:getUser().admin)||!(role.sysData eq fns:getDictValue('是', 'yes_no', '1'))}">
<shiro:hasPermission name="sys:role:edit"><input id="btnSubmit" class="btn btn-primary" type="submit" value="保 存"/>&nbsp;</shiro:hasPermission>
<shiro:hasPermission name="sys:role:edit"><input id="btnSubmit" class="btn btn-primary" type="submit"
value="保 存"/>&nbsp;</shiro:hasPermission>
</c:if>
<input id="btnCancel" class="btn" type="button" value="返 回" onclick="history.go(-1)"/>
</div>
</form:form>
</form:form>
</body>
</html>
\ No newline at end of file
......@@ -95,7 +95,7 @@ female.user.default.avatar=/images/user/avatar/female_avatar.png
# \u7537\u751F\u5934\u50CF
male.user.default.avatar=/images/user/avatar/male_avatar.png
foc.api.url=http://123.56.146.7/
foc.api.url=http://localhost:8080/
foc.sound.records.url=http://218.241.234.135:8080/ab/jsonData/cdrDataPage
......
#MySQL Database Config(The All Config Is Must)
db.table.prefix=foc_
jdbc.type=mysql
jdbc.driver.class=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://106.75.97.50:3306/jd_foc?useUnicode=true&characterEncoding=utf-8
jdbc.username=focuser
jdbc.password=FOC@2016
jdbc.url=jdbc:mysql://106.75.105.96:5508/jd_foc?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull
jdbc.username=sms_develop
jdbc.password=Develop2018!@#
#\u521d\u59cb\u5316\u8fde\u63a5
jdbc.initialSize=0
#\u8fde\u63a5\u6c60\u7684\u6700\u5927\u6d3b\u52a8\u4e2a\u6570
......
......@@ -37,7 +37,7 @@
<!-- 设置但JDBC类型为空时,某些驱动程序 要指定值,default:OTHER,插入空值时不需要指定类型 -->
<setting name="jdbcTypeForNull" value="NULL"/>
<setting name="logImpl" value="STDOUT_LOGGING" />
<!--<setting name="logImpl" value="STDOUT_LOGGING" />-->
</settings>
......
......@@ -264,16 +264,16 @@ public class RoleController extends BaseController {
* 验证角色英文名是否有效
*
* @param oldEnName
* @param enName
* @param enname
* @return
*/
@RequiresPermissions("user")
@ResponseBody
@RequestMapping(value = "checkEnname")
public String checkEnName(String oldEnName, String enName) {
if (enName != null && enName.equals(oldEnName)) {
public String checkEnName(String oldEnName, String enname) {
if (enname != null && enname.equals(oldEnName)) {
return "true";
} else if (enName != null && systemService.getRoleByEnname(enName) == null) {
} else if (enname != null && systemService.getRoleByEnname(enname) == null) {
return "true";
}
return "false";
......
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