zhongrj
2023-04-24 c72f2110a469f603ff09f006aad3256e21523c9d
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/controller/CallController.java
@@ -1,6 +1,9 @@
package cn.gistack.sm.intelligentCall.controller;
import cn.gistack.sm.intelligentCall.constant.CallConstant;
import cn.gistack.sm.intelligentCall.entity.ThirdBaseParam;
import cn.gistack.sm.intelligentCall.entity.ThirdPartyResult;
import cn.gistack.sm.intelligentCall.entity.ThirdRequestHead;
import cn.gistack.sm.intelligentCall.entity.User;
import cn.gistack.sm.intelligentCall.util.HttpClientUtils;
import com.alibaba.fastjson.JSON;
@@ -18,6 +21,7 @@
import static cn.gistack.sm.intelligentCall.util.CallUtil.getRandom;
import static cn.gistack.sm.intelligentCall.util.CallUtil.getToken;
import static cn.gistack.sm.intelligentCall.util.ThirdPartyValidate.validateToken;
/**
 * 智能呼叫控制层
@@ -48,7 +52,66 @@
    * 创建任务
    * @return
    */
   public String createCallUtil(){
   @GetMapping("/createCall1")
   public R createCall1(){
      // 请求
      Map<String, Object> map = new HashMap<>();
      map.put("p1",createCallUtil());
      // 返回
      return R.data(map);
   }
   /**
    * 创建任务
    * @return
    */
   public static String createCallUtil(){
      Date date = new Date();
      String dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date);
      String timestamp = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS").format(date);
      String transId = new SimpleDateFormat("yyyyMMddHHmmssSSS").format(date) + getRandom();
      Map<String, Object> map = new HashMap<>();
      map.put("taskName","测试");
      map.put("sceneId",230);
      map.put("callingNumbers", Arrays.asList("00862787222298"));
      map.put("taskScheduleTime",dateFormat);
      List<Map<String,Object>> list = new ArrayList<>();
      Map<String,Object> maps = new HashMap<>();
      maps.put("被叫号码","15170720695");
      maps.put("水库名称","测试水库");
      maps.put("超汛限多少米","0");
      maps.put("水库编码","1241241122");
      maps.put("用户名","zrj");
      maps.put("用户id","123456");
      list.add(maps);
      map.put("calleeData",list);
      ThirdBaseParam thirdBaseParam = new ThirdBaseParam();
      ThirdRequestHead thirdRequestHead = new ThirdRequestHead();
      thirdRequestHead.setAppId(CallConstant.AppKey);
      thirdRequestHead.setTimestamp(timestamp);
      thirdRequestHead.setToken(getToken(timestamp, transId, map));
      thirdRequestHead.setTransId(transId);
      thirdBaseParam.setHead(thirdRequestHead);
      thirdBaseParam.setSecretString(JSON.toJSONString(map));
      // 验证token
      boolean b = validateToken(thirdBaseParam, CallConstant.AppSecret, new ThirdPartyResult());
      System.out.println("token 验证结果 = " + b);
      String token = getToken(timestamp, transId, map);
      String url = CallConstant.HOST + CallConstant.createTaskUrl1;
      String httpPost = HttpClientUtils.httpPost(url, CallConstant.AppKey, timestamp, transId, token, map);
      // 返回
      return httpPost;
   }
   /**
    * 创建任务
    * @return
    */
   public static String createCallUtil1(){
      Date date = new Date();
      String dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date);
      String timestamp = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS").format(date);
@@ -71,8 +134,33 @@
      map.put("calleeData",list);
      String token = getToken(timestamp, transId, map);
      String jsonString = JSON.toJSONString(map);
      HashMap<Object, Object> hashMap = new HashMap<>(4);
      hashMap.put("appId",CallConstant.AppKey);
      hashMap.put("timestamp",timestamp);
      hashMap.put("transId",transId);
      hashMap.put("token",token);
      Map<String, String> stringHashMap = new HashMap<>();
      stringHashMap.put("head",hashMap.toString());
      stringHashMap.put("body",jsonString);
      ThirdBaseParam thirdBaseParam = new ThirdBaseParam();
      ThirdRequestHead thirdRequestHead = new ThirdRequestHead();
      thirdRequestHead.setAppId(CallConstant.AppKey);
      thirdRequestHead.setTimestamp(timestamp);
      thirdRequestHead.setToken(token);
      thirdRequestHead.setTransId(transId);
      thirdBaseParam.setHead(thirdRequestHead);
      thirdBaseParam.setSecretString(JSON.toJSONString(map));
      // 验证token
      boolean b = validateToken(thirdBaseParam, CallConstant.AppSecret, new ThirdPartyResult());
      System.out.println("token 验证结果 = " + b);
      String url = CallConstant.HOST + CallConstant.createTaskUrl1;
      String httpPost = HttpClientUtils.httpPost(url, CallConstant.AppKey, timestamp, transId, token, map);
      String httpPost = HttpClientUtils.doPost(url, stringHashMap);
      // 返回
      return httpPost;
   }
@@ -84,31 +172,10 @@
//    * @param args
//    */
//   public static void main(String[] args) {
//      Date date = new Date();
//      String dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date);
//      String timestamp = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS").format(date);
//      String transId = new SimpleDateFormat("yyyyMMddHHmmssSSS").format(date) + getRandom();
//
//      Map<String, Object> map = new HashMap<>();
//      map.put("taskName","测试");
//      map.put("sceneId",230);
//      map.put("callingNumbers", Arrays.asList("00862787222298"));
//      map.put("taskScheduleTime",dateFormat);
//      List<Map<String,Object>> list = new ArrayList<>();
//      Map<String,Object> maps = new HashMap<>();
//      maps.put("被叫号码","15170720695");
//      maps.put("水库名称","测试水库");
//      maps.put("超汛限多少米","0");
//      maps.put("水库编码","1241241122");
//      maps.put("用户名","zrj");
//      maps.put("用户id","123456");
//      list.add(maps);
//      map.put("calleeData",list);
//      map.put("p1",createCallUtil());
////      map.put("p1",createCallUtil());
//
//      String token = getToken(timestamp, transId, map);
//      String url = CallConstant.HOST + CallConstant.createTaskUrl1;
//      String httpPost = HttpClientUtils.httpPost(url, CallConstant.AppKey, timestamp, transId, token, map);
//      System.out.println("httpPost = " + httpPost);
//   }
}