Browse Source

修改角色排序问题

recovery
ma 4 years ago
parent
commit
f67b30c2fd
  1. 2
      tall/src/main/java/com/ccsens/tall/persist/dao/ProRoleDao.java
  2. 3
      tall/src/main/java/com/ccsens/tall/service/ProRoleService.java
  3. 11
      tall/src/main/resources/mapper_dao/ProRoleDao.xml

2
tall/src/main/java/com/ccsens/tall/persist/dao/ProRoleDao.java

@ -91,7 +91,7 @@ public interface ProRoleDao extends ProRoleMapper{
* @param projectId * @param projectId
* @return * @return
*/ */
List<ProjectVo.RoleInfo> selectSecondRolesShowByRoleId(@Param("projectId") Long projectId,@Param("roleIdList") List<Long> roleIdList); List<ProjectVo.RoleInfo> selectSecondRolesShowByRoleId(@Param("projectId") Long projectId,@Param("memberId") Long memberId);
// /** // /**
// * 查找项目下的所有成员的名字用“,”分隔 // * 查找项目下的所有成员的名字用“,”分隔

3
tall/src/main/java/com/ccsens/tall/service/ProRoleService.java

@ -373,6 +373,7 @@ public class ProRoleService implements IProRoleService {
//查看角色展示列表中是否有数据 //查看角色展示列表中是否有数据
ProMemberRoleShowExample proMemberRoleShowExampleNew=new ProMemberRoleShowExample(); ProMemberRoleShowExample proMemberRoleShowExampleNew=new ProMemberRoleShowExample();
proMemberRoleShowExampleNew.createCriteria().andMemberIdEqualTo(memberId); proMemberRoleShowExampleNew.createCriteria().andMemberIdEqualTo(memberId);
proMemberRoleShowExampleNew.setOrderByClause("sequence");
List<ProMemberRoleShow> proMemberRoleShowsNew = proMemberRoleShowMapper.selectByExample(proMemberRoleShowExampleNew); List<ProMemberRoleShow> proMemberRoleShowsNew = proMemberRoleShowMapper.selectByExample(proMemberRoleShowExampleNew);
List<Long> roleIds = new ArrayList<>(); List<Long> roleIds = new ArrayList<>();
@ -380,7 +381,7 @@ public class ProRoleService implements IProRoleService {
roleIds.add(roleShow.getRoleId()); roleIds.add(roleShow.getRoleId());
} }
//查询二级角色 //查询二级角色
memberRoleList = proRoleDao.selectSecondRolesShowByRoleId(projectId,roleIds); memberRoleList = proRoleDao.selectSecondRolesShowByRoleId(projectId,memberId);
//在show表查找可见的角色 //在show表查找可见的角色

11
tall/src/main/resources/mapper_dao/ProRoleDao.xml

@ -141,13 +141,15 @@
from from
t_pro_role pr LEFT JOIN t_pro_member_role mr ON mr.role_id = pr.id t_pro_role pr LEFT JOIN t_pro_member_role mr ON mr.role_id = pr.id
LEFT JOIN t_pro_member m ON mr.member_id = m.id LEFT JOIN t_pro_member m ON mr.member_id = m.id
LEFT JOIN t_pro_member_role_show AS rs ON rs.role_id = pr.id and rs.rec_status =0
where where
pr.project_id = #{projectId} pr.project_id = #{projectId}
AND AND
pr.id in rs.member_id = #{memberId}
<foreach collection="roleIdList" item="role" separator="," open="(" close=")"> <!-- pr.id in-->
#{role} <!-- <foreach collection="roleIdList" item="role" separator="," open="(" close=")">-->
</foreach> <!-- #{role}-->
<!-- </foreach>-->
and and
(SELECT name FROM t_pro_role r WHERE pr.parent_id = r.id) in ('PM','Member','ProjectVirtualRole') (SELECT name FROM t_pro_role r WHERE pr.parent_id = r.id) in ('PM','Member','ProjectVirtualRole')
AND AND
@ -156,6 +158,7 @@
pr.rec_status = 0 pr.rec_status = 0
AND (mr.rec_status = 0 or mr.rec_status is null) AND (mr.rec_status = 0 or mr.rec_status is null)
AND (m.rec_status = 0 or m.rec_status is null) AND (m.rec_status = 0 or m.rec_status is null)
ORDER BY rs.sequence
</select> </select>
<select id="selectCareLessRoleByProjectIdAndUserId" parameterType="java.util.Map" <select id="selectCareLessRoleByProjectIdAndUserId" parameterType="java.util.Map"

Loading…
Cancel
Save