Browse Source

短信验证码修改

dev
wxz 5 years ago
parent
commit
c78d249769
  1. 3
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java
  2. 6
      epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/SmsController.java
  3. 3
      epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/SysSmsService.java
  4. 18
      epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/SysSmsServiceImpl.java

3
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java

@ -15,7 +15,8 @@ public enum EpmetErrorCode {
MOBILE_HAS_BEEN_USED(8101, "该手机已被使用,请更换手机或使用原绑定的微信用户登录"),
MOBILE_CODE_ERROR(8102, "手机验证码错误"),
AUTO_CONFIRM_FAILED(8103, "自动认证失败");
AUTO_CONFIRM_FAILED(8103, "自动认证失败"),
MESSAGE_SMS_SEND_ERROR(8104, "短信发送失败");

6
epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/SmsController.java

@ -126,9 +126,7 @@ public class SmsController {
@ApiImplicitParam(name = "mobile", value = "手机号", paramType = "query", required = true, dataType="String")
})
public Result sendSmsCaptcha(@PathVariable("mobile") String mobile) {
String captcha = sysSmsService.sendSmsCaptcha(mobile);
HashMap<String, String> map = new HashMap<>();
map.put("code", captcha);
return new Result().ok(map);
Result result = sysSmsService.sendSmsCaptcha(mobile);
return result;
}
}

3
epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/SysSmsService.java

@ -10,6 +10,7 @@ package com.epmet.service;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.SysSmsDTO;
import com.epmet.entity.SysSmsEntity;
@ -46,6 +47,6 @@ public interface SysSmsService extends BaseService<SysSmsEntity> {
* @param mobile
* @return
*/
String sendSmsCaptcha(String mobile);
Result sendSmsCaptcha(String mobile);
}

18
epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/SysSmsServiceImpl.java

@ -13,6 +13,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.constant.Constant;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.ErrorCode;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.page.PageData;
@ -28,6 +29,8 @@ import com.epmet.sms.SmsFactory;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -36,6 +39,8 @@ import java.util.*;
@Service
public class SysSmsServiceImpl extends BaseServiceImpl<SysSmsDao, SysSmsEntity> implements SysSmsService {
private Logger logger = LoggerFactory.getLogger(getClass());
@Autowired
private MessageFeignClient messageFeignClient;
@ -107,7 +112,7 @@ public class SysSmsServiceImpl extends BaseServiceImpl<SysSmsDao, SysSmsEntity>
}
@Override
public String sendSmsCaptcha(String mobile) {
public Result sendSmsCaptcha(String mobile) {
Integer code = (int) ((Math.random() * 9 + 1) * 100000);
String codeStr = String.valueOf(code);
HashMap<String, String> map = new HashMap<>();
@ -121,10 +126,17 @@ public class SysSmsServiceImpl extends BaseServiceImpl<SysSmsDao, SysSmsEntity>
sysSmsDTO.setParams(paramJson);
Result result = messageFeignClient.send(sysSmsDTO);
System.out.println(result);
if (result != null && result.success()) {
HashMap<String, String> data = new HashMap<>();
data.put("code", codeStr);
return new Result().ok(data);
} else {
logger.error(String.format("短信验证码发送失败,手机号:%s。code:%d,msg:%s", mobile, result.getCode(), result.getMsg()));
}
} catch (JsonProcessingException e) {
e.printStackTrace();
logger.error(String.format("短信验证码发送失败,手机号:%s。errorMessage:%s", mobile, e.getMessage()));
}
return codeStr;
return new Result().error(EpmetErrorCode.MESSAGE_SMS_SEND_ERROR.getValue(), EpmetErrorCode.MESSAGE_SMS_SEND_ERROR.getName());
}
}

Loading…
Cancel
Save