zhongrj
2023-08-09 fd57a072cb58d7a4ff8a142e2585979a4c584b6b
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/service/impl/CallServiceImpl.java
@@ -477,21 +477,21 @@
      Integer totalCalleeNumberCount = 0;
      Integer totalConnectionCount = 0;
      Integer totalThreeNoConnectCount = 0;
      Integer totalTwoNoConnectCount = 0;
//      Integer totalTwoNoConnectCount = 0;
      Integer totalRefuseConnectCount = 0;
      // 遍历
      for (CallTaskStatistic taskStatistic : callTaskStatistics) {
         totalCalleeNumberCount += Integer.parseInt(taskStatistic.getCalleeNumberCount());
         totalConnectionCount += Integer.parseInt(taskStatistic.getConnectionCount());
         totalThreeNoConnectCount += taskStatistic.getThreeNoConnectCount();
         totalTwoNoConnectCount += taskStatistic.getTwoNoConnectCount();
//         totalTwoNoConnectCount += taskStatistic.getTwoNoConnectCount();
         totalRefuseConnectCount += taskStatistic.getRefuseConnectCount();
      }
      // 设置数据
      callTaskStatistic.setCalleeNumberCount(totalCalleeNumberCount.toString());
      callTaskStatistic.setConnectionCount(totalConnectionCount.toString());
      callTaskStatistic.setThreeNoConnectCount(totalThreeNoConnectCount);
      callTaskStatistic.setTwoNoConnectCount(totalTwoNoConnectCount);
//      callTaskStatistic.setTwoNoConnectCount(totalTwoNoConnectCount);
      callTaskStatistic.setRefuseConnectCount(totalRefuseConnectCount);
      callTaskStatistic.setCreateTime(callTaskStatistics.get(0).getCreateTime());
      // 查询当前行政区名称
@@ -667,7 +667,46 @@
    */
   @Override
   public Object getOutgoingStatisticByArea(CallTaskStatistic callTaskStatistic) {
      return callTaskMapper.getOutgoingStatisticByArea(callTaskStatistic);
      if (null==callTaskStatistic.getCreateTime() || callTaskStatistic.getCreateTime().equals("")){
         long l = System.currentTimeMillis();
         // 设置当前时间的前一天
         callTaskStatistic.setCreateTime(new SimpleDateFormat("yyyy-MM-dd").format(new Date(l - 60*60*24*1000)));
      }
      if (null==callTaskStatistic.getStartTime() || callTaskStatistic.getStartTime().equals("")){
         long l = System.currentTimeMillis();
         String format = new SimpleDateFormat("yyyy-MM-dd").format(new Date(l - 60 * 60 * 24 * 1000));
         // 设置当前时间的前一天
         callTaskStatistic.setStartTime(format);
         callTaskStatistic.setEndTime(format);
      }
      ThreadPoolExecutor executor = myThreadPoolConfig.threadPoolExecutor();
      callTaskStatistic.setIsPage(1);
      // 异步查询当前天日常呼叫(3次)统计数据
      CompletableFuture<List<CallTaskStatistic>> callTaskStatisticCompletableFuture = getListCompletableFuture(null, callTaskStatistic, executor);
      // 查询当前天除去日常呼叫外的统计数据
      CompletableFuture<List<CallTaskStatistic>> notCallConnect = getListCompletableFuture(callTaskStatistic,executor);
      //等待所有任务执行完成
      try {
         CompletableFuture.allOf(callTaskStatisticCompletableFuture,notCallConnect).get();
         // 数据处理
         List<CallTaskStatistic> callTaskStatistics = getCallTaskStatistics(callTaskStatisticCompletableFuture,null,null,null, notCallConnect,callTaskStatistic);
         // 取当前行政区总数据
//         List<CallTaskStatistic> totalList = getTotalCallTaskStatistics(callTaskStatistics,callTaskStatistic);
         List<CallTaskStatistic> totalList = new ArrayList<>();
         // 排序
         callTaskStatistics = getCallTaskStatisticsByOrder(callTaskStatistic, callTaskStatistics);
         // 合并数据
         totalList.addAll(callTaskStatistics);
         // 返回数据
         return totalList;
      } catch (InterruptedException e) {
         e.printStackTrace();
      } catch (ExecutionException e) {
         e.printStackTrace();
      }
      // 返回
      return null;
//      return callTaskMapper.getOutgoingStatisticByArea(callTaskStatistic);
   }
   /**