From 5f0e58ab06154a872b4cf99b0b37d53dddc620e8 Mon Sep 17 00:00:00 2001 From: XiaoLFeng Date: Thu, 11 Apr 2024 19:31:16 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BB=A3=E7=A0=81=E8=A7=84=E7=BA=A6?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=EF=BC=8CBUG=20=E8=A1=A5=E4=B8=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...slOrganizeInternalOaRunnerApplication.java | 4 +- .../com/jsl/oa/aspect/AnnotationsAspect.java | 4 +- .../jsl/oa/common/constant/SafeConstants.java | 9 +++- .../jsl/oa/controllers/MessageController.java | 7 ++- .../oa/controllers/PermissionController.java | 6 ++- .../jsl/oa/controllers/RoleController.java | 37 +++++++------- .../jsl/oa/controllers/UserController.java | 37 +++++++++++--- src/main/java/com/jsl/oa/dao/RoleDAO.java | 29 +++++++++-- src/main/java/com/jsl/oa/dao/UserDAO.java | 6 ++- .../java/com/jsl/oa/mapper/RoleMapper.java | 3 +- .../java/com/jsl/oa/mapper/UserMapper.java | 18 ++++--- .../jsl/oa/model/dodata/ProjectCuttingDO.java | 4 +- .../com/jsl/oa/model/vodata/UserAddVO.java | 7 +-- .../com/jsl/oa/model/vodata/UserEditVO.java | 3 +- .../java/com/jsl/oa/services/RoleService.java | 4 +- .../jsl/oa/services/impl/AuthServiceImpl.java | 2 +- .../jsl/oa/services/impl/InfoServiceImpl.java | 8 +-- .../oa/services/impl/ModuleServiceImpl.java | 8 ++- .../oa/services/impl/ProjectServiceImpl.java | 14 ++--- .../jsl/oa/services/impl/RoleServiceImpl.java | 14 ++--- .../jsl/oa/services/impl/UserServiceImpl.java | 10 ++-- src/main/java/com/jsl/oa/utils/JwtUtil.java | 4 +- .../java/com/jsl/oa/utils/Processing.java | 51 +++++++++---------- .../com/jsl/oa/utils/redis/RoleRedisUtil.java | 3 +- 24 files changed, 177 insertions(+), 115 deletions(-) diff --git a/src/main/java/com/jsl/oa/JslOrganizeInternalOaRunnerApplication.java b/src/main/java/com/jsl/oa/JslOrganizeInternalOaRunnerApplication.java index 8028d1c..6ccf80f 100644 --- a/src/main/java/com/jsl/oa/JslOrganizeInternalOaRunnerApplication.java +++ b/src/main/java/com/jsl/oa/JslOrganizeInternalOaRunnerApplication.java @@ -39,7 +39,7 @@ public class JslOrganizeInternalOaRunnerApplication implements SmartInitializing public void afterSingletonsInstantiated() { // 获取数据库中的 SecurityKey try { - SafeConstants.SECRET_KEY = infoMapper.getSecurityKey().getData(); + SafeConstants.setSecretKey(infoMapper.getSecurityKey().getData()); } catch (NullPointerException exception) { // 生成密钥 String key = Processing.generateKey(System.currentTimeMillis()); @@ -53,7 +53,7 @@ public class JslOrganizeInternalOaRunnerApplication implements SmartInitializing .setData(json) .setCreatedAt(new Timestamp(System.currentTimeMillis())); infoMapper.insertSecurityKey(configDO); - SafeConstants.SECRET_KEY = key; + SafeConstants.setSecretKey(key); } } } diff --git a/src/main/java/com/jsl/oa/aspect/AnnotationsAspect.java b/src/main/java/com/jsl/oa/aspect/AnnotationsAspect.java index 9356fd2..ff0b6de 100644 --- a/src/main/java/com/jsl/oa/aspect/AnnotationsAspect.java +++ b/src/main/java/com/jsl/oa/aspect/AnnotationsAspect.java @@ -91,12 +91,12 @@ public class AnnotationsAspect { } else { log.info("\t> 用户权限不足,检查是否是管理员"); // 检查用户是管理员 - RoleUserDO roleUserDO = roleDAO.roleMapper + RoleUserDO roleUserDO = roleDAO .getRoleUserByUid(Processing.getAuthHeaderToUserId(request)); if (roleUserDO == null) { return ResultUtil.error(ErrorCode.NOT_ADMIN); } - RoleDO roleDO = roleDAO.roleMapper.getRoleByRoleName("admin"); + RoleDO roleDO = roleDAO.getRoleByRoleName("admin"); if (roleUserDO.getRid().equals(roleDO.getId())) { return pjp.proceed(); } else { diff --git a/src/main/java/com/jsl/oa/common/constant/SafeConstants.java b/src/main/java/com/jsl/oa/common/constant/SafeConstants.java index a9071d1..a712abe 100644 --- a/src/main/java/com/jsl/oa/common/constant/SafeConstants.java +++ b/src/main/java/com/jsl/oa/common/constant/SafeConstants.java @@ -1,5 +1,12 @@ package com.jsl.oa.common.constant; +import lombok.Getter; +import lombok.Setter; + public class SafeConstants { - public static String SECRET_KEY; + + @Getter + @Setter + private static String secretKey; + } diff --git a/src/main/java/com/jsl/oa/controllers/MessageController.java b/src/main/java/com/jsl/oa/controllers/MessageController.java index 2418ff8..76f1e50 100644 --- a/src/main/java/com/jsl/oa/controllers/MessageController.java +++ b/src/main/java/com/jsl/oa/controllers/MessageController.java @@ -1,4 +1,5 @@ package com.jsl.oa.controllers; + import com.jsl.oa.services.MessageService; import com.jsl.oa.utils.BaseResponse; import com.jsl.oa.utils.ErrorCode; @@ -7,7 +8,10 @@ import com.jsl.oa.utils.ResultUtil; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.format.annotation.DateTimeFormat; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; import javax.servlet.http.HttpServletRequest; import java.time.LocalDateTime; @@ -70,6 +74,5 @@ public class MessageController { return messageService.messageGet(begin, end, page, pageSize, uid); } } - } diff --git a/src/main/java/com/jsl/oa/controllers/PermissionController.java b/src/main/java/com/jsl/oa/controllers/PermissionController.java index 2c003b4..c0d37f7 100755 --- a/src/main/java/com/jsl/oa/controllers/PermissionController.java +++ b/src/main/java/com/jsl/oa/controllers/PermissionController.java @@ -88,7 +88,11 @@ public class PermissionController { * @return {@link BaseResponse} 对象,包含操作结果。 */ @PutMapping("/permission/edit") - public BaseResponse permissionEdit(@RequestBody @Validated PermissionEditVO permissionEditVo, BindingResult bindingResult, HttpServletRequest request) { + public BaseResponse permissionEdit( + @RequestBody @Validated PermissionEditVO permissionEditVo, + BindingResult bindingResult, + HttpServletRequest request + ) { log.info("请求接口[PUT]: /permission/edit"); // 判断是否有参数错误 if (bindingResult.hasErrors()) { diff --git a/src/main/java/com/jsl/oa/controllers/RoleController.java b/src/main/java/com/jsl/oa/controllers/RoleController.java index 43fe0bc..96c81dc 100755 --- a/src/main/java/com/jsl/oa/controllers/RoleController.java +++ b/src/main/java/com/jsl/oa/controllers/RoleController.java @@ -58,7 +58,11 @@ public class RoleController { * @return {@link BaseResponse} */ @PutMapping("/role/edit") - public BaseResponse roleEdit(HttpServletRequest request, @RequestBody @Validated RoleEditVO roleEditVO, @NotNull BindingResult bindingResult) { + public BaseResponse roleEdit( + @RequestBody @Validated RoleEditVO roleEditVO, + @NotNull BindingResult bindingResult, + HttpServletRequest request + ) { log.info("请求接口[PUT]: /role/edit"); // 判断是否有参数错误 if (bindingResult.hasErrors()) { @@ -89,7 +93,7 @@ public class RoleController { /** * 用户权限授予 * - * @return + * @return baseResponse */ @PostMapping("role/user/add") public BaseResponse roleAddUser(HttpServletRequest request, @RequestParam Long uid, @RequestParam Long rid) { @@ -104,7 +108,7 @@ public class RoleController { /** * 用户权限删除 * - * @return + * @return baseResponse */ @DeleteMapping("role/user/remove") public BaseResponse roleRemoveUser(HttpServletRequest request, @RequestParam Long uid) { @@ -116,15 +120,17 @@ public class RoleController { return roleService.roleRemoveUser(request, uid); } - /** - * @Description: 添加用户权限 - * @Date: 2024/1/19 - * @Param request: - * @Param uid: - **/ + *

角色添加

+ *
+ * 角色添加接口 + */ @PostMapping("role/add") - public BaseResponse addRole(HttpServletRequest request, @RequestBody @Validated RoleAddVo roleAddVO, @NotNull BindingResult bindingResult) throws ClassCopyException { + public BaseResponse addRole( + @RequestBody @Validated RoleAddVo roleAddVO, + @NotNull BindingResult bindingResult, + HttpServletRequest request + ) throws ClassCopyException { log.info("请求接口[POST]: /role/add"); // 判断是否有参数错误 if (bindingResult.hasErrors()) { @@ -133,14 +139,11 @@ public class RoleController { return roleService.addRole(request, roleAddVO); } - /** - * @Description: 改变用户角色权限信息 - * @Date: 2024/1/20 - * @Param request: - * @Param uid: 用户id - * @Param rid: 角色id - **/ + *

角色用户修改

+ *
+ * 角色用户修改接口 + */ @PutMapping("role/user/change") public BaseResponse roleChangeUser(HttpServletRequest request, @RequestParam Long uid, @RequestParam Long rid) { log.info("请求接口[POST]: /role/user/change"); diff --git a/src/main/java/com/jsl/oa/controllers/UserController.java b/src/main/java/com/jsl/oa/controllers/UserController.java index de4b659..74330df 100644 --- a/src/main/java/com/jsl/oa/controllers/UserController.java +++ b/src/main/java/com/jsl/oa/controllers/UserController.java @@ -77,7 +77,10 @@ public class UserController { * @return {@link BaseResponse} */ @PutMapping("/user/profile/edit") - public BaseResponse userEditProfile(@RequestBody @Validated UserEditProfileVO userEditProfileVO, BindingResult bindingResult) { + public BaseResponse userEditProfile( + @RequestBody @Validated UserEditProfileVO userEditProfileVO, + BindingResult bindingResult + ) { log.info("请求接口[PUT]: /user/profile/edit"); // 判断是否有参数错误 if (bindingResult.hasErrors()) { @@ -100,7 +103,13 @@ public class UserController { * @return {@link BaseResponse} */ @GetMapping("/user/current") - public BaseResponse userCurrent(HttpServletRequest request, @RequestParam @Nullable String id, @RequestParam @Nullable String username, @RequestParam @Nullable String email, @RequestParam @Nullable String phone) { + public BaseResponse userCurrent( + @RequestParam @Nullable String id, + @RequestParam @Nullable String username, + @RequestParam @Nullable String email, + @RequestParam @Nullable String phone, + @NotNull HttpServletRequest request + ) { log.info("请求接口[GET]: /user/current"); // 检查数据是否有问题 if (id != null && !id.isEmpty()) { @@ -119,7 +128,10 @@ public class UserController { } } if (phone != null && !phone.isEmpty()) { - if (!Pattern.matches("^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\\d{8}$", phone)) { + if (!Pattern.matches( + "^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\\d{8}$", + phone + )) { return ResultUtil.error(ErrorCode.PARAMETER_ERROR, "手机格式不正确"); } } @@ -136,8 +148,11 @@ public class UserController { * @return {@link BaseResponse} */ @PostMapping("/user/current/all") - public BaseResponse userCurrentAll(@RequestBody @Validated UserAllCurrentVO userAllCurrentVO, - HttpServletRequest request, @NotNull BindingResult bindingResult) { + public BaseResponse userCurrentAll( + @RequestBody @Validated UserAllCurrentVO userAllCurrentVO, + @NotNull BindingResult bindingResult, + HttpServletRequest request + ) { log.info("请求接口[POST]: /user/current/all"); // 判断是否有参数错误 if (bindingResult.hasErrors()) { @@ -154,7 +169,11 @@ public class UserController { * @Param bindingResult: **/ @PostMapping("/user/add") - public BaseResponse userAdd(@RequestBody @Validated UserAddVO userAddVo, BindingResult bindingResult, HttpServletRequest request) { + public BaseResponse userAdd( + @RequestBody @Validated UserAddVO userAddVo, + BindingResult bindingResult, + HttpServletRequest request + ) { log.info("请求接口[POST]: /user/add"); // 判断是否有参数错误 if (bindingResult.hasErrors()) { @@ -170,7 +189,11 @@ public class UserController { * @Param bindingResult: **/ @PutMapping("/user/edit") - public BaseResponse userEdit(@RequestBody @Validated UserEditVO userEditVO, BindingResult bindingResult, HttpServletRequest request) { + public BaseResponse userEdit( + @RequestBody @Validated UserEditVO userEditVO, + BindingResult bindingResult, + HttpServletRequest request + ) { log.info("请求接口[PUT]: /user/edit"); // 判断是否有参数错误 if (bindingResult.hasErrors()) { diff --git a/src/main/java/com/jsl/oa/dao/RoleDAO.java b/src/main/java/com/jsl/oa/dao/RoleDAO.java index aaf6a18..4e15499 100644 --- a/src/main/java/com/jsl/oa/dao/RoleDAO.java +++ b/src/main/java/com/jsl/oa/dao/RoleDAO.java @@ -18,7 +18,7 @@ import java.util.List; @Component @RequiredArgsConstructor public class RoleDAO { - public final RoleMapper roleMapper; + private final RoleMapper roleMapper; private final Gson gson; private final RoleRedisUtil roleRedisUtil; @@ -26,7 +26,12 @@ public class RoleDAO { log.info("\t> 执行 DAO 层 RoleDAO.addRoleUser 方法"); log.info("\t\t> 从 MySQL 获取数据"); roleMapper.roleAddUser(uid, rid); - roleRedisUtil.setData(BusinessConstants.USER, uid.toString(), gson.toJson(roleMapper.getRoleUserByUid(uid)), 120); + roleRedisUtil.setData( + BusinessConstants.USER, + uid.toString(), + gson.toJson(roleMapper.getRoleUserByUid(uid)), + 120 + ); } public void delRoleUser(Long uid) { @@ -82,8 +87,7 @@ public class RoleDAO { public RoleDO getRoleNameByUid(Long uid) { log.info("\t> 执行 DAO 层 RoleDAO.getRoleNameByUid 方法"); log.info("\t\t> 从 MySQL 获取数据"); - RoleDO roleDO = roleMapper.getRoleById(getRoleUserByUid(uid).getRid()); - return roleDO; + return roleMapper.getRoleById(getRoleUserByUid(uid).getRid()); } @@ -122,7 +126,12 @@ public class RoleDAO { log.info("\t> 执行 DAO 层 RoleDAO.roleChangeUser 方法"); log.info("\t\t> 从 MySQL 获取数据"); if (roleMapper.roleChangeUser(uid, rid)) { - roleRedisUtil.setData(BusinessConstants.USER, uid.toString(), gson.toJson(roleMapper.getRoleUserByUid(uid)), 120); + roleRedisUtil.setData( + BusinessConstants.USER, + uid.toString(), + gson.toJson(roleMapper.getRoleUserByUid(uid)), + 120 + ); return true; } else { return false; @@ -140,4 +149,14 @@ public class RoleDAO { return gson.fromJson(getRedisData, RoleUserDO.class); } } + + /** + * 根据角色名获取角色信息 + * + * @param roleName 角色名 + * @return 角色信息 + */ + public RoleDO getRoleByRoleName(String roleName) { + return roleMapper.getRoleByRoleName(roleName); + } } diff --git a/src/main/java/com/jsl/oa/dao/UserDAO.java b/src/main/java/com/jsl/oa/dao/UserDAO.java index dd16fc5..9c8f619 100755 --- a/src/main/java/com/jsl/oa/dao/UserDAO.java +++ b/src/main/java/com/jsl/oa/dao/UserDAO.java @@ -133,7 +133,8 @@ public class UserDAO { UserCurrentBackVO userCurrentBackVO = new UserCurrentBackVO(); userCurrentBackVO.setUsers(new ArrayList<>()) .setCount(userMapper.getUsersCount()); - userCurrentDO.forEach(it -> userCurrentBackVO.getUsers().add(Processing.returnUserInfo(it, roleDAO, permissionDAO))); + userCurrentDO.forEach(it -> userCurrentBackVO.getUsers() + .add(Processing.returnUserInfo(it, roleDAO, permissionDAO))); return userCurrentBackVO; } @@ -145,7 +146,8 @@ public class UserDAO { UserCurrentBackVO userCurrentBackVO = new UserCurrentBackVO(); userCurrentBackVO.setUsers(new ArrayList<>()) .setCount(userMapper.getUsersCount()); - userCurrentDO.forEach(it -> userCurrentBackVO.getUsers().add(Processing.returnUserInfo(it, roleDAO, permissionDAO))); + userCurrentDO.forEach(it -> userCurrentBackVO.getUsers() + .add(Processing.returnUserInfo(it, roleDAO, permissionDAO))); return userCurrentBackVO; } diff --git a/src/main/java/com/jsl/oa/mapper/RoleMapper.java b/src/main/java/com/jsl/oa/mapper/RoleMapper.java index e35b10b..0cf0b78 100644 --- a/src/main/java/com/jsl/oa/mapper/RoleMapper.java +++ b/src/main/java/com/jsl/oa/mapper/RoleMapper.java @@ -30,7 +30,8 @@ public interface RoleMapper { @Select("SELECT * FROM organize_oa.oa_role ORDER BY id DESC") List getRole(); - @Update("UPDATE organize_oa.oa_role SET role_name=#{roleName},display_name=#{displayName},updated_at=CURRENT_TIMESTAMP WHERE id=#{id}") + @Update("UPDATE organize_oa.oa_role " + + "SET role_name=#{roleName},display_name=#{displayName},updated_at=CURRENT_TIMESTAMP WHERE id=#{id}") boolean roleEdit(RoleDO getRole); @Update("UPDATE organize_oa.oa_role_user SET rid = #{rid},updated_at = current_timestamp WHERE uid = #{uid}") diff --git a/src/main/java/com/jsl/oa/mapper/UserMapper.java b/src/main/java/com/jsl/oa/mapper/UserMapper.java index 29fdcbf..37432cc 100755 --- a/src/main/java/com/jsl/oa/mapper/UserMapper.java +++ b/src/main/java/com/jsl/oa/mapper/UserMapper.java @@ -37,7 +37,8 @@ public interface UserMapper { @Update("UPDATE organize_oa.oa_user SET is_delete = true ,updated_at = CURRENT_TIMESTAMP WHERE id = #{id}") void userDelete(Long id); - @Update("UPDATE organize_oa.oa_user SET account_no_locked = #{isLock} ,updated_at = CURRENT_TIMESTAMP WHERE id = #{id} ") + @Update("UPDATE organize_oa.oa_user " + + "SET account_no_locked = #{isLock} ,updated_at = CURRENT_TIMESTAMP WHERE id = #{id}") void userLock(Long id, Long isLock); @Select("SELECT * FROM organize_oa.oa_user WHERE id = #{id}") @@ -77,11 +78,11 @@ public interface UserMapper { List getRecommendUser(); - @Update("UPDATE organize_oa.oa_user " + - "SET address = #{address}, phone = #{phone}, email = #{email}, age = #{age}, " + - "signature = #{signature}, sex = #{sex}, avatar = #{avatar}, nickname = #{nickname}, " + - "description = #{description} ,updated_at = current_timestamp " + - "WHERE id = #{id}") + @Update("UPDATE organize_oa.oa_user " + + "SET address = #{address}, phone = #{phone}, email = #{email}, age = #{age}, " + + "signature = #{signature}, sex = #{sex}, avatar = #{avatar}, nickname = #{nickname}, " + + "description = #{description} ,updated_at = current_timestamp " + + "WHERE id = #{id}") void updateUser(UserDO userDO); @Select("SELECT * FROM organize_oa.oa_user WHERE email = #{email}") @@ -96,7 +97,8 @@ public interface UserMapper { @Select("SELECT COUNT(*) FROM organize_oa.oa_user") Long getUsersCount(); - @Select("select oa_user.id,oa_user.username,oa_role.role_name from organize_oa.oa_user join organize_oa.oa_role_user " + - "on oa_user.id = oa_role_user.uid join organize_oa.oa_role on oa_role_user.rid = oa_role.id") + @Select("select oa_user.id,oa_user.username,oa_role.role_name " + + "from organize_oa.oa_user join organize_oa.oa_role_user " + + "on oa_user.id = oa_role_user.uid join organize_oa.oa_role on oa_role_user.rid = oa_role.id") List getPrincipal(); } diff --git a/src/main/java/com/jsl/oa/model/dodata/ProjectCuttingDO.java b/src/main/java/com/jsl/oa/model/dodata/ProjectCuttingDO.java index b79a8f7..a438d9b 100755 --- a/src/main/java/com/jsl/oa/model/dodata/ProjectCuttingDO.java +++ b/src/main/java/com/jsl/oa/model/dodata/ProjectCuttingDO.java @@ -27,8 +27,8 @@ public class ProjectCuttingDO { private Long cycle; private String name; private String description; - private Integer is_delete; - private Integer is_finish; + private Integer isDelete; + private Integer isFinish; private Integer status; private boolean type; private Timestamp beginTime; diff --git a/src/main/java/com/jsl/oa/model/vodata/UserAddVO.java b/src/main/java/com/jsl/oa/model/vodata/UserAddVO.java index cfca43d..4394e49 100644 --- a/src/main/java/com/jsl/oa/model/vodata/UserAddVO.java +++ b/src/main/java/com/jsl/oa/model/vodata/UserAddVO.java @@ -1,12 +1,12 @@ package com.jsl.oa.model.vodata; -import lombok.Getter; +import lombok.Data; import javax.validation.constraints.*; -@Getter +@Data public class UserAddVO { @NotBlank(message = "用户名不能为空") @@ -20,7 +20,8 @@ public class UserAddVO { private String address; @NotBlank(message = "电话不能为空") - @Pattern(regexp = "^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\\d{8}$", message = "电话格式错误") + @Pattern(regexp = "^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\\d{8}$", + message = "电话格式错误") private String phone; @NotBlank(message = "邮箱不能为空") diff --git a/src/main/java/com/jsl/oa/model/vodata/UserEditVO.java b/src/main/java/com/jsl/oa/model/vodata/UserEditVO.java index 300335e..6cc4189 100644 --- a/src/main/java/com/jsl/oa/model/vodata/UserEditVO.java +++ b/src/main/java/com/jsl/oa/model/vodata/UserEditVO.java @@ -21,7 +21,8 @@ public class UserEditVO { private String address; - @Pattern(regexp = "^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\\d{8}$", message = "电话格式错误") + @Pattern(regexp = "^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\\d{8}$", + message = "电话格式错误") private String phone; @Pattern(regexp = "^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$", message = "邮箱格式错误") diff --git a/src/main/java/com/jsl/oa/services/RoleService.java b/src/main/java/com/jsl/oa/services/RoleService.java index ba46e87..61a8d32 100644 --- a/src/main/java/com/jsl/oa/services/RoleService.java +++ b/src/main/java/com/jsl/oa/services/RoleService.java @@ -16,9 +16,9 @@ import javax.servlet.http.HttpServletRequest; * @since v1.1.0 */ public interface RoleService { - BaseResponse roleAddUser(HttpServletRequest request,Long uid, Long rid); + BaseResponse roleAddUser(HttpServletRequest request, Long uid, Long rid); - BaseResponse roleRemoveUser(HttpServletRequest request,Long uid); + BaseResponse roleRemoveUser(HttpServletRequest request, Long uid); BaseResponse roleGet(HttpServletRequest request, String id); diff --git a/src/main/java/com/jsl/oa/services/impl/AuthServiceImpl.java b/src/main/java/com/jsl/oa/services/impl/AuthServiceImpl.java index 25776df..0ead1c9 100755 --- a/src/main/java/com/jsl/oa/services/impl/AuthServiceImpl.java +++ b/src/main/java/com/jsl/oa/services/impl/AuthServiceImpl.java @@ -273,7 +273,7 @@ public class AuthServiceImpl implements AuthService { getPermissionForString = permissionDAO.getPermission(userDO.getId()); } // 获取用户角色 - RoleUserDO getUserRole = roleDAO.roleMapper.getRoleUserByUid(userDO.getId()); + RoleUserDO getUserRole = roleDAO.getRoleUserByUid(userDO.getId()); if (getUserRole == null) { getUserRole = new RoleUserDO(); getUserRole.setRid(0L) diff --git a/src/main/java/com/jsl/oa/services/impl/InfoServiceImpl.java b/src/main/java/com/jsl/oa/services/impl/InfoServiceImpl.java index 7540f9f..f0c70a2 100644 --- a/src/main/java/com/jsl/oa/services/impl/InfoServiceImpl.java +++ b/src/main/java/com/jsl/oa/services/impl/InfoServiceImpl.java @@ -2,8 +2,8 @@ package com.jsl.oa.services.impl; import com.jsl.oa.annotations.CheckUserHasPermission; import com.jsl.oa.dao.InfoDAO; +import com.jsl.oa.dao.RoleDAO; import com.jsl.oa.dao.UserDAO; -import com.jsl.oa.mapper.RoleMapper; import com.jsl.oa.model.dodata.UserDO; import com.jsl.oa.model.dodata.info.CarouselDO; import com.jsl.oa.model.vodata.UserProfileVo; @@ -36,9 +36,9 @@ import java.util.List; @Service @RequiredArgsConstructor public class InfoServiceImpl implements InfoService { - private final RoleMapper roleMapper; private final InfoDAO infoDAO; private final UserDAO userDAO; + private final RoleDAO roleDAO; @Override @CheckUserHasPermission("info.image.add") @@ -131,7 +131,7 @@ public class InfoServiceImpl implements InfoService { public BaseResponse delHeaderImage(HttpServletRequest request, Integer id) { log.info("\t> 执行 Service 层 InfoService.delHeaderImage 方法"); // 用户权限校验 - if (!Processing.checkUserIsAdmin(request, roleMapper)) { + if (!Processing.checkUserIsAdmin(request, roleDAO)) { return ResultUtil.error(ErrorCode.NOT_ADMIN); } // 获取轮播图信息 @@ -154,7 +154,7 @@ public class InfoServiceImpl implements InfoService { public BaseResponse editSettingHeaderImage(HttpServletRequest request, Boolean showType) { log.info("\t> 执行 Service 层 InfoService.editSettingHeaderImage 方法"); // 用户权限校验 - if (!Processing.checkUserIsAdmin(request, roleMapper)) { + if (!Processing.checkUserIsAdmin(request, roleDAO)) { return ResultUtil.error(ErrorCode.NOT_ADMIN); } // 获取轮播图信息 diff --git a/src/main/java/com/jsl/oa/services/impl/ModuleServiceImpl.java b/src/main/java/com/jsl/oa/services/impl/ModuleServiceImpl.java index f3ccf55..c8d1d39 100644 --- a/src/main/java/com/jsl/oa/services/impl/ModuleServiceImpl.java +++ b/src/main/java/com/jsl/oa/services/impl/ModuleServiceImpl.java @@ -1,10 +1,9 @@ package com.jsl.oa.services.impl; -import com.jsl.oa.dao.ModuleDAO; import com.jsl.oa.dao.ProjectDAO; +import com.jsl.oa.dao.RoleDAO; import com.jsl.oa.dao.UserDAO; import com.jsl.oa.mapper.ModuleMapper; -import com.jsl.oa.mapper.RoleMapper; import com.jsl.oa.model.dodata.ProjectWorkDO; import com.jsl.oa.model.vodata.ProjectWorkAndNameVO; import com.jsl.oa.services.ModuleService; @@ -24,11 +23,10 @@ import java.util.List; @Service @RequiredArgsConstructor public class ModuleServiceImpl implements ModuleService { - private final RoleMapper roleMapper; - private final ModuleDAO moduleDAO; private final ProjectDAO projectDAO; private final ModuleMapper moduleMapper; private final UserDAO userDAO; + private final RoleDAO roleDAO; @Override public BaseResponse getByProjectId(Integer projectId, HttpServletRequest request) { @@ -84,7 +82,7 @@ public class ModuleServiceImpl implements ModuleService { @Override public BaseResponse deleteById(HttpServletRequest request, Long id) { // 检测是否为管理员 - if (!Processing.checkUserIsAdmin(request, roleMapper)) { + if (!Processing.checkUserIsAdmin(request, roleDAO)) { return ResultUtil.error(ErrorCode.NOT_PERMISSION); } diff --git a/src/main/java/com/jsl/oa/services/impl/ProjectServiceImpl.java b/src/main/java/com/jsl/oa/services/impl/ProjectServiceImpl.java index a2916e4..a2dc66c 100644 --- a/src/main/java/com/jsl/oa/services/impl/ProjectServiceImpl.java +++ b/src/main/java/com/jsl/oa/services/impl/ProjectServiceImpl.java @@ -4,9 +4,9 @@ import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import com.jsl.oa.annotations.CheckUserHasPermission; import com.jsl.oa.dao.ProjectDAO; +import com.jsl.oa.dao.RoleDAO; import com.jsl.oa.dao.UserDAO; import com.jsl.oa.mapper.ProjectMapper; -import com.jsl.oa.mapper.RoleMapper; import com.jsl.oa.mapper.UserMapper; import com.jsl.oa.model.dodata.ProjectDO; import com.jsl.oa.model.dodata.UserDO; @@ -46,10 +46,10 @@ public class ProjectServiceImpl implements ProjectService { private final UserMapper userMapper; private final ProjectMapper projectMapper; - private final RoleMapper roleMapper; private final ProjectDAO projectDAO; private final UserDAO userDAO; private final ObjectMapper objectMapper; + private final RoleDAO roleDAO; @Override public BaseResponse projectAdd(HttpServletRequest request, ProjectInfoVO projectAdd) { @@ -86,7 +86,7 @@ public class ProjectServiceImpl implements ProjectService { //是否是增加子系统 if (projectWorkVO.getType() == 0) { //是否是老师 - if (Processing.checkUserIsTeacher(request, roleMapper)) { + if (Processing.checkUserIsTeacher(request, roleDAO)) { projectDAO.projectWorkAdd(projectWorkVO); } else { return ResultUtil.error(ErrorCode.NOT_PERMISSION); @@ -230,7 +230,7 @@ public class ProjectServiceImpl implements ProjectService { //判断用户是否为老师 或者 项目负责人 - if (!Processing.checkUserIsTeacher(request, roleMapper) + if (!Processing.checkUserIsTeacher(request, roleDAO) || !projectDAO.isPrincipalUser(Processing.getAuthHeaderToUserId(request), projectId)) { return ResultUtil.error(ErrorCode.NOT_PERMISSION); } @@ -379,7 +379,7 @@ public class ProjectServiceImpl implements ProjectService { //判断是否是老师(项目负责人) - if (listAll != null && Processing.checkUserIsTeacher(request, roleMapper)) { + if (listAll != null && Processing.checkUserIsTeacher(request, roleDAO)) { List projectDOList = projectDAO.get(userId, listAll, tags, isFinish); List projectSimpleVOList = new ArrayList<>(); for (ProjectDO projectDO : projectDOList) { @@ -457,7 +457,7 @@ public class ProjectServiceImpl implements ProjectService { //判断是否是老师(项目负责人) - if (listAll != null && Processing.checkUserIsTeacher(request, roleMapper)) { + if (listAll != null && Processing.checkUserIsTeacher(request, roleDAO)) { List projectDOList = projectDAO.workget(userId, listAll, tags, isFinish, is); List projectSimpleVOList = new ArrayList<>(); for (ProjectDO projectDO : projectDOList) { @@ -505,7 +505,7 @@ public class ProjectServiceImpl implements ProjectService { log.info("\t> 执行 Service 层 ProjectService.projectDelete 方法"); //判断用户是否为老师 或者 项目负责人 - if (!Processing.checkUserIsTeacher(request, roleMapper)) { + if (!Processing.checkUserIsTeacher(request, roleDAO)) { return ResultUtil.error(ErrorCode.NOT_PERMISSION); } diff --git a/src/main/java/com/jsl/oa/services/impl/RoleServiceImpl.java b/src/main/java/com/jsl/oa/services/impl/RoleServiceImpl.java index 260f68c..41be8e8 100644 --- a/src/main/java/com/jsl/oa/services/impl/RoleServiceImpl.java +++ b/src/main/java/com/jsl/oa/services/impl/RoleServiceImpl.java @@ -45,7 +45,7 @@ public class RoleServiceImpl implements RoleService { @CheckUserHasPermission("role.add") public BaseResponse roleAddUser(HttpServletRequest request, Long uid, Long rid) { log.info("\t> 执行 Service 层 RoleService.addRoleUser 方法"); - if (Processing.checkUserIsAdmin(request, roleDAO.roleMapper)) { + if (Processing.checkUserIsAdmin(request, roleDAO)) { roleDAO.addRoleUser(uid, rid); return ResultUtil.success(); } else { @@ -57,7 +57,7 @@ public class RoleServiceImpl implements RoleService { public BaseResponse roleRemoveUser(HttpServletRequest request, Long uid) { log.info("\t> 执行 Service 层 RoleService.delRoleUser 方法"); - if (Processing.checkUserIsAdmin(request, roleDAO.roleMapper)) { + if (Processing.checkUserIsAdmin(request, roleDAO)) { roleDAO.delRoleUser(uid); return ResultUtil.success(); } else { @@ -77,7 +77,7 @@ public class RoleServiceImpl implements RoleService { return ResultUtil.error(ErrorCode.USER_NOT_CHANGE_TO_THEMSELVES); } //检测用户权限是否为管理员 - if (Processing.checkUserIsAdmin(request, roleDAO.roleMapper)) { + if (Processing.checkUserIsAdmin(request, roleDAO)) { if (roleDAO.roleChangeUser(uid, rid)) { return ResultUtil.success(); } else { @@ -92,7 +92,7 @@ public class RoleServiceImpl implements RoleService { public BaseResponse roleGet(HttpServletRequest request, String id) { log.info("\t> 执行 Service 层 RoleService.roleGet 方法"); // 检查用户权限 - if (!Processing.checkUserIsAdmin(request, roleDAO.roleMapper)) { + if (!Processing.checkUserIsAdmin(request, roleDAO)) { return ResultUtil.error(ErrorCode.NOT_ADMIN); } // 获取 Role 权限组 @@ -119,7 +119,7 @@ public class RoleServiceImpl implements RoleService { public BaseResponse roleEdit(HttpServletRequest request, RoleEditVO roleEditVO) { log.info("\t> 执行 Service 层 RoleService.roleEdit 方法"); // 检查用户权限 - if (!Processing.checkUserIsAdmin(request, roleDAO.roleMapper)) { + if (!Processing.checkUserIsAdmin(request, roleDAO)) { return ResultUtil.error(ErrorCode.NOT_ADMIN); } // 获取 Role 相关信息 @@ -143,7 +143,7 @@ public class RoleServiceImpl implements RoleService { public BaseResponse roleDelete(HttpServletRequest request, Long id) { log.info("\t> 执行 Service 层 RoleService.roleDelete 方法"); // 检查用户权限 - if (!Processing.checkUserIsAdmin(request, roleDAO.roleMapper)) { + if (!Processing.checkUserIsAdmin(request, roleDAO)) { return ResultUtil.error(ErrorCode.NOT_ADMIN); } // 获取 Role 相关信息 @@ -165,7 +165,7 @@ public class RoleServiceImpl implements RoleService { public BaseResponse addRole(HttpServletRequest request, RoleAddVo roleAddVO) throws ClassCopyException { log.info("\t> 执行 Service 层 RoleService.addRole 方法"); // 检查用户权限 - if (!Processing.checkUserIsAdmin(request, roleDAO.roleMapper)) { + if (!Processing.checkUserIsAdmin(request, roleDAO)) { return ResultUtil.error(ErrorCode.NOT_ADMIN); } // 检查权限名称是否重复 diff --git a/src/main/java/com/jsl/oa/services/impl/UserServiceImpl.java b/src/main/java/com/jsl/oa/services/impl/UserServiceImpl.java index ea05552..3b9e296 100755 --- a/src/main/java/com/jsl/oa/services/impl/UserServiceImpl.java +++ b/src/main/java/com/jsl/oa/services/impl/UserServiceImpl.java @@ -51,7 +51,7 @@ public class UserServiceImpl implements UserService { log.info("\t> 执行 Service 层 UserService.userDelete 方法"); //判断用户是否存在 if (userDAO.isExistUser(id)) { - if (!Processing.checkUserIsAdmin(request, roleDAO.roleMapper)) { + if (!Processing.checkUserIsAdmin(request, roleDAO)) { return ResultUtil.error(ErrorCode.NOT_ADMIN); } // 用户是否已删除 @@ -69,7 +69,7 @@ public class UserServiceImpl implements UserService { @Override public BaseResponse userLock(HttpServletRequest request, Long id, Long isLock) { log.info("\t> 执行 Service 层 UserService.userLock 方法"); - if (!Processing.checkUserIsAdmin(request, roleDAO.roleMapper)) { + if (!Processing.checkUserIsAdmin(request, roleDAO)) { return ResultUtil.error(ErrorCode.NOT_ADMIN); } //判断用户是否存在 @@ -159,7 +159,7 @@ public class UserServiceImpl implements UserService { if (roleUserDO == null) { return ResultUtil.error(ErrorCode.NOT_PERMISSION); } - RoleDO roleDO = roleDAO.roleMapper.getRoleByRoleName("admin"); + RoleDO roleDO = roleDAO.getRoleByRoleName("admin"); if (!roleUserDO.getRid().equals(roleDO.getId())) { return ResultUtil.error(ErrorCode.NOT_PERMISSION); } @@ -192,7 +192,7 @@ public class UserServiceImpl implements UserService { public BaseResponse userAdd(UserAddVO userAddVo, HttpServletRequest request) { log.info("\t> 执行 Service 层 UserService.userAdd 方法"); // 检测用户是否为管理员 - if (!Processing.checkUserIsAdmin(request, roleDAO.roleMapper)) { + if (!Processing.checkUserIsAdmin(request, roleDAO)) { return ResultUtil.error(ErrorCode.NOT_ADMIN); } //如果用户不重复,添加用户 @@ -230,7 +230,7 @@ public class UserServiceImpl implements UserService { public BaseResponse userEdit(UserEditVO userEditVO, HttpServletRequest request) { log.info("\t> 执行 Service 层 userEdit 方法"); // 检测用户是否为管理员 - if (!Processing.checkUserIsAdmin(request, roleDAO.roleMapper)) { + if (!Processing.checkUserIsAdmin(request, roleDAO)) { return ResultUtil.error(ErrorCode.NOT_ADMIN); } //根据id获取用户信息 diff --git a/src/main/java/com/jsl/oa/utils/JwtUtil.java b/src/main/java/com/jsl/oa/utils/JwtUtil.java index 27602fa..9858c9f 100755 --- a/src/main/java/com/jsl/oa/utils/JwtUtil.java +++ b/src/main/java/com/jsl/oa/utils/JwtUtil.java @@ -34,7 +34,7 @@ public class JwtUtil { * @return 返回生成的Token */ public static String generateToken(@NotNull Long userId) { - Key key = Keys.hmacShaKeyFor(SafeConstants.SECRET_KEY.getBytes()); + Key key = Keys.hmacShaKeyFor(SafeConstants.getSecretKey().getBytes()); return Jwts.builder() .setSubject(userId.toString()) .setExpiration(new java.util.Date(System.currentTimeMillis() + EXPIRATION_TIME)) @@ -71,7 +71,7 @@ public class JwtUtil { * @return 返回获取到的用户名 */ public static Long getUserId(String token) { - Key key = Keys.hmacShaKeyFor(SafeConstants.SECRET_KEY.getBytes()); + Key key = Keys.hmacShaKeyFor(SafeConstants.getSecretKey().getBytes()); Jws claimsJws = Jwts.parserBuilder() .setSigningKey(key) .build() diff --git a/src/main/java/com/jsl/oa/utils/Processing.java b/src/main/java/com/jsl/oa/utils/Processing.java index a46d305..cd7d9ab 100755 --- a/src/main/java/com/jsl/oa/utils/Processing.java +++ b/src/main/java/com/jsl/oa/utils/Processing.java @@ -7,7 +7,6 @@ import com.jsl.oa.dao.PermissionDAO; import com.jsl.oa.dao.RoleDAO; import com.jsl.oa.dao.UserDAO; import com.jsl.oa.exception.ClassCopyException; -import com.jsl.oa.mapper.RoleMapper; import com.jsl.oa.model.dodata.*; import com.jsl.oa.model.vodata.PermissionContentVo; import com.jsl.oa.model.vodata.ProjectSimpleVO; @@ -166,13 +165,12 @@ public class Processing { * 该方法用于检查用户是否是管理员,类型封装后字节返回结果 * * @param request 请求 - * @param roleMapper RoleMapper * @return 如果为 true 是管理员,false 不是管理员 */ - public static @NotNull Boolean checkUserIsAdmin(HttpServletRequest request, @NotNull RoleMapper roleMapper) { - RoleUserDO roleUserDO = roleMapper.getRoleUserByUid(Processing.getAuthHeaderToUserId(request)); + public static @NotNull Boolean checkUserIsAdmin(HttpServletRequest request, @NotNull RoleDAO roleDAO) { + RoleUserDO roleUserDO = roleDAO.getRoleUserByUid(Processing.getAuthHeaderToUserId(request)); if (roleUserDO != null) { - RoleDO roleDO = roleMapper.getRoleByRoleName("admin"); + RoleDO roleDO = roleDAO.getRoleByRoleName("admin"); return roleUserDO.getRid().equals(roleDO.getId()); } else { return false; @@ -183,13 +181,12 @@ public class Processing { * 检查用户是否是老师 * * @param request 请求 - * @param roleMapper RoleMapper * @return 如果为 true 是老师,false 不是老师 */ - public static @NotNull Boolean checkUserIsTeacher(HttpServletRequest request, @NotNull RoleMapper roleMapper) { - RoleUserDO roleUserDO = roleMapper.getRoleUserByUid(Processing.getAuthHeaderToUserId(request)); + public static @NotNull Boolean checkUserIsTeacher(HttpServletRequest request, @NotNull RoleDAO roleDAO) { + RoleUserDO roleUserDO = roleDAO.getRoleUserByUid(Processing.getAuthHeaderToUserId(request)); if (roleUserDO != null) { - RoleDO roleDO = roleMapper.getRoleByRoleName("teacher"); + RoleDO roleDO = roleDAO.getRoleByRoleName("teacher"); return roleUserDO.getRid().equals(roleDO.getId()); } else { return false; @@ -211,11 +208,10 @@ public class Processing { * @param 源对象的类型。 * @param source 从中复制属性的源对象。 * @param target 属性将复制到的目标对象。 - * @return 复制属性后的目标对象。 * @throws ClassCopyException 如果在复制过程中出现错误。 */ @Contract(pure = true) - public static T copyProperties(@NotNull S source, @NotNull T target) throws ClassCopyException { + public static void copyProperties(@NotNull S source, @NotNull T target) throws ClassCopyException { Class sourceClass = source.getClass(); Class targetClass = target.getClass(); @@ -254,26 +250,23 @@ public class Processing { } catch (IllegalAccessException ignored) { throw new ClassCopyException(); } - return null; } - /** - * @Description: 将性别转为字符形式 - * @Date: 2024/1/18 - **/ + *

获取性别

+ *
+ * 用于获取性别 + * + * @param sex 性别ID + * @return 返回中文性别 + */ @Contract(pure = true) public static @NotNull String getSex(short sex) { - if (sex == 0) { - return "保密"; + switch (sex) { + case 1: return "男"; + case 2: return "女"; + default: return "保密"; } - if (sex == 1) { - return "男"; - } - if (sex == 2) { - return "女"; - } - return " "; } /** @@ -356,8 +349,12 @@ public class Processing { return userDOS; } - public static void projectTosimply(ProjectSimpleVO projectSimpleVO, ProjectDO projectDO, UserDAO userDAO, ObjectMapper objectMapper) { - + public static void projectTosimply( + ProjectSimpleVO projectSimpleVO, + ProjectDO projectDO, + UserDAO userDAO, + ObjectMapper objectMapper + ) { projectSimpleVO.setId(projectDO.getId()); projectSimpleVO.setName(projectDO.getName()); projectSimpleVO.setTags(projectDO.getTags()); diff --git a/src/main/java/com/jsl/oa/utils/redis/RoleRedisUtil.java b/src/main/java/com/jsl/oa/utils/redis/RoleRedisUtil.java index aa3db0d..75a3d1a 100644 --- a/src/main/java/com/jsl/oa/utils/redis/RoleRedisUtil.java +++ b/src/main/java/com/jsl/oa/utils/redis/RoleRedisUtil.java @@ -22,6 +22,7 @@ import java.util.concurrent.TimeUnit; * @see com.jsl.oa.common.constant.BusinessConstants * @see com.jsl.oa.config.redis.RedisOperating * @author xiao_lfeng + * @param 泛型 */ @Slf4j @Component @@ -59,4 +60,4 @@ public class RoleRedisUtil extends RedisOperating { redisTemplate.expire(key, time, TimeUnit.MINUTES); return true; } -} \ No newline at end of file +}