mirror of
https://github.com/sismics/docs.git
synced 2025-12-13 09:46:17 +00:00
Closes #82: Add role to groups
This commit is contained in:
@@ -173,7 +173,7 @@ public class GroupDao {
|
||||
Map<String, Object> parameterMap = new HashMap<String, Object>();
|
||||
List<String> criteriaList = new ArrayList<String>();
|
||||
|
||||
StringBuilder sb = new StringBuilder("select g.GRP_ID_C as c0, g.GRP_NAME_C as c1, g.GRP_IDPARENT_C as c2, gp.GRP_NAME_C as c3 ");
|
||||
StringBuilder sb = new StringBuilder("select g.GRP_ID_C as c0, g.GRP_NAME_C as c1, g.GRP_IDPARENT_C as c2, gp.GRP_NAME_C as c3, g.GRP_IDROLE_C ");
|
||||
if (criteria.getUserId() != null) {
|
||||
sb.append(" , ug.UGP_ID_C ");
|
||||
}
|
||||
@@ -213,7 +213,8 @@ public class GroupDao {
|
||||
.setId((String) o[i++])
|
||||
.setName((String) o[i++])
|
||||
.setParentId((String) o[i++])
|
||||
.setParentName((String) o[i++]);
|
||||
.setParentName((String) o[i++])
|
||||
.setRoleId((String) o[i++]);
|
||||
groupDtoList.add(groupDto);
|
||||
if (criteria.getUserId() != null && o[i++] != null) {
|
||||
userGroupDtoList.add(groupDto);
|
||||
|
||||
@@ -16,17 +16,17 @@ public class RoleBaseFunctionDao {
|
||||
/**
|
||||
* Find the set of base functions of a role.
|
||||
*
|
||||
* @param roleId Role ID
|
||||
* @param roleIdSet Set of role ID
|
||||
* @return Set of base functions
|
||||
*/
|
||||
@SuppressWarnings("unchecked")
|
||||
public Set<String> findByRoleId(String roleId) {
|
||||
public Set<String> findByRoleId(Set<String> roleIdSet) {
|
||||
EntityManager em = ThreadLocalContext.get().getEntityManager();
|
||||
StringBuilder sb = new StringBuilder("select rbf.RBF_IDBASEFUNCTION_C from T_ROLE_BASE_FUNCTION rbf, T_ROLE r");
|
||||
sb.append(" where rbf.RBF_IDROLE_C = :roleId and rbf.RBF_DELETEDATE_D is null");
|
||||
sb.append(" where rbf.RBF_IDROLE_C in (:roleIdSet) and rbf.RBF_DELETEDATE_D is null");
|
||||
sb.append(" and r.ROL_ID_C = rbf.RBF_IDROLE_C and r.ROL_DELETEDATE_D is null");
|
||||
Query q = em.createNativeQuery(sb.toString());
|
||||
q.setParameter("roleId", roleId);
|
||||
q.setParameter("roleIdSet", roleIdSet);
|
||||
return Sets.newHashSet(q.getResultList());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,6 +26,11 @@ public class GroupDto {
|
||||
*/
|
||||
private String parentName;
|
||||
|
||||
/**
|
||||
* Role ID.
|
||||
*/
|
||||
private String roleId;
|
||||
|
||||
public String getId() {
|
||||
return id;
|
||||
}
|
||||
@@ -62,6 +67,15 @@ public class GroupDto {
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getRoleId() {
|
||||
return roleId;
|
||||
}
|
||||
|
||||
public GroupDto setRoleId(String roleId) {
|
||||
this.roleId = roleId;
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(Object obj) {
|
||||
return id.equals(((GroupDto) obj).getId());
|
||||
|
||||
@@ -36,6 +36,12 @@ public class Group implements Loggable {
|
||||
@Column(name = "GRP_NAME_C", nullable = false, length = 50)
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* Role ID.
|
||||
*/
|
||||
@Column(name = "GRP_IDROLE_C", length = 36)
|
||||
private String roleId;
|
||||
|
||||
/**
|
||||
* Deletion date.
|
||||
*/
|
||||
@@ -79,10 +85,20 @@ public class Group implements Loggable {
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getRoleId() {
|
||||
return roleId;
|
||||
}
|
||||
|
||||
public Group setRoleId(String roleId) {
|
||||
this.roleId = roleId;
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return MoreObjects.toStringHelper(this)
|
||||
.add("id", id)
|
||||
.add("roleId", roleId)
|
||||
.add("parentId", parentId)
|
||||
.add("name", name)
|
||||
.toString();
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
create memory table T_GROUP ( GRP_ID_C varchar(36) not null, GRP_IDPARENT_C varchar(36), GRP_NAME_C varchar(50) not null, GRP_DELETEDATE_D datetime, primary key (GRP_ID_C) );
|
||||
create memory table T_GROUP ( GRP_ID_C varchar(36) not null, GRP_IDPARENT_C varchar(36), GRP_NAME_C varchar(50) not null, GRP_IDROLE_C varchar(36), GRP_DELETEDATE_D datetime, primary key (GRP_ID_C) );
|
||||
create memory table T_USER_GROUP ( UGP_ID_C varchar(36) not null, UGP_IDUSER_C varchar(36) not null, UGP_IDGROUP_C varchar(36) not null, UGP_DELETEDATE_D datetime, primary key (UGP_ID_C) );
|
||||
|
||||
insert into T_GROUP(GRP_ID_C, GRP_NAME_C) values('administrators', 'administrators');
|
||||
insert into T_GROUP(GRP_ID_C, GRP_NAME_C, GRP_IDROLE_C) values('administrators', 'administrators', 'admin');
|
||||
insert into T_USER_GROUP(UGP_ID_C, UGP_IDUSER_C, UGP_IDGROUP_C) values('admin-administrators', 'admin', 'administrators');
|
||||
|
||||
update T_CONFIG set CFG_VALUE_C = '8' where CFG_ID_C = 'DB_VERSION';
|
||||
|
||||
Reference in New Issue
Block a user