修改注册逻辑 改完从商城系统进行注册
This commit is contained in:
parent
dea2a88574
commit
a89b431ec8
@ -12,6 +12,7 @@ import com.imooc.utils.IPUtil;
|
||||
import com.imooc.utils.SMSUtils;
|
||||
import com.imooc.vo.UsersVO;
|
||||
import com.imooc.utils.CommonUtil;
|
||||
import com.imooc.utils.GsonUtil;
|
||||
|
||||
import io.swagger.annotations.Api;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@ -25,6 +26,7 @@ import javax.servlet.http.HttpServletRequest;
|
||||
import javax.validation.Valid;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.Optional;
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
@ -42,7 +44,7 @@ public class PassportController extends BaseInfoProperties {
|
||||
|
||||
@Autowired
|
||||
private UserService userService;
|
||||
|
||||
|
||||
@Autowired
|
||||
private PasswordEncoder passwordEncoder;
|
||||
|
||||
@ -66,47 +68,72 @@ public class PassportController extends BaseInfoProperties {
|
||||
return GraceJSONResult.ok();
|
||||
}
|
||||
|
||||
/*@PostMapping("login")
|
||||
public Object login(@Valid @RequestBody RegistLoginBO registLoginBO){
|
||||
|
||||
String rediscode = redis.get(MOBILE_SMSCODE + ":" + registLoginBO.getMobile());
|
||||
|
||||
if (StringUtils.isBlank(rediscode)|| !rediscode.equalsIgnoreCase(registLoginBO.getSmsCode())){
|
||||
System.out.println("rediscode"+rediscode);
|
||||
System.out.println("registLoginBO.getMobile()"+registLoginBO.getSmsCode());
|
||||
return GraceJSONResult.errorCustom(ResponseStatusEnum.SMS_CODE_ERROR);
|
||||
}
|
||||
|
||||
Users user = userService.queryMobileIsExist(registLoginBO.getMobile());
|
||||
if (user==null){
|
||||
user = userService.createUser(registLoginBO.getMobile());
|
||||
}
|
||||
String uToken = UUID.randomUUID().toString();
|
||||
log.info(uToken);
|
||||
redis.set(REDIS_USER_TOKEN+":"+user.getId(),uToken);
|
||||
|
||||
//清除验证码
|
||||
redis.del(MOBILE_SMSCODE+":"+user.getMobile());
|
||||
|
||||
//返回给前端
|
||||
UsersVO usersVO = new UsersVO();
|
||||
BeanUtils.copyProperties(user, usersVO);
|
||||
usersVO.setUserToken(uToken);
|
||||
|
||||
return GraceJSONResult.ok(usersVO);
|
||||
}*/
|
||||
|
||||
@PostMapping("login")
|
||||
public Object login(@Valid @RequestBody RegistLoginBO registLoginBO) {
|
||||
|
||||
/*String rediscode = redis.get(MOBILE_SMSCODE + ":" + registLoginBO.getMobile());
|
||||
String rediscode = redis.get(MOBILE_SMSCODE + ":" + registLoginBO.getMobile());
|
||||
|
||||
if (StringUtils.isBlank(rediscode) || !rediscode.equalsIgnoreCase(registLoginBO.getSmsCode())) {
|
||||
System.out.println("rediscode" + rediscode);
|
||||
System.out.println("registLoginBO.getMobile()" + registLoginBO.getSmsCode());
|
||||
return GraceJSONResult.errorCustom(ResponseStatusEnum.SMS_CODE_ERROR);
|
||||
}
|
||||
|
||||
Users user = userService.queryMobileIsExist(registLoginBO.getMobile());
|
||||
if (user == null) {
|
||||
user = userService.createUser(registLoginBO.getMobile());
|
||||
}
|
||||
String uToken = UUID.randomUUID().toString();
|
||||
log.info(uToken);
|
||||
redis.set(REDIS_USER_TOKEN + ":" + user.getId(), uToken);
|
||||
|
||||
// 清除验证码
|
||||
redis.del(MOBILE_SMSCODE + ":" + user.getMobile());
|
||||
|
||||
// 返回给前端
|
||||
UsersVO usersVO = new UsersVO();
|
||||
BeanUtils.copyProperties(user, usersVO);
|
||||
usersVO.setUserToken(uToken);
|
||||
|
||||
return GraceJSONResult.ok(usersVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 从商城系统登录
|
||||
*
|
||||
* @param mobile
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("loginFromShop")
|
||||
public String loginFromShop(String mobile, String memberId) {
|
||||
// 创建短视频系统账号
|
||||
return Optional.ofNullable(userService.createUserFromShop(mobile,memberId))//
|
||||
.map(user -> {
|
||||
String uToken = UUID.randomUUID().toString();
|
||||
log.info(uToken);
|
||||
redis.set(REDIS_USER_TOKEN + ":" + user.getId(), uToken);
|
||||
// 清除验证码
|
||||
redis.del(MOBILE_SMSCODE + ":" + user.getMobile());
|
||||
// 返回给前端
|
||||
UsersVO usersVO = new UsersVO();
|
||||
BeanUtils.copyProperties(user, usersVO);
|
||||
usersVO.setUserToken(uToken);
|
||||
|
||||
return GsonUtil.beanToJson(usersVO);
|
||||
})//
|
||||
.orElseGet(()->StringUtils.EMPTY);
|
||||
}
|
||||
|
||||
/*@PostMapping("login")
|
||||
public Object login(@Valid @RequestBody RegistLoginBO registLoginBO) {
|
||||
String rediscode = redis.get(MOBILE_SMSCODE + ":" + registLoginBO.getMobile());
|
||||
|
||||
if (StringUtils.isBlank(rediscode) || !rediscode.equalsIgnoreCase(registLoginBO.getSmsCode())) {
|
||||
System.out.println("rediscode" + rediscode);
|
||||
System.out.println("registLoginBO.getMobile()" + registLoginBO.getSmsCode());
|
||||
return GraceJSONResult.errorCustom(ResponseStatusEnum.SMS_CODE_ERROR);
|
||||
}*/
|
||||
|
||||
}
|
||||
|
||||
// 手机号
|
||||
String mobile = registLoginBO.getMobile();
|
||||
Users user = userService.queryMobileIsExist(mobile);
|
||||
@ -121,22 +148,22 @@ public class PassportController extends BaseInfoProperties {
|
||||
} else {
|
||||
shopToken = userService.getShopToken(user.getId());
|
||||
}
|
||||
|
||||
|
||||
String uToken = UUID.randomUUID().toString();
|
||||
log.info(uToken);
|
||||
redis.set(REDIS_USER_TOKEN + ":" + user.getId(), uToken);
|
||||
|
||||
|
||||
// 清除验证码
|
||||
redis.del(MOBILE_SMSCODE + ":" + user.getMobile());
|
||||
|
||||
|
||||
// 返回给前端
|
||||
UsersVO usersVO = new UsersVO();
|
||||
BeanUtils.copyProperties(user, usersVO);
|
||||
usersVO.setUserToken(uToken);
|
||||
usersVO.setShopToken(shopToken);
|
||||
|
||||
//usersVO.setShopToken(shopToken);
|
||||
|
||||
return GraceJSONResult.ok(usersVO);
|
||||
}
|
||||
}*/
|
||||
|
||||
@PostMapping("loginWithPassword")
|
||||
public Object loginWithPassword(@Valid @RequestBody LoginWithPasswordBO loginWithPasswordBO) {
|
||||
@ -151,19 +178,18 @@ public class PassportController extends BaseInfoProperties {
|
||||
if (!passwordEncoder.matches(password, user.getPassword())) {
|
||||
return GraceJSONResult.errorCustom(ResponseStatusEnum.USER_PASSWORD_ERROR);
|
||||
}
|
||||
|
||||
|
||||
|
||||
String uToken = UUID.randomUUID().toString();
|
||||
log.info(uToken);
|
||||
redis.set(REDIS_USER_TOKEN + ":" + user.getId(), uToken);
|
||||
//商城token
|
||||
Token shopToken = userService.getShopToken(user.getId());
|
||||
|
||||
// 商城token
|
||||
// Token shopToken = userService.getShopToken(user.getId());
|
||||
|
||||
// 返回给前端
|
||||
UsersVO usersVO = new UsersVO();
|
||||
BeanUtils.copyProperties(user, usersVO);
|
||||
usersVO.setUserToken(uToken);
|
||||
usersVO.setShopToken(shopToken);
|
||||
// usersVO.setShopToken(shopToken);
|
||||
|
||||
return GraceJSONResult.ok(usersVO);
|
||||
|
||||
|
@ -0,0 +1,13 @@
|
||||
package com.imooc.mapper;
|
||||
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import com.imooc.my.mapper.MyMapper;
|
||||
import com.imooc.pojo.UserMember;
|
||||
|
||||
/**
|
||||
* 短视频用户与商城会员数据处理层
|
||||
*/
|
||||
@Mapper
|
||||
public interface UserMemberMapper extends MyMapper<UserMember> {
|
||||
|
||||
}
|
@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
||||
<mapper namespace="com.imooc.mapper.UserMemberMapper">
|
||||
</mapper>
|
13
book-model/src/main/java/com/imooc/pojo/UserMember.java
Normal file
13
book-model/src/main/java/com/imooc/pojo/UserMember.java
Normal file
@ -0,0 +1,13 @@
|
||||
package com.imooc.pojo;
|
||||
|
||||
import javax.persistence.Table;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@Table(name = "r_user_member")
|
||||
public class UserMember {
|
||||
private String userId;
|
||||
private String memberId;
|
||||
}
|
@ -37,6 +37,6 @@ public class UsersVO {
|
||||
private Integer myFansCounts; // 我的粉丝数量
|
||||
// private Integer myLikedVlogCounts;
|
||||
private Integer totalLikeMeCounts;
|
||||
private Token shopToken;
|
||||
//private Token shopToken;
|
||||
|
||||
}
|
@ -0,0 +1,9 @@
|
||||
package com.imooc.service;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 短视频用户与商城会员业务层
|
||||
*/
|
||||
public interface UserMemberService {
|
||||
}
|
@ -51,4 +51,12 @@ public interface UserService {
|
||||
* @return
|
||||
*/
|
||||
Token getShopToken(String userId);
|
||||
|
||||
/**
|
||||
* 从商城系统创建账号
|
||||
*
|
||||
* @param mobile
|
||||
* @return
|
||||
*/
|
||||
Users createUserFromShop(String mobile, String memberId);
|
||||
}
|
||||
|
@ -0,0 +1,19 @@
|
||||
package com.imooc.service.impl;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import com.imooc.mapper.UserMemberMapper;
|
||||
import com.imooc.service.UserMemberService;
|
||||
|
||||
/**
|
||||
* 会员接口业务层实现
|
||||
*
|
||||
* @author Chopper
|
||||
* @since 2021-03-29 14:10:16
|
||||
*/
|
||||
@Service
|
||||
public class UserMemberServiceImpl implements UserMemberService {
|
||||
|
||||
@Autowired
|
||||
private UserMemberMapper userMemberMapper;
|
||||
}
|
@ -7,8 +7,10 @@ import com.imooc.enums.UserInfoModifyType;
|
||||
import com.imooc.enums.YesOrNo;
|
||||
import com.imooc.exceptions.GraceException;
|
||||
import com.imooc.grace.result.ResponseStatusEnum;
|
||||
import com.imooc.mapper.UserMemberMapper;
|
||||
import com.imooc.mapper.UsersMapper;
|
||||
import com.imooc.mo.Token;
|
||||
import com.imooc.pojo.UserMember;
|
||||
import com.imooc.pojo.Users;
|
||||
import com.imooc.service.UserService;
|
||||
import com.imooc.utils.DateUtil;
|
||||
@ -43,6 +45,9 @@ public class UserServiceImpl implements UserService {
|
||||
@Resource
|
||||
private PasswordEncoder passwordEncoder;
|
||||
|
||||
@Autowired
|
||||
private UserMemberMapper userMemberMapper;
|
||||
|
||||
@Autowired
|
||||
private Sid sid;
|
||||
private static final String USER_FACE1 = "http://122.152.205.72:88/group1/M00/00/05/CpoxxF6ZUySASMbOAABBAXhjY0Y649.png";
|
||||
@ -212,4 +217,39 @@ public class UserServiceImpl implements UserService {
|
||||
});
|
||||
return tokens[0];
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = RuntimeException.class)
|
||||
@Override
|
||||
public Users createUserFromShop(String mobile, String memberId) {
|
||||
// 获得全局唯一主键
|
||||
String userId = sid.nextShort();
|
||||
Users user = new Users();
|
||||
user.setId(userId);
|
||||
user.setPassword(mobile);
|
||||
user.setMobile(mobile);
|
||||
user.setNickname("用户:" + DesensitizationUtil.commonDisplay(mobile));
|
||||
user.setImoocNum("用户:" + DesensitizationUtil.commonDisplay(mobile));
|
||||
user.setFace(USER_FACE1);
|
||||
user.setBirthday(DateUtil.stringToDate("1999-01-01"));
|
||||
user.setSex(Sex.secret.type);
|
||||
user.setBgImg("http://82.156.121.2:29000/bucket/IMG20241212102441.jpg"); // 测试用地址
|
||||
user.setCountry("中国");
|
||||
user.setProvince("");
|
||||
user.setCity("");
|
||||
user.setDistrict("");
|
||||
user.setDescription("这家伙很懒,什么都没留下~");
|
||||
user.setCanImoocNumBeUpdated(YesOrNo.YES.type);
|
||||
user.setCreatedTime(new Date());
|
||||
user.setUpdatedTime(new Date());
|
||||
|
||||
// 短视频用户与商城账号关系
|
||||
UserMember userMember = new UserMember();
|
||||
userMember.setUserId(user.getId());
|
||||
userMember.setMemberId(memberId);
|
||||
|
||||
if (usersMapper.insert(user) > 0 && userMemberMapper.insert(userMember) > 0) {
|
||||
return user;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user