From 2873f1cd6ea6caac062740e05994a1f0a880ffde Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期二, 12 三月 2024 11:27:20 +0800 Subject: [PATCH] 一个用户只能是一个部门的管理员、创建随机试卷的时候人员只能选当前部门的人,试卷增加部门id --- src/main/java/com/mindskip/xzs/service/impl/DepartmentServiceImpl.java | 27 +++++++++++++++------------ 1 files changed, 15 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/mindskip/xzs/service/impl/DepartmentServiceImpl.java b/src/main/java/com/mindskip/xzs/service/impl/DepartmentServiceImpl.java index d138d98..aa6e62f 100644 --- a/src/main/java/com/mindskip/xzs/service/impl/DepartmentServiceImpl.java +++ b/src/main/java/com/mindskip/xzs/service/impl/DepartmentServiceImpl.java @@ -63,13 +63,13 @@ throw new RuntimeException("璇ラ儴闂ㄤ笉瀛樺湪"); } if (Objects.nonNull(department.getAdminId())) { + Integer adminNum = departmentMapper.countByAdminId(department.getAdminId(), department.getId()); + if (adminNum > 0) { + throw new RuntimeException("涓�涓敤鎴峰彧鑳芥槸涓�涓崟浣嶇殑绠$悊鍛�"); + } if (! Objects.equals(entity.getAdminId(), department.getAdminId())) { // 鍙栨秷鍘熷厛鐨勭鐞嗗憳鏍囪瘑 - List<Integer> depIds = departmentMapper.selectByAdminId(entity.getAdminId()); - depIds.remove(department.getId()); - if (depIds.size() < 1) { - userMapper.updateDeptAdmin(entity.getAdminId(), DeptAdminEnum.NO.getValue()); - } + userMapper.updateDeptAdmin(entity.getAdminId(), DeptAdminEnum.NO.getValue()); } // 鏍囪瘑閮ㄩ棬绠$悊鍛� userMapper.updateDeptAdmin(department.getAdminId(), DeptAdminEnum.YES.getValue()); @@ -91,8 +91,11 @@ } @Override - public List<Department> gets() { - return departmentMapper.gets(); + public List<Department> gets(Integer deptId) { + if (deptId == -1) { + deptId = null; + } + return departmentMapper.gets(deptId); } @Override @@ -117,13 +120,13 @@ throw new RuntimeException("璇ラ儴闂ㄤ笉瀛樺湪"); } if (Objects.nonNull(form.getAdminId())) { + Integer adminNum = departmentMapper.countByAdminId(form.getAdminId(), form.getId()); + if (adminNum > 0) { + throw new RuntimeException("涓�涓敤鎴峰彧鑳芥槸涓�涓崟浣嶇殑绠$悊鍛�"); + } if (! Objects.equals(entity.getAdminId(), form.getAdminId())) { // 鍙栨秷鍘熷厛鐨勭鐞嗗憳鏍囪瘑 - List<Integer> depIds = departmentMapper.selectByAdminId(entity.getAdminId()); - depIds.remove(form.getId()); - if (depIds.size() < 1) { - userMapper.updateDeptAdmin(entity.getAdminId(), DeptAdminEnum.NO.getValue()); - } + userMapper.updateDeptAdmin(entity.getAdminId(), DeptAdminEnum.NO.getValue()); } // 鏍囪瘑閮ㄩ棬绠$悊鍛� userMapper.updateDeptAdmin(form.getAdminId(), DeptAdminEnum.YES.getValue()); -- Gitblit v1.8.0