Procházet zdrojové kódy

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

疯狂的狮子Li před 2 roky
rodič
revize
2f3dbbfe32

+ 6 - 1
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysPostController.java

@@ -88,6 +88,9 @@ public class SysPostController extends BaseController {
             return R.fail("修改岗位'" + post.getPostName() + "'失败,岗位名称已存在");
         } else if (!postService.checkPostCodeUnique(post)) {
             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));
     }
@@ -109,7 +112,9 @@ public class SysPostController extends BaseController {
      */
     @GetMapping("/optionselect")
     public R<List<SysPost>> optionselect() {
-        List<SysPost> posts = postService.selectPostAll();
+        SysPost post = new SysPost();
+        post.setStatus(UserConstants.POST_NORMAL);
+        List<SysPost> posts = postService.selectPostList(post);
         return R.ok(posts);
     }
 }

+ 10 - 0
ruoyi-common/src/main/java/com/ruoyi/common/constant/UserConstants.java

@@ -53,6 +53,16 @@ public interface UserConstants {
     String DEPT_DISABLE = "1";
 
     /**
+     * 岗位正常状态
+     */
+    String POST_NORMAL = "0";
+
+    /**
+     * 岗位停用状态
+     */
+    String POST_DISABLE = "1";
+
+    /**
      * 字典正常状态
      */
     String DICT_NORMAL = "0";

+ 1 - 1
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysPostServiceImpl.java

@@ -147,7 +147,7 @@ public class SysPostServiceImpl implements ISysPostService {
         for (Long postId : postIds) {
             SysPost post = selectPostById(postId);
             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));