From d2f2faf246d45c7bbb0daccbbe005fab4597eb86 Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Fri, 28 Apr 2023 00:30:29 +0800
Subject: [PATCH] 智能通话查修改,导出修改

---
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/service/impl/CallServiceImpl.java |   32 +++++++++-------
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/controller/CallController.java    |   11 +++++
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/mapper/CallTaskMapper.xml         |   20 ++++++++--
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/service/CallService.java          |    7 +++
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/vo/CallTaskResultVO.java          |    7 +++
 5 files changed, 58 insertions(+), 19 deletions(-)

diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/controller/CallController.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/controller/CallController.java
index ae0cbb5..5c83f22 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/controller/CallController.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/controller/CallController.java
@@ -74,4 +74,15 @@
 		return R.data(callService.getCallTaskResultListPage(Condition.getPage(query),callTaskResult));
 	}
 
+	/**
+	 * 导出呼叫详情列表信息
+	 * @param callTaskResult
+	 * @return
+	 */
+	@GetMapping("/getCallTaskResultList")
+	public R getCallTaskResultList(CallTaskResultVO callTaskResult){
+		// 返回
+		return R.data(callService.getCallTaskResultList(callTaskResult));
+	}
+
 }
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/mapper/CallTaskMapper.xml b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/mapper/CallTaskMapper.xml
index e76f043..563430c 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/mapper/CallTaskMapper.xml
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/mapper/CallTaskMapper.xml
@@ -54,15 +54,27 @@
         ctr."call_record_file" as callRecordFile,
         ctr."intention_customer_flag" as intentionCustomerFlag,
         ctr."is_deleted" as isDeleted,
-        ctc."call_task_callee_content" as callTaskCalleeContent
+        ctc.waterCode,
+        arb."name" as waterName,
+        aab."ad_name" as areaName,
+        ctc.userName
         from "SJZT_ODS"."call_task_result" ctr
-        left join "SJZT_ODS"."call_task_callee" ctc on ctr."task_id" = ctc."task_id" and ctr."callee_number" = ctc."callee_number"
+        left join
+        (
+        select "callee_number",
+        "task_id",
+        JSON_VALUE("call_task_callee_content",'$."$水库编码$"') as waterCode,
+        JSON_VALUE("call_task_callee_content",'$."$用户名$"') as userName from "SJZT_ODS"."call_task_callee"
+        ) ctc
+        on ctr."task_id" = ctc."task_id" and ctr."callee_number" = ctc."callee_number"
+        left join "SJZT_MD"."att_res_base" arb on ctc.waterCode = arb."code"
+        left join "SJZT_MD"."att_ad_base" aab on aab."guid" = concat(arb."ad_guid",'000000')
         where 1=1
         <if test="callTaskResult.taskId!=null and callTaskResult.taskId!=''">
             and ctr."task_id" = #{callTaskResult.taskId}
         </if>
-        <if test="callTaskResult.adName!=null and callTaskResult.adName!=''">
-            and ctc."call_task_callee_content" like concat('%',#{callTaskResult.adName},'%')
+        <if test="callTaskResult.waterName!=null and callTaskResult.waterName!=''">
+            and ctc."call_task_callee_content" like concat('%',#{callTaskResult.waterName},'%')
         </if>
         <if test="callTaskResult.userName!=null and callTaskResult.userName!=''">
             and ctc."call_task_callee_content" like concat('%',#{callTaskResult.userName},'%')
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/service/CallService.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/service/CallService.java
index 60c7216..df05a57 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/service/CallService.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/service/CallService.java
@@ -40,4 +40,11 @@
 	 * @return
 	 */
 	IPage<CallTaskResultVO> getCallTaskResultListPage(IPage<CallTaskResultVO> page, CallTaskResultVO callTaskResult);
+
+	/**
+	 * 导出呼叫详情列表信息
+	 * @param callTaskResult
+	 * @return
+	 */
+	Object getCallTaskResultList(CallTaskResultVO callTaskResult);
 }
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 9783eb4..568f5d5 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
@@ -213,27 +213,31 @@
 	public IPage<CallTaskResultVO> getCallTaskResultListPage(IPage<CallTaskResultVO> page, CallTaskResultVO callTaskResult) {
 		List<String> list = new ArrayList<>();
 		if (null!= callTaskResult.getAreaName() && !callTaskResult.getAreaName().equals("")){
-			// 查询水库名称
+			// 查询所有下级区域code
 			list = getWaterNameByAreaCode(callTaskResult.getAreaName());
 		}
 		List<CallTaskResultVO> resultListPage = callTaskMapper.getCallTaskResultListPage(page, callTaskResult,list);
-		//遍历
-		if (resultListPage.size()>0) {
-			for (CallTaskResultVO resultVO : resultListPage) {
-				// 取出 jsonData 数据
-				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 callTaskResult
+	 * @return
+	 */
+	@Override
+	public Object getCallTaskResultList(CallTaskResultVO callTaskResult) {
+		List<String> list = new ArrayList<>();
+		if (null!= callTaskResult.getAreaName() && !callTaskResult.getAreaName().equals("")){
+			// 查询所有下级区域code
+			list = getWaterNameByAreaCode(callTaskResult.getAreaName());
+		}
+		List<CallTaskResultVO> resultListPage = callTaskMapper.getCallTaskResultListPage(null, callTaskResult,list);
+		// 返回
+		return resultListPage;
+	}
+
+	/**
 	 * 通过水库编码获取行政区名称
 	 * @param adCode
 	 * @return
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/vo/CallTaskResultVO.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/vo/CallTaskResultVO.java
index 46f8c27..c099260 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/vo/CallTaskResultVO.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/vo/CallTaskResultVO.java
@@ -31,7 +31,7 @@
 	/**
 	 * 水库名称
 	 */
-	private String adName;
+	private String waterName;
 
 	/**
 	 * 用户名(巡查责任人名称)
@@ -43,5 +43,10 @@
 	 */
 	private String areaName;
 
+	/**
+	 * 水库编码
+	 */
+	private String waterCode;
+
 
 }

--
Gitblit v1.9.3