From 3e559a23137c7c992add11029b53a578d867b4d3 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Wed, 04 Nov 2020 11:39:33 +0800
Subject: [PATCH] modify
---
src/main/java/com/xcong/excoin/common/system/service/impl/CommonServiceImpl.java | 20 ++++++++++
src/main/java/com/xcong/excoin/modules/member/parameter/dto/MemberBindEmailDto.java | 7 ++-
src/main/java/com/xcong/excoin/common/system/service/CommonService.java | 2 +
src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java | 22 +++++-----
src/main/java/com/xcong/excoin/modules/member/parameter/dto/MemberBindPhoneDto.java | 7 ++-
src/main/java/com/xcong/excoin/modules/member/controller/MemberController.java | 3 +
src/main/java/com/xcong/excoin/common/system/controller/CommonController.java | 2
src/main/resources/application.yml | 2
8 files changed, 45 insertions(+), 20 deletions(-)
diff --git a/src/main/java/com/xcong/excoin/common/system/controller/CommonController.java b/src/main/java/com/xcong/excoin/common/system/controller/CommonController.java
index 61639f7..723bd6b 100644
--- a/src/main/java/com/xcong/excoin/common/system/controller/CommonController.java
+++ b/src/main/java/com/xcong/excoin/common/system/controller/CommonController.java
@@ -64,7 +64,7 @@
boolean result = Sms106Send.sendVerifyCode(account, code.toString(), 2);
if (result) {
Map<String, Object> map = new HashMap<>();
- boolean flag = redisUtils.set(AppContants.VERIFY_CODE_PREFIX + account, code, 120);
+ boolean flag = redisUtils.set(AppContants.VERIFY_CODE_PREFIX + account, code, 600);
map.put("code", flag);
return Result.ok(MessageSourceUtils.getString("member_service_0010"), map);
}
diff --git a/src/main/java/com/xcong/excoin/common/system/service/CommonService.java b/src/main/java/com/xcong/excoin/common/system/service/CommonService.java
index 444fc77..0450a3f 100644
--- a/src/main/java/com/xcong/excoin/common/system/service/CommonService.java
+++ b/src/main/java/com/xcong/excoin/common/system/service/CommonService.java
@@ -8,5 +8,7 @@
public boolean verifyCode(String account, String code);
+ boolean mutiVerifyCode(String email, String emailCode, String phone, String phoneCode);
+
public String generateOrderNo(Long mid);
}
diff --git a/src/main/java/com/xcong/excoin/common/system/service/impl/CommonServiceImpl.java b/src/main/java/com/xcong/excoin/common/system/service/impl/CommonServiceImpl.java
index 5e44ac6..3530375 100644
--- a/src/main/java/com/xcong/excoin/common/system/service/impl/CommonServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/common/system/service/impl/CommonServiceImpl.java
@@ -41,6 +41,26 @@
}
@Override
+ public boolean mutiVerifyCode(String email, String emailCode, String phone, String phoneCode) {
+ if (StrUtil.isBlank(emailCode) || StrUtil.isBlank(phoneCode)) {
+ return false;
+ }
+
+ String cacheEmailCode = redisUtils.getString(AppContants.VERIFY_CODE_PREFIX + email);
+ String cachePhoneCode = redisUtils.getString(AppContants.VERIFY_CODE_PREFIX + phone);
+ if (StrUtil.isBlank(cacheEmailCode) || StrUtil.isBlank(cachePhoneCode)) {
+ return false;
+ }
+
+ if (emailCode.equals(cacheEmailCode) && phoneCode.equals(cachePhoneCode)) {
+ redisUtils.del(AppContants.VERIFY_CODE_PREFIX + email);
+ redisUtils.del(AppContants.VERIFY_CODE_PREFIX + phone);
+ return true;
+ }
+ return false;
+ }
+
+ @Override
public String generateOrderNo(Long mid) {
StringBuilder orderNo = new StringBuilder();
String date = DateUtil.format(new Date(), "yyyyMMdd");
diff --git a/src/main/java/com/xcong/excoin/modules/member/controller/MemberController.java b/src/main/java/com/xcong/excoin/modules/member/controller/MemberController.java
index c2a3f6e..d5b3381 100644
--- a/src/main/java/com/xcong/excoin/modules/member/controller/MemberController.java
+++ b/src/main/java/com/xcong/excoin/modules/member/controller/MemberController.java
@@ -3,6 +3,7 @@
import javax.annotation.Resource;
import javax.validation.Valid;
+import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@@ -252,7 +253,7 @@
*/
@ApiOperation(value="绑定邮箱", notes="绑定邮箱")
@PostMapping(value="/memberBindEmail")
- public Result memberBindEmail(@RequestBody @Valid MemberBindEmailDto memberBindEmailDto) {
+ public Result memberBindEmail(@RequestBody @Validated MemberBindEmailDto memberBindEmailDto) {
return memberService.memberBindEmail(memberBindEmailDto);
}
diff --git a/src/main/java/com/xcong/excoin/modules/member/parameter/dto/MemberBindEmailDto.java b/src/main/java/com/xcong/excoin/modules/member/parameter/dto/MemberBindEmailDto.java
index 70da0ba..eb24244 100644
--- a/src/main/java/com/xcong/excoin/modules/member/parameter/dto/MemberBindEmailDto.java
+++ b/src/main/java/com/xcong/excoin/modules/member/parameter/dto/MemberBindEmailDto.java
@@ -1,5 +1,6 @@
package com.xcong.excoin.modules.member.parameter.dto;
+import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import io.swagger.annotations.ApiModel;
@@ -10,15 +11,15 @@
@ApiModel(value = "MemberBindEmailDto", description = "绑定邮箱参数接收类")
public class MemberBindEmailDto {
- @NotNull(message = "验证码不能为空")
+ @NotBlank(message = "验证码不能为空")
@ApiModelProperty(value = "验证码", example = "123456")
private String code;
- @NotNull(message = "手机验证码验证码不能为空")
+ @NotBlank(message = "手机验证码验证码不能为空")
@ApiModelProperty(value = "手机验证码验证码", example = "123456")
private String otherCode;
- @NotNull(message = "邮箱不能为空")
+ @NotBlank(message = "邮箱不能为空")
@ApiModelProperty(value = "邮箱", example = "www.13412341234@134.com")
private String email;
diff --git a/src/main/java/com/xcong/excoin/modules/member/parameter/dto/MemberBindPhoneDto.java b/src/main/java/com/xcong/excoin/modules/member/parameter/dto/MemberBindPhoneDto.java
index 6faddc9..0606c70 100644
--- a/src/main/java/com/xcong/excoin/modules/member/parameter/dto/MemberBindPhoneDto.java
+++ b/src/main/java/com/xcong/excoin/modules/member/parameter/dto/MemberBindPhoneDto.java
@@ -1,5 +1,6 @@
package com.xcong.excoin.modules.member.parameter.dto;
+import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import io.swagger.annotations.ApiModel;
@@ -10,15 +11,15 @@
@ApiModel(value = "MemberBindPhoneDto", description = "绑定手机号参数接收类")
public class MemberBindPhoneDto {
- @NotNull(message = "手机验证码不能为空")
+ @NotBlank(message = "手机验证码不能为空")
@ApiModelProperty(value = "手机验证码", example = "123456")
private String code;
- @NotNull(message = "邮箱验证码不能为空")
+ @NotBlank(message = "邮箱验证码不能为空")
@ApiModelProperty(value = "邮箱验证码", example = "123456")
private String otherCode;
- @NotNull(message = "电话号码不能为空")
+ @NotBlank(message = "电话号码不能为空")
@ApiModelProperty(value = "电话号码", example = "13412341234")
private String phone;
diff --git a/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java b/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
index 7e989d3..a493a8a 100644
--- a/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
@@ -599,13 +599,13 @@
MemberEntity member = memberDao.selectById(memberId);
if (ObjectUtil.isNotEmpty(member)) {
- if (!commonservice.verifyCode(phone, code)) {
- return Result.fail("手机"+MessageSourceUtils.getString("member_service_0013"));
+ if (!commonservice.mutiVerifyCode(member.getEmail(), memberBindPhoneDto.getOtherCode(), phone, code)) {
+ return Result.fail(MessageSourceUtils.getString("member_service_0013"));
}
// 验证邮箱验证码
- if (!commonservice.verifyCode(member.getEmail(), memberBindPhoneDto.getOtherCode())) {
- return Result.fail("邮箱"+MessageSourceUtils.getString("member_service_0013"));
- }
+// if (!commonservice.verifyCode(member.getEmail(), memberBindPhoneDto.getOtherCode())) {
+// return Result.fail("邮箱"+MessageSourceUtils.getString("member_service_0013"));
+// }
Map<String, Object> columnMap = new HashMap<>();
columnMap.put("phone", phone);
List<MemberEntity> selectByMap = memberDao.selectByMap(columnMap);
@@ -631,14 +631,14 @@
String code = memberBindEmailDto.getCode();
MemberEntity member = memberDao.selectById(memberId);
- boolean flag = commonservice.verifyCode(email, code);
- boolean flag2 = commonservice.verifyCode(member.getPhone(), memberBindEmailDto.getOtherCode());
+ boolean flag = commonservice.mutiVerifyCode(email, code, member.getPhone(), memberBindEmailDto.getOtherCode());
+// boolean flag2 = commonservice.verifyCode(member.getPhone(), memberBindEmailDto.getOtherCode());
if(!flag){
- return Result.ok("邮箱"+MessageSourceUtils.getString("member_service_0018"));
+ return Result.fail(MessageSourceUtils.getString("member_service_0013"));
}
- if(!flag2){
- return Result.ok("手机"+MessageSourceUtils.getString("member_service_0018"));
- }
+// if(!flag2){
+// return Result.fail("手机"+MessageSourceUtils.getString("member_service_0013"));
+// }
if (ObjectUtil.isNotEmpty(member)) {
if (flag) {
Map<String, Object> columnMap = new HashMap<>();
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 4a0fe1f..0c57f69 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -5,7 +5,7 @@
spring:
profiles:
- active: dayline
+ active: dev
datasource:
url: jdbc:mysql://rm-bp1i2g5rg5dubo9s40o.mysql.rds.aliyuncs.com:3306/db_roc?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2b8
username: roc_user
--
Gitblit v1.9.1