|
@@ -9,6 +9,7 @@ import com.slodon.b2b2c.core.response.SldResponse;
|
|
|
import com.slodon.b2b2c.core.util.AssertUtil;
|
|
|
import com.slodon.b2b2c.core.util.Md5;
|
|
|
import com.slodon.b2b2c.core.util.StringUtil;
|
|
|
+import com.slodon.b2b2c.core.util.WebUtil;
|
|
|
import com.slodon.b2b2c.dao.read.member.MemberReadMapper;
|
|
|
import com.slodon.b2b2c.dao.write.member.MemberWriteMapper;
|
|
|
import com.slodon.b2b2c.member.example.MemberExample;
|
|
@@ -18,12 +19,14 @@ import com.slodon.b2b2c.model.member.advich.MemberEnquiryModel;
|
|
|
import com.slodon.b2b2c.model.member.advich.MemberRegisterActiveModel;
|
|
|
import com.slodon.b2b2c.model.seller.VendorModel;
|
|
|
import com.slodon.b2b2c.seller.dto.VendorRegisterDTO;
|
|
|
+import com.slodon.b2b2c.system.dto.CountryAreaApiDto;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.springframework.data.redis.core.StringRedisTemplate;
|
|
|
import org.springframework.util.CollectionUtils;
|
|
|
import org.springframework.web.bind.annotation.PostMapping;
|
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
+import org.springframework.web.bind.annotation.RequestParam;
|
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
@@ -157,29 +160,30 @@ public class MemberEmailActiveController extends BaseController {
|
|
|
* @param email
|
|
|
* @param source
|
|
|
* @param type
|
|
|
+ * @param memberType
|
|
|
* @return
|
|
|
*/
|
|
|
@PostMapping("/verification/code")
|
|
|
- public JsonResult<Object> getMemberEmailVerificationCode(HttpServletRequest request, String email, Integer source, Integer type) {
|
|
|
- log.info("getMemberEmailVerificationCode - email:{},source:{},type:{}", email, source, type);
|
|
|
+ public JsonResult<Object> getMemberEmailVerificationCode(HttpServletRequest request, String email, Integer source, Integer type, @RequestParam(value = "memberType", required = false, defaultValue = "1") String memberType) {
|
|
|
+ log.info("getMemberEmailVerificationCode - email:{},source:{},type:{},memberType:{}", email, source, type, memberType);
|
|
|
if (StringUtil.isEmpty(email)) {
|
|
|
return SldResponse.fail(Language.translate("邮件不能为空", Language.EN_LANGUAGE_TYPE));
|
|
|
}
|
|
|
AssertUtil.emailCheck(email);
|
|
|
|
|
|
// 1. 判断是否在1分钟内已发送过验证码
|
|
|
- String redisKey = RedisConst.SLD_PC_EMAIL_VERIFY_CODE_LIMIT + email + "::" + type;
|
|
|
+ String redisKey = RedisConst.SLD_PC_EMAIL_VERIFY_CODE_LIMIT + email + ":type::" + type + ":memberType::" + memberType;
|
|
|
if (Boolean.TRUE.equals(stringRedisTemplate.hasKey(redisKey))) {
|
|
|
return SldResponse.fail(Language.translate("请勿频繁操作,请1分钟后重试", Language.EN_LANGUAGE_TYPE));
|
|
|
}
|
|
|
|
|
|
int count;
|
|
|
if (type == 1) {
|
|
|
- count = memberRegisterActiveModel.sendRegisterUserEmailVerificationCode(email, source);
|
|
|
+ count = memberRegisterActiveModel.sendRegisterUserEmailVerificationCode(email, source, memberType);
|
|
|
AssertUtil.isTrue((count == 0), Language.translate("验证码发送失败,请重试", Language.EN_LANGUAGE_TYPE));
|
|
|
AssertUtil.isTrue((count == 2), Language.translate("该邮箱已注册,请登录", Language.EN_LANGUAGE_TYPE));
|
|
|
} else {
|
|
|
- count = memberRegisterActiveModel.checkMemberUserInfo(email, type);
|
|
|
+ count = memberRegisterActiveModel.checkMemberUserInfo(email, memberType);
|
|
|
AssertUtil.isTrue((count == 0), Language.translate("验证码发送失败,请重试", Language.EN_LANGUAGE_TYPE));
|
|
|
AssertUtil.isTrue((count == 2), Language.translate("该邮箱未激活,请先激活", Language.EN_LANGUAGE_TYPE));
|
|
|
AssertUtil.isTrue((count == 3), Language.translate("该邮箱未注册,请先注册", Language.EN_LANGUAGE_TYPE));
|
|
@@ -198,11 +202,12 @@ public class MemberEmailActiveController extends BaseController {
|
|
|
* @param email
|
|
|
* @param type
|
|
|
* @param verificationCode
|
|
|
+ * @param memberType
|
|
|
* @return
|
|
|
*/
|
|
|
@PostMapping("/check/verification/code")
|
|
|
- public JsonResult<Object> checkMemberEmailVerificationCode(HttpServletRequest request, String email, Integer type, String verificationCode) {
|
|
|
- log.info("checkMemberEmailVerificationCode - email:{},type:{},verificationCode:{}", email, type, verificationCode);
|
|
|
+ public JsonResult<Object> checkMemberEmailVerificationCode(HttpServletRequest request, String email, Integer type, String verificationCode, @RequestParam(value = "memberType", required = false, defaultValue = "1") String memberType) {
|
|
|
+ log.info("checkMemberEmailVerificationCode - email:{},type:{},verificationCode:{},memberType:{}", email, type, verificationCode, memberType);
|
|
|
if (StringUtil.isEmpty(email)) {
|
|
|
return SldResponse.fail(Language.translate("邮件不能为空", Language.EN_LANGUAGE_TYPE));
|
|
|
}
|
|
@@ -216,7 +221,7 @@ public class MemberEmailActiveController extends BaseController {
|
|
|
return SldResponse.fail(Language.translate("验证码不能为空", Language.EN_LANGUAGE_TYPE));
|
|
|
}
|
|
|
|
|
|
- String redisKey = baseKey + email;
|
|
|
+ String redisKey = baseKey + email + ":memberType::" + memberType;
|
|
|
if (!stringRedisTemplate.hasKey(redisKey)) {
|
|
|
return SldResponse.fail(Language.translate("验证码已过期,请重新获取", Language.EN_LANGUAGE_TYPE));
|
|
|
}
|
|
@@ -232,25 +237,28 @@ public class MemberEmailActiveController extends BaseController {
|
|
|
|
|
|
/**
|
|
|
* 注册
|
|
|
+ *
|
|
|
* @param request
|
|
|
* @param email
|
|
|
* @param nickName
|
|
|
* @param password
|
|
|
* @param confirmPassword
|
|
|
+ * @param memberType
|
|
|
* @return
|
|
|
*/
|
|
|
@PostMapping("/register")
|
|
|
- public JsonResult<Object> activeMemberEmailInfo(HttpServletRequest request, String email, String nickName, String password,String confirmPassword) {
|
|
|
- log.info("activeMemberEmailInfo - email:{},nickName:{},password:{},confirmPassword:{}", email, nickName, password,confirmPassword);
|
|
|
+ public JsonResult<Object> activeMemberEmailInfo(HttpServletRequest request, String email, String nickName, String password, String confirmPassword, @RequestParam(value = "memberType", required = false, defaultValue = "1") String memberType) {
|
|
|
+ log.info("activeMemberEmailInfo - email:{},nickName:{},password:{},confirmPassword:{},memberType:{}", email, nickName, password, confirmPassword, memberType);
|
|
|
if (StringUtil.isEmpty(email)) {
|
|
|
return SldResponse.fail(ResponseConst.STATE_FAIL, Language.translate("邮件不能为空", Language.EN_LANGUAGE_TYPE));
|
|
|
}
|
|
|
- if(!password.equals(confirmPassword)){
|
|
|
+ if (!password.equals(confirmPassword)) {
|
|
|
return SldResponse.fail(ResponseConst.STATE_FAIL, Language.translate("密码不一致,请重新输入", Language.EN_LANGUAGE_TYPE));
|
|
|
}
|
|
|
AssertUtil.passwordCheck(password);
|
|
|
MemberExample memberExample = new MemberExample();
|
|
|
memberExample.setMemberEmail(email.toLowerCase());
|
|
|
+ memberExample.setMemberType(memberType);
|
|
|
List<Member> memberList = memberReadMapper.listByExample(memberExample);
|
|
|
if (CollectionUtils.isEmpty(memberList)) {
|
|
|
return SldResponse.fail(ResponseConst.STATE_FAIL, Language.translate("会员邮箱不存在,请重新注册", Language.EN_LANGUAGE_TYPE));
|
|
@@ -268,6 +276,10 @@ public class MemberEmailActiveController extends BaseController {
|
|
|
memberNew.setUpdateTime(new Date());
|
|
|
memberNew.setMemberNickName(nickName);
|
|
|
memberNew.setLoginPwd(Md5.getMd5String(password));
|
|
|
+ String ip = WebUtil.getRealIp(request);
|
|
|
+ CountryAreaApiDto countryAreaApiDto = memberEnquiryModel.getCountryAndAreaByIp(ip);
|
|
|
+ memberNew.setCountry(countryAreaApiDto.getCountryIsoCode());
|
|
|
+ memberNew.setCity(countryAreaApiDto.getCityIsoCode());
|
|
|
memberModel.updateMember(memberNew);
|
|
|
|
|
|
// 发送账户注册成功邮件
|
|
@@ -276,7 +288,6 @@ public class MemberEmailActiveController extends BaseController {
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
/**
|
|
|
* 用户邮箱重置忘记密码
|
|
|
*
|
|
@@ -285,16 +296,18 @@ public class MemberEmailActiveController extends BaseController {
|
|
|
* @param verificationCode
|
|
|
* @param loginPwd
|
|
|
* @param confirmPassWord
|
|
|
+ * @param memberType
|
|
|
* @return
|
|
|
*/
|
|
|
@PostMapping("/email/reset/pwdNew")
|
|
|
- public JsonResult<Object> emailResetPwdNew(HttpServletRequest request, String email, String verificationCode, String loginPwd, String confirmPassWord) {
|
|
|
- log.info("emailResetPwd - email:{},verificationCode:{},loginPwd:{},confirmPassWord:{}", email, verificationCode, loginPwd, confirmPassWord);
|
|
|
- if (StringUtil.isEmpty(email) ) {
|
|
|
+ public JsonResult<Object> emailResetPwdNew(HttpServletRequest request, String email, String verificationCode, String loginPwd, String confirmPassWord, @RequestParam(value = "memberType", required = false, defaultValue = "1") String memberType) {
|
|
|
+ log.info("emailResetPwd - email:{},verificationCode:{},loginPwd:{},confirmPassWord:{},memberType:{}", email, verificationCode, loginPwd, confirmPassWord, memberType);
|
|
|
+ if (StringUtil.isEmpty(email)) {
|
|
|
return SldResponse.fail(ResponseConst.STATE_FAIL, Language.translate("邮件不能为空", Language.EN_LANGUAGE_TYPE));
|
|
|
}
|
|
|
MemberExample memberExample = new MemberExample();
|
|
|
memberExample.setMemberEmail(email.toLowerCase());
|
|
|
+ memberExample.setMemberType(memberType);
|
|
|
List<Member> memberList = memberReadMapper.listByExample(memberExample);
|
|
|
|
|
|
if (CollectionUtils.isEmpty(memberList)) {
|
|
@@ -306,7 +319,7 @@ public class MemberEmailActiveController extends BaseController {
|
|
|
return SldResponse.fail(ResponseConst.STATE_FAIL, Language.translate("该邮箱未激活,请先激活", Language.EN_LANGUAGE_TYPE));
|
|
|
}
|
|
|
|
|
|
- if(!loginPwd.equals(confirmPassWord)){
|
|
|
+ if (!loginPwd.equals(confirmPassWord)) {
|
|
|
return SldResponse.fail(ResponseConst.STATE_FAIL, Language.translate("密码不一致,请重新输入", Language.EN_LANGUAGE_TYPE));
|
|
|
}
|
|
|
|