From c9087c0694ccfc7225beb8d2ca339341b22929b8 Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Thu, 27 Apr 2023 21:23:13 +0800
Subject: [PATCH] 智能呼叫查询修改,解决数据重复问题
---
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/service/impl/CallServiceImpl.java | 19 ++++++++-
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/mapper/CallTaskMapper.xml | 30 +++++++++++---
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/mapper/CallTaskMapper.java | 12 +++++
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/vo/CallTaskResultVO.java | 11 +++++
4 files changed, 62 insertions(+), 10 deletions(-)
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/mapper/CallTaskMapper.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/mapper/CallTaskMapper.java
index b6535a0..7054178 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/mapper/CallTaskMapper.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/mapper/CallTaskMapper.java
@@ -35,7 +35,9 @@
*/
@DS("ztznwh")
@InterceptorIgnore(tenantLine = "true")
- List<CallTaskResultVO> getCallTaskResultListPage(@Param("page") IPage<CallTaskResultVO> page,@Param("callTaskResult") CallTaskResultVO callTaskResult);
+ List<CallTaskResultVO> getCallTaskResultListPage(@Param("page") IPage<CallTaskResultVO> page,
+ @Param("callTaskResult") CallTaskResultVO callTaskResult,
+ @Param("list") List<String> list);
/**
* 通过水库编码获取行政区名称
@@ -44,4 +46,12 @@
*/
@DS("zt")
String getAreaNameByAdCode(@Param("adCode") String adCode);
+
+ /**
+ * 通过行政区编号获取水库名称
+ * @param areaCode
+ * @return
+ */
+ @DS("zt")
+ List<String> getWaterNameByAreaCode(@Param("adCode") String areaCode);
}
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 fe1beab..e76f043 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
@@ -7,11 +7,10 @@
select
ct."id",
ct."task_name" as taskName,
- date_format(ct."gmt_create",'yyyy-MM-dd HH:mm:ss') as createTime,
+ date_format(ct."gmt_create",'%Y-%m-%d %H:%i:%s') as createTime,
ct."task_status" as taskStatus,
+ date_format(ct."task_schedule_time",'%Y-%m-%d %H:%i:%s') as executeTime,
ctr."calling_number" as callingNumber,
- ctr."callee_number" as calleeNumber,
- date_format(ctr."gmt_create",'yyyy-MM-dd HH:mm:ss') as executeTime,
ctra."callee_number_count" as calleeNumberCount,
ctra."connection_count" as connectionCount,
ctra."failure_count" as failureCount,
@@ -19,7 +18,7 @@
cs."call_scenes_name" as callScenesName
from "SJZT_ODS"."call_task" ct
left join (select * from "SJZT_ODS"."call_scenes" where "is_deleted" = 0) cs on ct."scene_id" = cs."id"
- left join "SJZT_ODS"."call_task_result" ctr on ctr."task_id" = ct."id"
+ left join (select DISTINCT "task_id","calling_number" from "SJZT_ODS"."call_task_result") ctr on ctr."task_id" = ct."id"
left join "SJZT_ODS"."call_task_result_analyse" ctra on ctra."task_id" = ct."id"
where 1=1
<if test="callTask.taskName!=null and callTask.taskName!=''">
@@ -46,21 +45,33 @@
ctr."call_conversation_round" as callConversationRound,
ctr."call_hangup_direction" as callHangupDirection,
ctr."call_id" as callId,
- date_format(ctr."gmt_create",'yyyy-MM-dd HH:mm:ss') as gmtCreate,
+ date_format(ctr."gmt_create",'%Y-%m-%d %H:%i:%s') as gmtCreate,
ctr."calling_number" as callingNumber,
ctr."callee_number" as calleeNumber,
ctr."task_id" as taskId,
ctr."call_start_time" as callStartTime,
- ctr."call_end_time" as callEndTime,
+ date_format(ctr."call_end_time",'%Y-%m-%d %H:%i:%s') as callEndTime,
ctr."call_record_file" as callRecordFile,
ctr."intention_customer_flag" as intentionCustomerFlag,
ctr."is_deleted" as isDeleted,
ctc."call_task_callee_content" as callTaskCalleeContent
from "SJZT_ODS"."call_task_result" ctr
- left join "SJZT_ODS"."call_task_callee" ctc on ctr."task_id" = ctc."task_id"
+ left join "SJZT_ODS"."call_task_callee" ctc on ctr."task_id" = ctc."task_id" and ctr."callee_number" = ctc."callee_number"
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>
+ <if test="callTaskResult.userName!=null and callTaskResult.userName!=''">
+ and ctc."call_task_callee_content" like concat('%',#{callTaskResult.userName},'%')
+ </if>
+ <if test="callTaskResult.startTime!=null and callTaskResult.startTime!=''">
+ and date_format(ctr."gmt_create",'%Y-%m-%d') >= #{callTaskResult.startTime}
+ </if>
+ <if test="callTaskResult.endTime!=null and callTaskResult.endTime!=''">
+ and date_format(ctr."gmt_create",'%Y-%m-%d') <= #{callTaskResult.endTime}
</if>
order by ctr."gmt_create" desc
</select>
@@ -71,4 +82,9 @@
left join SJZT_MD."att_res_base" arb on aab."guid" = concat(arb."ad_guid",'000000')
where arb."code" = #{adCode}
</select>
+
+ <!--通过行政区编号获取水库名称-->
+ <select id="getWaterNameByAreaCode" resultType="java.lang.String">
+ select "name" from SJZT_MD."att_res_base" where concat("ad_guid",'000000') = #{areaCode}
+ </select>
</mapper>
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 7924bdf..9783eb4 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
@@ -22,6 +22,7 @@
import org.springframework.web.client.RestTemplate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@@ -210,12 +211,16 @@
*/
@Override
public IPage<CallTaskResultVO> getCallTaskResultListPage(IPage<CallTaskResultVO> page, CallTaskResultVO callTaskResult) {
- List<CallTaskResultVO> resultListPage = callTaskMapper.getCallTaskResultListPage(page, callTaskResult);
+ List<String> list = new ArrayList<>();
+ if (null!= callTaskResult.getAreaName() && !callTaskResult.getAreaName().equals("")){
+ // 查询水库名称
+ list = getWaterNameByAreaCode(callTaskResult.getAreaName());
+ }
+ List<CallTaskResultVO> resultListPage = callTaskMapper.getCallTaskResultListPage(page, callTaskResult,list);
//遍历
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("$用户名$");
@@ -237,4 +242,14 @@
// 通过adCode查询区域名称
return callTaskMapper.getAreaNameByAdCode(adCode);
}
+
+ /**
+ * 通过行政区编号获取水库名称
+ * @param areaCode
+ * @return
+ */
+ private List<String> getWaterNameByAreaCode(String areaCode) {
+ // 通过行政区编号获取水库名称
+ return callTaskMapper.getWaterNameByAreaCode(areaCode);
+ }
}
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 f711474..46f8c27 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
@@ -12,6 +12,17 @@
@Data
public class CallTaskResultVO extends CallTaskResult {
+
+ /**
+ * 开始时间
+ */
+ private String startTime;
+
+ /**
+ * 结束时间
+ */
+ private String endTime;
+
/**
* 任务内容信息
*/
--
Gitblit v1.9.3