update 优化 岗位如果绑定了用户则不允许禁用

feature/model
疯狂的狮子Li 1 year ago
parent afdc4b103d
commit ae0d4dd6e5

@ -52,6 +52,16 @@ public interface UserConstants {
*/ */
String DEPT_DISABLE = "1"; String DEPT_DISABLE = "1";
/**
*
*/
String POST_NORMAL = "0";
/**
*
*/
String POST_DISABLE = "1";
/** /**
* *
*/ */

@ -1,6 +1,7 @@
package org.dromara.system.controller.system; package org.dromara.system.controller.system;
import cn.dev33.satoken.annotation.SaCheckPermission; import cn.dev33.satoken.annotation.SaCheckPermission;
import org.dromara.common.core.constant.UserConstants;
import org.dromara.common.core.domain.R; import org.dromara.common.core.domain.R;
import org.dromara.common.excel.utils.ExcelUtil; import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.log.annotation.Log; import org.dromara.common.log.annotation.Log;
@ -88,6 +89,9 @@ public class SysPostController extends BaseController {
return R.fail("修改岗位'" + post.getPostName() + "'失败,岗位名称已存在"); return R.fail("修改岗位'" + post.getPostName() + "'失败,岗位名称已存在");
} else if (!postService.checkPostCodeUnique(post)) { } else if (!postService.checkPostCodeUnique(post)) {
return R.fail("修改岗位'" + post.getPostName() + "'失败,岗位编码已存在"); return R.fail("修改岗位'" + post.getPostName() + "'失败,岗位编码已存在");
} else if (UserConstants.POST_DISABLE.equals(post.getStatus())
&& postService.countUserPostById(post.getPostId()) > 0) {
return R.fail("该岗位下存在已分配用户,不能禁用!");
} }
return toAjax(postService.updatePost(post)); return toAjax(postService.updatePost(post));
} }
@ -109,7 +113,9 @@ public class SysPostController extends BaseController {
*/ */
@GetMapping("/optionselect") @GetMapping("/optionselect")
public R<List<SysPostVo>> optionselect() { public R<List<SysPostVo>> optionselect() {
List<SysPostVo> posts = postService.selectPostAll(); SysPostBo postBo = new SysPostBo();
postBo.setStatus(UserConstants.POST_NORMAL);
List<SysPostVo> posts = postService.selectPostList(postBo);
return R.ok(posts); return R.ok(posts);
} }
} }

@ -156,7 +156,7 @@ public class SysPostServiceImpl implements ISysPostService {
for (Long postId : postIds) { for (Long postId : postIds) {
SysPost post = baseMapper.selectById(postId); SysPost post = baseMapper.selectById(postId);
if (countUserPostById(postId) > 0) { if (countUserPostById(postId) > 0) {
throw new ServiceException(String.format("%1$s已分配,不能删除", post.getPostName())); throw new ServiceException(String.format("%1$s已分配,不能删除!", post.getPostName()));
} }
} }
return baseMapper.deleteBatchIds(Arrays.asList(postIds)); return baseMapper.deleteBatchIds(Arrays.asList(postIds));

Loading…
Cancel
Save