12-20-修复

This commit is contained in:
2025-12-20 17:48:44 +08:00
parent b30aadfed9
commit 0110999480
2 changed files with 31 additions and 35 deletions

View File

@ -244,56 +244,52 @@ public class SysRoleWorkServiceImpl extends ServiceImpl<SysRoleWorkMapper, SysRo
// 获取当前登录用户的所有项目及对应所有角色
List<SysUserRole> allRoleList = baseMapper.getAllRoleList(userId);
//初始化
// LambdaQueryWrapper<SysRoleWork> lqw = new LambdaQueryWrapper<>();
List<BusProjectVo> busProjectVoList = new ArrayList<>();
//获取到该用户所有有流程的项目 说明在该项目下该用户有角色有所属流程
for (SysUserRole sysUserRole : allRoleList) {
// lqw.clear();
// lqw.eq(SysRoleWork::getProjectId,sysUserRole.getProjectId());
// lqw.eq(SysRoleWork::getRoleId, sysUserRole.getRoleId());
// SysRoleWork one = getOne(lqw);
// if (one != null){
// //先拿到该项目
// BusProjectQueryReq req = new BusProjectQueryReq();
// req.setId(sysUserRole.getProjectId());
// List<BusProjectVo> vos = projectService.queryList(req);
// if (vos != null && !vos.isEmpty()){
// if(!busProjectVoList.contains(vos.getFirst())){
// busProjectVoList.add(vos.getFirst());
// }
// }
// }
BusProjectQueryReq req = new BusProjectQueryReq();
req.setId(sysUserRole.getProjectId());
List<BusProjectVo> vos = projectService.queryList(req);
if (vos != null && !vos.isEmpty()){
if(!busProjectVoList.contains(vos.getFirst())){
busProjectVoList.add(vos.getFirst());
// 检查该项目下该角色是否有流程配置
LambdaQueryWrapper<SysRoleWork> lqw = new LambdaQueryWrapper<>();
lqw.eq(SysRoleWork::getRoleId, sysUserRole.getRoleId());
lqw.eq(SysRoleWork::getProjectId, sysUserRole.getProjectId());
List<SysRoleWork> list = list(lqw);
// 只有当存在流程配置时才添加项目
if (list != null && !list.isEmpty()) {
//这个用户的项目 有流程的角色 才会进入这里
BusProjectQueryReq req = new BusProjectQueryReq();
req.setId(sysUserRole.getProjectId());
List<BusProjectVo> vos = projectService.queryList(req);
//把这个用户有角色并且有流程的项目添加到列表中
if (vos != null && !vos.isEmpty()){
if(!busProjectVoList.contains(vos.getFirst())){
busProjectVoList.add(vos.getFirst());
}
}
}
}
//遍历
//遍历反查
List<SysRoleVo> roleVos;
for (BusProjectVo projectVo : busProjectVoList) {
roleVos = new ArrayList<>();
//通过项目查找所有角色
LambdaQueryWrapper<SysRoleWork> lqw1 = new LambdaQueryWrapper<>();
lqw1.eq(SysRoleWork::getProjectId,projectVo.getId());
//获取角色
List<SysRoleWork> roleWorkList = list(lqw1);
for (SysRoleWork sysRoleWork : roleWorkList) {
SysRoleVo sysRoleVo = roleService.selectRoleById(sysRoleWork.getRoleId());
if (sysRoleVo != null){
roleVos.add(sysRoleVo);
List<SysUserRole> roleList = baseMapper.getRoleList(userId, projectVo.getId());
for (SysUserRole userRole : roleList) {
LambdaQueryWrapper<SysRoleWork> lqw = new LambdaQueryWrapper<>();
lqw.eq(SysRoleWork::getRoleId, userRole.getRoleId());
lqw.eq(SysRoleWork::getProjectId,projectVo.getId());
List<SysRoleWork> list = list(lqw);
for (SysRoleWork roleWork : list) {
SysRoleVo roleVo = roleService.selectRoleById(roleWork.getRoleId());
if (roleVo != null){
roleVos.add(roleVo);
}
}
}
projectVo.setRoleVos(roleVos);
}
return busProjectVoList;
}

View File

@ -46,7 +46,7 @@ public class PdMasterController extends BaseController {
/**
* 获取当前用户对应部门下的所有用户
*/
@SaCheckPermission("patch:master:findThis")
// @SaCheckPermission("patch:master:findThis")
@GetMapping("/findThis")
public R<List<SysUser>> findThis() {
return R.ok(userService.findThis());