|
@@ -10,6 +10,7 @@ import com.qmth.teachcloud.common.contant.SystemConstant;
|
|
|
import com.qmth.teachcloud.common.entity.*;
|
|
|
import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
|
|
|
import com.qmth.teachcloud.common.enums.FieldUniqueEnum;
|
|
|
+import com.qmth.teachcloud.common.enums.RoleSourceEnum;
|
|
|
import com.qmth.teachcloud.common.mapper.SysRoleMapper;
|
|
|
import com.qmth.teachcloud.common.service.*;
|
|
|
import com.qmth.teachcloud.common.util.ResultUtil;
|
|
@@ -342,8 +343,24 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
|
|
|
sysRoleQueryWrapper.lambda().eq(SysRole::getDefaultRole, true)
|
|
|
.eq(SysRole::getEnable, true)
|
|
|
.isNull(SysRole::getSchoolId)
|
|
|
- .ne(SysRole::getType, SystemConstant.ADMIN_CODE.toUpperCase())
|
|
|
+ .and(l->l.ne(SysRole::getType, SystemConstant.ADMIN_CODE.toUpperCase()).or().isNull(SysRole::getType))
|
|
|
.orderByAsc(SysRole::getId);
|
|
|
return sysRoleService.list(sysRoleQueryWrapper);
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public boolean builtin(Long id, boolean defaultRole) {
|
|
|
+ SysRole sysRole = this.getById(id);
|
|
|
+ if (defaultRole) {
|
|
|
+ sysRole.setSource(RoleSourceEnum.SYS);
|
|
|
+ sysRole.setInterpret(RoleSourceEnum.SYS.getDesc());
|
|
|
+ } else {
|
|
|
+ sysRole.setSource(null);
|
|
|
+ sysRole.setInterpret(null);
|
|
|
+ }
|
|
|
+ sysRole.setDefaultRole(defaultRole);
|
|
|
+
|
|
|
+ commonCacheService.removeCustomRoleCache();
|
|
|
+ return this.updateById(sysRole);
|
|
|
+ }
|
|
|
}
|