现在有两个字段role 和user
role
角色名称 | 角色 |
---|---|
管理员 | 10001 |
员工 | 10002 |
user
用户类型对应role的角色(管理员、员工)
用户名称 | 用户id | 用户类型 |
---|---|---|
admin | 10001 | 10001 |
jessen | 10002 | 10001 |
hailen | 10003 | 10002 |
eric | 10004 | 10002 |
tony | 10005 | 10002 |
rodgers | 10006 | 10003 |
需求:在选择用户的时候,根据前面的角色弹出对应的user
如图:
需求清楚了,那开始动手吧!
新建LOVORA_20796_ORG_ROLE
自定义SQL
select
r.role_id,
r.role_name
from sys_role_b r
r.role_id LIKE concat( concat("%",#{roleId,jdbcType=VARCHAR}),"%")
新建LOVORA_20796_ORG_USER
自定义SQL
select u.user_id,u.user_name,u.user_type from sys_user u
u.user_id like concat(concat("%",#{userId,jdbcType=VARCHAR}),"%")
u.user_name like concat(concat("%",#{userName,jdbcType=VARCHAR}),"%")
u.user_type =#{userType}
修改html中的字段:
{
field: "roleId",
title: '<@spring.message "ora20796orgaccess.roleid"/>',
width: 120,
template: function (dataItem) {
return dataItem['roleName'] || ''; /* 数据列默认显示值 */
},
editor: function (container, options) {
$('').appendTo(container)
.kendoLov($.extend(<@lov "ORA_20796_ORG_ROLE" />, {
query: function (e) {
e.param['enableFlag'] = 'Y';
options.model.set('userId',null);
options.model.set('userName', null);
},
select: function (e) {
// 将选择后的属性更新到数据模型中以保存
options.model.set('roleId', e.item.roleId);
},
textField: 'roleName', /* 编辑器显示的值 */
model: options.model
}));
}
},
{
field: "userId",
title: '<@spring.message "ora20796orgaccess.userid"/>',
width: 120,
template: function (dataItem) {
return dataItem['userName'] || ''; /* 数据列默认显示值 */
},
editor: function (container, options) {
$('').appendTo(container)
.kendoLov($.extend(<@lov "ORA_20796_ORG_USER" />, {
query: function (e) {
e.param['enableFlag'] = 'Y';
e.param['userType'] = options.model.get("roleId");
},
select: function (e) {
// 将选择后的属性更新到数据模型中以保存
options.model.set('userId', e.item.userId);
},
textField: 'userName', /* 编辑器显示的值 */
model: options.model
}));
}
},
参数说明: