新增用户和组织管理功能的,控制权限类型设置user.adminCtrlPermi,1拥有的权限 2管理的权限,无限级授权应用场景使用
This commit is contained in:
@@ -47,8 +47,9 @@ jdbc:
|
|||||||
# JTA 分布式事务(v4.0.4+)
|
# JTA 分布式事务(v4.0.4+)
|
||||||
jta:
|
jta:
|
||||||
enabled: false
|
enabled: false
|
||||||
# 事务超时时间,单位毫秒(3分钟)
|
|
||||||
transactionTimeout: 180000
|
# 事务超时时间,单位秒(30分钟)(v4.1.5+)
|
||||||
|
transactionTimeout: 1800
|
||||||
|
|
||||||
# 表名前缀
|
# 表名前缀
|
||||||
tablePrefix: js_
|
tablePrefix: js_
|
||||||
@@ -147,6 +148,9 @@ user:
|
|||||||
remarks: ""
|
remarks: ""
|
||||||
}]
|
}]
|
||||||
|
|
||||||
|
# 管理功能的控制权限类型(1拥有的权限 2管理的权限)(v4.1.5+)
|
||||||
|
adminCtrlPermi: 2
|
||||||
|
|
||||||
# 多租户模式(SAAS模式)(专业版)
|
# 多租户模式(SAAS模式)(专业版)
|
||||||
useCorpModel: false
|
useCorpModel: false
|
||||||
|
|
||||||
|
|||||||
@@ -19,7 +19,7 @@
|
|||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<#form:treeselect id="parent" title="${text('上级公司')}"
|
<#form:treeselect id="parent" title="${text('上级公司')}"
|
||||||
path="parent.id" labelPath="parent.companyName"
|
path="parent.id" labelPath="parent.companyName"
|
||||||
url="${ctx}/sys/company/treeData?excludeCode=${company.id}&ctrlPermi=2"
|
url="${ctx}/sys/company/treeData?excludeCode=${company.id}&ctrlPermi=${@Global.getConfig('user.adminCtrlPermi', '2')}"
|
||||||
class="" allowClear="true" canSelectRoot="true" canSelectParent="true"/>
|
class="" allowClear="true" canSelectRoot="true" canSelectParent="true"/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -18,7 +18,7 @@
|
|||||||
<div class="box-body">
|
<div class="box-body">
|
||||||
<#form:form id="searchForm" model="${company}" action="${ctx}/sys/company/listData" method="post" class="form-inline hide"
|
<#form:form id="searchForm" model="${company}" action="${ctx}/sys/company/listData" method="post" class="form-inline hide"
|
||||||
data-page-no="${parameter.pageNo}" data-page-size="${parameter.pageSize}" data-order-by="${parameter.orderBy}">
|
data-page-no="${parameter.pageNo}" data-page-size="${parameter.pageSize}" data-order-by="${parameter.orderBy}">
|
||||||
<#form:hidden name="ctrlPermi" value="2"/>
|
<#form:hidden name="ctrlPermi" value="${@Global.getConfig('user.adminCtrlPermi', '2')}"/>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="control-label">${text('公司代码')}:</label>
|
<label class="control-label">${text('公司代码')}:</label>
|
||||||
<div class="control-inline">
|
<div class="control-inline">
|
||||||
|
|||||||
@@ -19,7 +19,7 @@
|
|||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<#form:treeselect id="parent" title="${text('上级机构')}"
|
<#form:treeselect id="parent" title="${text('上级机构')}"
|
||||||
path="parent.id" labelPath="parent.officeName"
|
path="parent.id" labelPath="parent.officeName"
|
||||||
url="${ctx}/sys/office/treeData?excludeCode=${office.id}&ctrlPermi=2"
|
url="${ctx}/sys/office/treeData?excludeCode=${office.id}&ctrlPermi=${@Global.getConfig('user.adminCtrlPermi', '2')}"
|
||||||
class="" allowClear="true" canSelectRoot="true" canSelectParent="true"/>
|
class="" allowClear="true" canSelectRoot="true" canSelectParent="true"/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -18,7 +18,7 @@
|
|||||||
<div class="box-body">
|
<div class="box-body">
|
||||||
<#form:form id="searchForm" model="${office}" action="${ctx}/sys/office/listData" method="post" class="form-inline hide"
|
<#form:form id="searchForm" model="${office}" action="${ctx}/sys/office/listData" method="post" class="form-inline hide"
|
||||||
data-page-no="${parameter.pageNo}" data-page-size="${parameter.pageSize}" data-order-by="${parameter.orderBy}">
|
data-page-no="${parameter.pageNo}" data-page-size="${parameter.pageSize}" data-order-by="${parameter.orderBy}">
|
||||||
<#form:hidden name="ctrlPermi" value="2"/>
|
<#form:hidden name="ctrlPermi" value="${@Global.getConfig('user.adminCtrlPermi', '2')}"/>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="control-label">${text('机构代码')}:</label>
|
<label class="control-label">${text('机构代码')}:</label>
|
||||||
<div class="control-inline">
|
<div class="control-inline">
|
||||||
|
|||||||
@@ -176,7 +176,7 @@ var roleGrid = $("#roleGrid").dataGrid({
|
|||||||
url: '${ctx}/sys/role/treeData',
|
url: '${ctx}/sys/role/treeData',
|
||||||
postData: [
|
postData: [
|
||||||
<%// {name:'userType',value:'employee'}, // 指定用户类型的角色 %>
|
<%// {name:'userType',value:'employee'}, // 指定用户类型的角色 %>
|
||||||
<%// {name:'ctrlPermi',value:'2'} // 过滤可管理的角色 %>
|
<%// {name:'ctrlPermi',value:'${@Global.getConfig("user.adminCtrlPermi", "2")}'} // 过滤可管理的角色 %>
|
||||||
{name:'isAll',value:'true'} <% // 显示所有角色(与上方两个条件互斥) %>
|
{name:'isAll',value:'true'} <% // 显示所有角色(与上方两个条件互斥) %>
|
||||||
],
|
],
|
||||||
columnModel: [
|
columnModel: [
|
||||||
|
|||||||
@@ -21,7 +21,7 @@
|
|||||||
<div class="col-sm-5">
|
<div class="col-sm-5">
|
||||||
<#form:treeselect id="office" title="${text('机构选择')}"
|
<#form:treeselect id="office" title="${text('机构选择')}"
|
||||||
path="officeCode" labelPath="officeName" readonly="${!employeeOffice.isNewRecord}"
|
path="officeCode" labelPath="officeName" readonly="${!employeeOffice.isNewRecord}"
|
||||||
url="${ctx}/sys/office/treeData?ctrlPermi=2" class="required" allowClear="false"/>
|
url="${ctx}/sys/office/treeData?ctrlPermi=${@Global.getConfig('user.adminCtrlPermi', '2')}" class="required" allowClear="false"/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -25,7 +25,7 @@
|
|||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<#form:treeselect id="office" title="${text('机构选择')}"
|
<#form:treeselect id="office" title="${text('机构选择')}"
|
||||||
path="employee.office.officeCode" labelPath="employee.office.officeName"
|
path="employee.office.officeCode" labelPath="employee.office.officeName"
|
||||||
url="${ctx}/sys/office/treeData?ctrlPermi=2" class="required" allowClear="false"/>
|
url="${ctx}/sys/office/treeData?ctrlPermi=${@Global.getConfig('user.adminCtrlPermi', '2')}" class="required" allowClear="false"/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -36,7 +36,7 @@
|
|||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<#form:treeselect id="company" title="${text('公司选择')}"
|
<#form:treeselect id="company" title="${text('公司选择')}"
|
||||||
path="employee.company.companyCode" labelPath="employee.company.companyName"
|
path="employee.company.companyCode" labelPath="employee.company.companyName"
|
||||||
url="${ctx}/sys/company/treeData?ctrlPermi=2" btnClass="" allowClear="true"/>
|
url="${ctx}/sys/company/treeData?ctrlPermi=${@Global.getConfig('user.adminCtrlPermi', '2')}" btnClass="" allowClear="true"/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -269,7 +269,7 @@ var roleGrid = $("#roleGrid").dataGrid({
|
|||||||
url: '${ctx}/sys/role/treeData',
|
url: '${ctx}/sys/role/treeData',
|
||||||
postData: [
|
postData: [
|
||||||
{name:'userType',value:'employee'},
|
{name:'userType',value:'employee'},
|
||||||
{name:'ctrlPermi',value:'2'}
|
{name:'ctrlPermi',value:'${@Global.getConfig("user.adminCtrlPermi", "2")}'}
|
||||||
],
|
],
|
||||||
columnModel: [
|
columnModel: [
|
||||||
{header:'${text("角色名称")}', name:'name', sortable:false, width:100, align:"center"},
|
{header:'${text("角色名称")}', name:'name', sortable:false, width:100, align:"center"},
|
||||||
|
|||||||
@@ -130,8 +130,7 @@ for (var i=0; i<dataScopes.length; i++){
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
// 控制权限 ctrlPermi: 0全部 1拥有权限 2管理权限
|
// 控制权限 ctrlPermi: 0全部 1拥有权限 2管理权限
|
||||||
if (!(dataScope.ctrlPermi == '0'
|
if (!(dataScope.ctrlPermi == '0' || dataScope.ctrlPermi == '1')){
|
||||||
|| dataScope.ctrlPermi == '1')){
|
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
$('#dataScopeTrees').append(js.template('dataScopeTpl', {
|
$('#dataScopeTrees').append(js.template('dataScopeTpl', {
|
||||||
@@ -140,7 +139,7 @@ for (var i=0; i<dataScopes.length; i++){
|
|||||||
$.ajax({
|
$.ajax({
|
||||||
type: 'POST',
|
type: 'POST',
|
||||||
url: "${ctx}" + ctrlDataUrl + (ctrlDataUrl.indexOf("?")!=-1?'&':'?') + "___t=" + new Date().getTime(),
|
url: "${ctx}" + ctrlDataUrl + (ctrlDataUrl.indexOf("?")!=-1?'&':'?') + "___t=" + new Date().getTime(),
|
||||||
data: {ctrlPermi: '2'},
|
data: {ctrlPermi: '${@Global.getConfig("user.adminCtrlPermi", "2")}'},
|
||||||
dataType: 'json',
|
dataType: 'json',
|
||||||
async: false,
|
async: false,
|
||||||
error: function(data){
|
error: function(data){
|
||||||
|
|||||||
@@ -44,7 +44,8 @@ var setting = {view:{selectedMulti:false},data:{key:{title:"title"},simpleData:{
|
|||||||
win.page();
|
win.page();
|
||||||
}}
|
}}
|
||||||
}, tree, loadTree = function(){
|
}, tree, loadTree = function(){
|
||||||
js.ajaxSubmit("${ctx}/sys/office/treeData?___t=" + new Date().getTime(), {ctrlPermi:'2'/*1拥有的权限 2管理的权限*/}, function(data){
|
js.ajaxSubmit("${ctx}/sys/office/treeData?___t=" + new Date().getTime(),
|
||||||
|
{ctrlPermi:'${@Global.getConfig("user.adminCtrlPermi", "2")}'/*1拥有的权限 2管理的权限*/}, function(data){
|
||||||
tree = $.fn.zTree.init($("#tree"), setting, data);//.expandAll(true);
|
tree = $.fn.zTree.init($("#tree"), setting, data);//.expandAll(true);
|
||||||
// 展开第一级节点
|
// 展开第一级节点
|
||||||
var nodes = tree.getNodesByParam("level", 0);
|
var nodes = tree.getNodesByParam("level", 0);
|
||||||
|
|||||||
@@ -24,7 +24,7 @@
|
|||||||
<div class="box-body">
|
<div class="box-body">
|
||||||
<#form:form id="searchForm" model="${empUser}" action="${ctx}/sys/empUser/listData" method="post" class="form-inline "
|
<#form:form id="searchForm" model="${empUser}" action="${ctx}/sys/empUser/listData" method="post" class="form-inline "
|
||||||
data-page-no="${parameter.pageNo}" data-page-size="${parameter.pageSize}" data-order-by="${parameter.orderBy}">
|
data-page-no="${parameter.pageNo}" data-page-size="${parameter.pageSize}" data-order-by="${parameter.orderBy}">
|
||||||
<#form:hidden name="ctrlPermi" value="2"/>
|
<#form:hidden name="ctrlPermi" value="${@Global.getConfig('user.adminCtrlPermi', '2')}"/>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="control-label">${text('账号')}:</label>
|
<label class="control-label">${text('账号')}:</label>
|
||||||
<div class="control-inline">
|
<div class="control-inline">
|
||||||
@@ -67,7 +67,7 @@
|
|||||||
<div class="control-inline width-90">
|
<div class="control-inline width-90">
|
||||||
<#form:treeselect id="office" title="${text('机构选择')}"
|
<#form:treeselect id="office" title="${text('机构选择')}"
|
||||||
path="employee.office.officeCode" labelPath="employee.office.officeName"
|
path="employee.office.officeCode" labelPath="employee.office.officeName"
|
||||||
url="${ctx}/sys/office/treeData?ctrlPermi=2" btnClass="btn-sm" allowClear="true" canSelectParent="true"/>
|
url="${ctx}/sys/office/treeData?ctrlPermi=${@Global.getConfig('user.adminCtrlPermi', '2')}" btnClass="btn-sm" allowClear="true" canSelectParent="true"/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
@@ -75,7 +75,7 @@
|
|||||||
<div class="control-inline width-90">
|
<div class="control-inline width-90">
|
||||||
<#form:treeselect id="company" title="${text('公司选择')}"
|
<#form:treeselect id="company" title="${text('公司选择')}"
|
||||||
path="employee.company.companyCode" labelPath="employee.company.companyName"
|
path="employee.company.companyCode" labelPath="employee.company.companyName"
|
||||||
url="${ctx}/sys/company/treeData?ctrlPermi=2" btnClass="btn-sm" allowClear="true" canSelectParent="true"/>
|
url="${ctx}/sys/company/treeData?ctrlPermi=${@Global.getConfig('user.adminCtrlPermi', '2')}" btnClass="btn-sm" allowClear="true" canSelectParent="true"/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
|
|||||||
@@ -130,8 +130,7 @@ for (var i=0; i<dataScopes.length; i++){
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
// 控制权限 ctrlPermi: 0全部 1拥有权限 2管理权限
|
// 控制权限 ctrlPermi: 0全部 1拥有权限 2管理权限
|
||||||
if (!(dataScope.ctrlPermi == '0'
|
if (!(dataScope.ctrlPermi == '0' || dataScope.ctrlPermi == '2')){
|
||||||
|| dataScope.ctrlPermi == '2')){
|
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
$('#dataScopeTrees').append(js.template('dataScopeTpl', {
|
$('#dataScopeTrees').append(js.template('dataScopeTpl', {
|
||||||
@@ -140,7 +139,7 @@ for (var i=0; i<dataScopes.length; i++){
|
|||||||
$.ajax({
|
$.ajax({
|
||||||
type: 'POST',
|
type: 'POST',
|
||||||
url: "${ctx}" + ctrlDataUrl + (ctrlDataUrl.indexOf("?")!=-1?'&':'?') + "___t=" + new Date().getTime(),
|
url: "${ctx}" + ctrlDataUrl + (ctrlDataUrl.indexOf("?")!=-1?'&':'?') + "___t=" + new Date().getTime(),
|
||||||
data: {ctrlPermi: '2'},
|
data: {ctrlPermi: '${@Global.getConfig("user.adminCtrlPermi", "2")}'},
|
||||||
dataType: 'json',
|
dataType: 'json',
|
||||||
async: false,
|
async: false,
|
||||||
error: function(data){
|
error: function(data){
|
||||||
|
|||||||
@@ -125,7 +125,7 @@ jdbc:
|
|||||||
# jta:
|
# jta:
|
||||||
# enabled: false
|
# enabled: false
|
||||||
|
|
||||||
# # 事务超时时间,单位秒(30分钟)
|
# # 事务超时时间,单位秒(30分钟)(v4.1.5+)
|
||||||
# transactionTimeout: 1800
|
# transactionTimeout: 1800
|
||||||
|
|
||||||
# # 表名前缀
|
# # 表名前缀
|
||||||
@@ -248,6 +248,9 @@ logging:
|
|||||||
# remarks: ""
|
# remarks: ""
|
||||||
# }]
|
# }]
|
||||||
#
|
#
|
||||||
|
# # 管理功能的控制权限类型(1拥有的权限 2管理的权限)(v4.1.5+)
|
||||||
|
# adminCtrlPermi: 2
|
||||||
|
#
|
||||||
# # 多租户模式(SAAS模式)(专业版)
|
# # 多租户模式(SAAS模式)(专业版)
|
||||||
# useCorpModel: false
|
# useCorpModel: false
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user