优化部门删除增加与岗位、角色关联判断
This commit is contained in:
@ -125,11 +125,13 @@ public class DeptController {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
try {
|
|
||||||
deptService.removeByIds(deptIds);
|
deptService.delDepts(deptIds);
|
||||||
}catch (Throwable e){
|
// try {
|
||||||
throw new BadRequestException( "所选部门中存在岗位或者角色关联,请取消关联后再试");
|
// deptService.delDepts(deptIds);
|
||||||
}
|
// }catch (Throwable e){
|
||||||
|
// throw new BadRequestException( "所选部门中存在岗位或者角色关联,请取消关联后再试");
|
||||||
|
// }
|
||||||
return new ResponseEntity<>(HttpStatus.OK);
|
return new ResponseEntity<>(HttpStatus.OK);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -63,6 +63,12 @@ public interface DeptService extends BaseService<Dept>{
|
|||||||
*/
|
*/
|
||||||
Object buildTree(List<DeptDto> deptDtos);
|
Object buildTree(List<DeptDto> deptDtos);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除部门
|
||||||
|
* @param deptIds
|
||||||
|
*/
|
||||||
|
void delDepts(List<Long> deptIds);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取待删除的部门
|
* 获取待删除的部门
|
||||||
* @param deptList /
|
* @param deptList /
|
||||||
|
@ -11,12 +11,18 @@ package co.yixiang.modules.system.service.impl;
|
|||||||
import co.yixiang.common.service.impl.BaseServiceImpl;
|
import co.yixiang.common.service.impl.BaseServiceImpl;
|
||||||
import co.yixiang.common.utils.QueryHelpPlus;
|
import co.yixiang.common.utils.QueryHelpPlus;
|
||||||
import co.yixiang.dozer.service.IGenerator;
|
import co.yixiang.dozer.service.IGenerator;
|
||||||
|
import co.yixiang.exception.BadRequestException;
|
||||||
import co.yixiang.modules.system.domain.Dept;
|
import co.yixiang.modules.system.domain.Dept;
|
||||||
|
import co.yixiang.modules.system.domain.Job;
|
||||||
|
import co.yixiang.modules.system.domain.RolesDepts;
|
||||||
import co.yixiang.modules.system.service.DeptService;
|
import co.yixiang.modules.system.service.DeptService;
|
||||||
import co.yixiang.modules.system.service.dto.DeptDto;
|
import co.yixiang.modules.system.service.dto.DeptDto;
|
||||||
import co.yixiang.modules.system.service.dto.DeptQueryCriteria;
|
import co.yixiang.modules.system.service.dto.DeptQueryCriteria;
|
||||||
import co.yixiang.modules.system.service.mapper.DeptMapper;
|
import co.yixiang.modules.system.service.mapper.DeptMapper;
|
||||||
|
import co.yixiang.modules.system.service.mapper.JobMapper;
|
||||||
|
import co.yixiang.modules.system.service.mapper.RolesDeptsMapper;
|
||||||
import co.yixiang.utils.FileUtil;
|
import co.yixiang.utils.FileUtil;
|
||||||
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||||
import com.github.pagehelper.PageInfo;
|
import com.github.pagehelper.PageInfo;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import org.springframework.data.domain.Pageable;
|
import org.springframework.data.domain.Pageable;
|
||||||
@ -54,6 +60,8 @@ public class DeptServiceImpl extends BaseServiceImpl<DeptMapper, Dept> implement
|
|||||||
private final IGenerator generator;
|
private final IGenerator generator;
|
||||||
|
|
||||||
private final DeptMapper deptMapper;
|
private final DeptMapper deptMapper;
|
||||||
|
private final JobMapper jobMapper;
|
||||||
|
private final RolesDeptsMapper rolesDeptsMapper;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
//@Cacheable
|
//@Cacheable
|
||||||
@ -152,6 +160,20 @@ public class DeptServiceImpl extends BaseServiceImpl<DeptMapper, Dept> implement
|
|||||||
return map;
|
return map;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除部门
|
||||||
|
* @param deptIds
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void delDepts(List<Long> deptIds){
|
||||||
|
int jobCount = jobMapper.selectCount(Wrappers.<Job>lambdaQuery().in(Job::getDeptId,deptIds));
|
||||||
|
int roleCount = rolesDeptsMapper.selectCount(Wrappers.<RolesDepts>lambdaQuery()
|
||||||
|
.in(RolesDepts::getDeptId,deptIds));
|
||||||
|
if(jobCount > 0) throw new BadRequestException( "所选部门中存在与岗位关联,请取消关联后再试");
|
||||||
|
if(roleCount > 0) throw new BadRequestException( "所选部门中存在与角色关联,请取消关联后再试");
|
||||||
|
this.removeByIds(deptIds);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取待删除的部门
|
* 获取待删除的部门
|
||||||
*
|
*
|
||||||
|
Reference in New Issue
Block a user