This commit is contained in:
77
2024-04-20 23:00:16 +08:00
parent 10486e593a
commit bd9eb02713
18 changed files with 327 additions and 54 deletions

View File

@@ -1,6 +1,7 @@
package com.ruoyi.test.business; package com.ruoyi.test.business;
import com.ruoyi.test.RefreshArea; import com.ruoyi.test.RefreshArea;
import com.ruoyi.xq.job.JobManager;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@@ -11,9 +12,16 @@ import org.springframework.boot.test.context.SpringBootTest;
public class RefreshTest { public class RefreshTest {
@Autowired @Autowired
private RefreshArea refreshArea; private RefreshArea refreshArea;
@Autowired
private JobManager jobManager;
@Test @Test
public void refresh(){ public void refresh(){
refreshArea.refreshPinyin(); refreshArea.refreshPinyin();
} }
@Test
public void updateAge(){
jobManager.updateAge();
}
} }

View File

@@ -11,10 +11,15 @@ import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.core.validate.AddGroup; import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup; import com.ruoyi.common.core.validate.EditGroup;
import com.ruoyi.common.enums.BusinessType; 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.domain.UserAuth;
import com.ruoyi.xq.dto.admin.user.UserAuthAdminVo; 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.UserAuthService;
import com.ruoyi.xq.service.UserService;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -53,21 +58,12 @@ public class UserAuthController extends BaseController {
*/ */
@SaCheckPermission("xq:userAuth:query") @SaCheckPermission("xq:userAuth:query")
@GetMapping("/{id}") @GetMapping("/{id}")
public R<UserAuth> getInfo(@NotNull(message = "主键不能为空") public R<UserAuthAdminInfoVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) { @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<Void> add(@Validated(AddGroup.class) @RequestBody UserAuth bo) {
return toAjax(userAuthService.save(bo));
}
/** /**
* 修改用户认证管理 * 修改用户认证管理
@@ -77,19 +73,8 @@ public class UserAuthController extends BaseController {
@RepeatSubmit() @RepeatSubmit()
@PutMapping() @PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody UserAuth bo) { public R<Void> 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<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(userAuthService.removeBatchByIds(Arrays.asList(ids)));
}
} }

View File

@@ -13,6 +13,7 @@ import com.ruoyi.common.core.validate.EditGroup;
import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.xq.domain.UserInfo; import com.ruoyi.xq.domain.UserInfo;
import com.ruoyi.xq.dto.admin.user.UserInfoListAdminVo; import com.ruoyi.xq.dto.admin.user.UserInfoListAdminVo;
import com.ruoyi.xq.dto.admin.user.req.UpdateUserInfoReq;
import com.ruoyi.xq.service.UserInfoService; import com.ruoyi.xq.service.UserInfoService;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
@@ -58,15 +59,11 @@ public class UserInfoController extends BaseController {
return R.ok(userInfoService.getById(id)); return R.ok(userInfoService.getById(id));
} }
/** @SaCheckPermission("xq:userInfo:query")
* 新增用户信息 @GetMapping("/userInfoUpdate")
*/ public R<UpdateUserInfoReq> userInfoUpdate(Long userId) {
@SaCheckPermission("xq:userInfo:add") UpdateUserInfoReq res = userInfoService.getUserInfoUpdate(userId);
@Log(title = "用户信息", businessType = BusinessType.INSERT) return R.ok(res);
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody UserInfo bo) {
return toAjax(userInfoService.save(bo));
} }
/** /**
@@ -76,8 +73,9 @@ public class UserInfoController extends BaseController {
@Log(title = "用户信息", businessType = BusinessType.UPDATE) @Log(title = "用户信息", businessType = BusinessType.UPDATE)
@RepeatSubmit() @RepeatSubmit()
@PutMapping() @PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody UserInfo bo) { public R<Void> edit(@RequestBody UpdateUserInfoReq bo) {
return toAjax(userInfoService.updateById(bo)); userInfoService.updateInfo(bo);
return R.ok();
} }
/** /**

View File

@@ -10,6 +10,5 @@ public class UserAuthAdminVo extends UserAuth {
*/ */
private String nickname; private String nickname;
private String mobile; private String mobile;
private String avatar; private String avatar;
} }

