部门删除增加岗位验证逻辑

main
zhaokai 2025-11-19 11:34:34 +08:00
parent 94695d3187
commit f9cf3cda3a
3 changed files with 16 additions and 1 deletions

View File

@ -10,6 +10,7 @@ import com.zcloud.basic.info.domain.gateway.DepartmentSuperviseGateway;
import com.zcloud.basic.info.dto.clientobject.DepartmentCO;
import com.zcloud.basic.info.persistence.dataobject.DepartmentDO;
import com.zcloud.basic.info.persistence.repository.DepartmentRepository;
import com.zcloud.basic.info.persistence.repository.PostRepository;
import com.zcloud.basic.info.persistence.repository.UserRepository;
import com.zcloud.gbscommon.utils.Const;
import com.zcloud.gbscommon.utils.PageQueryHelper;
@ -40,6 +41,7 @@ public class DepartmentRemoveExe {
private final DepartmentRepository departmentRepository;
private final UserRepository userRepository;
private final DepartmentSuperviseGateway departmentSuperviseGateway;
private final PostRepository postRepository;
@DubboReference
private DeptFacade deptFacade;
// @Autowired
@ -58,7 +60,11 @@ public class DepartmentRemoveExe {
if(departmentCount>0){
throw new BizException("请先删除下级部门");
}
//部门下是否有岗位
Boolean postFlag = postRepository.checkPostDepartment(id);
if(postFlag){
throw new BizException("部门有相应岗位,请解除相关岗位信息后删除");
}
Boolean b = userRepository.checkUserDepartment(id);
if(b){
throw new BizException("部门有相应人员,请解除相关部门信息后删除");

View File

@ -26,5 +26,7 @@ public interface PostRepository extends BaseRepository<PostDO> {
Long getCountByCorpInfoId(Long id);
List<PostDO> listByCorpInfoId(Long corpInfoId);
Boolean checkPostDepartment(Long id);
}

View File

@ -80,5 +80,12 @@ public class PostRepositoryImpl extends BaseRepositoryImpl<PostMapper, PostDO> i
queryWrapper.eq("delete_enum", "FALSE");
return list(queryWrapper);
}
@Override
public Boolean checkPostDepartment(Long departmentId) {
QueryWrapper<PostDO> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("department_id", departmentId);
queryWrapper.eq("delete_enum", "FALSE");
return postMapper.selectCount(queryWrapper) > 0;
}
}