Browse Source

fix:短信验证码 验证修改

liujunchi 3 năm trước cách đây
mục cha
commit
de3fa15efc

+ 1 - 0
cooleshow-mall/mall-portal/src/main/java/com/yonge/cooleshow/portal/dto/OrderPayReq.java

@@ -29,6 +29,7 @@ public class OrderPayReq {
     private String reason;
 
     @ApiModelProperty(value = "付款应用 STUDENT 学生端 TEACHER 老师端 (对应微信,支付宝平台的应用)",required = true)
+    @NotBlank(message = "付款应用不能为空")
     private String paymentClient;
 
     private Long userId;

+ 4 - 3
cooleshow-mall/mall-portal/src/main/java/com/yonge/cooleshow/portal/service/impl/OmsPortalOrderServiceImpl.java

@@ -534,7 +534,7 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
         //构建汇付统一下单请求
         OpenEnum openType = OpenEnum.valueOf(paymentProperties.getOpenType());
         Payment payment = new Payment(openType,
-                PaymentClientEnum.valueOf(userOrderPayment.getPaymentClient()), payReq.getPayChannel());
+                PaymentClientEnum.valueOf(payReq.getPaymentClient()), payReq.getPayChannel());
         payment.setPaymentNo(generateOrderSn(detail));
         payment.setOrderNo(payReq.getOrderNo());
         payment.setOrderTitle("酷乐秀商城订单编号-" + detail.getOrderSn());
@@ -583,13 +583,13 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
         }
 
 
-        saveOrderPayment(executePayment.getData(), detail);
+        saveOrderPayment(executePayment.getData(), detail,payReq.getPaymentClient());
 
         return orderPayRes;
     }
 
 
