Files
hubez-admin/src/main/resources/mapper/mysql/mntrng/mntrng-mapper.xml

159 lines
5.6 KiB
XML

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="kr.co.uplus.ez.api.mntrng.MntrngMapper">
<select id="selectSendListTotalCnt" parameterType="kr.co.uplus.ez.api.mntrng.dto.SendListReqDto" resultType="int">
SELECT
COUNT(*) AS TOTALCNT
FROM ${HUBEZ_SEND}.EZ_MSG_LOG eml
WHERE DATE_FORMAT(eml.SENT_DATE,'%Y%m%d') = #{sentDate}
<if test='reqChennel != null and reqChennel != "" and reqChennel != "ALL"'>
AND eml.REQ_PRODUCT = #{reqChennel}
</if>
<if test='phone != null and phone != ""'>
AND eml.PHONE LIKE CONCAT('%',#{phone},'%')
</if>
<if test='callbackNumber != null and callbackNumber != ""'>
AND eml.CALLBACK_NUMBER LIKE CONCAT('%',#{callbackNumber},'%')
</if>
<if test='custNm != null and custNm != ""'>
AND eml.ORDER_ID IN (
SELECT
T3.ORDER_ID
FROM ${HUBEZ_COMMON}.EZ_CUST_INFO T1
JOIN ${HUBEZ_COMMON}.EZ_SVC_USER T2
ON T1.CUST_SEQ = T2.CUST_SEQ
JOIN ${HUBEZ_ADMIN}.EZ_SNDDCT_REQ T3
ON T2.USER_SEQ = T3.SNDREQ_USER_SEQ
WHERE T1.CUST_NM LIKE CONCAT('%',#{custNm},'%'))
</if>
</select>
<select id="selectSendList" parameterType="kr.co.uplus.ez.api.mntrng.dto.SendListReqDto" resultType="kr.co.uplus.ez.api.mntrng.dto.SendList">
SELECT
@ROWNUM := @ROWNUM + 1 AS NO,
A.*
FROM
(
SELECT
DATE_FORMAT(SENT_DATE,'%Y-%m-%d') AS SENT_DATE
,(SELECT
esc.CUST_NM
FROM ${HUBEZ_ADMIN}.EZ_SNDDCT_REQ esr
join ${HUBEZ_COMMON}.EZ_SVC_USER esu
on esr.SNDREQ_USER_SEQ = esu.USER_SEQ
join ${HUBEZ_COMMON}.EZ_CUST_INFO esc
on esu.CUST_SEQ = esc.CUST_SEQ
WHERE esr.ORDER_ID = eml.ORDER_ID) AS CUST_NM
,(SELECT
esu.USER_ID
FROM ${HUBEZ_ADMIN}.EZ_SNDDCT_REQ esr
join ${HUBEZ_COMMON}.EZ_SVC_USER esu
on esr.SNDREQ_USER_SEQ = esu.USER_SEQ
WHERE esr.ORDER_ID = eml.ORDER_ID) AS USER_ID
,eml.PHONE
,eml.CALLBACK_NUMBER
,eml.REQ_PRODUCT
,eml.DONE_CH
,eml.DONE_TELCO
,eml.DONE_CODE
,DATE_FORMAT(eml.REQ_DATE,'%Y-%m-%d %T') AS REQ_DATE
,DATE_FORMAT(eml.DONE_DATE,'%Y-%m-%d %T') AS DONE_DATE
FROM ${HUBEZ_SEND}.EZ_MSG_LOG eml
WHERE 1=1
AND DATE_FORMAT(eml.SENT_DATE,'%Y%m%d') = #{sentDate}
<if test='reqChennel != null and reqChennel != "" and reqChennel != "ALL"'>
AND eml.REQ_PRODUCT = #{reqChennel}
</if>
<if test='phone != null and phone != ""'>
AND eml.PHONE LIKE CONCAT('%',#{phone},'%')
</if>
<if test='callbackNumber != null and callbackNumber != ""'>
AND eml.CALLBACK_NUMBER LIKE CONCAT('%',#{callbackNumber},'%')
</if>
<if test='custNm != null and custNm != ""'>
AND eml.ORDER_ID IN (
SELECT
T3.ORDER_ID
FROM ${HUBEZ_COMMON}.EZ_CUST_INFO T1
JOIN ${HUBEZ_COMMON}.EZ_SVC_USER T2
ON T1.CUST_SEQ = T2.CUST_SEQ
JOIN ${HUBEZ_ADMIN}.EZ_SNDDCT_REQ T3
ON T2.USER_SEQ = T3.SNDREQ_USER_SEQ
WHERE T1.CUST_NM = LIKE CONCAT('%',#{custNm},'%'))
</if>
ORDER BY eml.SENT_DATE DESC
LIMIT #{page}, #{pagePerRows}) A,
( SELECT @ROWNUM := #{page} ) AS R
</select>
<select id="selectLiveSendSttus" parameterType="kr.co.uplus.ez.api.mntrng.dto.LiveSendSttus" resultType="kr.co.uplus.ez.api.mntrng.dto.LiveSendSttus">
SELECT
IFNULL(SUM(T1.SEND_CNT + T2.FB_SEND_CNT), 0) AS SEND_CNT
,IFNULL(SUM(T1.SUCC_CNT+T2.FB_SUCC_CNT), 0) AS SUCC_CNT
,IFNULL(ROUND((SUM(T1.SUCC_CNT+T2.FB_SUCC_CNT) / SUM(T1.SEND_CNT+T2.FB_SEND_CNT) * 100), 2), 0) AS SUCC_RT
<if test='reqType != null and reqType != ""'>
<if test='reqType eq "M"'>
,DATE_FORMAT(DATE_ADD(NOW(), INTERVAL -10 MINUTE), '%Y.%m.%d %H:%i') AS START_TIME
</if>
<if test='reqType eq "H"'>
,DATE_FORMAT(DATE_ADD(NOW(), INTERVAL -1 HOUR), '%Y.%m.%d %H:%i') AS START_TIME
</if>
<if test='reqType eq "D"'>
,DATE_FORMAT(NOW(),'%Y.%m.%d 00:00') AS START_TIME
</if>
</if>
,DATE_FORMAT(NOW(),'%Y.%m.%d %H:%i') AS END_TIME
FROM
(SELECT
SUM(IFNULL(SEND_CNT,0)) AS SEND_CNT
,SUM(IFNULL(SUCC_CNT,0)) AS SUCC_CNT
FROM ${HUBEZ_COMMON}.EZ_WEB_MSG
WHERE 1=1
AND CH_STR = #{chStr}
<if test='reqType != null and reqType != ""'>
<if test='reqType eq "M"'>
<![CDATA[
AND REQ_DT > DATE_ADD(NOW(), INTERVAL -10 MINUTE)
]]>
</if>
<if test='reqType eq "H"'>
<![CDATA[
AND REQ_DT > DATE_ADD(NOW(), INTERVAL -1 HOUR)
]]>
</if>
<if test='reqType eq "D"'>
<![CDATA[
AND REQ_DT >= STR_TO_DATE(DATE_FORMAT(NOW(),'%Y%m%d'), '%Y%m%d')
]]>
</if>
</if>
GROUP BY CH_STR) T1,
(SELECT
SUM(IFNULL(FB_SUCC_CNT,0)+IFNULL(FB_FAIL_CNT,0)) AS FB_SEND_CNT
,SUM(IFNULL(FB_SUCC_CNT,0)) AS FB_SUCC_CNT
FROM ${HUBEZ_COMMON}.EZ_WEB_MSG
WHERE 1=1
AND FB_CH_STR = #{chStr}
<if test='reqType != null and reqType != ""'>
<if test='reqType eq "M"'>
<![CDATA[
AND REQ_DT > DATE_ADD(NOW(), INTERVAL -10 MINUTE)
]]>
</if>
<if test='reqType eq "H"'>
<![CDATA[
AND REQ_DT > DATE_ADD(NOW(), INTERVAL -1 HOUR)
]]>
</if>
<if test='reqType eq "D"'>
<![CDATA[
AND REQ_DT >= STR_TO_DATE(DATE_FORMAT(NOW(),'%Y%m%d'), '%Y%m%d')
]]>
</if>
</if>
GROUP BY FB_CH_STR) T2
</select>
</mapper>