From 364a1f1a7ff90259f64069863886b9cfd7093111 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Wed, 20 Nov 2024 10:45:41 +0800
Subject: [PATCH] refactor(mall): 重构会员注册功能
---
src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java | 2 -
src/main/java/cc/mrbird/febs/mall/dto/RegisterDto.java | 18 ++++----
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java | 68 +++++++++++++++------------------
3 files changed, 40 insertions(+), 48 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java
index 86be4d2..68ab486 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java
@@ -17,7 +17,6 @@
import cn.hutool.core.util.StrUtil;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
-import org.apache.ibatis.annotations.Param;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -401,7 +400,6 @@
registerDto.setRegistType("admin");
registerDto.setPassword("a123456");
registerDto.setInviteId(member.getInviteId());
- registerDto.setName(member.getName());
apiMallMemberService.register(registerDto);
return new FebsResponse().success();
}
diff --git a/src/main/java/cc/mrbird/febs/mall/dto/RegisterDto.java b/src/main/java/cc/mrbird/febs/mall/dto/RegisterDto.java
index d5c40cc..0662267 100644
--- a/src/main/java/cc/mrbird/febs/mall/dto/RegisterDto.java
+++ b/src/main/java/cc/mrbird/febs/mall/dto/RegisterDto.java
@@ -18,14 +18,6 @@
@ApiModelProperty(value = "手机号", example = "15773001234")
private String account;
- @NotBlank(message = "姓名不能为空")
- @ApiModelProperty(value = "姓名", example = "王大洋")
- private String name;
-
- @NotBlank(message = "密码不能为空")
- @ApiModelProperty(value = "密码", example = "123456")
- private String password;
-
@ApiModelProperty(value = "类型 1-手机号 2-邮箱", example = "1")
private String type = "1";
@@ -33,7 +25,15 @@
@ApiModelProperty(value = "验证码", example = "123456")
private String code;
-// @NotBlank(message = "邀请码不能为空")
+ @NotBlank(message = "密码不能为空")
+ @ApiModelProperty(value = "密码", example = "123456")
+ private String password;
+
+ @NotBlank(message = "密码不能为空")
+ @ApiModelProperty(value = "重复密码", example = "123456")
+ private String passwordAgain;
+
+ // @NotBlank(message = "邀请码不能为空")
@ApiModelProperty(value = "邀请码")
private String inviteId;
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
index fa4a9c5..c05d2d5 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
@@ -1,11 +1,16 @@
package cc.mrbird.febs.mall.service.impl;
import cc.mrbird.febs.common.entity.FebsResponse;
-import cc.mrbird.febs.common.enumerates.*;
+import cc.mrbird.febs.common.enumerates.DataDictionaryEnum;
+import cc.mrbird.febs.common.enumerates.FlowTypeEnum;
+import cc.mrbird.febs.common.enumerates.MoneyFlowTypeEnum;
+import cc.mrbird.febs.common.enumerates.ScoreFlowTypeEnum;
import cc.mrbird.febs.common.exception.FebsException;
import cc.mrbird.febs.common.properties.XcxProperties;
import cc.mrbird.febs.common.utils.*;
-import cc.mrbird.febs.mall.conversion.*;
+import cc.mrbird.febs.mall.conversion.MallMemberConversion;
+import cc.mrbird.febs.mall.conversion.MallShopApplyConversion;
+import cc.mrbird.febs.mall.conversion.MallStoreConversion;
import cc.mrbird.febs.mall.dto.*;
import cc.mrbird.febs.mall.entity.*;
import cc.mrbird.febs.mall.mapper.*;
@@ -14,7 +19,6 @@
import cc.mrbird.febs.pay.model.BrandWCPayRequestData;
import cc.mrbird.febs.pay.service.IXcxPayService;
import cc.mrbird.febs.pay.util.MD5;
-import cc.mrbird.febs.pay.util.Util;
import cc.mrbird.febs.vip.VipSettingUnAliveSettingBo;
import cc.mrbird.febs.vip.entity.MallVipConfig;
import cc.mrbird.febs.vip.mapper.MallVipConfigMapper;
@@ -38,19 +42,7 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
-import org.apache.http.HttpEntity;
-import org.apache.http.HttpResponse;
-import org.apache.http.client.methods.HttpGet;
-import org.apache.http.client.methods.HttpPost;
-import org.apache.http.client.protocol.HttpClientContext;
-import org.apache.http.entity.ByteArrayEntity;
-import org.apache.http.impl.client.CloseableHttpClient;
-import org.apache.http.impl.client.HttpClients;
-import org.apache.http.message.BasicNameValuePair;
-import org.apache.http.util.EntityUtils;
import org.springframework.beans.factory.annotation.Value;
-import org.springframework.boot.autoconfigure.security.SecurityProperties;
-import org.springframework.http.HttpStatus;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -103,20 +95,21 @@
@Transactional(rollbackFor = Exception.class)
@Override
public FebsResponse register(RegisterDto registerDto) {
- MallMember mallMember = this.baseMapper.selectInfoByAccount(registerDto.getAccount());
- if (mallMember != null) {
- throw new FebsException("该账号已被占用");
- }
-
- List<MallMember> mallMembers = this.baseMapper.selectMemberByName(registerDto.getName());
- if (CollUtil.isNotEmpty(mallMembers)) {
- MallRegisterAppeal registerAppeal = mallRegisterAppealMapper.selectByPhoneAndName(registerDto.getName(), registerDto.getAccount());
- if (registerAppeal == null || registerAppeal.getStatus() != 1) {
- return new FebsResponse().code(HttpStatus.ACCEPTED).message("用户名已存在");
- }
- }
-
String account = registerDto.getAccount();
+ MallMember mallMember = this.baseMapper.selectInfoByAccount(account);
+ if (mallMember != null) {
+ throw new FebsException("手机号已注册");
+ }
+ /**
+ * 验证两次密码是否一致
+ */
+ String password = registerDto.getPassword();
+ String passwordAgain = registerDto.getPasswordAgain();
+ if(!password.equals(passwordAgain)){
+ throw new FebsException("密码不一致");
+ }
+
+ //邀请码为admin的时候(后台添加用户),不需要验证验证码
if (!"admin".equals(registerDto.getRegistType())) {
String code = registerDto.getCode();
boolean flags = commonService.verifyCode(account, code);
@@ -134,22 +127,23 @@
} else {
mallMember.setEmail(registerDto.getAccount());
}
-
+ //对于邀请码的验证和上级联系人的验证
Integer count = this.baseMapper.selectCount(null);
if (count != null && count != 0) {
- MallMember inviteMember = this.baseMapper.selectInfoByInviteId(registerDto.getInviteId());
- if (inviteMember == null) {
- throw new FebsException("邀请码不存在");
+ String inviteId = registerDto.getInviteId();
+ if(StrUtil.isNotBlank(inviteId)){
+ MallMember inviteMember = this.baseMapper.selectInfoByInviteId(inviteId);
+ if (inviteMember == null) {
+ throw new FebsException("邀请码不存在");
+ }
+ mallMember.setReferrerId(registerDto.getInviteId());
}
-
- mallMember.setReferrerId(registerDto.getInviteId());
-
}
- mallMember.setName(registerDto.getName());
+ mallMember.setName(account);
mallMember.setAccountStatus(MallMember.ACCOUNT_STATUS_ENABLE);
mallMember.setAccountType(MallMember.ACCOUNT_TYPE_NORMAL);
mallMember.setSex("男");
- mallMember.setBindPhone(registerDto.getAccount());
+ mallMember.setBindPhone(account);
this.baseMapper.insert(mallMember);
--
Gitblit v1.9.1