guoshilong
2023-05-18 6cd2da8eb7d7aefecd96a19ebbfe9caba59ea88c
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sms/util/SmsUtils.java
@@ -21,6 +21,8 @@
import cn.gistack.sm.sms.constant.SmsConstant;
import com.alibaba.fastjson.JSON;
import org.aspectj.lang.annotation.Before;
import org.springblade.core.redis.cache.BladeRedis;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
@@ -29,10 +31,14 @@
import java.util.List;
import java.util.Random;
import static cn.gistack.common.cache.CacheNames.PHONE_KEY;
import static cn.gistack.sm.sms.constant.SmsConstant.*;
@Component
public class SmsUtils {
   @Autowired
   private BladeRedis bladeRedis;
   /**
    * 固定内容发送
@@ -50,30 +56,18 @@
      return JSON.toJSONString(request);
   }
//   public static void main(String[] args) {
//      SMSSendRequest sendRequest = new SMSSendRequest();
//      sendRequest.setMessageContent("你有一项编号为12349的事务需要处理;");
//      sendRequest.setTemplateId("2431012234034");
//      sendRequest.setUserNumber("15170720695");
//      String s = sendMsg(sendRequest);
//      System.out.println("s = " + s);
//   }
   /**
    * 获取随机字符串
    * @return
    */
   public static String getRandNumber() {
      // 计算token
//      Date date = new Date();
//      String dateFormat = new SimpleDateFormat("yyyyMMddHHmmssSSS").format(date);
      Random random = new Random();
      //把随机生成的数字转成字符串
      String str = String.valueOf(random.nextInt(9));
      for (int i = 0; i < 5; i++) {
         str += random.nextInt(9);
      }
      return String.valueOf(System.currentTimeMillis()) + str;
      return str;
   }
   /**
@@ -86,7 +80,6 @@
      DynSMSAPI api = (DynSMSAPI) provider.getApi(ApiEnum.SENDDYNSMS);
      api.setRequestUrl(SmsConstant.HOST + SmsConstant.sendVarUrl);
      //请求参数
//      sendRequest.setDynData(new String[][]{{"手机号码", "编号"}, {"13000000000", "456"}});
      sendRequest.setSerialNumber(new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new Date()));
      ComResult<DynSMSSendDataResult> result = api.request(sendRequest);
      return JSON.toJSONString(result);