From bd9eb027133438238f35a52dff5d781c473a9c54 Mon Sep 17 00:00:00 2001 From: 77 <77@77.com> Date: Sat, 20 Apr 2024 23:00:16 +0800 Subject: [PATCH] init --- .../com/ruoyi/test/business/RefreshTest.java | 8 ++ .../xq/controller/UserAuthController.java | 35 ++----- .../xq/controller/UserInfoController.java | 20 ++-- .../xq/dto/admin/user/UserAuthAdminVo.java | 1 - .../xq/dto/admin/user/req/AddUserReq.java | 2 +- .../dto/admin/user/req/UpdateUserInfoReq.java | 98 +++++++++++++++++++ .../xq/dto/admin/user/req/UpdateUserReq.java | 4 +- .../admin/userauth/UserAuthAdminInfoVo.java | 11 +++ .../java/com/ruoyi/xq/job/ClearDaysJob.java | 13 ++- .../java/com/ruoyi/xq/job/JobManager.java | 41 ++++++++ .../ruoyi/xq/manager/CurrentUserManager.java | 6 ++ .../com/ruoyi/xq/service/UserAuthService.java | 7 ++ .../com/ruoyi/xq/service/UserInfoService.java | 5 +- .../com/ruoyi/xq/service/UserService.java | 1 - .../impl/UserAuthAuditServiceImpl.java | 10 +- .../xq/service/impl/UserAuthServiceImpl.java | 70 +++++++++++++ .../xq/service/impl/UserInfoServiceImpl.java | 35 +++++-- .../xq/service/impl/UserServiceImpl.java | 14 ++- 18 files changed, 327 insertions(+), 54 deletions(-) create mode 100644 ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/req/UpdateUserInfoReq.java create mode 100644 ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/userauth/UserAuthAdminInfoVo.java create mode 100644 ruoyi-xq/src/main/java/com/ruoyi/xq/job/JobManager.java diff --git a/ruoyi-admin/src/test/java/com/ruoyi/test/business/RefreshTest.java b/ruoyi-admin/src/test/java/com/ruoyi/test/business/RefreshTest.java index 847489c..ba5c38f 100644 --- a/ruoyi-admin/src/test/java/com/ruoyi/test/business/RefreshTest.java +++ b/ruoyi-admin/src/test/java/com/ruoyi/test/business/RefreshTest.java @@ -1,6 +1,7 @@ package com.ruoyi.test.business; import com.ruoyi.test.RefreshArea; +import com.ruoyi.xq.job.JobManager; import lombok.extern.slf4j.Slf4j; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; @@ -11,9 +12,16 @@ import org.springframework.boot.test.context.SpringBootTest; public class RefreshTest { @Autowired private RefreshArea refreshArea; + @Autowired + private JobManager jobManager; @Test public void refresh(){ refreshArea.refreshPinyin(); } + + @Test + public void updateAge(){ + jobManager.updateAge(); + } } diff --git a/ruoyi-xq/src/main/java/com/ruoyi/xq/controller/UserAuthController.java b/ruoyi-xq/src/main/java/com/ruoyi/xq/controller/UserAuthController.java index 2d70aff..fd3b0b5 100644 --- a/ruoyi-xq/src/main/java/com/ruoyi/xq/controller/UserAuthController.java +++ b/ruoyi-xq/src/main/java/com/ruoyi/xq/controller/UserAuthController.java @@ -11,10 +11,15 @@ import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.core.validate.AddGroup; import com.ruoyi.common.core.validate.EditGroup; import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.common.utils.BeanConvertUtil; +import com.ruoyi.xq.domain.User; import com.ruoyi.xq.domain.UserAuth; import com.ruoyi.xq.dto.admin.user.UserAuthAdminVo; +import com.ruoyi.xq.dto.admin.userauth.UserAuthAdminInfoVo; import com.ruoyi.xq.service.UserAuthService; +import com.ruoyi.xq.service.UserService; import lombok.RequiredArgsConstructor; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -53,21 +58,12 @@ public class UserAuthController extends BaseController { */ @SaCheckPermission("xq:userAuth:query") @GetMapping("/{id}") - public R getInfo(@NotNull(message = "主键不能为空") + public R getInfo(@NotNull(message = "主键不能为空") @PathVariable Long id) { - return R.ok(userAuthService.getById(id)); + UserAuthAdminInfoVo vo = userAuthService.getAdminById(id); + return R.ok(vo); } - /** - * 新增用户认证管理 - */ - @SaCheckPermission("xq:userAuth:add") - @Log(title = "用户认证管理", businessType = BusinessType.INSERT) - @RepeatSubmit() - @PostMapping() - public R add(@Validated(AddGroup.class) @RequestBody UserAuth bo) { - return toAjax(userAuthService.save(bo)); - } /** * 修改用户认证管理 @@ -77,19 +73,8 @@ public class UserAuthController extends BaseController { @RepeatSubmit() @PutMapping() public R edit(@Validated(EditGroup.class) @RequestBody UserAuth bo) { - return toAjax(userAuthService.updateById(bo)); + userAuthService.updateUserAuth(bo); + return R.ok(); } - /** - * 删除用户认证管理 - * - * @param ids 主键串 - */ - @SaCheckPermission("xq:userAuth:remove") - @Log(title = "用户认证管理", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public R remove(@NotEmpty(message = "主键不能为空") - @PathVariable Long[] ids) { - return toAjax(userAuthService.removeBatchByIds(Arrays.asList(ids))); - } } 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 c2a033b..96256ea 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 @@ -13,6 +13,7 @@ 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.UserInfoListAdminVo; +import com.ruoyi.xq.dto.admin.user.req.UpdateUserInfoReq; import com.ruoyi.xq.service.UserInfoService; import lombok.RequiredArgsConstructor; import org.springframework.validation.annotation.Validated; @@ -58,15 +59,11 @@ public class UserInfoController extends BaseController { return R.ok(userInfoService.getById(id)); } - /** - * 新增用户信息 - */ - @SaCheckPermission("xq:userInfo:add") - @Log(title = "用户信息", businessType = BusinessType.INSERT) - @RepeatSubmit() - @PostMapping() - public R add(@Validated(AddGroup.class) @RequestBody UserInfo bo) { - return toAjax(userInfoService.save(bo)); + @SaCheckPermission("xq:userInfo:query") + @GetMapping("/userInfoUpdate") + public R userInfoUpdate(Long userId) { + UpdateUserInfoReq res = userInfoService.getUserInfoUpdate(userId); + return R.ok(res); } /** @@ -76,8 +73,9 @@ public class UserInfoController extends BaseController { @Log(title = "用户信息", businessType = BusinessType.UPDATE) @RepeatSubmit() @PutMapping() - public R edit(@Validated(EditGroup.class) @RequestBody UserInfo bo) { - return toAjax(userInfoService.updateById(bo)); + public R edit(@RequestBody UpdateUserInfoReq bo) { + userInfoService.updateInfo(bo); + return R.ok(); } /** diff --git a/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/UserAuthAdminVo.java b/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/UserAuthAdminVo.java index 8352065..5adc2aa 100644 --- a/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/UserAuthAdminVo.java +++ b/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/UserAuthAdminVo.java @@ -10,6 +10,5 @@ public class UserAuthAdminVo extends UserAuth { */ private String nickname; private String mobile; - private String avatar; } diff --git a/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/req/AddUserReq.java b/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/req/AddUserReq.java index c4763d8..328eec9 100644 --- a/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/req/AddUserReq.java +++ b/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/req/AddUserReq.java @@ -7,7 +7,7 @@ import java.time.LocalDate; @Data public class AddUserReq { private String mobile; - private Integer userType; + private Integer type; private String nickname; private String avatar; private Integer gender; diff --git a/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/req/UpdateUserInfoReq.java b/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/req/UpdateUserInfoReq.java new file mode 100644 index 0000000..bf355ee --- /dev/null +++ b/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/req/UpdateUserInfoReq.java @@ -0,0 +1,98 @@ +package com.ruoyi.xq.dto.admin.user.req; + +import lombok.Data; + +@Data +public class UpdateUserInfoReq { + + private String mobile; + + private Long userId; + /** + * 毕业院校 + */ + private String graduateSchool; + /** + * 兴趣爱好 + */ + private String hobbys; + /** + * 是否要小孩 + */ + private Integer wantChild; + /** + * 愿与对方父母同住 + */ + private Integer liveAtParent; + /** + * 是否接受异地恋 + */ + private Integer loveAtDistance; + /** + * 何时结婚 + */ + private Integer whenMarriage; + /** + * 有没有小孩 + */ + private Integer childStatus; + /** + * 家庭背景 + */ + private Integer familyBackground; + /** + * 是否吸烟 + */ + private Integer smokeStatus; + /** + * 是否喝酒 + */ + private Integer drinkStatus; + /** + * 住房情况 + */ + private Integer housingStatus; + /** + * 购车情况 + */ + private Integer carStatus; + /** + * 民族 + */ + private String nation; + + // 一下为user + /** + * 自我描述 + */ + private String remark; + /** + * 为谁征婚 + */ + private Integer forPersonals; + /** + * 职业 + */ + private String profession; + /** + * 年收入 + */ + private Integer annualIncome; + private String nickname; + /** + * 星座 + */ + private Integer sign; + /** + * 公司性质 + */ + private Integer companyNature; + /** + * 体型 + */ + private Integer somatotype; + /** + * 生肖 + */ + private Integer zodiac; +} diff --git a/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/req/UpdateUserReq.java b/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/req/UpdateUserReq.java index 0468af2..72beb52 100644 --- a/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/req/UpdateUserReq.java +++ b/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/user/req/UpdateUserReq.java @@ -6,8 +6,8 @@ import java.time.LocalDate; @Data public class UpdateUserReq { - private Long userId; - private Integer userType; + private Long id; + private Integer type; private String nickname; private String avatar; private Integer gender; diff --git a/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/userauth/UserAuthAdminInfoVo.java b/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/userauth/UserAuthAdminInfoVo.java new file mode 100644 index 0000000..bf491cc --- /dev/null +++ b/ruoyi-xq/src/main/java/com/ruoyi/xq/dto/admin/userauth/UserAuthAdminInfoVo.java @@ -0,0 +1,11 @@ +package com.ruoyi.xq.dto.admin.userauth; + +import com.ruoyi.xq.domain.User; +import com.ruoyi.xq.domain.UserAuth; +import lombok.Data; + +@Data +public class UserAuthAdminInfoVo { + private UserAuth userAuth; + private User user; +} diff --git a/ruoyi-xq/src/main/java/com/ruoyi/xq/job/ClearDaysJob.java b/ruoyi-xq/src/main/java/com/ruoyi/xq/job/ClearDaysJob.java index 44afeb0..950ce7b 100644 --- a/ruoyi-xq/src/main/java/com/ruoyi/xq/job/ClearDaysJob.java +++ b/ruoyi-xq/src/main/java/com/ruoyi/xq/job/ClearDaysJob.java @@ -1,6 +1,7 @@ package com.ruoyi.xq.job; import com.ruoyi.xq.service.SmsVerifyService; +import com.ruoyi.xq.service.UserService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; @@ -12,10 +13,12 @@ public class ClearDaysJob { @Autowired private SmsVerifyService smsVerifyService; + @Autowired + private JobManager jobManager; // 凌晨8点执行 - @Scheduled(cron = "0 0 8 * * ? ") + @Scheduled(cron = "0 0 1 * * ? ") public void clearRun() { try { log.info("定时删除短信记录== 开始"); @@ -25,5 +28,13 @@ public class ClearDaysJob { log.error("定时删除短信记录== 异常",e); } + try { + log.info("定时更新用户年龄== 开始"); + jobManager.updateAge(); + log.info("定时更新用户年龄== 结束"); + }catch (Exception e){ + log.error("定时更新用户年龄== 异常",e); + } + } } diff --git a/ruoyi-xq/src/main/java/com/ruoyi/xq/job/JobManager.java b/ruoyi-xq/src/main/java/com/ruoyi/xq/job/JobManager.java new file mode 100644 index 0000000..41d8c80 --- /dev/null +++ b/ruoyi-xq/src/main/java/com/ruoyi/xq/job/JobManager.java @@ -0,0 +1,41 @@ +package com.ruoyi.xq.job; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.xq.domain.User; +import com.ruoyi.xq.service.UserService; +import com.ruoyi.xq.util.AgeUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import java.util.List; + +@Component +public class JobManager { + @Autowired + private UserService userService; + + public void updateAge(){ + int current = 0; + while (true){ + current++; + IPage page = new Page<>(); + page.setCurrent(current); + page.setSize(100); + IPage userPage = userService.page(page); + List records = userPage.getRecords(); + if(records.isEmpty()){ + break; + } + for (User record : records) { + if(record.getBirthday() == null){ + continue; + } + User update = new User(); + update.setId(record.getId()); + update.setAge(AgeUtil.getAge(record.getBirthday())); + userService.updateById(update); + } + } + } +} diff --git a/ruoyi-xq/src/main/java/com/ruoyi/xq/manager/CurrentUserManager.java b/ruoyi-xq/src/main/java/com/ruoyi/xq/manager/CurrentUserManager.java index 4610417..17210c2 100644 --- a/ruoyi-xq/src/main/java/com/ruoyi/xq/manager/CurrentUserManager.java +++ b/ruoyi-xq/src/main/java/com/ruoyi/xq/manager/CurrentUserManager.java @@ -155,6 +155,9 @@ public class CurrentUserManager { if(req.getHeight() != null){ updateUser.setHeight(req.getHeight()); } + if(req.getBirthday() != null){ + updateUser.setAge(AgeUtil.getAge(req.getBirthday())); + } if(req.getWeight() != null){ updateUser.setWeight(req.getWeight()); } @@ -272,6 +275,9 @@ public class CurrentUserManager { updateUser.setResidenceName(areaCode.getFullname()); updateUser.setResidenceCityName(areaCode.getPname()); } + if(req.getBirthday() != null){ + updateUser.setAge(AgeUtil.getAge(req.getBirthday())); + } updateUser.setId(userId); userService.updateById(updateUser); diff --git a/ruoyi-xq/src/main/java/com/ruoyi/xq/service/UserAuthService.java b/ruoyi-xq/src/main/java/com/ruoyi/xq/service/UserAuthService.java index 9331f3b..4f0185c 100644 --- a/ruoyi-xq/src/main/java/com/ruoyi/xq/service/UserAuthService.java +++ b/ruoyi-xq/src/main/java/com/ruoyi/xq/service/UserAuthService.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.common.core.domain.PageQuery; import com.ruoyi.xq.domain.UserAuth; import com.ruoyi.xq.dto.admin.user.UserAuthAdminVo; +import com.ruoyi.xq.dto.admin.userauth.UserAuthAdminInfoVo; /** * 用户认证管理Service接口 @@ -16,4 +17,10 @@ public interface UserAuthService extends IService { UserAuth getByUserId(Long userId); Page pageAdmin(PageQuery pageQuery, UserAuthAdminVo bo); + + UserAuthAdminInfoVo getAdminById(Long id); + + void updateUserAuth(UserAuth bo); + + void checkAuthNum(Long userId); } 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 ee2fbf5..de54885 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 @@ -6,6 +6,7 @@ import com.ruoyi.common.core.domain.PageQuery; import com.ruoyi.xq.domain.UserInfo; import com.ruoyi.xq.dto.admin.user.UserInfoDetailAdminVo; import com.ruoyi.xq.dto.admin.user.UserInfoListAdminVo; +import com.ruoyi.xq.dto.admin.user.req.UpdateUserInfoReq; /** * 用户信息Service接口 @@ -20,5 +21,7 @@ public interface UserInfoService extends IService { Page pageAdmin(PageQuery pageQuery, UserInfoListAdminVo bo); - UserInfoDetailAdminVo fullUserInfo(Long id); + UpdateUserInfoReq getUserInfoUpdate(Long userId); + + void updateInfo(UpdateUserInfoReq bo); } diff --git a/ruoyi-xq/src/main/java/com/ruoyi/xq/service/UserService.java b/ruoyi-xq/src/main/java/com/ruoyi/xq/service/UserService.java index e8e37a2..f3b1921 100644 --- a/ruoyi-xq/src/main/java/com/ruoyi/xq/service/UserService.java +++ b/ruoyi-xq/src/main/java/com/ruoyi/xq/service/UserService.java @@ -57,6 +57,5 @@ public interface UserService extends IService { void saveUser(AddUserReq bo); - @Transactional(rollbackFor = Exception.class) void updateBaseUser(UpdateUserReq updateUserReq); } diff --git a/ruoyi-xq/src/main/java/com/ruoyi/xq/service/impl/UserAuthAuditServiceImpl.java b/ruoyi-xq/src/main/java/com/ruoyi/xq/service/impl/UserAuthAuditServiceImpl.java index 20f4d21..cf2d72c 100644 --- a/ruoyi-xq/src/main/java/com/ruoyi/xq/service/impl/UserAuthAuditServiceImpl.java +++ b/ruoyi-xq/src/main/java/com/ruoyi/xq/service/impl/UserAuthAuditServiceImpl.java @@ -65,34 +65,40 @@ public class UserAuthAuditServiceImpl extends ServiceImpl implements UserAuthService { + @Autowired + private UserService userService; + @Override public UserAuth getByUserId(Long userId) { return this.getOne(Wrappers.lambdaQuery(UserAuth.class) @@ -29,4 +39,64 @@ public class UserAuthServiceImpl extends ServiceImpl im public Page pageAdmin(PageQuery pageQuery, UserAuthAdminVo bo) { return baseMapper.pageAdmin(pageQuery.build(), bo); } + + @Override + public UserAuthAdminInfoVo getAdminById(Long id) { + UserAuthAdminInfoVo vo = new UserAuthAdminInfoVo(); + UserAuth userAuth = this.getById(id); + User user = userService.getById(userAuth.getUserId()); + vo.setUser(user); + vo.setUserAuth(userAuth); + return vo; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void updateUserAuth(UserAuth bo) { + UserAuth update = new UserAuth(); + update.setId(bo.getId()); +// update.setAlreadyAuthNum(); + update.setCardNumAuth(bo.getCardNumAuth()); + update.setSinglePersonAuth(bo.getSinglePersonAuth()); + update.setEducationAuth(bo.getEducationAuth()); + update.setJobAuth(bo.getJobAuth()); + update.setCarAuth(bo.getCarAuth()); + update.setHouseAuth(bo.getHouseAuth()); + update.setMarriageAuth(bo.getMarriageAuth()); + this.updateById(update); + UserAuthService userAuthService = SpringUtils.getBean(UserAuthService.class); + userAuthService.checkAuthNum(bo.getUserId()); + } + + @Override + public void checkAuthNum(Long userId){ + UserAuth userAuth = this.getByUserId(userId); + int i = 0; + if(userAuth.getCarAuth().equals(AuditEnum.SUCCESS.getCode())){ + i++; + } + if(userAuth.getMarriageAuth().equals(AuditEnum.SUCCESS.getCode())){ + i++; + } + if(userAuth.getEducationAuth().equals(AuditEnum.SUCCESS.getCode())){ + i++; + } + if(userAuth.getJobAuth().equals(AuditEnum.SUCCESS.getCode())){ + i++; + } + if(userAuth.getPhoneAuth().equals(AuditEnum.SUCCESS.getCode())){ + i++; + } + if(userAuth.getSinglePersonAuth().equals(AuditEnum.SUCCESS.getCode())){ + i++; + } + if(userAuth.getHouseAuth().equals(AuditEnum.SUCCESS.getCode())){ + i++; + } + if(userAuth.getCardNumAuth().equals(AuditEnum.SUCCESS.getCode())){ + i++; + } + this.update(Wrappers.lambdaUpdate(UserAuth.class).eq(UserAuth::getId, userAuth.getId()) + .set(UserAuth::getAlreadyAuthNum, i)); + } } 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 356a74a..5d89aba 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,10 +4,12 @@ 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.common.utils.BeanConvertUtil; import com.ruoyi.xq.domain.User; import com.ruoyi.xq.domain.UserInfo; import com.ruoyi.xq.dto.admin.user.UserInfoDetailAdminVo; import com.ruoyi.xq.dto.admin.user.UserInfoListAdminVo; +import com.ruoyi.xq.dto.admin.user.req.UpdateUserInfoReq; import com.ruoyi.xq.mapper.UserInfoMapper; import com.ruoyi.xq.service.UserInfoService; import com.ruoyi.xq.service.UserService; @@ -15,7 +17,9 @@ import com.ruoyi.xq.util.AgeUtil; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import java.time.LocalDateTime; import java.util.List; /** @@ -52,13 +56,32 @@ public class UserInfoServiceImpl extends ServiceImpl im } @Override - public UserInfoDetailAdminVo fullUserInfo(Long userId) { - UserInfoDetailAdminVo vo = new UserInfoDetailAdminVo(); + public UpdateUserInfoReq getUserInfoUpdate(Long userId) { User user = userService.getById(userId); UserInfo userInfo = this.getByUserId(userId); - user.setAge(AgeUtil.getAge(user.getBirthday())); - vo.setUser(user); - vo.setUserInfo(userInfo); - return vo; + UpdateUserInfoReq res = BeanConvertUtil.convertTo(user, UpdateUserInfoReq::new); + BeanConvertUtil.copyProperties(userInfo, res); + return res; } + + @Override + @Transactional(rollbackFor = Exception.class) + public void updateInfo(UpdateUserInfoReq bo) { + User user = new User(); + user.setId(bo.getUserId()); + user.setUpdateTime(LocalDateTime.now()); + BeanConvertUtil.copyProperties(bo, user); + user.setMobile(null); + userService.updateById(user); + + UserInfo userInnnn = this.getByUserId(bo.getUserId()); + UserInfo userInfo = new UserInfo(); + userInfo.setId(userInnnn.getId()); + userInfo.setUpdateTime(LocalDateTime.now()); + BeanConvertUtil.copyProperties(bo, userInfo); + userInfo.setUserId(null); + this.updateById(userInfo); + } + + } diff --git a/ruoyi-xq/src/main/java/com/ruoyi/xq/service/impl/UserServiceImpl.java b/ruoyi-xq/src/main/java/com/ruoyi/xq/service/impl/UserServiceImpl.java index 3defdd8..c53d0dd 100644 --- a/ruoyi-xq/src/main/java/com/ruoyi/xq/service/impl/UserServiceImpl.java +++ b/ruoyi-xq/src/main/java/com/ruoyi/xq/service/impl/UserServiceImpl.java @@ -30,6 +30,7 @@ import com.ruoyi.xq.manager.LoginManager; import com.ruoyi.xq.manager.SystemConfigManager; import com.ruoyi.xq.mapper.UserMapper; import com.ruoyi.xq.service.*; +import com.ruoyi.xq.util.AgeUtil; import com.ruoyi.xq.util.BirthdayUtil; import com.ruoyi.xq.util.ShowAvatarUtil; import com.ruoyi.yunxin.client.ImUserRefClient; @@ -321,6 +322,10 @@ public class UserServiceImpl extends ServiceImpl implements Use @Override @Transactional(rollbackFor = Exception.class) public void saveUser(AddUserReq bo) { + boolean mobile = PhoneUtil.isMobile(bo.getMobile()); + if(!mobile){ + throw new ServiceException("请填写正确的手机号格式"); + } User user = this.getByMobile(bo.getMobile()); if(user != null){ throw new ServiceException("手机号已存在!"); @@ -338,7 +343,7 @@ public class UserServiceImpl extends ServiceImpl implements Use } user = loginManager.registerUser(bo.getMobile(), null); UpdateUserReq updateUser = BeanConvertUtil.convertTo(bo, UpdateUserReq::new); - updateUser.setUserId(user.getId()); + updateUser.setId(user.getId()); UserService userService = SpringUtil.getBean(UserService.class); userService.updateBaseUser(updateUser); }finally { @@ -350,18 +355,21 @@ public class UserServiceImpl extends ServiceImpl implements Use @Override @Transactional(rollbackFor = Exception.class) public void updateBaseUser(UpdateUserReq updateUserReq){ - User user = this.getById(updateUserReq.getUserId()); + User user = this.getById(updateUserReq.getId()); if(user == null){ throw new ServiceException("用户不存在!"); } User updateUser = new User(); updateUser.setId(user.getId()); - updateUser.setType(updateUserReq.getUserType()); + updateUser.setType(updateUserReq.getType()); updateUser.setNickname(updateUserReq.getNickname()); updateUser.setAvatar(updateUserReq.getAvatar()); updateUser.setGender(updateUserReq.getGender()); updateUser.setHeight(updateUserReq.getHeight()); updateUser.setWeight(updateUserReq.getWeight()); + if(updateUserReq.getBirthday() != null){ + updateUser.setAge(AgeUtil.getAge(updateUserReq.getBirthday())); + } updateUser.setBirthday(updateUserReq.getBirthday()); if(updateUserReq.getResidenceCode() != null){ updateUser.setResidenceCode(updateUserReq.getResidenceCode());