-    private void saveOrderPayment(Payment payment, OmsOrderDetail detail) {
+    private void saveOrderPayment(Payment payment, OmsOrderDetail detail,String paymentClient) {
         UserOrderPayment userOrderPayment;
         OmsOrder omsOrder = new OmsOrder();
         omsOrder.setId(detail.getId());
@@ -598,6 +598,7 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
         orderMapper.updateByPrimaryKeySelective(omsOrder);
         // 保存订单支付表
         userOrderPayment = new UserOrderPayment();
+        userOrderPayment.setPaymentClient(paymentClient);
         userOrderPayment.setOpenType(paymentProperties.getOpenType());
         userOrderPayment.setOrderNo(detail.getOrderSn());
         userOrderPayment.setAdapayNo(payment.getPaymentNo());

+ 4 - 3
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/SmsCodeController.java

@@ -47,13 +47,14 @@ public class SmsCodeController extends BaseController {
 
     @ApiOperation(value = "校验短信验证码")
     @ApiImplicitParams({ @ApiImplicitParam(name = "phone", value = "手机号", required = true, dataType = "String"),
-            @ApiImplicitParam(name = "code", value = "短信验证码", required = true, dataType = "String") })
+            @ApiImplicitParam(name = "code", value = "短信验证码", required = true, dataType = "String"),
+                         @ApiImplicitParam(name = "type", value = "类型(PASSWD:修改密码,LOGIN:登录或注册,BANK:绑定银行卡,PHONE:修改手机号)", required = true, dataType = "String") })
     @PostMapping(value = "/verifySmsCode")
-    public Object verifySmsCode(String phone,String code) {
+    public Object verifySmsCode(String phone,String code,String type) {
         if(StringUtils.isEmpty(phone) || StringUtils.isEmpty(code)){
             return failed(SecurityConstants.PARAM_VERIFY_EXCEPTION);
         }
-        if(smsCodeService.verifyValidCode(phone,code)){
+        if(smsCodeService.verifyValidCode(phone,code,type)){
             return succeed();
         }
         return failed("验证码校验失败");

+ 2 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/SmsCodeService.java

@@ -8,9 +8,10 @@ public interface SmsCodeService {
 	 * 校验验证码
 	 * @param mobile
 	 * @param authCode
+	 * @param type
 	 * @return
 	 */
-	boolean verifyValidCode(String mobile, String authCode);
+	boolean verifyValidCode(String mobile, String authCode, String type);
 
 	/**
 	 * 发送登录验证码

+ 16 - 2
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/SmsCodeServiceImpl.java

@@ -30,8 +30,22 @@ public class SmsCodeServiceImpl implements SmsCodeService {
 	private SysConfigService sysConfigService;
 
 	@Override
-	public boolean verifyValidCode(String mobile, String authCode) {
-		String verifyCode = sysMessageService.getSendedVerificationCode(MessageTypeEnum.SMS_VERIFY_CODE_LOGIN, mobile);
+	public boolean verifyValidCode(String mobile, String authCode, String type) {
+		MessageTypeEnum typeEnum;
+		if ("PASSWD".equals(type)) {
+			typeEnum  = MessageTypeEnum.SMS_VERIFY_CODE_UPDATE_PSW;
+		} else if ("LOGIN".equals(type)) {
+			typeEnum  = MessageTypeEnum.SMS_VERIFY_CODE_LOGIN;
+		} else if ("REGISTER".equals(type)) {
+			typeEnum  = MessageTypeEnum.SMS_VERIFY_CODE_REGISTER;
+		} else if ("BANK".equals(type)){
+			typeEnum  = MessageTypeEnum.SMS_VERIFY_CODE_BANK_CARD;
+		} else if ("PHONE".equals(type)) {
+			typeEnum  = MessageTypeEnum.SMS_VERIFY_CODE_UPDATE_PHONE;
+		} else {
+			typeEnum  = MessageTypeEnum.SMS_VERIFY_CODE;
+		}
+		String verifyCode = sysMessageService.getSendedVerificationCode(typeEnum, mobile);
 		if (StringUtils.isNoneEmpty(verifyCode) && StringUtils.equalsIgnoreCase(verifyCode, authCode)) {
 			return true;
 		}

+ 4 - 3
cooleshow-user/user-student/src/main/java/com/yonge/cooleshow/student/controller/SmsCodeController.java

@@ -47,13 +47,14 @@ public class SmsCodeController extends BaseController {
 
     @ApiOperation(value = "校验短信验证码")
     @ApiImplicitParams({ @ApiImplicitParam(name = "phone", value = "手机号", required = true, dataType = "String"),
-            @ApiImplicitParam(name = "code", value = "短信验证码", required = true, dataType = "String") })
+                         @ApiImplicitParam(name = "code", value = "短信验证码", required = true, dataType = "String"),
+                         @ApiImplicitParam(name = "type", value = "类型(PASSWD:修改密码,LOGIN:登录或注册,BANK:绑定银行卡,PHONE:修改手机号)", required = true, dataType = "String") })
     @PostMapping(value = "/verifySmsCode")
-    public Object verifySmsCode(String phone,String code) {
+    public Object verifySmsCode(String phone,String code,String type) {
         if(StringUtils.isEmpty(phone) || StringUtils.isEmpty(code)){
             return failed(SecurityConstants.PARAM_VERIFY_EXCEPTION);
         }
-        if(smsCodeService.verifyValidCode(phone,code)){
+        if(smsCodeService.verifyValidCode(phone, code, type)){
             return succeed();
         }
         return failed("验证码校验失败");

+ 4 - 3
cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/SmsCodeController.java

@@ -47,13 +47,14 @@ public class SmsCodeController extends BaseController {
 
     @ApiOperation(value = "校验短信验证码")
     @ApiImplicitParams({ @ApiImplicitParam(name = "phone", value = "手机号", required = true, dataType = "String"),
-            @ApiImplicitParam(name = "code", value = "短信验证码", required = true, dataType = "String") })
+                         @ApiImplicitParam(name = "code", value = "短信验证码", required = true, dataType = "String"),
+                         @ApiImplicitParam(name = "type", value = "类型(PASSWD:修改密码,LOGIN:登录或注册,BANK:绑定银行卡,PHONE:修改手机号)", required = true, dataType = "String") })
     @PostMapping(value = "/verifySmsCode")
-    public Object verifySmsCode(String phone,String code) {
+    public Object verifySmsCode(String phone,String code,String type) {
         if(StringUtils.isEmpty(phone) || StringUtils.isEmpty(code)){
             return failed(SecurityConstants.PARAM_VERIFY_EXCEPTION);
         }
-        if(smsCodeService.verifyValidCode(phone,code)){
+        if(smsCodeService.verifyValidCode(phone, code, type)){
             return succeed();
         }
         return failed("验证码校验失败");