Browse Source

获取权限id修改

master
dimengzhe 2 years ago
parent
commit
bedd2f0b9d
  1. 2
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/PrivilegeQuery.java
  2. 4
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysrole/SysRoleMapper.java
  3. 19
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysrole/SysRoleMapper.xml
  4. 8
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysrole/SysRoleService.java
  5. 29
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserService.java
  6. 2
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleMapper.java
  7. 4
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleMapper.xml
  8. 4
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleService.java

2
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/PrivilegeQuery.java

@ -17,6 +17,6 @@ public class PrivilegeQuery {
private String orgPath;
@ApiModelProperty("菜单sid")
private String menuSid;
@ApiModelProperty("销售订单sid")
@ApiModelProperty("用户sid")
private String userSid;
}

4
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysrole/SysRoleMapper.java

@ -65,7 +65,7 @@ public interface SysRoleMapper extends BaseMapper<SysRole> {
List<SysMenuRoleVoList> selectMobileRoleList(String menuSid);
List<String> selectByRole(@Param("orgLevelKey") String orgLevelKey, @Param("menuSid") String menuSid,@Param("userSid") String userSid);
List<String> selectByRole(@Param("list") List<String> roleSidList, @Param("menuSid") String menuSid,@Param("userSid") String userSid);
List<String> selectByMobileRole(@Param("orgLevelKey") String orgLevelKey, @Param("menuSid") String menuSid,@Param("userSid") String userSid);
List<String> selectByMobileRole(@Param("list") List<String> roleSidList, @Param("menuSid") String menuSid,@Param("userSid") String userSid);
}

19
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysrole/SysRoleMapper.xml

@ -106,18 +106,29 @@
</select>
<select id="selectByRole" resultType="java.lang.String">
select dataRuleId from sys_menu_role smr
select smr.dataRuleId from sys_menu_role smr
left join sys_menu sm on sm.sid = smr.menuSid
left join sys_role sr on sr.sid = smr.roleSid
left join sys_user_role sur on sur.roleSid = smr.roleSid
where smr.menuSid = #{menuSid} and sur.userSid = #{userSid} and sr.roleType = #{orgLevelKey} order by dataRuleId asc
where smr.menuSid = #{menuSid} and sur.userSid = #{userSid} and sr.sid in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
and length(smr.dataRuleId)>0
order by dataRuleId asc
</select>
<select id="selectByMobileRole" resultType="java.lang.String">
select dataRuleId from sys_mobile_menu_role smr
select smr.dataRuleId from sys_mobile_menu_role smr
left join sys_mobile_menu sm on sm.sid = smr.menuSid
left join sys_role sr on sr.sid = smr.roleSid
left join sys_user_role sur on sur.roleSid = smr.roleSid
where smr.menuSid = #{menuSid} and sur.userSid = #{userSid} and sr.roleType = #{orgLevelKey} order by dataRuleId asc
where smr.menuSid = #{menuSid} and sur.userSid = #{userSid}
and sr.sid in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
and length(smr.dataRuleId)>0
order by dataRuleId asc
</select>
</mapper>

8
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysrole/SysRoleService.java

