|
@@ -1,5 +1,6 @@
|
|
package com.xy.service.impl;
|
|
package com.xy.service.impl;
|
|
|
|
|
|
|
|
+import cn.hutool.core.collection.CollUtil;
|
|
import cn.hutool.core.util.StrUtil;
|
|
import cn.hutool.core.util.StrUtil;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
@@ -7,10 +8,15 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.xy.dto.BatchDeleteDto;
|
|
import com.xy.dto.BatchDeleteDto;
|
|
import com.xy.dto.SysRoleDto;
|
|
import com.xy.dto.SysRoleDto;
|
|
|
|
+import com.xy.entity.SysDeptRole;
|
|
import com.xy.entity.SysRole;
|
|
import com.xy.entity.SysRole;
|
|
|
|
+import com.xy.entity.SysRoleMenu;
|
|
|
|
+import com.xy.entity.SysUserRole;
|
|
import com.xy.mapper.SysRoleMapper;
|
|
import com.xy.mapper.SysRoleMapper;
|
|
|
|
+import com.xy.service.SysDeptRoleService;
|
|
import com.xy.service.SysRoleMenuService;
|
|
import com.xy.service.SysRoleMenuService;
|
|
import com.xy.service.SysRoleService;
|
|
import com.xy.service.SysRoleService;
|
|
|
|
+import com.xy.service.SysUserRoleService;
|
|
import com.xy.utils.PageBean;
|
|
import com.xy.utils.PageBean;
|
|
import com.xy.utils.R;
|
|
import com.xy.utils.R;
|
|
import com.xy.utils.SaTokenUtils;
|
|
import com.xy.utils.SaTokenUtils;
|
|
@@ -19,6 +25,9 @@ import com.xy.vo.SysRoleVo;
|
|
import io.swagger.annotations.Api;
|
|
import io.swagger.annotations.Api;
|
|
import lombok.RequiredArgsConstructor;
|
|
import lombok.RequiredArgsConstructor;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
|
+
|
|
|
|
+import java.util.List;
|
|
|
|
|
|
import static com.xy.utils.Beans.copy;
|
|
import static com.xy.utils.Beans.copy;
|
|
import static com.xy.utils.PlusBeans.toIPage;
|
|
import static com.xy.utils.PlusBeans.toIPage;
|
|
@@ -35,6 +44,8 @@ import static com.xy.utils.PlusBeans.toPageBean;
|
|
public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> implements SysRoleService {
|
|
public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> implements SysRoleService {
|
|
|
|
|
|
private final SysRoleMenuService sysRoleMenuService;
|
|
private final SysRoleMenuService sysRoleMenuService;
|
|
|
|
+ private final SysDeptRoleService sysDeptRoleService;
|
|
|
|
+ private final SysUserRoleService sysUserRoleService;
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public R<Boolean> saveOrUpdate(SysRoleDto sysRoleDto) {
|
|
public R<Boolean> saveOrUpdate(SysRoleDto sysRoleDto) {
|
|
@@ -59,7 +70,14 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public R<Boolean> batchDelete(BatchDeleteDto batchDeleteDto) {
|
|
public R<Boolean> batchDelete(BatchDeleteDto batchDeleteDto) {
|
|
- return R.ok(removeByIds(batchDeleteDto.getIds()));
|
|
|
|
|
|
+ List<Long> ids = batchDeleteDto.getIds();
|
|
|
|
+ if (CollUtil.isNotEmpty(ids)) {
|
|
|
|
+ for (Long id : ids) {
|
|
|
|
+ deleteRoleById(id);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return R.ok(Boolean.TRUE);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -85,5 +103,19 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
|
|
return R.ok(sysRoleMenuService.saveRoleMenus(roleMenuVo.getId(), roleMenuVo.getMenuIds()));
|
|
return R.ok(sysRoleMenuService.saveRoleMenus(roleMenuVo.getId(), roleMenuVo.getMenuIds()));
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ @Override
|
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
|
+ public R<Boolean> deleteRoleById(Long id) {
|
|
|
|
+ //角色 sys_role
|
|
|
|
+ removeById(id);
|
|
|
|
+ //角色菜单 sys_role_menu
|
|
|
|
+ sysRoleMenuService.remove(Wrappers.<SysRoleMenu>lambdaQuery().eq(SysRoleMenu::getRoleId, id));
|
|
|
|
+ //部门角色 sys_dept_role
|
|
|
|
+ sysDeptRoleService.remove(Wrappers.<SysDeptRole>lambdaQuery().eq(SysDeptRole::getRoleId, id));
|
|
|
|
+ //用户角色 sys_user_role
|
|
|
|
+ sysUserRoleService.remove(Wrappers.<SysUserRole>lambdaQuery().eq(SysUserRole::getRoleId, id));
|
|
|
|
+ return R.ok(Boolean.TRUE);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
|
|
}
|
|
}
|