diff --git a/ruoyi-xq/src/main/java/com/ruoyi/xq/controller/UserInfoController.java b/ruoyi-xq/src/main/java/com/ruoyi/xq/controller/UserInfoController.java index 86fd40f..f9dde45 100644 --- a/ruoyi-xq/src/main/java/com/ruoyi/xq/controller/UserInfoController.java +++ b/ruoyi-xq/src/main/java/com/ruoyi/xq/controller/UserInfoController.java @@ -12,7 +12,8 @@ import com.ruoyi.common.core.validate.AddGroup; import com.ruoyi.common.core.validate.EditGroup; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.xq.domain.UserInfo; -import com.ruoyi.xq.dto.admin.user.UserInfoAdminVo; +import com.ruoyi.xq.dto.admin.user.UserInfoDetailAdminVo; +import com.ruoyi.xq.dto.admin.user.UserInfoListAdminVo; import com.ruoyi.xq.service.UserInfoService; import lombok.RequiredArgsConstructor; import org.springframework.validation.annotation.Validated; @@ -41,11 +42,18 @@ public class UserInfoController extends BaseController { */ @SaCheckPermission("xq:userInfo:list") @GetMapping("/list") - public TableDataInfo list(UserInfoAdminVo bo, PageQuery pageQuery) { - Page page = userInfoService.pageAdmin(pageQuery, bo); + public TableDataInfo list(UserInfoListAdminVo bo, PageQuery pageQuery) { + Page page = userInfoService.pageAdmin(pageQuery, bo); return TableDataInfo.build(page); } + @SaCheckPermission("xq:userInfo:query") + @GetMapping("/fullUserInfo/{id}") + public R fullUserInfo(@NotNull(message = "主键不能为空") @PathVariable Long id) { + UserInfoDetailAdminVo vo = userInfoService.fullUserInfo(id); + return R.ok(vo); + } + /** * 获取用户信息详细信息 * diff --git a/ruoyi-xq/src/main/java/com/ruoyi/xq/domain/User.java b/ruoyi-xq/src/main/java/com/ruoyi/xq/domain/User.java index a49572f..dc61073 100644 --- a/ruoyi-xq/src/main/java/com/ruoyi/xq/domain/User.java +++ b/ruoyi-xq/src/main/java/com/ruoyi/xq/domain/User.java @@ -57,7 +57,7 @@ public class User implements Serializable { /** * 年龄 */ - private Long age; + private Integer age; /** * 生日 */ diff --git a/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/UserInfoDetailAdminVo.java b/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/UserInfoDetailAdminVo.java new file mode 100644 index 0000000..418665d --- /dev/null +++ b/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/UserInfoDetailAdminVo.java @@ -0,0 +1,11 @@ +package com.ruoyi.xq.dto.admin.user; + +import com.ruoyi.xq.domain.User; +import com.ruoyi.xq.domain.UserInfo; +import lombok.Data; + +@Data +public class UserInfoDetailAdminVo { + private User user; + private UserInfo userInfo; +} diff --git a/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/UserInfoAdminVo.java b/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/UserInfoListAdminVo.java similarity index 89% rename from ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/UserInfoAdminVo.java rename to ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/UserInfoListAdminVo.java index 75b5803..d19555a 100644 --- a/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/UserInfoAdminVo.java +++ b/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/UserInfoListAdminVo.java @@ -6,7 +6,7 @@ import lombok.Data; import java.time.LocalDate; @Data -public class UserInfoAdminVo extends UserInfo { +public class UserInfoListAdminVo extends UserInfo { /** * 昵称 */ @@ -30,7 +30,7 @@ public class UserInfoAdminVo extends UserInfo { /** * 年龄 */ - private Long age; + private Integer age; /** * 生日 */ @@ -58,15 +58,15 @@ public class UserInfoAdminVo extends UserInfo { /** * 居住地 */ - private String residence; + private String residenceName; /** * 户籍地 */ - private String address; + private String addressName; /** * 居住城市 */ - private String residenceCity; + private String residenceCityName; /** * 学历 */ diff --git a/ruoyi-xq/src/main/java/com/ruoyi/xq/enums/userinfo/UserSignEnum.java b/ruoyi-xq/src/main/java/com/ruoyi/xq/enums/userinfo/UserSignEnum.java index f404a0d..be14d5b 100644 --- a/ruoyi-xq/src/main/java/com/ruoyi/xq/enums/userinfo/UserSignEnum.java +++ b/ruoyi-xq/src/main/java/com/ruoyi/xq/enums/userinfo/UserSignEnum.java @@ -4,7 +4,7 @@ package com.ruoyi.xq.enums.userinfo; import lombok.Getter; /** - * 星座(直接用汉字) + * 星座 *

created on 2024/2/26 16:50

* @author duet */ diff --git a/ruoyi-xq/src/main/java/com/ruoyi/xq/mapper/UserInfoMapper.java b/ruoyi-xq/src/main/java/com/ruoyi/xq/mapper/UserInfoMapper.java index f8c96e7..c74a577 100644 --- a/ruoyi-xq/src/main/java/com/ruoyi/xq/mapper/UserInfoMapper.java +++ b/ruoyi-xq/src/main/java/com/ruoyi/xq/mapper/UserInfoMapper.java @@ -3,7 +3,7 @@ package com.ruoyi.xq.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.xq.domain.UserInfo; -import com.ruoyi.xq.dto.admin.user.UserInfoAdminVo; +import com.ruoyi.xq.dto.admin.user.UserInfoListAdminVo; import org.apache.ibatis.annotations.Param; /** @@ -14,5 +14,5 @@ import org.apache.ibatis.annotations.Param; */ public interface UserInfoMapper extends BaseMapper { - Page pageAdmin(@Param("build") Page build, @Param("bo") UserInfoAdminVo bo); + Page pageAdmin(@Param("build") Page build, @Param("bo") UserInfoListAdminVo bo); } diff --git a/ruoyi-xq/src/main/java/com/ruoyi/xq/service/UserInfoService.java b/ruoyi-xq/src/main/java/com/ruoyi/xq/service/UserInfoService.java index 983f52f..ee2fbf5 100644 --- a/ruoyi-xq/src/main/java/com/ruoyi/xq/service/UserInfoService.java +++ b/ruoyi-xq/src/main/java/com/ruoyi/xq/service/UserInfoService.java @@ -4,7 +4,8 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.common.core.domain.PageQuery; import com.ruoyi.xq.domain.UserInfo; -import com.ruoyi.xq.dto.admin.user.UserInfoAdminVo; +import com.ruoyi.xq.dto.admin.user.UserInfoDetailAdminVo; +import com.ruoyi.xq.dto.admin.user.UserInfoListAdminVo; /** * 用户信息Service接口 @@ -17,5 +18,7 @@ public interface UserInfoService extends IService { UserInfo getByUserId(Long userId); - Page pageAdmin(PageQuery pageQuery, UserInfoAdminVo bo); + Page pageAdmin(PageQuery pageQuery, UserInfoListAdminVo bo); + + UserInfoDetailAdminVo fullUserInfo(Long id); } diff --git a/ruoyi-xq/src/main/java/com/ruoyi/xq/service/impl/UserInfoServiceImpl.java b/ruoyi-xq/src/main/java/com/ruoyi/xq/service/impl/UserInfoServiceImpl.java index 8a92455..356a74a 100644 --- a/ruoyi-xq/src/main/java/com/ruoyi/xq/service/impl/UserInfoServiceImpl.java +++ b/ruoyi-xq/src/main/java/com/ruoyi/xq/service/impl/UserInfoServiceImpl.java @@ -4,13 +4,20 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.common.core.domain.PageQuery; +import com.ruoyi.xq.domain.User; import com.ruoyi.xq.domain.UserInfo; -import com.ruoyi.xq.dto.admin.user.UserInfoAdminVo; +import com.ruoyi.xq.dto.admin.user.UserInfoDetailAdminVo; +import com.ruoyi.xq.dto.admin.user.UserInfoListAdminVo; import com.ruoyi.xq.mapper.UserInfoMapper; import com.ruoyi.xq.service.UserInfoService; +import com.ruoyi.xq.service.UserService; +import com.ruoyi.xq.util.AgeUtil; import lombok.RequiredArgsConstructor; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.List; + /** * 用户信息Service业务层处理 * @@ -21,6 +28,9 @@ import org.springframework.stereotype.Service; @Service public class UserInfoServiceImpl extends ServiceImpl implements UserInfoService { + @Autowired + private UserService userService; + @Override public UserInfo getByUsercode(String usercode) { return this.getOne(Wrappers.lambdaQuery(UserInfo.class).eq(UserInfo::getUsercode, usercode)); @@ -32,7 +42,23 @@ public class UserInfoServiceImpl extends ServiceImpl im } @Override - public Page pageAdmin(PageQuery pageQuery, UserInfoAdminVo bo) { - return baseMapper.pageAdmin(pageQuery.build(), bo); + public Page pageAdmin(PageQuery pageQuery, UserInfoListAdminVo bo) { + Page page = baseMapper.pageAdmin(pageQuery.build(), bo); + List records = page.getRecords(); + for (UserInfoListAdminVo record : records) { + record.setAge(AgeUtil.getAge(record.getBirthday())); + } + return page; + } + + @Override + public UserInfoDetailAdminVo fullUserInfo(Long userId) { + UserInfoDetailAdminVo vo = new UserInfoDetailAdminVo(); + User user = userService.getById(userId); + UserInfo userInfo = this.getByUserId(userId); + user.setAge(AgeUtil.getAge(user.getBirthday())); + vo.setUser(user); + vo.setUserInfo(userInfo); + return vo; } } diff --git a/ruoyi-xq/src/main/resources/mapper/xq/UserInfoMapper.xml b/ruoyi-xq/src/main/resources/mapper/xq/UserInfoMapper.xml index f05a14c..ead864e 100644 --- a/ruoyi-xq/src/main/resources/mapper/xq/UserInfoMapper.xml +++ b/ruoyi-xq/src/main/resources/mapper/xq/UserInfoMapper.xml @@ -4,7 +4,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - select t2.*, t1.nickname,t1.type,t1.mobile,t1.avatar,t1.gender,t1.age,t1.birthday, t1.height,t1.weight,t1.somatotype,t1.zodiac,t1.sign,t1.residence_name,t1.address_name,t1.residence_city_name,