@ -178,11 +178,11 @@ public class SysRoleService extends MybatisBaseService<SysRoleMapper, SysRole> {
return baseMapper.selectMobileRoleList(menuSid);
}
public List<String> selectByRole(String orgLevelKey, String menuSid,String userSid) {
return baseMapper.selectByRole(orgLevelKey,menuSid,userSid);
public List<String> selectByRole(List<String> roleSidList, String menuSid,String userSid) {
return baseMapper.selectByRole(roleSidList,menuSid,userSid);
}
public List<String> selectByMobileRole(String orgLevelKey, String menuSid, String userSid) {
return baseMapper.selectByMobileRole(orgLevelKey,menuSid,userSid);
public List<String> selectByMobileRole(List<String> roleSidList, String menuSid, String userSid) {
return baseMapper.selectByMobileRole(roleSidList,menuSid,userSid);
}
}

29
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserService.java

@ -30,6 +30,7 @@ import com.yxt.anrui.portal.biz.sysstaffinfo.SysStaffinfoService;
import com.yxt.anrui.portal.biz.sysstafforg.SysStaffOrgService;
import com.yxt.anrui.portal.biz.sysstaffpost.SysStaffPostService;
import com.yxt.anrui.portal.biz.sysuserdefaultorg.SysUserDefaultOrgService;
import com.yxt.anrui.portal.biz.sysuserrole.SysUserRoleService;
import com.yxt.anrui.portal.config.DictCommonType;
import com.yxt.anrui.portal.utils.MsgWs;
import com.yxt.common.base.config.RedisUtil;
@ -114,6 +115,8 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
private SysMenuService sysMenuService;
@Autowired
private SysMobileMenuService sysMobileMenuService;
@Autowired
private SysUserRoleService sysUserRoleService;
public PagerVo<SysUser> listPage(PagerQuery<SysUserQuery> pq) {
@ -1408,16 +1411,18 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
} else {
String menuSid = sysMenuList.get(0).getSid();
//根据层级查找角色
List<String> stringList = Arrays.asList(query.getOrgPath().split("/"));
// List<String> stringList = Arrays.asList(query.getOrgPath().split("/"));
//最后一级的sid所属层级
SysOrganization sysOrganization = sysOrganizationService.fetchBySid(stringList.get(stringList.size() - 1));
// SysOrganization sysOrganization = sysOrganizationService.fetchBySid(stringList.get(stringList.size() - 1));
List<String> roleSidList = sysUserRoleService.selectRoleSid(query.getUserSid());
roleSidList.removeAll(Collections.singleton(null));
//查询层级对应的角色权限id
List<String> roleSid = sysRoleService.selectByRole(sysOrganization.getOrgLevelKey(), menuSid,query.getUserSid());
roleSid.removeAll(Collections.singleton(null));
if (!roleSid.isEmpty()) {
for (int i = 0; i < roleSid.size(); i++) {
if (StringUtils.isNotBlank(roleSid.get(i))) {
defalutId = roleSid.get(i);
List<String> roleIdList = sysRoleService.selectByRole(roleSidList, menuSid,query.getUserSid());
roleIdList.removeAll(Collections.singleton(null));
if (!roleIdList.isEmpty()) {
for (int i = 0; i < roleIdList.size(); i++) {
if (StringUtils.isNotBlank(roleIdList.get(i))) {
defalutId = roleIdList.get(i);
break;
} else {
continue;
@ -1427,12 +1432,14 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
}
} else {
String menuSid = query.getMenuSid();
//根据层级查找角色
/* //根据层级查找角色
List<String> stringList = Arrays.asList(query.getOrgPath().split("/"));
//最后一级的sid所属层级
SysOrganization sysOrganization = sysOrganizationService.fetchBySid(stringList.get(stringList.size() - 1));
SysOrganization sysOrganization = sysOrganizationService.fetchBySid(stringList.get(stringList.size() - 1));*/
List<String> roleSidList = sysUserRoleService.selectRoleSid(query.getUserSid());
roleSidList.removeAll(Collections.singleton(null));
//查询层级对应的角色权限id
List<String> roleSid = sysRoleService.selectByMobileRole(sysOrganization.getOrgLevelKey(), menuSid,query.getUserSid());
List<String> roleSid = sysRoleService.selectByMobileRole(roleSidList, menuSid,query.getUserSid());
roleSid.removeAll(Collections.singleton(null));
if (!roleSid.isEmpty()) {
for (int i = 0; i < roleSid.size(); i++) {

2
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleMapper.java

@ -53,4 +53,6 @@ public interface SysUserRoleMapper extends BaseMapper<SysUserRole> {
List<String> getUserSidListByRoleSid(@Param("roleList") List<String> roleList);
int deleteByRoleSid(String sids);
List<String> selectRoleSid(String userSid);
}

4
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleMapper.xml

@ -42,4 +42,8 @@
<delete id="deleteByRoleSid">
delete from sys_user_role where roleSid = #{sids}
</delete>
<select id="selectRoleSid" resultType="java.lang.String">
select distinct roleSid from sys_user_role where userSid = #{userSid}
</select>
</mapper>

4
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleService.java

@ -127,4 +127,8 @@ public class SysUserRoleService extends MybatisBaseService<SysUserRoleMapper, Sy
public int deleteByRoleSid(String sids) {
return baseMapper.deleteByRoleSid(sids);
}
public List<String> selectRoleSid(String userSid) {
return baseMapper.selectRoleSid(userSid);
}
}
Loading…
Cancel
Save