View File

@@ -7,7 +7,7 @@ import java.time.LocalDate;
@Data @Data
public class AddUserReq { public class AddUserReq {
private String mobile; private String mobile;
private Integer userType; private Integer type;
private String nickname; private String nickname;
private String avatar; private String avatar;
private Integer gender; private Integer gender;

View File

@@ -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;
}

View File

@@ -6,8 +6,8 @@ import java.time.LocalDate;
@Data @Data
public class UpdateUserReq { public class UpdateUserReq {
private Long userId; private Long id;
private Integer userType; private Integer type;
private String nickname; private String nickname;
private String avatar; private String avatar;
private Integer gender; private Integer gender;

View File

@@ -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;
}

View File

@@ -1,6 +1,7 @@
package com.ruoyi.xq.job; package com.ruoyi.xq.job;
import com.ruoyi.xq.service.SmsVerifyService; import com.ruoyi.xq.service.SmsVerifyService;
import com.ruoyi.xq.service.UserService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled; import org.springframework.scheduling.annotation.Scheduled;
@@ -12,10 +13,12 @@ public class ClearDaysJob {
@Autowired @Autowired
private SmsVerifyService smsVerifyService; private SmsVerifyService smsVerifyService;
@Autowired
private JobManager jobManager;
// 凌晨8点执行 // 凌晨8点执行
@Scheduled(cron = "0 0 8 * * ? ") @Scheduled(cron = "0 0 1 * * ? ")
public void clearRun() { public void clearRun() {
try { try {
log.info("定时删除短信记录== 开始"); log.info("定时删除短信记录== 开始");
@@ -25,5 +28,13 @@ public class ClearDaysJob {
log.error("定时删除短信记录== 异常",e); log.error("定时删除短信记录== 异常",e);
} }
try {
log.info("定时更新用户年龄== 开始");
jobManager.updateAge();
log.info("定时更新用户年龄== 结束");
}catch (Exception e){
log.error("定时更新用户年龄== 异常",e);
}
} }
} }

View File

@@ -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<User> page = new Page<>();
page.setCurrent(current);
page.setSize(100);
IPage<User> userPage = userService.page(page);
List<User> 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);
}
}
}
}

View File

@@ -155,6 +155,9 @@ public class CurrentUserManager {
if(req.getHeight() != null){ if(req.getHeight() != null){
updateUser.setHeight(req.getHeight()); updateUser.setHeight(req.getHeight());
} }
if(req.getBirthday() != null){
updateUser.setAge(AgeUtil.getAge(req.getBirthday()));
}
if(req.getWeight() != null){ if(req.getWeight() != null){
updateUser.setWeight(req.getWeight()); updateUser.setWeight(req.getWeight());
} }
@@ -272,6 +275,9 @@ public class CurrentUserManager {
updateUser.setResidenceName(areaCode.getFullname()); updateUser.setResidenceName(areaCode.getFullname());
updateUser.setResidenceCityName(areaCode.getPname()); updateUser.setResidenceCityName(areaCode.getPname());
} }
if(req.getBirthday() != null){
updateUser.setAge(AgeUtil.getAge(req.getBirthday()));
}
updateUser.setId(userId); updateUser.setId(userId);
userService.updateById(updateUser); userService.updateById(updateUser);

