From 7d67ab2798c26cc45462ef5e92d4e8f76f658669 Mon Sep 17 00:00:00 2001 From: 176yunxuan <362612387@qq.com~> Date: Tue, 16 Jan 2024 09:03:54 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=A8=E6=88=B7=E6=9D=83=E9=99=90=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E5=92=8C=E5=88=A0=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jsl/oa/controllers/RoleController.java | 44 +++++++++++++++++++ src/main/java/com/jsl/oa/dao/RoleDAO.java | 21 +++++++++ .../java/com/jsl/oa/mapper/RoleMapper.java | 17 +++++++ .../com/jsl/oa/model/voData/RoleAddUser.java | 13 ++++++ .../jsl/oa/model/voData/RoleRemoveUser.java | 11 +++++ .../java/com/jsl/oa/services/RoleService.java | 11 +++++ .../jsl/oa/services/impl/RoleServiceImpl.java | 36 +++++++++++++++ 7 files changed, 153 insertions(+) create mode 100644 src/main/java/com/jsl/oa/dao/RoleDAO.java create mode 100644 src/main/java/com/jsl/oa/mapper/RoleMapper.java create mode 100644 src/main/java/com/jsl/oa/model/voData/RoleAddUser.java create mode 100644 src/main/java/com/jsl/oa/model/voData/RoleRemoveUser.java create mode 100644 src/main/java/com/jsl/oa/services/RoleService.java create mode 100644 src/main/java/com/jsl/oa/services/impl/RoleServiceImpl.java diff --git a/src/main/java/com/jsl/oa/controllers/RoleController.java b/src/main/java/com/jsl/oa/controllers/RoleController.java index 8466221..a4777e2 100644 --- a/src/main/java/com/jsl/oa/controllers/RoleController.java +++ b/src/main/java/com/jsl/oa/controllers/RoleController.java @@ -1,10 +1,54 @@ package com.jsl.oa.controllers; +import com.jsl.oa.model.voData.RoleAddUser; +import com.jsl.oa.model.voData.RoleRemoveUser; +import com.jsl.oa.services.RoleService; +import com.jsl.oa.utils.BaseResponse; +import com.jsl.oa.utils.ErrorCode; +import com.jsl.oa.utils.Processing; +import com.jsl.oa.utils.ResultUtil; import lombok.RequiredArgsConstructor; +import org.apache.ibatis.annotations.Delete; +import org.springframework.validation.BindingResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; @RestController @RequiredArgsConstructor public class RoleController { + private final RoleService roleService; + + /** + * 用户权限授予 + * @param roleAddUser + * @param bindingResult + * @return + */ + @PostMapping("role/user/add") + public BaseResponse roleAddUser(@RequestBody @Validated RoleAddUser roleAddUser, BindingResult bindingResult){ + // 判断是否有参数错误 + if (bindingResult.hasErrors()) { + return ResultUtil.error(ErrorCode.REQUEST_BODY_ERROR, Processing.getValidatedErrorList(bindingResult)); + } + return roleService.roleAddUser(roleAddUser); + } + + /** + * 用户权限删除 + * @param roleRemoveUser + * @param bindingResult + * @return + */ + @DeleteMapping("role/user/remove") + public BaseResponse roleRemoveUser(@RequestBody @Validated RoleRemoveUser roleRemoveUser, BindingResult bindingResult){ + // 判断是否有参数错误 + if (bindingResult.hasErrors()) { + return ResultUtil.error(ErrorCode.REQUEST_BODY_ERROR, Processing.getValidatedErrorList(bindingResult)); + } + return roleService.roleRemoveUser(roleRemoveUser); + } } diff --git a/src/main/java/com/jsl/oa/dao/RoleDAO.java b/src/main/java/com/jsl/oa/dao/RoleDAO.java new file mode 100644 index 0000000..564b7ba --- /dev/null +++ b/src/main/java/com/jsl/oa/dao/RoleDAO.java @@ -0,0 +1,21 @@ +package com.jsl.oa.dao; + +import com.jsl.oa.mapper.RoleMapper; +import com.jsl.oa.model.voData.RoleAddUser; +import com.jsl.oa.model.voData.RoleRemoveUser; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Component; + +@Component +@RequiredArgsConstructor +public class RoleDAO { + private final RoleMapper roleMapper; + + public void roleAddUser(RoleAddUser roleAddUser) { + roleMapper.roleAddUser(roleAddUser); + } + + public void roleRemoveUser(RoleRemoveUser roleRemoveUser) { + roleMapper.roleRemoveUser(roleRemoveUser); + } +} diff --git a/src/main/java/com/jsl/oa/mapper/RoleMapper.java b/src/main/java/com/jsl/oa/mapper/RoleMapper.java new file mode 100644 index 0000000..0cede5c --- /dev/null +++ b/src/main/java/com/jsl/oa/mapper/RoleMapper.java @@ -0,0 +1,17 @@ +package com.jsl.oa.mapper; + +import com.jsl.oa.model.voData.RoleAddUser; +import com.jsl.oa.model.voData.RoleRemoveUser; +import org.apache.ibatis.annotations.Delete; +import org.apache.ibatis.annotations.Insert; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface RoleMapper { + + @Insert("insert into organize_oa.oa_role_user (uid, rid) VALUE (#{uid},#{rid})") + void roleAddUser(RoleAddUser roleAddUser); + + @Delete("delete from organize_oa.oa_role_user where uid=#{uid}") + void roleRemoveUser(RoleRemoveUser roleRemoveUser); +} diff --git a/src/main/java/com/jsl/oa/model/voData/RoleAddUser.java b/src/main/java/com/jsl/oa/model/voData/RoleAddUser.java new file mode 100644 index 0000000..666d3cc --- /dev/null +++ b/src/main/java/com/jsl/oa/model/voData/RoleAddUser.java @@ -0,0 +1,13 @@ +package com.jsl.oa.model.voData; + +import lombok.Getter; + +import javax.validation.constraints.NotNull; + +@Getter +public class RoleAddUser { + @NotNull(message = "角色id不能为空") + private Long uid; + @NotNull(message = "角色id不能为空") + private int rid; +} diff --git a/src/main/java/com/jsl/oa/model/voData/RoleRemoveUser.java b/src/main/java/com/jsl/oa/model/voData/RoleRemoveUser.java new file mode 100644 index 0000000..ae8f94a --- /dev/null +++ b/src/main/java/com/jsl/oa/model/voData/RoleRemoveUser.java @@ -0,0 +1,11 @@ +package com.jsl.oa.model.voData; + +import lombok.Getter; + +import javax.validation.constraints.NotNull; + +@Getter +public class RoleRemoveUser { + @NotNull(message = "用户id不能为空") + private Long uid; +} diff --git a/src/main/java/com/jsl/oa/services/RoleService.java b/src/main/java/com/jsl/oa/services/RoleService.java new file mode 100644 index 0000000..e10f299 --- /dev/null +++ b/src/main/java/com/jsl/oa/services/RoleService.java @@ -0,0 +1,11 @@ +package com.jsl.oa.services; + +import com.jsl.oa.model.voData.RoleAddUser; +import com.jsl.oa.model.voData.RoleRemoveUser; +import com.jsl.oa.utils.BaseResponse; + +public interface RoleService { + BaseResponse roleAddUser(RoleAddUser roleAddUser); + + BaseResponse roleRemoveUser(RoleRemoveUser roleRemoveUser); +} diff --git a/src/main/java/com/jsl/oa/services/impl/RoleServiceImpl.java b/src/main/java/com/jsl/oa/services/impl/RoleServiceImpl.java new file mode 100644 index 0000000..c23055b --- /dev/null +++ b/src/main/java/com/jsl/oa/services/impl/RoleServiceImpl.java @@ -0,0 +1,36 @@ +package com.jsl.oa.services.impl; + +import com.jsl.oa.dao.RoleDAO; +import com.jsl.oa.dao.UserDAO; +import com.jsl.oa.model.voData.RoleAddUser; +import com.jsl.oa.model.voData.RoleRemoveUser; +import com.jsl.oa.services.RoleService; +import com.jsl.oa.utils.BaseResponse; +import com.jsl.oa.utils.ErrorCode; +import com.jsl.oa.utils.ResultUtil; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; + +@Service +@RequiredArgsConstructor +public class RoleServiceImpl implements RoleService { + + private final RoleDAO roleDAO; + private final UserDAO userDAO; + + @Override + public BaseResponse roleAddUser(RoleAddUser roleAddUser) { + if(userDAO.isExistUser(roleAddUser.getUid())) { + roleDAO.roleAddUser(roleAddUser); + return ResultUtil.success(); + } else return ResultUtil.error(ErrorCode.USER_NOT_EXIST); + } + + @Override + public BaseResponse roleRemoveUser(RoleRemoveUser roleRemoveUser) { + if(userDAO.isExistUser(roleRemoveUser.getUid())) { + roleDAO.roleRemoveUser(roleRemoveUser); + return ResultUtil.success(); + } else return ResultUtil.error(ErrorCode.USER_NOT_EXIST); + } +}