【7.6.0】【sys】【portal】更新获取用户的个人信息接口

pull/57/head
fengshuonan 2023-06-26 22:34:16 +08:00
parent 295c47ecee
commit 90d6c8bae8
4 changed files with 107 additions and 0 deletions

View File

@ -5,8 +5,10 @@ import cn.stylefeng.roses.kernel.rule.enums.ResBizTypeEnum;
import cn.stylefeng.roses.kernel.rule.pojo.response.ResponseData;
import cn.stylefeng.roses.kernel.rule.pojo.response.SuccessResponseData;
import cn.stylefeng.roses.kernel.scanner.api.annotation.ApiResource;
import cn.stylefeng.roses.kernel.scanner.api.annotation.GetResource;
import cn.stylefeng.roses.kernel.scanner.api.annotation.PostResource;
import cn.stylefeng.roses.kernel.sys.modular.user.pojo.request.SysUserRequest;
import cn.stylefeng.roses.kernel.sys.modular.user.pojo.response.PersonalInfo;
import cn.stylefeng.roses.kernel.sys.modular.user.service.SysUserService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
@ -27,6 +29,18 @@ public class PersonalInfoController {
@Resource
private SysUserService sysUserService;
/**
*
*
* @author fengshuonan
* @since 2023/6/26 22:27
*/
@GetResource(name = "获取个人信息详情", path = "/personalInfo/getUserInfo")
public ResponseData<PersonalInfo> getUserInfo() {
PersonalInfo personalInfo = sysUserService.getPersonalInfo();
return new SuccessResponseData<>(personalInfo);
}
/**
*
*

View File

@ -0,0 +1,61 @@
package cn.stylefeng.roses.kernel.sys.modular.user.pojo.response;
import cn.stylefeng.roses.kernel.file.api.format.FileUrlFormatProcess;
import cn.stylefeng.roses.kernel.rule.annotation.ChineseDescription;
import cn.stylefeng.roses.kernel.rule.annotation.SimpleFieldFormat;
import lombok.Data;
import java.util.Date;
/**
*
*
* @author fengshuonan
* @since 2023/6/26 22:31
*/
@Data
public class PersonalInfo {
/**
*
*/
@ChineseDescription("姓名")
private String realName;
/**
*
*/
@ChineseDescription("账号")
private String account;
/**
* id
*/
@SimpleFieldFormat(processClass = FileUrlFormatProcess.class)
private Long avatar;
/**
*
*/
@ChineseDescription("生日")
private Date birthday;
/**
* M-F-
*/
@ChineseDescription("性别M-男F-女")
private String sex;
/**
*
*/
@ChineseDescription("邮箱")
private String email;
/**
*
*/
@ChineseDescription("手机")
private String phone;
}

View File

@ -3,6 +3,7 @@ package cn.stylefeng.roses.kernel.sys.modular.user.service;
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
import cn.stylefeng.roses.kernel.sys.modular.user.entity.SysUser;
import cn.stylefeng.roses.kernel.sys.modular.user.pojo.request.SysUserRequest;
import cn.stylefeng.roses.kernel.sys.modular.user.pojo.response.PersonalInfo;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
@ -95,6 +96,14 @@ public interface SysUserService extends IService<SysUser> {
*/
void resetPassword(SysUserRequest sysUserRequest);
/**
*
*
* @author fengshuonan
* @since 2023/6/26 22:28
*/
PersonalInfo getPersonalInfo();
/**
*
*

View File

@ -24,6 +24,7 @@ import cn.stylefeng.roses.kernel.sys.modular.user.enums.SysUserExceptionEnum;
import cn.stylefeng.roses.kernel.sys.modular.user.factory.SysUserCreateFactory;
import cn.stylefeng.roses.kernel.sys.modular.user.mapper.SysUserMapper;
import cn.stylefeng.roses.kernel.sys.modular.user.pojo.request.SysUserRequest;
import cn.stylefeng.roses.kernel.sys.modular.user.pojo.response.PersonalInfo;
import cn.stylefeng.roses.kernel.sys.modular.user.service.SysUserOrgService;
import cn.stylefeng.roses.kernel.sys.modular.user.service.SysUserRoleService;
import cn.stylefeng.roses.kernel.sys.modular.user.service.SysUserService;
@ -200,6 +201,28 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
this.updateById(sysUser);
}
@Override
public PersonalInfo getPersonalInfo() {
// 获取当前登录用户id
Long userId = LoginContext.me().getLoginUser().getUserId();
// 查询用户的详细信息
LambdaQueryWrapper<SysUser> sysUserLambdaQueryWrapper = new LambdaQueryWrapper<>();
sysUserLambdaQueryWrapper.eq(SysUser::getUserId, userId);
sysUserLambdaQueryWrapper.select(SysUser::getRealName, SysUser::getAccount, SysUser::getAvatar, SysUser::getEmail,
SysUser::getPhone, SysUser::getSex, SysUser::getBirthday);
SysUser sysUser = this.getOne(sysUserLambdaQueryWrapper, false);
if (sysUser == null) {
return new PersonalInfo();
}
PersonalInfo personalInfo = new PersonalInfo();
BeanUtil.copyProperties(sysUser, personalInfo);
return personalInfo;
}
@Override
public void editInfo(SysUserRequest sysUserRequest) {