SmsSendServiceImpl.java 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162
  1. package com.care.common.service.impl;
  2. import cn.hutool.core.util.StrUtil;
  3. import com.care.common.enums.SmsTemplateTypeEnum;
  4. import com.care.common.service.SmsSendService;
  5. import com.care.common.util.SmsUtil;
  6. import com.tencentcloudapi.sms.v20210111.models.SendStatus;
  7. import org.springframework.beans.factory.annotation.Value;
  8. import org.springframework.stereotype.Service;
  9. /**
  10. * @Author: lilt
  11. * @Date: 2021/6/5
  12. * @Desc:
  13. */
  14. @Service
  15. public class SmsSendServiceImpl implements SmsSendService {
  16. @Value("${sms.notice.endpoint:#{null}}")
  17. private String noticeEndpoint;
  18. @Value("${sms.notice.region:#{null}}")
  19. private String noticeRegion;
  20. @Value("${sms.notice.secretId:#{null}}")
  21. private String noticeSecretId;
  22. @Value("${sms.notice.secretKey:#{null}}")
  23. private String noticeecretKey;
  24. @Value("${sms.notice.smsSdkAppId:#{null}}")
  25. private String noticeSmsSdkAppId;
  26. private String noticeSignName="熵行科技";
  27. @Value("${sms.notice.templateid.register.phone:#{null}}")
  28. private String noticeTemplateId4registerPhone;
  29. @Value("${sms.notice.templateid.modify.password:#{null}}")
  30. private String noticeTemplateId4modifyPassword;
  31. @Value("${sms.notice.templateid.modify.phone:#{null}}")
  32. private String noticeTemplateId4ModifyPhone;
  33. @Value("${sms.notice.templateid.jiuzhi:#{null}}")
  34. private String noticeTemplateId4jiuzhi;
  35. @Value("${sms.notic.templateid.cancel.jiuzhi:#{null}}")
  36. private String noticTemplateId4CancelJiuzhi;
  37. @Value("${sms.notic.templateid.cancel.diedao:#{null}}")
  38. private String noticTemplateId4CancelDiedao;
  39. @Value("${sms.notice.templateid.diedao:#{null}}")
  40. private String noticeTemplateId4diedao;
  41. @Value("${sms.notice.templateid.order.complete:#{null}}")
  42. private String noticeTemplateId4OrderComplete;
  43. /**
  44. * 注册手机号发送短信验证码
  45. * @param phone
  46. * @return
  47. */
  48. @Override
  49. public boolean sendSmsCode4RegisterPhone(String phone,String params) {
  50. String[] _p = {params};
  51. SendStatus sendStatus = SmsUtil.sendSms(noticeEndpoint,
  52. noticeRegion,
  53. noticeSecretId,
  54. noticeecretKey,
  55. noticeSmsSdkAppId,
  56. noticeSignName,
  57. noticeTemplateId4registerPhone,
  58. phone,_p);
  59. if (sendStatus!=null && "Ok".equals(sendStatus.getCode())){
  60. return true;
  61. }else{
  62. return false;
  63. }
  64. }
  65. /**
  66. * 重置密码发送短信验证码
  67. * @param phone
  68. * @return
  69. */
  70. @Override
  71. public boolean sendSmsCode4ModifyPassword(String phone,String params) {
  72. String[] _p = {params};
  73. SendStatus sendStatus = SmsUtil.sendSms(noticeEndpoint,
  74. noticeRegion,
  75. noticeSecretId,
  76. noticeecretKey,
  77. noticeSmsSdkAppId,
  78. noticeSignName,
  79. noticeTemplateId4modifyPassword,
  80. phone,_p);
  81. if (sendStatus!=null && "Ok".equals(sendStatus.getCode())){
  82. return true;
  83. }else{
  84. return false;
  85. }
  86. }
  87. /**
  88. * 修改手机号发送短信验证码
  89. * @param phone
  90. * @return
  91. */
  92. @Override
  93. public boolean sendSmsCode4ModifyPhone(String phone,String params) {
  94. String[] _p = {params};
  95. SendStatus sendStatus = SmsUtil.sendSms(noticeEndpoint,
  96. noticeRegion,
  97. noticeSecretId,
  98. noticeecretKey,
  99. noticeSmsSdkAppId,
  100. noticeSignName,
  101. noticeTemplateId4ModifyPhone,
  102. phone,_p);
  103. if (sendStatus!=null && "Ok".equals(sendStatus.getCode())){
  104. return true;
  105. }else{
  106. return false;
  107. }
  108. }
  109. @Override
  110. public boolean sendSmsToLianxirenOrMember(SmsTemplateTypeEnum template, String phone, String params) {
  111. String[] _p = {params};
  112. String _noticeTemplateId = "";
  113. if (SmsTemplateTypeEnum.DIE_DAO.equals(template)){
  114. _noticeTemplateId = noticeTemplateId4diedao;
  115. }else if(SmsTemplateTypeEnum.JIU_ZHI.equals(template)){
  116. _noticeTemplateId = noticeTemplateId4jiuzhi;
  117. }else if(SmsTemplateTypeEnum.CANCEL_DIEDAO.equals(template)){
  118. _noticeTemplateId = noticTemplateId4CancelDiedao;
  119. }else if(SmsTemplateTypeEnum.CANCEL_JIUZHI.equals(template)){
  120. _noticeTemplateId = noticTemplateId4CancelJiuzhi;
  121. } else if(SmsTemplateTypeEnum.ORDER_COMPLETE.equals(template)){
  122. _noticeTemplateId = noticeTemplateId4OrderComplete;
  123. }
  124. if (StrUtil.isNotEmpty(_noticeTemplateId)){
  125. SendStatus sendStatus = SmsUtil.sendSms(noticeEndpoint,
  126. noticeRegion,
  127. noticeSecretId,
  128. noticeecretKey,
  129. noticeSmsSdkAppId,
  130. noticeSignName,
  131. _noticeTemplateId,
  132. phone,_p);
  133. if (sendStatus!=null && "Ok".equals(sendStatus.getCode())){
  134. return true;
  135. }else{
  136. return false;
  137. }
  138. }else {
  139. return false;
  140. }
  141. }
  142. }