From 08c5f5c5462adc994cde17039fab6795d25fa749 Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Wed, 26 Apr 2023 16:21:45 +0800
Subject: [PATCH] 呼叫详情列表接口完善

---
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/service/impl/CallServiceImpl.java |   71 ++++++++++++++++++++++++++++++++++-
 1 files changed, 68 insertions(+), 3 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 ca20136..939b7b0 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
@@ -1,9 +1,14 @@
 package cn.gistack.sm.intelligentCall.service.impl;
 
 import cn.gistack.sm.intelligentCall.constant.CallConstant;
+import cn.gistack.sm.intelligentCall.mapper.CallTaskMapper;
 import cn.gistack.sm.intelligentCall.service.CallService;
+import cn.gistack.sm.intelligentCall.vo.CallTaskResultVO;
+import cn.gistack.sm.intelligentCall.vo.CallTaskStatistic;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.RandomUtils;
 import org.apache.commons.lang3.StringUtils;
@@ -15,7 +20,6 @@
 import org.springframework.stereotype.Service;
 import org.springframework.util.DigestUtils;
 import org.springframework.web.client.RestTemplate;
-import javax.annotation.Resource;
 import java.time.LocalDateTime;
 import java.time.format.DateTimeFormatter;
 import java.util.List;
@@ -24,6 +28,9 @@
 @Slf4j
 @Service
 public class CallServiceImpl implements CallService {
+
+	@Autowired
+	private CallTaskMapper callTaskMapper;
 
 	@Autowired
 	private RestTemplate restTemplate;
@@ -53,8 +60,13 @@
 	private final static String CREATE_TASK_URL = "/api/task/createTask.json";
 	private final static String CALL_DETAIL_URL = "/api/task/callDetail.json";
 
+	/**
+	 * 创建任务
+	 * @param params
+	 * @return
+	 */
 	@Override
-	public void createTask(List<Map<String, String>> params) {
+	public Object createTask(List<Map<String, String>> params) {
 		String requestUrl = url + CREATE_TASK_URL;
 		LocalDateTime now = LocalDateTime.now();
 		String timestamp = now.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss SSS"));
@@ -62,7 +74,6 @@
 		String taskName = now.format(DateTimeFormatter.ofPattern("yyyy年MM月dd日HH:mm")) + "智能外呼";
 		String[] numbers = StringUtils.split(callingNumbers,",");
 		String taskScheduleTime = LocalDateTime.now().plusHours(1).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
-		System.out.println("taskScheduleTime = " + taskScheduleTime);
 		JSONArray arr = getCalleeInfo(params);
 		HttpHeaders httpHeaders = new HttpHeaders();
 		httpHeaders.add("Content-Type", CONTENT_TYPE);
@@ -91,8 +102,15 @@
 		if (response.getStatusCode() != HttpStatus.OK) {
 			log.error("创建智能外呼任务失败:{}", response.getStatusCode());
 		}
+		return response;
 	}
 
+	/**
+	 * 获取通话详情
+	 * @param taskId
+	 * @param calleeNumber
+	 * @return
+	 */
 	@Override
 	public Object getCallDetail(String taskId, String calleeNumber) {
 		String requestUrl = url + CALL_DETAIL_URL;
@@ -169,4 +187,51 @@
 		});
 		return arr;
 	}
+
+	/**
+	 * 查詢任务列表数据
+	 * @param page
+	 * @param callTask
+	 * @return
+	 */
+	@Override
+	public IPage<CallTaskStatistic> getCallListPage(IPage<CallTaskStatistic> page, CallTaskStatistic callTask) {
+		return page.setRecords(callTaskMapper.getCallListPage(page,callTask));
+	}
+
+	/**
+	 * 查询呼叫详情列表信息
+	 * @param callTaskResult
+	 * @param page
+	 * @return
+	 */
+	@Override
+	public IPage<CallTaskResultVO> getCallTaskResultListPage(IPage<CallTaskResultVO> page, CallTaskResultVO callTaskResult) {
+		List<CallTaskResultVO> resultListPage = callTaskMapper.getCallTaskResultListPage(page, callTaskResult);
+		//遍历
+		if (resultListPage.size()>0) {
+			for (CallTaskResultVO resultVO : resultListPage) {
+				// 取出 jsonData 数据
+				System.out.println("resultVO = " + resultVO);
+				String callTaskCalleeContent = resultVO.getCallTaskCalleeContent();
+				JSONObject jsonObject = JSONObject.parseObject(callTaskCalleeContent);
+				String userName = jsonObject.getString("$用户名$");
+				String adName = jsonObject.getString("$水库名称$");
+				resultVO.setAdName(adName);
+				resultVO.setAreaName(getAreaNameByAdCode(jsonObject.getString("$水库编码$")));
+				resultVO.setUserName(userName);
+			}
+		}
+		return page.setRecords(resultListPage);
+	}
+
+	/**
+	 * 通过水库编码获取行政区名称
+	 * @param adCode
+	 * @return
+	 */
+	private String getAreaNameByAdCode(String adCode) {
+		// 通过adCode查询区域名称
+		return callTaskMapper.getAreaNameByAdCode(adCode);
+	}
 }

--
Gitblit v1.9.3