From 9ada51434d47d40ece73f6e14adc787da6b4ac8e Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Wed, 02 Aug 2023 10:59:05 +0800
Subject: [PATCH] 首页外呼统计接口修改

---
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/service/impl/CallServiceImpl.java |   34 +++++++++++++++++++++++++++++++++-
 1 files changed, 33 insertions(+), 1 deletions(-)

diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/service/impl/CallServiceImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/service/impl/CallServiceImpl.java
index 06a639e..9b20d09 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/service/impl/CallServiceImpl.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/service/impl/CallServiceImpl.java
@@ -667,7 +667,39 @@
 	 */
 	@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);
 	}
 
 	/**

--
Gitblit v1.9.3