From 6b3618d35a088380ca18d168c6ea4c0dc8f101eb Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Mon, 15 May 2023 14:50:34 +0800
Subject: [PATCH] 新增智能外呼按行政区统计接通率接口

---
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/intelligentCall/mapper/CallTaskMapper.xml |   33 +++++++++++++++++++++++++++++++++
 1 files changed, 33 insertions(+), 0 deletions(-)

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 5fda664..6f2a7d0 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
@@ -179,4 +179,37 @@
         ) a
         order by createTime desc,callCompletingRate desc
     </select>
+
+    <!--查询智能外呼统计数据-行政区统计-->
+    <select id="getOutgoingStatisticByArea" resultType="cn.gistack.sm.intelligentCall.vo.CallTaskStatistic">
+        select b.*,case when b.totalCount>0 then round(b.connectCount/b.totalCount*100,2) else 0 end callCompletingRate from(
+            select  aab."guid",
+                    aab."ad_name" as adName,
+                    ifnull(sum(totalCount),0) totalCount,
+                    ifnull(sum(connectCount),0) connectCount
+                    from SJZT_MD."att_ad_base"  aab
+            left join (
+                select
+                count(*) as totalCount,
+                ifnull(sum(case when ctr."call_result"='200000' then 1 else 0 end),0) as connectCount,
+                DATE_FORMAT(ctr."gmt_create",'%Y-%m-%d') as createTime,
+                aab."guid",
+                aab."ad_grad",
+                aab."p_ad_code",
+                aab."ad_name" as adName
+                from "SJZT_ODS"."call_task_result" ctr
+                left join
+                (
+                select "call_id","task_id",JSON_VALUE("call_task_callee_content",'$."$水库编码$"') as waterCode from "SJZT_ODS"."call_task_callee"
+                ) ctc on ctr."call_id" = ctc."call_id"
+                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 and aab."ad_name" is not null
+                group by DATE_FORMAT(ctr."gmt_create",'%Y-%m-%d'),aab."ad_name",aab."guid",aab."ad_grad",aab."p_ad_code"
+            ) a
+            on aab."guid" = a."p_ad_code" where aab."p_ad_code" = #{callTaskStatistic.adCode}
+            group by aab."ad_name",aab."guid"
+            order by aab."guid"
+        ) b
+    </select>
 </mapper>

--
Gitblit v1.9.3