补充删除权限集逻辑
This commit is contained in:
parent
8409db6023
commit
4633c44cc6
@ -1,5 +1,6 @@
|
||||
package job;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
|
||||
import cn.axzo.pokonyan.config.mybatisplus.BaseEntity;
|
||||
@ -91,6 +92,7 @@ public class OMSRoleJobHandler extends IJobHandler {
|
||||
roleGroupRelationDao.saveBatch(roleGroupRelation);
|
||||
|
||||
// 查询角色关联的角色,打包成新的权限集
|
||||
ArrayList<SaasPermissionGroup> deletePgroup = new ArrayList<>();
|
||||
oldRole.forEach(role -> {
|
||||
List<SaasPgroupRoleRelation> pgroupRoleRelation = pgroupRoleRelationDao.lambdaQuery().eq(SaasPgroupRoleRelation::getRoleId, role.getId()).list();
|
||||
List<SaasPermissionGroup> permissionGroup = saasPermissionGroupDao.lambdaQuery().in(BaseEntity::getId, pgroupRoleRelation.stream().map(SaasPgroupRoleRelation::getGroupId).collect(Collectors.toList())).list();
|
||||
@ -105,6 +107,7 @@ public class OMSRoleJobHandler extends IJobHandler {
|
||||
saasPermissionGroup.setType("feature");
|
||||
saasPermissionGroup.setIsCommon(1);
|
||||
saasPermissionGroupDao.save(saasPermissionGroup);
|
||||
deletePgroup.addAll(permissionGroup);
|
||||
// 创建新的角色权限集关联关系
|
||||
SaasPgroupRoleRelation saasPgroupRoleRelation = new SaasPgroupRoleRelation();
|
||||
saasPgroupRoleRelation.setRoleId(role.getId());
|
||||
@ -122,12 +125,15 @@ public class OMSRoleJobHandler extends IJobHandler {
|
||||
pgroupPermissionRelationDao.save(saasPgroupPermissionRelation);
|
||||
});
|
||||
// 删除老的权限集权限关联关系
|
||||
pgroupPermissionRelation.forEach(e -> e.setIsDelete(1l));
|
||||
pgroupPermissionRelation.forEach(e -> e.setIsDelete(e.getId()));
|
||||
pgroupPermissionRelationDao.updateBatchById(pgroupPermissionRelation);
|
||||
// 删除老的角色权限集关联关系
|
||||
pgroupRoleRelation.forEach(e -> e.setIsDelete(1l));
|
||||
pgroupRoleRelation.forEach(e -> e.setIsDelete(e.getId()));
|
||||
pgroupRoleRelationDao.updateBatchById(pgroupRoleRelation);
|
||||
});
|
||||
// 删除权限集
|
||||
deletePgroup.forEach(e -> e.setIsDelete(e.getId()));
|
||||
saasPermissionGroupDao.updateBatchById(deletePgroup);
|
||||
return ReturnT.SUCCESS;
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user