| | |
| | | */ |
| | | @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))); |
| | | } |
| | | 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); |
| | | } |
| | | |
| | | /** |