zhongrj
2023-07-06 3ce737b52fca082ac3a2ecda4a848e2e4abcd0ee
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sms/util/SmsUtils.java
@@ -6,38 +6,30 @@
import cn.com.flaginfo.sdk.cmc.api.sms.dynsend.DynSMSAPI;
import cn.com.flaginfo.sdk.cmc.api.sms.dynsend.DynSMSSendDataResult;
import cn.com.flaginfo.sdk.cmc.api.sms.dynsend.DynSMSSendRequest;
import cn.com.flaginfo.sdk.cmc.api.sms.reply.SMSReplyAPI;
import cn.com.flaginfo.sdk.cmc.api.sms.reply.SMSReplyDataResult;
import cn.com.flaginfo.sdk.cmc.api.sms.reply.SMSReplyRequest;
import cn.com.flaginfo.sdk.cmc.api.sms.replyconfirm.SMSReplyConfirmAPI;
import cn.com.flaginfo.sdk.cmc.api.sms.replyconfirm.SMSReplyConfirmRequest;
import cn.com.flaginfo.sdk.cmc.api.sms.report.SMSReportAPI;
import cn.com.flaginfo.sdk.cmc.api.sms.report.SMSReportRequest;
import cn.com.flaginfo.sdk.cmc.api.sms.report.SMSReportResult;
import cn.com.flaginfo.sdk.cmc.api.sms.send.SMSApi;
import cn.com.flaginfo.sdk.cmc.api.sms.send.SMSSendDataResult;
import cn.com.flaginfo.sdk.cmc.api.sms.send.SMSSendRequest;
import cn.com.flaginfo.sdk.cmc.common.ApiEnum;
import cn.gistack.sm.sms.constant.SmsConstant;
import com.alibaba.fastjson.JSON;
import org.aspectj.lang.annotation.Before;
import cn.gistack.common.constant.SmsConstant;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.Random;
import static cn.gistack.sm.sms.constant.SmsConstant.*;
import static cn.gistack.common.constant.SmsConstant.*;
/**
 * 短信发送工具类
 * @author zhongrj
 * @date 2023-05-30
 */
@Component
public class SmsUtils {
   /**
    * 固定内容发送
    */
   public static String sendMsg(SMSSendRequest sendRequest) {
   public static ComResult<SMSSendDataResult> sendMsg(SMSSendRequest sendRequest) {
      ApiConfig apiConfig = new ApiConfig(SpCode, AppKey, AppSecret);
      ApiProvider provider = ApiProvider.getInstance(apiConfig);
      //请求接口
@@ -47,49 +39,37 @@
      sendRequest.setSerialNumber(new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new Date()));
      ComResult<SMSSendDataResult> request = api.request(sendRequest);
      // 返回
      return JSON.toJSONString(request);
      return 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;
   }
   /**
    * 动态短信内容批量发送
    */
   public static String dynSendMethod(DynSMSSendRequest sendRequest) {
   public static ComResult<DynSMSSendDataResult> dynSendMethod(DynSMSSendRequest sendRequest) {
      ApiConfig apiConfig = new ApiConfig(SpCode, AppKey, AppSecret);
      ApiProvider provider = ApiProvider.getInstance(apiConfig);
      //请求接口
      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);
      // 返回
      return result;
   }
   /**