View File

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.common.core.domain.PageQuery; import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.xq.domain.UserAuth; import com.ruoyi.xq.domain.UserAuth;
import com.ruoyi.xq.dto.admin.user.UserAuthAdminVo; import com.ruoyi.xq.dto.admin.user.UserAuthAdminVo;
import com.ruoyi.xq.dto.admin.userauth.UserAuthAdminInfoVo;
/** /**
* 用户认证管理Service接口 * 用户认证管理Service接口
@@ -16,4 +17,10 @@ public interface UserAuthService extends IService<UserAuth> {
UserAuth getByUserId(Long userId); UserAuth getByUserId(Long userId);
Page<UserAuthAdminVo> pageAdmin(PageQuery pageQuery, UserAuthAdminVo bo); Page<UserAuthAdminVo> pageAdmin(PageQuery pageQuery, UserAuthAdminVo bo);
UserAuthAdminInfoVo getAdminById(Long id);
void updateUserAuth(UserAuth bo);
void checkAuthNum(Long userId);
} }

View File

@@ -6,6 +6,7 @@ import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.xq.domain.UserInfo; import com.ruoyi.xq.domain.UserInfo;
import com.ruoyi.xq.dto.admin.user.UserInfoDetailAdminVo; import com.ruoyi.xq.dto.admin.user.UserInfoDetailAdminVo;
import com.ruoyi.xq.dto.admin.user.UserInfoListAdminVo; import com.ruoyi.xq.dto.admin.user.UserInfoListAdminVo;
import com.ruoyi.xq.dto.admin.user.req.UpdateUserInfoReq;
/** /**
* 用户信息Service接口 * 用户信息Service接口
@@ -20,5 +21,7 @@ public interface UserInfoService extends IService<UserInfo> {
Page<UserInfoListAdminVo> pageAdmin(PageQuery pageQuery, UserInfoListAdminVo bo); Page<UserInfoListAdminVo> pageAdmin(PageQuery pageQuery, UserInfoListAdminVo bo);
UserInfoDetailAdminVo fullUserInfo(Long id); UpdateUserInfoReq getUserInfoUpdate(Long userId);
void updateInfo(UpdateUserInfoReq bo);
} }

View File

@@ -57,6 +57,5 @@ public interface UserService extends IService<User> {
void saveUser(AddUserReq bo); void saveUser(AddUserReq bo);
@Transactional(rollbackFor = Exception.class)
void updateBaseUser(UpdateUserReq updateUserReq); void updateBaseUser(UpdateUserReq updateUserReq);
} }

View File

@@ -65,34 +65,40 @@ public class UserAuthAuditServiceImpl extends ServiceImpl<UserAuthAuditMapper,Us
UserAuthAudit userInfoAudit = this.getById(id); UserAuthAudit userInfoAudit = this.getById(id);
if(userInfoAudit.getAuthType().equals(UserAuthTypeEnum.CAR.getCode())){ if(userInfoAudit.getAuthType().equals(UserAuthTypeEnum.CAR.getCode())){
userAuthService.update(Wrappers.lambdaUpdate(UserAuth.class) userAuthService.update(Wrappers.lambdaUpdate(UserAuth.class)
.eq(UserAuth:: getUserId, userInfoAudit.getUserId()) .eq(UserAuth::getUserId, userInfoAudit.getUserId())
.set(UserAuth:: getCarAuth, AuditEnum.SUCCESS.getCode()) .set(UserAuth::getCarAuth, AuditEnum.SUCCESS.getCode())
.set(UserAuth::getCarPic, userInfoAudit.getAuthPic())); .set(UserAuth::getCarPic, userInfoAudit.getAuthPic()));
userAuthService.checkAuthNum(userInfoAudit.getUserId());
}else if(userInfoAudit.getAuthType().equals(UserAuthTypeEnum.JOB.getCode())){ }else if(userInfoAudit.getAuthType().equals(UserAuthTypeEnum.JOB.getCode())){
userAuthService.update(Wrappers.lambdaUpdate(UserAuth.class) userAuthService.update(Wrappers.lambdaUpdate(UserAuth.class)
.eq(UserAuth:: getUserId, userInfoAudit.getUserId()) .eq(UserAuth:: getUserId, userInfoAudit.getUserId())
.set(UserAuth:: getJobAuth, AuditEnum.SUCCESS.getCode()) .set(UserAuth:: getJobAuth, AuditEnum.SUCCESS.getCode())
.set(UserAuth:: getJobPic, userInfoAudit.getAuthPic()) .set(UserAuth:: getJobPic, userInfoAudit.getAuthPic())
.set(UserAuth:: getJobAuthType, userInfoAudit.getAuthOther())); .set(UserAuth:: getJobAuthType, userInfoAudit.getAuthOther()));
userAuthService.checkAuthNum(userInfoAudit.getUserId());
}else if(userInfoAudit.getAuthType().equals(UserAuthTypeEnum.EDUCATION.getCode())){ }else if(userInfoAudit.getAuthType().equals(UserAuthTypeEnum.EDUCATION.getCode())){
userAuthService.update(Wrappers.lambdaUpdate(UserAuth.class) userAuthService.update(Wrappers.lambdaUpdate(UserAuth.class)
.eq(UserAuth:: getUserId, userInfoAudit.getUserId()) .eq(UserAuth:: getUserId, userInfoAudit.getUserId())
.set(UserAuth:: getEducationAuth, AuditEnum.SUCCESS.getCode()) .set(UserAuth:: getEducationAuth, AuditEnum.SUCCESS.getCode())
.set(UserAuth:: getEducationPic, userInfoAudit.getAuthPic())); .set(UserAuth:: getEducationPic, userInfoAudit.getAuthPic()));
userAuthService.checkAuthNum(userInfoAudit.getUserId());
}else if(userInfoAudit.getAuthType().equals(UserAuthTypeEnum.HOUSE.getCode())){ }else if(userInfoAudit.getAuthType().equals(UserAuthTypeEnum.HOUSE.getCode())){
userAuthService.update(Wrappers.lambdaUpdate(UserAuth.class) userAuthService.update(Wrappers.lambdaUpdate(UserAuth.class)
.eq(UserAuth:: getUserId, userInfoAudit.getUserId()) .eq(UserAuth:: getUserId, userInfoAudit.getUserId())
.set(UserAuth:: getHouseAuth, AuditEnum.SUCCESS.getCode()) .set(UserAuth:: getHouseAuth, AuditEnum.SUCCESS.getCode())
.set(UserAuth:: getHousePic, userInfoAudit.getAuthPic())); .set(UserAuth:: getHousePic, userInfoAudit.getAuthPic()));
userAuthService.checkAuthNum(userInfoAudit.getUserId());
}else if(userInfoAudit.getAuthType().equals(UserAuthTypeEnum.MARRIAGE.getCode())){ }else if(userInfoAudit.getAuthType().equals(UserAuthTypeEnum.MARRIAGE.getCode())){
userAuthService.update(Wrappers.lambdaUpdate(UserAuth.class) userAuthService.update(Wrappers.lambdaUpdate(UserAuth.class)
.eq(UserAuth:: getUserId, userInfoAudit.getUserId()) .eq(UserAuth:: getUserId, userInfoAudit.getUserId())
.set(UserAuth:: getMarriageAuth, AuditEnum.SUCCESS.getCode()) .set(UserAuth:: getMarriageAuth, AuditEnum.SUCCESS.getCode())
.set(UserAuth:: getMarriagePic, userInfoAudit.getAuthPic())); .set(UserAuth:: getMarriagePic, userInfoAudit.getAuthPic()));
userAuthService.checkAuthNum(userInfoAudit.getUserId());
}else if(userInfoAudit.getAuthType().equals(UserAuthTypeEnum.SINGLE.getCode())){ }else if(userInfoAudit.getAuthType().equals(UserAuthTypeEnum.SINGLE.getCode())){
userAuthService.update(Wrappers.lambdaUpdate(UserAuth.class) userAuthService.update(Wrappers.lambdaUpdate(UserAuth.class)
.eq(UserAuth:: getUserId, userInfoAudit.getUserId()) .eq(UserAuth:: getUserId, userInfoAudit.getUserId())
.set(UserAuth:: getSinglePersonAuth, AuditEnum.SUCCESS.getCode())); .set(UserAuth:: getSinglePersonAuth, AuditEnum.SUCCESS.getCode()));
userAuthService.checkAuthNum(userInfoAudit.getUserId());
} }
} }
} }

View File

@@ -4,11 +4,18 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.core.domain.PageQuery; import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.common.utils.spring.SpringUtils;
import com.ruoyi.xq.domain.User;
import com.ruoyi.xq.domain.UserAuth; import com.ruoyi.xq.domain.UserAuth;
import com.ruoyi.xq.dto.admin.user.UserAuthAdminVo; import com.ruoyi.xq.dto.admin.user.UserAuthAdminVo;
import com.ruoyi.xq.dto.admin.userauth.UserAuthAdminInfoVo;
import com.ruoyi.xq.enums.common.AuditEnum;
import com.ruoyi.xq.mapper.UserAuthMapper; import com.ruoyi.xq.mapper.UserAuthMapper;
import com.ruoyi.xq.service.UserAuthService; import com.ruoyi.xq.service.UserAuthService;
import com.ruoyi.xq.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
/** /**
* 用户认证管理Service业务层处理 * 用户认证管理Service业务层处理
@@ -19,6 +26,9 @@ import org.springframework.stereotype.Service;
@Service @Service
public class UserAuthServiceImpl extends ServiceImpl<UserAuthMapper,UserAuth> implements UserAuthService { public class UserAuthServiceImpl extends ServiceImpl<UserAuthMapper,UserAuth> implements UserAuthService {
@Autowired
private UserService userService;
@Override @Override
public UserAuth getByUserId(Long userId) { public UserAuth getByUserId(Long userId) {
return this.getOne(Wrappers.lambdaQuery(UserAuth.class) return this.getOne(Wrappers.lambdaQuery(UserAuth.class)
@@ -29,4 +39,64 @@ public class UserAuthServiceImpl extends ServiceImpl<UserAuthMapper,UserAuth> im
public Page<UserAuthAdminVo> pageAdmin(PageQuery pageQuery, UserAuthAdminVo bo) { public Page<UserAuthAdminVo> pageAdmin(PageQuery pageQuery, UserAuthAdminVo bo) {
return baseMapper.pageAdmin(pageQuery.build(), 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));
}
} }

View File

@@ -4,10 +4,12 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.core.domain.PageQuery; import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.common.utils.BeanConvertUtil;
import com.ruoyi.xq.domain.User; import com.ruoyi.xq.domain.User;
import com.ruoyi.xq.domain.UserInfo; import com.ruoyi.xq.domain.UserInfo;
import com.ruoyi.xq.dto.admin.user.UserInfoDetailAdminVo; import com.ruoyi.xq.dto.admin.user.UserInfoDetailAdminVo;
import com.ruoyi.xq.dto.admin.user.UserInfoListAdminVo; 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.mapper.UserInfoMapper;
import com.ruoyi.xq.service.UserInfoService; import com.ruoyi.xq.service.UserInfoService;
import com.ruoyi.xq.service.UserService; import com.ruoyi.xq.service.UserService;
@@ -15,7 +17,9 @@ import com.ruoyi.xq.util.AgeUtil;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime;
import java.util.List; import java.util.List;
/** /**
@@ -52,13 +56,32 @@ public class UserInfoServiceImpl extends ServiceImpl<UserInfoMapper,UserInfo> im
} }
@Override @Override
public UserInfoDetailAdminVo fullUserInfo(Long userId) { public UpdateUserInfoReq getUserInfoUpdate(Long userId) {
UserInfoDetailAdminVo vo = new UserInfoDetailAdminVo();
User user = userService.getById(userId); User user = userService.getById(userId);
UserInfo userInfo = this.getByUserId(userId); UserInfo userInfo = this.getByUserId(userId);
user.setAge(AgeUtil.getAge(user.getBirthday())); UpdateUserInfoReq res = BeanConvertUtil.convertTo(user, UpdateUserInfoReq::new);
vo.setUser(user); BeanConvertUtil.copyProperties(userInfo, res);
vo.setUserInfo(userInfo); return res;
return vo;
} }
@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);
}
} }

View File

@@ -30,6 +30,7 @@ import com.ruoyi.xq.manager.LoginManager;
import com.ruoyi.xq.manager.SystemConfigManager; import com.ruoyi.xq.manager.SystemConfigManager;
import com.ruoyi.xq.mapper.UserMapper; import com.ruoyi.xq.mapper.UserMapper;
import com.ruoyi.xq.service.*; import com.ruoyi.xq.service.*;
import com.ruoyi.xq.util.AgeUtil;
import com.ruoyi.xq.util.BirthdayUtil; import com.ruoyi.xq.util.BirthdayUtil;
import com.ruoyi.xq.util.ShowAvatarUtil; import com.ruoyi.xq.util.ShowAvatarUtil;
import com.ruoyi.yunxin.client.ImUserRefClient; import com.ruoyi.yunxin.client.ImUserRefClient;
@@ -321,6 +322,10 @@ public class UserServiceImpl extends ServiceImpl<UserMapper,User> implements Use
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void saveUser(AddUserReq bo) { public void saveUser(AddUserReq bo) {
boolean mobile = PhoneUtil.isMobile(bo.getMobile());
if(!mobile){
throw new ServiceException("请填写正确的手机号格式");
}
User user = this.getByMobile(bo.getMobile()); User user = this.getByMobile(bo.getMobile());
if(user != null){ if(user != null){
throw new ServiceException("手机号已存在!"); throw new ServiceException("手机号已存在!");
@@ -338,7 +343,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper,User> implements Use
} }
user = loginManager.registerUser(bo.getMobile(), null); user = loginManager.registerUser(bo.getMobile(), null);
UpdateUserReq updateUser = BeanConvertUtil.convertTo(bo, UpdateUserReq::new); UpdateUserReq updateUser = BeanConvertUtil.convertTo(bo, UpdateUserReq::new);
updateUser.setUserId(user.getId()); updateUser.setId(user.getId());
UserService userService = SpringUtil.getBean(UserService.class); UserService userService = SpringUtil.getBean(UserService.class);
userService.updateBaseUser(updateUser); userService.updateBaseUser(updateUser);
}finally { }finally {
@@ -350,18 +355,21 @@ public class UserServiceImpl extends ServiceImpl<UserMapper,User> implements Use
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void updateBaseUser(UpdateUserReq updateUserReq){ public void updateBaseUser(UpdateUserReq updateUserReq){
User user = this.getById(updateUserReq.getUserId()); User user = this.getById(updateUserReq.getId());
if(user == null){ if(user == null){
throw new ServiceException("用户不存在!"); throw new ServiceException("用户不存在!");
} }
User updateUser = new User(); User updateUser = new User();
updateUser.setId(user.getId()); updateUser.setId(user.getId());
updateUser.setType(updateUserReq.getUserType()); updateUser.setType(updateUserReq.getType());
updateUser.setNickname(updateUserReq.getNickname()); updateUser.setNickname(updateUserReq.getNickname());
updateUser.setAvatar(updateUserReq.getAvatar()); updateUser.setAvatar(updateUserReq.getAvatar());
updateUser.setGender(updateUserReq.getGender()); updateUser.setGender(updateUserReq.getGender());
updateUser.setHeight(updateUserReq.getHeight()); updateUser.setHeight(updateUserReq.getHeight());
updateUser.setWeight(updateUserReq.getWeight()); updateUser.setWeight(updateUserReq.getWeight());
if(updateUserReq.getBirthday() != null){
updateUser.setAge(AgeUtil.getAge(updateUserReq.getBirthday()));
}
updateUser.setBirthday(updateUserReq.getBirthday()); updateUser.setBirthday(updateUserReq.getBirthday());
if(updateUserReq.getResidenceCode() != null){ if(updateUserReq.getResidenceCode() != null){
updateUser.setResidenceCode(updateUserReq.getResidenceCode()); updateUser.setResidenceCode(updateUserReq.getResidenceCode());