From bcee37b84bde39072e6e35e642b0911a94f52eef Mon Sep 17 00:00:00 2001 From: RuoYi <yzz_ivy@163.com> Date: 星期一, 11 十一月 2019 08:59:15 +0800 Subject: [PATCH] 若依 1.1 --- ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysPostServiceImpl.java | 38 +++++++++++++++++++++++++++++++++++++- 1 files changed, 37 insertions(+), 1 deletions(-) diff --git a/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysPostServiceImpl.java b/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysPostServiceImpl.java index 682d147..e60dc06 100644 --- a/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysPostServiceImpl.java +++ b/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysPostServiceImpl.java @@ -4,9 +4,11 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.ruoyi.common.constant.UserConstants; +import com.ruoyi.common.exception.CustomException; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.project.system.domain.SysPost; import com.ruoyi.project.system.mapper.SysPostMapper; +import com.ruoyi.project.system.mapper.SysUserPostMapper; import com.ruoyi.project.system.service.ISysPostService; /** @@ -19,6 +21,9 @@ { @Autowired private SysPostMapper postMapper; + + @Autowired + private SysUserPostMapper userPostMapper; /** * 查询岗位信息集合 @@ -66,7 +71,6 @@ return postMapper.selectPostListByUserId(userId); } - /** * 校验岗位名称是否唯一 * @@ -104,6 +108,18 @@ } /** + * 通过岗位ID查询岗位使用数量 + * + * @param postId 岗位ID + * @return 结果 + */ + @Override + public int countUserPostById(Long postId) + { + return userPostMapper.countUserPostById(postId); + } + + /** * 删除岗位信息 * * @param postId 岗位ID @@ -116,6 +132,26 @@ } /** + * 批量删除岗位信息 + * + * @param postIds 需要删除的岗位ID + * @return 结果 + * @throws Exception 异常 + */ + public int deletePostByIds(Long[] postIds) + { + for (Long postId : postIds) + { + SysPost post = selectPostById(postId); + if (countUserPostById(postId) > 0) + { + throw new CustomException(String.format("%1$s已分配,不能删除", post.getPostName())); + } + } + return postMapper.deletePostByIds(postIds); + } + + /** * 新增保存岗位信息 * * @param post 岗位信息 -- Gitblit v1.9.2