This commit is contained in:
张良(004796)
2024-03-13 14:56:59 +08:00
parent 9559658dda
commit e79d7d8c5c
18 changed files with 494 additions and 41 deletions

View File

@@ -6,7 +6,6 @@ import cn.dev33.satoken.stp.StpUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.extra.spring.SpringUtil;
import com.alibaba.fastjson2.JSON;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.common.constant.Constants;
import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.common.enums.UserType;
@@ -65,6 +64,8 @@ public class CaiLoginManager {
private SmsVerifyService smsVerifyService;
@Autowired
private UserExtendService userExtendService;
@Autowired
private UserInviteService userInviteService;
public String login(String username,String password){
User user = userService.getByUsername(username);
@@ -119,30 +120,19 @@ public class CaiLoginManager {
}finally {
lock.unlock();
}
if(user.getInviteId() != null){
if(StringUtils.isNotEmpty(inviteCode)){
User finalUser = user;
ExecutorConstant.COMMON_EXECUTOR.execute(() -> dealInviteId(finalUser));
ExecutorConstant.COMMON_EXECUTOR.execute(() -> dealInviteId(finalUser,inviteCode));
}
return user;
}
public void dealInviteId(User user){
String inviteCode = user.getInviteCode();
public void dealInviteId(User user, String inviteCode){
if(StringUtils.isEmpty(inviteCode)){
return;
}
User inviteUser = userService.getByUsercode(inviteCode);
if(inviteUser == null){
return;
}
userService.update(Wrappers.lambdaUpdate(User.class)
.eq(User::getId,user.getId())
.set(User::getInviteId, inviteUser.getId()));
userExtendService.update(Wrappers.lambdaUpdate(UserExtend.class)
.eq(UserExtend::getUserId, user.getId())
.set(UserExtend::getInviteId, inviteUser.getId())
.set(UserExtend::getInviteCode, inviteUser.getUsercode()));
userInviteService.bindInvite(user.getId(),inviteCode);
}
@@ -189,7 +179,6 @@ public class CaiLoginManager {
add.setPassword(BCrypt.hashpw(usercode+"用户手动滑稽安康黄鼠狼"));
add.setMobile(mobile);
add.setGender(UserGenderEnum.NONE.getCode());
add.setInviteCode(inviteCode);
add.setImToken(IdUtil.simpleUUID());
userService.save(add);
CreateUserReq req = new CreateUserReq();