修改注册逻辑 改完从商城系统进行注册
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.utils.SMSUtils;
|
||||||
import com.imooc.vo.UsersVO;
|
import com.imooc.vo.UsersVO;
|
||||||
import com.imooc.utils.CommonUtil;
|
import com.imooc.utils.CommonUtil;
|
||||||
|
import com.imooc.utils.GsonUtil;
|
||||||
|
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
@ -25,6 +26,7 @@ import javax.servlet.http.HttpServletRequest;
|
|||||||
import javax.validation.Valid;
|
import javax.validation.Valid;
|
||||||
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
import java.util.Optional;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -42,7 +44,7 @@ public class PassportController extends BaseInfoProperties {
|
|||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private UserService userService;
|
private UserService userService;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private PasswordEncoder passwordEncoder;
|
private PasswordEncoder passwordEncoder;
|
||||||
|
|
||||||
@ -66,47 +68,72 @@ public class PassportController extends BaseInfoProperties {
|
|||||||
return GraceJSONResult.ok();
|
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")
|
@PostMapping("login")
|
||||||
public Object login(@Valid @RequestBody RegistLoginBO registLoginBO) {
|
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())) {
|
if (StringUtils.isBlank(rediscode) || !rediscode.equalsIgnoreCase(registLoginBO.getSmsCode())) {
|
||||||
System.out.println("rediscode" + rediscode);
|
System.out.println("rediscode" + rediscode);
|
||||||
System.out.println("registLoginBO.getMobile()" + registLoginBO.getSmsCode());
|
System.out.println("registLoginBO.getMobile()" + registLoginBO.getSmsCode());
|
||||||
return GraceJSONResult.errorCustom(ResponseStatusEnum.SMS_CODE_ERROR);
|
return GraceJSONResult.errorCustom(ResponseStatusEnum.SMS_CODE_ERROR);
|
||||||
}*/
|
}
|
||||||
|
|
||||||
// 手机号
|
// 手机号
|
||||||
String mobile = registLoginBO.getMobile();
|
String mobile = registLoginBO.getMobile();
|
||||||
Users user = userService.queryMobileIsExist(mobile);
|
Users user = userService.queryMobileIsExist(mobile);
|
||||||
@ -121,22 +148,22 @@ public class PassportController extends BaseInfoProperties {
|
|||||||
} else {
|
} else {
|
||||||
shopToken = userService.getShopToken(user.getId());
|
shopToken = userService.getShopToken(user.getId());
|
||||||
}
|
}
|
||||||
|
|
||||||
String uToken = UUID.randomUUID().toString();
|
String uToken = UUID.randomUUID().toString();
|
||||||
log.info(uToken);
|
log.info(uToken);
|
||||||
redis.set(REDIS_USER_TOKEN + ":" + user.getId(), uToken);
|
redis.set(REDIS_USER_TOKEN + ":" + user.getId(), uToken);
|
||||||
|
|
||||||
// 清除验证码
|
// 清除验证码
|
||||||
redis.del(MOBILE_SMSCODE + ":" + user.getMobile());
|
redis.del(MOBILE_SMSCODE + ":" + user.getMobile());
|
||||||
|
|
||||||
// 返回给前端
|
// 返回给前端
|
||||||
UsersVO usersVO = new UsersVO();
|
UsersVO usersVO = new UsersVO();
|
||||||
BeanUtils.copyProperties(user, usersVO);
|
BeanUtils.copyProperties(user, usersVO);
|
||||||
usersVO.setUserToken(uToken);
|
usersVO.setUserToken(uToken);
|
||||||
usersVO.setShopToken(shopToken);
|
//usersVO.setShopToken(shopToken);
|
||||||
|
|
||||||
return GraceJSONResult.ok(usersVO);
|
return GraceJSONResult.ok(usersVO);
|
||||||
}
|
}*/
|
||||||
|
|
||||||
@PostMapping("loginWithPassword")
|
@PostMapping("loginWithPassword")
|
||||||
public Object loginWithPassword(@Valid @RequestBody LoginWithPasswordBO loginWithPasswordBO) {
|
public Object loginWithPassword(@Valid @RequestBody LoginWithPasswordBO loginWithPasswordBO) {
|
||||||
@ -151,19 +178,18 @@ public class PassportController extends BaseInfoProperties {
|
|||||||
if (!passwordEncoder.matches(password, user.getPassword())) {
|
if (!passwordEncoder.matches(password, user.getPassword())) {
|
||||||
return GraceJSONResult.errorCustom(ResponseStatusEnum.USER_PASSWORD_ERROR);
|
return GraceJSONResult.errorCustom(ResponseStatusEnum.USER_PASSWORD_ERROR);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
String uToken = UUID.randomUUID().toString();
|
String uToken = UUID.randomUUID().toString();
|
||||||
log.info(uToken);
|
log.info(uToken);
|
||||||
redis.set(REDIS_USER_TOKEN + ":" + user.getId(), uToken);
|
redis.set(REDIS_USER_TOKEN + ":" + user.getId(), uToken);
|
||||||
//商城token
|
// 商城token
|
||||||
Token shopToken = userService.getShopToken(user.getId());
|
// Token shopToken = userService.getShopToken(user.getId());
|
||||||
|
|
||||||
// 返回给前端
|
// 返回给前端
|
||||||
UsersVO usersVO = new UsersVO();
|
UsersVO usersVO = new UsersVO();
|
||||||
BeanUtils.copyProperties(user, usersVO);
|
BeanUtils.copyProperties(user, usersVO);
|
||||||
usersVO.setUserToken(uToken);
|
usersVO.setUserToken(uToken);
|
||||||
usersVO.setShopToken(shopToken);
|
// usersVO.setShopToken(shopToken);
|
||||||
|
|
||||||
return GraceJSONResult.ok(usersVO);
|
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 myFansCounts; // 我的粉丝数量
|
||||||
// private Integer myLikedVlogCounts;
|
// private Integer myLikedVlogCounts;
|
||||||
private Integer totalLikeMeCounts;
|
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
|
* @return
|
||||||
*/
|
*/
|
||||||
Token getShopToken(String userId);
|
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.enums.YesOrNo;
|
||||||
import com.imooc.exceptions.GraceException;
|
import com.imooc.exceptions.GraceException;
|
||||||
import com.imooc.grace.result.ResponseStatusEnum;
|
import com.imooc.grace.result.ResponseStatusEnum;
|
||||||
|
import com.imooc.mapper.UserMemberMapper;
|
||||||
import com.imooc.mapper.UsersMapper;
|
import com.imooc.mapper.UsersMapper;
|
||||||
import com.imooc.mo.Token;
|
import com.imooc.mo.Token;
|
||||||
|
import com.imooc.pojo.UserMember;
|
||||||
import com.imooc.pojo.Users;
|
import com.imooc.pojo.Users;
|
||||||
import com.imooc.service.UserService;
|
import com.imooc.service.UserService;
|
||||||
import com.imooc.utils.DateUtil;
|
import com.imooc.utils.DateUtil;
|
||||||
@ -43,6 +45,9 @@ public class UserServiceImpl implements UserService {
|
|||||||
@Resource
|
@Resource
|
||||||
private PasswordEncoder passwordEncoder;
|
private PasswordEncoder passwordEncoder;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private UserMemberMapper userMemberMapper;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private Sid sid;
|
private Sid sid;
|
||||||
private static final String USER_FACE1 = "http://122.152.205.72:88/group1/M00/00/05/CpoxxF6ZUySASMbOAABBAXhjY0Y649.png";
|
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];
|
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