From f620060f0be736c38e9250dca185901edfcd244d Mon Sep 17 00:00:00 2001 From: wxz Date: Tue, 2 Jun 2020 17:28:07 +0800 Subject: [PATCH] =?UTF-8?q?1.=E5=B0=86=E6=9F=A5=E8=AF=A2LoginUserDetails?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E4=BB=8Egov-access=E7=A7=BB=E5=88=B0?= =?UTF-8?q?=E4=BA=86epmet-user=E6=9C=8D=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/dto/form/LoginUserDetailsFormDTO.java | 10 ++++++++++ .../java/com/epmet/controller/UserController.java | 13 ++++++++++++- .../main/java/com/epmet/service/UserService.java | 11 +++++++---- .../com/epmet/service/impl/UserServiceImpl.java | 8 ++++++++ 4 files changed, 37 insertions(+), 5 deletions(-) create mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/LoginUserDetailsFormDTO.java diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/LoginUserDetailsFormDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/LoginUserDetailsFormDTO.java new file mode 100644 index 0000000000..7c1af89a00 --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/LoginUserDetailsFormDTO.java @@ -0,0 +1,10 @@ +package com.epmet.dto.form; + +import lombok.Data; + +@Data +public class LoginUserDetailsFormDTO { + private String app; + private String client; + private String userId; +} diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserController.java index d7f0f28dde..a02a38b24a 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserController.java @@ -10,11 +10,11 @@ import com.epmet.dto.UserDTO; import com.epmet.dto.UserWechatDTO; import com.epmet.dto.form.*; import com.epmet.dto.result.CreatedTimeByUserIdResultDTO; +import com.epmet.dto.result.LoginUserDetailsResultDTO; import com.epmet.dto.result.MyResiUserInfoResultDTO; import com.epmet.dto.result.PasswordLoginUserInfoResultDTO; import com.epmet.service.UserService; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.annotation.PropertySource; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; @@ -111,4 +111,15 @@ public class UserController { return new Result().ok(userService.resiMyselfMsg(myResiUserInfoFormDTO)); } + /** + * 从缓存中查询已登录用户的基本信息以及角色等相关信息 + * @return + */ + @PostMapping("loginuserdetails") + public Result getLoginUserDetails(@RequestBody LoginUserDetailsFormDTO dto) { + ValidatorUtils.validateEntity(dto, StaffPermCacheFormDTO.GetStaffCurrPermissions.class); + LoginUserDetailsResultDTO govTokenDto = userService.getLoginUserDetails(dto.getApp(), dto.getClient(), dto.getUserId()); + return new Result().ok(govTokenDto); + } + } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserService.java index a7bafa437e..1df8d94607 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserService.java @@ -1,19 +1,16 @@ package com.epmet.service; import com.epmet.commons.mybatis.service.BaseService; -import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.UserDTO; import com.epmet.dto.UserWechatDTO; import com.epmet.dto.form.*; import com.epmet.dto.result.CreatedTimeByUserIdResultDTO; +import com.epmet.dto.result.LoginUserDetailsResultDTO; import com.epmet.dto.result.MyResiUserInfoResultDTO; import com.epmet.dto.result.PasswordLoginUserInfoResultDTO; import com.epmet.entity.UserEntity; -import java.util.List; -import java.util.Map; - /** * @Description * @IntefaceName UserService @@ -73,4 +70,10 @@ public interface UserService extends BaseService { * @date 2020.05.22 19:24 **/ MyResiUserInfoResultDTO resiMyselfMsg(MyResiUserInfoFormDTO myResiUserInfoFormDTO); + + /** + * 查询登陆用户信息 + * @return + */ + LoginUserDetailsResultDTO getLoginUserDetails(String app, String client, String staffId); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserServiceImpl.java index 3909ab2c2a..621259be47 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserServiceImpl.java @@ -2,6 +2,7 @@ package com.epmet.service.impl; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.tools.utils.ConvertUtils; +import com.epmet.commons.tools.utils.CpUserDetailRedis; import com.epmet.commons.tools.utils.Result; import com.epmet.constant.UserConstant; import com.epmet.dao.UserDao; @@ -42,6 +43,8 @@ public class UserServiceImpl extends BaseServiceImpl implem private GovOrgFeignClient govOrgFeignClient; @Autowired private UserRoleDao userRoleDao; + @Autowired + private CpUserDetailRedis cpUserDetailRedis; private static final Logger log = LoggerFactory.getLogger(UserServiceImpl.class); @@ -174,4 +177,9 @@ public class UserServiceImpl extends BaseServiceImpl implem return null; } + + @Override + public LoginUserDetailsResultDTO getLoginUserDetails(String app, String client, String userId) { + return cpUserDetailRedis.get(app, client, userId, LoginUserDetailsResultDTO.class); + } }