fix
Helius
2022-07-11 02b6979e6e7680c85ed0911109d182c9a235162f
src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/RoleServiceImpl.java
@@ -15,6 +15,7 @@
import com.xcong.farmer.cms.modules.system.entity.*;
import com.xcong.farmer.cms.modules.system.mapper.*;
import com.xcong.farmer.cms.modules.system.service.IRoleService;
import com.xcong.farmer.cms.modules.system.util.LoginUserUtil;
import com.xcong.farmer.cms.modules.system.vo.AdminMenuInfoVo;
import com.xcong.farmer.cms.modules.system.vo.AdminRoleVo;
import com.xcong.farmer.cms.modules.system.vo.AdminSeeRoleInfoVo;
@@ -46,10 +47,15 @@
    @Override
    public Result getRoleInPage(AdminRoleDto adminRoleDto) {
        UserEntity userlogin = LoginUserUtil.getLoginUser();
        Page<AdminRoleVo> page = new Page<>(adminRoleDto.getPageNum(), adminRoleDto.getPageSize());
        RoleEntity roleEntity = new RoleEntity();
        Long companyId = userlogin.getCompanyId() == null ? UserEntity.USER_BELONG_TOP : userlogin.getCompanyId();
        if(StrUtil.isNotEmpty(adminRoleDto.getRoleName())){
            roleEntity.setRoleName(adminRoleDto.getRoleName());
        }
        if(companyId > UserEntity.USER_BELONG_TOP){
            roleEntity.setCompanyId(companyId);
        }
        IPage<AdminRoleVo> list = this.baseMapper.selectAdminRoleVoInPage(page,roleEntity);
        return Result.ok(list);
@@ -58,20 +64,16 @@
    @Override
    @Transactional
    public Result addRole(AdminAddRoleDto adminAddRoleDto) {
        UserEntity userlogin = LoginUserUtil.getLoginUser();
        String roleName = adminAddRoleDto.getRoleName();
        if(StrUtil.isEmpty(roleName)){
            return Result.fail("请输入角色名称");
        }
        String menuIds = adminAddRoleDto.getMenuIds();
        if(StrUtil.isEmpty(menuIds)){
            return Result.fail("请选择角色权限");
        }
        RoleEntity roleEntity = new RoleEntity();
        String remark = adminAddRoleDto.getRemark();
        if(StrUtil.isNotEmpty(remark)){
            roleEntity.setRemark(remark);
        }
        roleEntity.setRoleName(roleName);
        roleEntity.setCompanyId(userlogin.getCompanyId() == null?UserEntity.USER_BELONG_TOP:userlogin.getCompanyId());
        int insert = this.baseMapper.insert(roleEntity);
        if(insert > 0){
            saveRoleMenus(menuIds,roleEntity.getId());
@@ -170,7 +172,11 @@
            String[] roleIds = ids.split(StringPool.COMMA);
            for(String roleIdStr : roleIds){
                Long roleId = Long.valueOf(roleIdStr);
                RoleEntity roleEntity = this.baseMapper.selectById(roleId);
                if(RoleEntity.ROLE_ADMIN_NAME.equals(roleEntity.getRoleName())
                || RoleEntity.ROLE_SUPER_NAME.equals(roleEntity.getRoleName())){
                    return Result.fail(RoleEntity.ROLE_ADMIN_NAME + RoleEntity.ROLE_SUPER_NAME +"角色无法删除");
                }
                QueryWrapper<UserRoleEntity> objectQueryWrapper = new QueryWrapper<>();
                objectQueryWrapper.eq("role_id",roleId);
                userRoleMapper.delete(objectQueryWrapper);