| | |
| | | import com.mzl.flower.config.exception.ValidationException; |
| | | import com.mzl.flower.constant.Constants; |
| | | import com.mzl.flower.dto.request.SmsSendDTO; |
| | | import com.mzl.flower.service.sms.TosSmsService; |
| | | import com.mzl.flower.utils.SmsUtil; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | |
| | | private final SmsProperties smsProperties; |
| | | |
| | | private final StringCacheClient stringCacheClient; |
| | | |
| | | @Autowired |
| | | private TosSmsService tosSmsService; |
| | | |
| | | |
| | | public SmsService(SmsProperties smsProperties, StringCacheClient stringCacheClient) { |
| | | this.smsProperties = smsProperties; |
| | |
| | | throw new ValidationException("短信验证码已发送,请勿频繁发送"); |
| | | } |
| | | String smsCode = generateSmsCode(); |
| | | // String smsCode ="888888"; |
| | | String key; |
| | | if(Constants.USER_TYPE.admin.name().equals(dto.getUserType())){ |
| | | key = SMS_CODE_KEY + SEPARATOR + Constants.USER_TYPE.admin.name() + SEPARATOR + dto.getTel(); |
| | |
| | | Map<String, String> paramMap = new HashMap<>(); |
| | | paramMap.put("code", smsCode); |
| | | try { |
| | | SmsUtil.sendSms(dto.getTel(),smsProperties.getVerificationCode(),paramMap); |
| | | //暂时不实际发送验证码 |
| | | // SmsUtil.sendSms(dto.getTel(),smsProperties.getVerificationCode(),paramMap); |
| | | tosSmsService.sendSms(dto.getTel(),paramMap); |
| | | stringCacheClient.set(SMS_CODE_KEY + SEPARATOR + SEPARATOR + dto.getTel(),smsCode,60); |
| | | stringCacheClient.set(key,smsCode,600); |
| | | } catch (ClientException e) { |
| | | } catch (Exception e) { |
| | | throw new RuntimeException("短信发送失败"); |
| | | } |
| | | //todo 发送短信 |
| | | } |
| | | |
| | | private boolean existsCode(String tel) { |