init
This commit is contained in:
@@ -1,12 +1,18 @@
|
||||
package com.ruoyi.cai.auth;
|
||||
|
||||
import cn.dev33.satoken.exception.NotLoginException;
|
||||
import cn.dev33.satoken.secure.BCrypt;
|
||||
import cn.dev33.satoken.stp.StpUtil;
|
||||
import com.ruoyi.cai.domain.User;
|
||||
import com.ruoyi.cai.domain.UserInfo;
|
||||
import cn.hutool.core.util.NumberUtil;
|
||||
import cn.hutool.extra.spring.SpringUtil;
|
||||
import com.ruoyi.cai.domain.*;
|
||||
import com.ruoyi.cai.enums.CodeEnum;
|
||||
import com.ruoyi.cai.enums.SystemConfigEnum;
|
||||
import com.ruoyi.cai.executor.ExecutorConstant;
|
||||
import com.ruoyi.cai.service.UserInfoService;
|
||||
import com.ruoyi.cai.service.UserService;
|
||||
import com.ruoyi.cai.manager.CodeManager;
|
||||
import com.ruoyi.cai.manager.LockManager;
|
||||
import com.ruoyi.cai.manager.SystemConfigManager;
|
||||
import com.ruoyi.cai.service.*;
|
||||
import com.ruoyi.common.constant.Constants;
|
||||
import com.ruoyi.common.core.domain.model.LoginUser;
|
||||
import com.ruoyi.common.enums.UserType;
|
||||
@@ -17,11 +23,18 @@ import com.ruoyi.common.utils.ServletUtils;
|
||||
import com.ruoyi.common.utils.ip.AddressUtils;
|
||||
import com.ruoyi.system.service.SysLoginService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.redisson.api.RLock;
|
||||
import org.redisson.api.RedissonClient;
|
||||
import org.redisson.client.RedisClient;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.autoconfigure.ImportAutoConfiguration;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Collections;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
@Component
|
||||
@Slf4j
|
||||
@@ -31,6 +44,26 @@ public class CaiLoginManager {
|
||||
private UserService userService;
|
||||
@Autowired
|
||||
private SysLoginService sysLoginService;
|
||||
@Autowired
|
||||
private CodeManager codeManager;
|
||||
@Autowired
|
||||
private UserCodeGenService userCodeGenService;
|
||||
@Autowired
|
||||
private UserInfoService userInfoService;
|
||||
@Autowired
|
||||
private SystemConfigManager systemConfigManager;
|
||||
@Autowired
|
||||
private AccountService accountService;
|
||||
@Autowired
|
||||
private UserOnlineService userOnlineService;
|
||||
@Autowired
|
||||
private RedissonClient redissonClient;
|
||||
@Autowired
|
||||
private UserInviteService userInviteService;
|
||||
@Autowired
|
||||
private UnionService unionService;
|
||||
@Autowired
|
||||
private UnionUserService unionUserService;
|
||||
|
||||
|
||||
public String login(String username,String password){
|
||||
@@ -41,35 +74,111 @@ public class CaiLoginManager {
|
||||
if(user.getStatus() != 0){
|
||||
throw new ServiceException("用户已封禁,请联系客服");
|
||||
}
|
||||
/*if(!BCrypt.checkpw(password, caiUser.getPassword())){
|
||||
if(!BCrypt.checkpw(password, user.getPassword())){
|
||||
throw new ServiceException("用户不存在或密码错误");
|
||||
}*/
|
||||
LoginUser loginUser = new LoginUser();
|
||||
loginUser.setDeptId(null);
|
||||
loginUser.setDeptName(null);
|
||||
// loginUser.setToken(caiUser.getToken());
|
||||
// loginUser.setLoginTime();
|
||||
// loginUser.setExpireTime();
|
||||
// loginUser.setIpaddr();
|
||||
// loginUser.setLoginLocation();
|
||||
// loginUser.setBrowser();
|
||||
// loginUser.setOs();
|
||||
loginUser.setMenuPermission(Collections.emptySet());
|
||||
loginUser.setRolePermission(Collections.emptySet());
|
||||
loginUser.setUsername(user.getMobile());
|
||||
loginUser.setRoles(Collections.emptyList());
|
||||
loginUser.setRoleId(null);
|
||||
loginUser.setUserId(user.getId());
|
||||
loginUser.setUserType(UserType.APP_USER.getUserType());
|
||||
LoginHelper.login(loginUser);
|
||||
sysLoginService.recordLogininfor(loginUser.getUsername(), Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success"));
|
||||
String clientIP = ServletUtils.getClientIP();
|
||||
ExecutorConstant.COMMON_EXECUTOR.execute(() -> recordLoginInfo(user,clientIP));
|
||||
return StpUtil.getTokenValue();
|
||||
}
|
||||
return login(user);
|
||||
}
|
||||
|
||||
public String register(CaiRegisterUser caiUser) {
|
||||
User user = userService.getByUsername(caiUser.getUsername());
|
||||
if(user == null){
|
||||
throw new ServiceException("手机号已存在");
|
||||
}
|
||||
if(!caiUser.getPassword().equals(caiUser.getPasswordCheck())){
|
||||
throw new ServiceException("两次输入密码不一致,请检查");
|
||||
}
|
||||
boolean check = codeManager.check(CodeEnum.REGISTER, caiUser.getUsername(), caiUser.getCode());
|
||||
if(!check){
|
||||
throw new ServiceException("验证码错误");
|
||||
}
|
||||
// 加锁
|
||||
String lockKey = LockManager.getRegisterLockKey(caiUser.getUsername());
|
||||
RLock lock = redissonClient.getLock(lockKey);
|
||||
if(lock.isLocked()){
|
||||
throw new ServiceException("您点击太快了");
|
||||
}
|
||||
lock.lock(5, TimeUnit.SECONDS);
|
||||
try {
|
||||
CaiLoginManager bean = SpringUtil.getBean(CaiLoginManager.class);
|
||||
user = bean.registerUser(caiUser);
|
||||
}finally {
|
||||
lock.unlock();
|
||||
}
|
||||
if(user.getInviteId() != null){
|
||||
User finalUser = user;
|
||||
ExecutorConstant.COMMON_EXECUTOR.execute(() -> dealInviteId(finalUser));
|
||||
}
|
||||
return login(user);
|
||||
}
|
||||
|
||||
|
||||
|
||||
public void dealInviteId(User user){
|
||||
Long inviteId = user.getInviteId();
|
||||
if(inviteId == null){
|
||||
return;
|
||||
}
|
||||
User inviteUser = userService.getById(inviteId);
|
||||
if(inviteUser == null){
|
||||
return;
|
||||
}
|
||||
String key = LockManager.getDealInviteLockKey(inviteId);
|
||||
RLock lock = redissonClient.getLock(key);
|
||||
if(!lock.isLocked()){
|
||||
log.warn("点击太快了,等一等,dealInviteId");
|
||||
return;
|
||||
}
|
||||
lock.lock(5,TimeUnit.SECONDS);
|
||||
try {
|
||||
UserInvite check = userInviteService.getByUserId(user.getId());
|
||||
if(check == null){
|
||||
UserInfo userInfo = userInfoService.getByUserId(user.getId());
|
||||
UserInvite userInvite = new UserInvite();
|
||||
userInvite.setUserId(user.getId());
|
||||
userInvite.setInviteId(user.getInviteId());
|
||||
userInvite.setVideoIncomeRate(userInfo.getVideoIncomeRate());
|
||||
userInvite.setGuardIncomeRate(userInfo.getGuardIncomeRate());
|
||||
userInvite.setGiftIncomeRate(userInfo.getGiftIncomeRate());
|
||||
userInvite.setPayIncomeRate(userInfo.getPayIncomeRate());
|
||||
if(inviteUser.getIsUnion() == 1){
|
||||
BigDecimal unionOneRate = systemConfigManager.getSystemConfigOfBigDecimal(SystemConfigEnum.DEFAULT_UNION_ONE_INCOME_RATE);
|
||||
BigDecimal videoIncome = NumberUtil.add(userInfo.getVideoIncomeRate(), unionOneRate);
|
||||
userInvite.setVideoIncomeRate(videoIncome);
|
||||
}
|
||||
userInviteService.save(userInvite);
|
||||
}
|
||||
// 处理工会
|
||||
Union union = null; //
|
||||
if(inviteUser.getIsUnion() == 1){
|
||||
union = unionService.getByUserId(inviteUser.getId());
|
||||
} else {
|
||||
UnionUser unionUser = unionUserService.getByUserId(inviteUser.getId());
|
||||
if(unionUser != null){
|
||||
union = unionService.getById(unionUser);
|
||||
}
|
||||
}
|
||||
if(union == null){
|
||||
log.info("邀请人没有工会,无法入会 inviteId={}",inviteId);
|
||||
return;
|
||||
}
|
||||
UnionUser checkUnionUser = unionUserService.getByUserId(user.getId());
|
||||
if(checkUnionUser != null){
|
||||
UnionUser unionUser = new UnionUser();
|
||||
unionUser.setUnionId(union.getId());
|
||||
unionUser.setUserId(user.getId());
|
||||
unionUser.setVideoDivide(systemConfigManager.getSystemConfigOfBigDecimal(SystemConfigEnum.DEFAULT_UNION_VIDEO_INCOME_RATE));
|
||||
unionUser.setGiftDivide(systemConfigManager.getSystemConfigOfBigDecimal(SystemConfigEnum.DEFAULT_UNION_VIDEO_INCOME_RATE));
|
||||
unionUser.setVipDivide(BigDecimal.ZERO);
|
||||
unionUser.setEnableRate(true);
|
||||
unionUserService.save(unionUser);
|
||||
}
|
||||
}finally {
|
||||
lock.unlock();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private UserInfoService userInfoService;
|
||||
|
||||
public void recordLoginInfo(User user, String ip) {
|
||||
String address = AddressUtils.getRealAddressByIP(ip);
|
||||
@@ -100,5 +209,61 @@ public class CaiLoginManager {
|
||||
}
|
||||
}
|
||||
|
||||
private String login(User user){
|
||||
LoginUser loginUser = new LoginUser();
|
||||
loginUser.setDeptId(null);
|
||||
loginUser.setDeptName(null);
|
||||
loginUser.setMenuPermission(Collections.emptySet());
|
||||
loginUser.setRolePermission(Collections.emptySet());
|
||||
loginUser.setUsername(user.getMobile());
|
||||
loginUser.setRoles(Collections.emptyList());
|
||||
loginUser.setRoleId(null);
|
||||
loginUser.setUserId(user.getId());
|
||||
loginUser.setUserType(UserType.APP_USER.getUserType());
|
||||
LoginHelper.login(loginUser);
|
||||
sysLoginService.recordLogininfor(loginUser.getUsername(), Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success"));
|
||||
String clientIP = ServletUtils.getClientIP();
|
||||
ExecutorConstant.COMMON_EXECUTOR.execute(() -> recordLoginInfo(user,clientIP));
|
||||
return StpUtil.getTokenValue();
|
||||
}
|
||||
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public User registerUser(CaiRegisterUser user){
|
||||
String usercode = userCodeGenService.getCodeGen();
|
||||
User add = new User();
|
||||
add.setUsercode(usercode);
|
||||
add.setNickname("蜜瓜"+usercode);
|
||||
add.setType(0);
|
||||
add.setPassword(BCrypt.hashpw(user.getPassword()));
|
||||
add.setMobile(user.getUsername());
|
||||
add.setMobileStatus(1);
|
||||
add.setAvatar(null);
|
||||
add.setGender(user.getGender());
|
||||
add.setCity(user.getCity());
|
||||
add.setInviteId(user.getInviteId());
|
||||
userService.save(add);
|
||||
String clientIP = ServletUtils.getClientIP();
|
||||
UserInfo userInfo = new UserInfo();
|
||||
userInfo.setUserId(add.getId());
|
||||
userInfo.setVideoIncomeRate(systemConfigManager.getSystemConfigOfBigDecimal(SystemConfigEnum.DEFAULT_VIDEO_INCOME_RATE));
|
||||
userInfo.setGuardIncomeRate(systemConfigManager.getSystemConfigOfBigDecimal(SystemConfigEnum.DEFAULT_GUARD_INCOME_RATE));
|
||||
userInfo.setGiftIncomeRate(systemConfigManager.getSystemConfigOfBigDecimal(SystemConfigEnum.DEFAULT_GIFT_INCOME_RATE));
|
||||
userInfo.setPayIncomeRate(systemConfigManager.getSystemConfigOfBigDecimal(SystemConfigEnum.DEFAULT_PAY_INCOME_RATE));
|
||||
userInfo.setLoginCount(1);
|
||||
userInfo.setLastLoginIp(clientIP);
|
||||
userInfo.setLastLoginTime(LocalDateTime.now());
|
||||
userInfo.setRegIp(clientIP);
|
||||
userInfo.setRegTime(LocalDateTime.now());
|
||||
userInfoService.save(userInfo);
|
||||
Account account = new Account();
|
||||
account.setUserId(add.getId());
|
||||
accountService.save(account);
|
||||
UserOnline userOnline = new UserOnline();
|
||||
userOnline.setUserId(add.getId());
|
||||
userOnlineService.save(userOnline);
|
||||
return add;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
package com.ruoyi.cai.auth;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
@Schema(description = "注册模型")
|
||||
public class CaiRegisterUser {
|
||||
@Schema(description = "手机号登录名")
|
||||
private String username;
|
||||
@Schema(description = "密码")
|
||||
private String password;
|
||||
@Schema(description = "密码确认")
|
||||
private String passwordCheck;
|
||||
@Schema(description = "验证码")
|
||||
private String code;
|
||||
@Schema(description = "邀请人ID")
|
||||
private Long inviteId;
|
||||
@Schema(description = "性别")
|
||||
private Integer gender;
|
||||
@Schema(description = "城市")
|
||||
private Long city;
|
||||
}
|
||||
@@ -5,4 +5,5 @@ public class RedisConstant {
|
||||
public static final String SYSTEM_CONFIG = REDIS_P + "system-config";
|
||||
public static final String CITY_CACHE_REDIS = REDIS_P + "city";
|
||||
public static final String DYNAMIC_TOTAL_CACHE_REDIS = REDIS_P + "synamicTotal:%s:%s";
|
||||
public static final String CODE_REDIS = REDIS_P + "code:%s:%s";
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.ruoyi.cai.controller.app;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaIgnore;
|
||||
import com.ruoyi.cai.auth.CaiLoginManager;
|
||||
import com.ruoyi.cai.auth.CaiRegisterUser;
|
||||
import com.ruoyi.cai.auth.LoginCaiUser;
|
||||
import com.ruoyi.cai.service.UserService;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
@@ -29,7 +30,14 @@ public class AuthAppController {
|
||||
|
||||
@PostMapping("/register")
|
||||
@Operation(summary = "注册")
|
||||
public R<Void> register(@RequestBody LoginCaiUser caiUser){
|
||||
public R<Void> register(@RequestBody CaiRegisterUser caiUser){
|
||||
userService.register(caiUser);
|
||||
return R.ok();
|
||||
}
|
||||
|
||||
@PostMapping("/register/code")
|
||||
@Operation(summary = "获取注册验证码")
|
||||
public R<Map<String,String>> registerCode(@RequestBody CaiRegisterUser caiUser){
|
||||
userService.register(caiUser);
|
||||
return R.ok();
|
||||
}
|
||||
|
||||
@@ -40,6 +40,7 @@ public class Union implements Serializable {
|
||||
/**
|
||||
* 工会默认二级支付奖励比例
|
||||
*/
|
||||
@Deprecated
|
||||
private BigDecimal defaultIncomeRate;
|
||||
/**
|
||||
* 全部人数
|
||||
|
||||
@@ -44,6 +44,7 @@ public class UnionUser implements Serializable {
|
||||
/**
|
||||
* vip分成
|
||||
*/
|
||||
@Deprecated
|
||||
private BigDecimal vipDivide;
|
||||
/**
|
||||
* 是否开启提成
|
||||
|
||||
@@ -116,7 +116,7 @@ public class User implements Serializable {
|
||||
/**
|
||||
* 邀请人
|
||||
*/
|
||||
private Integer inviteId;
|
||||
private Long inviteId;
|
||||
/**
|
||||
* 终端 0 默认接口 1 安卓 2 ios 3 网页 4小程序
|
||||
*/
|
||||
|
||||
@@ -43,14 +43,6 @@ public class UserInfo {
|
||||
* 登录次数
|
||||
*/
|
||||
private Integer loginCount;
|
||||
/**
|
||||
* 连续登录天数
|
||||
*/
|
||||
private Long continueLoginCount;
|
||||
/**
|
||||
* 最大连续登录天数
|
||||
*/
|
||||
private Long maxLoginCount;
|
||||
/**
|
||||
* 最后登录IP
|
||||
*/
|
||||
|
||||
@@ -19,11 +19,11 @@ public class UserOnline implements Serializable {
|
||||
|
||||
private static final long serialVersionUID=1L;
|
||||
|
||||
private Long id;
|
||||
/**
|
||||
* 用户ID
|
||||
*/
|
||||
@TableId(value = "user_id")
|
||||
private Integer userId;
|
||||
private Long userId;
|
||||
/**
|
||||
* 在线状态:0=离线,1=在线
|
||||
*/
|
||||
|
||||
15
ruoyi-cai/src/main/java/com/ruoyi/cai/enums/CodeEnum.java
Normal file
15
ruoyi-cai/src/main/java/com/ruoyi/cai/enums/CodeEnum.java
Normal file
@@ -0,0 +1,15 @@
|
||||
package com.ruoyi.cai.enums;
|
||||
|
||||
import lombok.Getter;
|
||||
|
||||
@Getter
|
||||
public enum CodeEnum {
|
||||
REGISTER("注册短信")
|
||||
;
|
||||
|
||||
private final String name;
|
||||
|
||||
CodeEnum(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
}
|
||||
@@ -11,6 +11,13 @@ import lombok.Getter;
|
||||
public enum SystemConfigEnum {
|
||||
GUARD_PRICE("1314", "守护价格"),
|
||||
DAY_MAX_DYNAMIC("10", "每日运行发布的最大动态数"),
|
||||
DEFAULT_VIDEO_INCOME_RATE("0.07", "默认分销好友视频提成"),
|
||||
DEFAULT_GIFT_INCOME_RATE("0.07", "默认分销好友礼物提成"),
|
||||
DEFAULT_GUARD_INCOME_RATE("0.07", "默认分销好友守护提成"),
|
||||
DEFAULT_PAY_INCOME_RATE("0.07", "默认分销好友充值提成"),
|
||||
DEFAULT_UNION_GIFT_INCOME_RATE("0.01", "默认工会礼物提成"),
|
||||
DEFAULT_UNION_VIDEO_INCOME_RATE("0.01", "默认工会视频提成"),
|
||||
DEFAULT_UNION_ONE_INCOME_RATE("0.07", "默认工会一级提成"),
|
||||
|
||||
;
|
||||
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
package com.ruoyi.cai.manager;
|
||||
|
||||
import cn.hutool.core.util.RandomUtil;
|
||||
import com.ruoyi.cai.constant.RedisConstant;
|
||||
import com.ruoyi.cai.enums.CodeEnum;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.data.redis.core.StringRedisTemplate;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
@Component
|
||||
public class CodeManager {
|
||||
|
||||
@Autowired
|
||||
private StringRedisTemplate redisTemplate;
|
||||
|
||||
public String getKey(CodeEnum codeEnum,String phone){
|
||||
return String.format(RedisConstant.CODE_REDIS,codeEnum.name(),phone);
|
||||
}
|
||||
|
||||
public String put(CodeEnum codeEnum,String phone){
|
||||
String code = RandomUtil.randomNumbers(6);
|
||||
String key = getKey(codeEnum, phone);
|
||||
redisTemplate.opsForValue().set(key,code,5, TimeUnit.MINUTES);
|
||||
return code;
|
||||
}
|
||||
|
||||
public boolean check(CodeEnum codeEnum,String phone,String code){
|
||||
String key = getKey(codeEnum, phone);
|
||||
String val = redisTemplate.opsForValue().get(key);
|
||||
if(val == null){
|
||||
return false;
|
||||
}
|
||||
return val.equals(code);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
package com.ruoyi.cai.manager;
|
||||
|
||||
import com.ruoyi.cai.constant.RedisConstant;
|
||||
|
||||
public class LockManager {
|
||||
|
||||
public static final String LOCK_REGISTER_REDIS = RedisConstant.REDIS_P + "lock:register:%s";
|
||||
public static final String LOCK_DEAL_INVITE_REDIS = RedisConstant.REDIS_P + "lock:dealInvite:%s";
|
||||
|
||||
public static String getRegisterLockKey(String mobile){
|
||||
return String.format(LOCK_REGISTER_REDIS,mobile);
|
||||
}
|
||||
|
||||
public static String getDealInviteLockKey(Long userId){
|
||||
return String.format(LOCK_DEAL_INVITE_REDIS,userId);
|
||||
}
|
||||
}
|
||||
@@ -8,6 +8,7 @@ import org.springframework.data.redis.core.HashOperations;
|
||||
import org.springframework.data.redis.core.StringRedisTemplate;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
@@ -35,6 +36,11 @@ public class SystemConfigManager {
|
||||
return "1".equals(value);
|
||||
}
|
||||
|
||||
public BigDecimal getSystemConfigOfBigDecimal(SystemConfigEnum systemConfig){
|
||||
String value = getSystemConfig(systemConfig);
|
||||
return new BigDecimal(value);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取配置信息返回Integer
|
||||
* @param systemConfig
|
||||
|
||||
@@ -11,4 +11,5 @@ import com.ruoyi.cai.domain.UserCodeGen;
|
||||
*/
|
||||
public interface UserCodeGenService extends IService<UserCodeGen> {
|
||||
|
||||
String getCodeGen();
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.ruoyi.cai.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.ruoyi.cai.auth.CaiRegisterUser;
|
||||
import com.ruoyi.cai.auth.LoginCaiUser;
|
||||
import com.ruoyi.cai.domain.User;
|
||||
import com.ruoyi.cai.dto.admin.vo.UserAdminVo;
|
||||
@@ -20,8 +21,6 @@ public interface UserService extends IService<User> {
|
||||
|
||||
User getByUsername(String username);
|
||||
|
||||
void register(LoginCaiUser caiUser);
|
||||
|
||||
Page<UserAdminVo> pageAdmin(PageQuery pageQuery, User query);
|
||||
|
||||
Page<UserListVo> pageApp(PageQuery page, UserQuery query);
|
||||
|
||||
@@ -15,4 +15,10 @@ import org.springframework.stereotype.Service;
|
||||
@Service
|
||||
public class UserCodeGenServiceImpl extends ServiceImpl<UserCodeGenMapper, UserCodeGen> implements UserCodeGenService {
|
||||
|
||||
@Override
|
||||
public String getCodeGen(){
|
||||
UserCodeGen gen = new UserCodeGen();
|
||||
this.save(gen);
|
||||
return gen.getId()+"";
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,24 +1,34 @@
|
||||
package com.ruoyi.cai.service.impl;
|
||||
|
||||
import cn.dev33.satoken.secure.BCrypt;
|
||||
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.cai.auth.CaiRegisterUser;
|
||||
import com.ruoyi.cai.auth.LoginCaiUser;
|
||||
import com.ruoyi.cai.domain.Anchor;
|
||||
import com.ruoyi.cai.domain.User;
|
||||
import com.ruoyi.cai.domain.UserInfo;
|
||||
import com.ruoyi.cai.dto.admin.vo.UserAdminVo;
|
||||
import com.ruoyi.cai.dto.app.query.UserQuery;
|
||||
import com.ruoyi.cai.dto.app.vo.user.UserInfoVo;
|
||||
import com.ruoyi.cai.dto.app.vo.user.UserListVo;
|
||||
import com.ruoyi.cai.dto.app.vo.user.OnlineStatusVo;
|
||||
import com.ruoyi.cai.enums.CodeEnum;
|
||||
import com.ruoyi.cai.manager.CodeManager;
|
||||
import com.ruoyi.cai.mapper.UserMapper;
|
||||
import com.ruoyi.cai.service.*;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.exception.ServiceException;
|
||||
import com.ruoyi.common.helper.LoginHelper;
|
||||
import com.ruoyi.common.utils.ServletUtils;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* 用户Service业务层处理
|
||||
*
|
||||
@@ -48,11 +58,6 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
|
||||
.eq(User::getMobile,username));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void register(LoginCaiUser caiUser) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<UserAdminVo> pageAdmin(PageQuery pageQuery, User query) {
|
||||
return baseMapper.pageAdmin(pageQuery.build(),query);
|
||||
|
||||
Reference in New Issue
Block a user