diff --git a/frontend/src/modules/attractMgt/views/ChannelDetail.vue b/frontend/src/modules/attractMgt/views/ChannelDetail.vue index 3cb0ad1..882e6ca 100644 --- a/frontend/src/modules/attractMgt/views/ChannelDetail.vue +++ b/frontend/src/modules/attractMgt/views/ChannelDetail.vue @@ -97,17 +97,20 @@
- - - - - - + + + + + + + + + - + @@ -115,6 +118,9 @@ + + + @@ -125,6 +131,9 @@ + + + @@ -133,6 +142,9 @@ + + +
날짜채널별 발송 건수채널별 발송 건수
전체LMS MMS 알림톡대체발송SMS대체발송LMS대체발송MMS
{{ sndCntLTotal.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') }} {{ sndCntMTotal.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') }} {{ sndCntATotal.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') }}{{ fbSndCntSTotal.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') }}{{ fbSndCntLTotal.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') }}{{ fbSndCntMTotal.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') }}
{{ option.sumYm }}{{ option.sndCntL.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') }} {{ option.sndCntM.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') }} {{ option.sndCntA.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') }}{{ option.fbSndCntS.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') }}{{ option.fbSndCntL.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') }}{{ option.fbSndCntM.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') }}
@@ -200,6 +212,9 @@ export default { sndCntLTotal: 0, sndCntMTotal: 0, sndCntATotal: 0, + fbSndCntSTotal: 0, + fbSndCntLTotal: 0, + fbSndCntMTotal: 0, list: [], totalCnt: '', props: {}, @@ -244,21 +259,31 @@ export default { var sndCntLTotal = 0; var sndCntMTotal = 0; var sndCntATotal = 0; + var fbSndCntSTotal = 0; + var fbSndCntLTotal = 0; + var fbSndCntMTotal = 0; if (result != null && result.retCode == '0000') { //데이터값이 널이면 오류처리 - + console.log(result.data.list); for (var i = 0; i < result.data.list.length; i++) { sndCntTotal = sndCntTotal + Number(result.data.list[i].sndCnt); sndCntSTotal = sndCntSTotal + Number(result.data.list[i].sndCntS); sndCntLTotal = sndCntLTotal + Number(result.data.list[i].sndCntL); sndCntMTotal = sndCntMTotal + Number(result.data.list[i].sndCntM); sndCntATotal = sndCntATotal + Number(result.data.list[i].sndCntA); + fbSndCntSTotal = fbSndCntSTotal + Number(result.data.list[i].fbSndCntS); + fbSndCntLTotal = fbSndCntLTotal + Number(result.data.list[i].fbSndCntL); + fbSndCntMTotal = fbSndCntMTotal + Number(result.data.list[i].fbSndCntM); } this.sndCntTotal = sndCntTotal; this.sndCntSTotal = sndCntSTotal; this.sndCntLTotal = sndCntLTotal; this.sndCntMTotal = sndCntMTotal; this.sndCntATotal = sndCntATotal; + this.fbSndCntSTotal = fbSndCntSTotal; + this.fbSndCntLTotal = fbSndCntLTotal; + this.fbSndCntMTotal = fbSndCntMTotal; + this.list = result.data.list; this.sndCntS = result.data.sndCntS; this.sndCntL = result.data.sndCntL; diff --git a/src/main/java/kr/co/uplus/ez/api/attractMgt/dto/ChannelDetail.java b/src/main/java/kr/co/uplus/ez/api/attractMgt/dto/ChannelDetail.java index 78266b5..02f36c2 100644 --- a/src/main/java/kr/co/uplus/ez/api/attractMgt/dto/ChannelDetail.java +++ b/src/main/java/kr/co/uplus/ez/api/attractMgt/dto/ChannelDetail.java @@ -31,5 +31,17 @@ public class ChannelDetail implements Serializable { private String sndCntA; @ApiModelProperty(example = "10", name = "알림톡 성공건수", dataType = "String") private String succCntA; - + + @ApiModelProperty(example = "대체발송SMS 발송건수", name = "대체발송SMS 발송건수", dataType = "String") + private String fbSndCntS; + @ApiModelProperty(example = "대체발송SMS 성공건수", name = "대체발송SMS 성공건수", dataType = "String") + private String fbSuccCntS; + @ApiModelProperty(example = "대체발송LMS 발송건수", name = "대체발송LMS 발송건수", dataType = "String") + private String fbSndCntL; + @ApiModelProperty(example = "대체발송LMS 성공건수", name = "대체발송LMS 성공건수", dataType = "String") + private String fbSuccCntL; + @ApiModelProperty(example = "대체발송MMS 발송건수", name = "대체발송MMS 발송건수", dataType = "String") + private String fbSndCntM; + @ApiModelProperty(example = "대체발송MMS 성공건수", name = "대체발송MMS 성공건수", dataType = "String") + private String fbSuccCntM; } diff --git a/src/main/resources/mapper/mysql/attractMgt/attractMgt-mapper.xml b/src/main/resources/mapper/mysql/attractMgt/attractMgt-mapper.xml index 0f53d64..a798ffe 100644 --- a/src/main/resources/mapper/mysql/attractMgt/attractMgt-mapper.xml +++ b/src/main/resources/mapper/mysql/attractMgt/attractMgt-mapper.xml @@ -41,13 +41,13 @@ , (SELECT DTL_CD_NM FROM hubez_common.EZ_CD_DTL WHERE GRP_CD = 'CUST_KD_CD' AND DTL_CD = A.CUST_TY_CD) as CUST_TY_NM , ( - SELECT - sum(IFNULL(ecm.SND_CNT,0) + IFNULL(ecm.FBACK_CNT,0)) - FROM - hubez_common.EZ_CUST_MSTAT ecm - WHERE - ecm.USER_SEQ = A.USER_SEQ - AND ecm.SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH) + SELECT + sum(IFNULL(ecm.SND_CNT,0)) AS SND_CNT + FROM + hubez_common.EZ_CUST_MSTAT ecm + WHERE + ecm.USER_SEQ = A.USER_SEQ + AND ecm.SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -24 MONTH) AND NOW() ) AS SND_CNT FROM ( @@ -95,13 +95,13 @@ , (SELECT DTL_CD_NM FROM hubez_common.EZ_CD_DTL WHERE GRP_CD = 'CUST_KD_CD' AND DTL_CD = A.CUST_TY_CD) as CUST_TY_NM , ( - SELECT - sum(IFNULL(ecm.SND_CNT,0) + IFNULL(ecm.FBACK_CNT,0)) - FROM - hubez_common.EZ_CUST_MSTAT ecm - WHERE - ecm.USER_SEQ = A.USER_SEQ - AND ecm.SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -37 MONTH) AND DATE_ADD(NOW(), INTERVAL -1 MONTH) + SELECT + sum(IFNULL(ecm.SND_CNT,0)) AS SND_CNT + FROM + hubez_common.EZ_CUST_MSTAT ecm + WHERE + ecm.USER_SEQ = A.USER_SEQ + AND ecm.SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -24 MONTH) AND NOW() ) AS SND_CNT FROM ( @@ -212,142 +212,105 @@ AND esu.USER_SEQ = #{userSeq} - + /* attractMgt-mapper.xml(selectSndCountList) */ + SELECT + SUM_YM AS sumYm, A.sndCnt, A.succCnt, A.sndCntS, A.succCntS, A.sndCntL, A.succCntL, + A.sndCntM, A.succCntM, A.sndCntR AS sndCntA, A.succCntR AS succCntA, A.fbSndCntS, A.fbSuccCntS, A.fbSndCntL, + A.fbSuccCntL, A.fbSndCntM, A.fbSuccCntM + FROM + ( + SELECT + DATE_FORMAT(S1.SUM_YM, '%Y-%m') AS SUM_YM, + (SUM(S1.sndCntS) + SUM(S1.sndCntL) + SUM(S1.sndCntM) + SUM(S1.sndCntR)) AS sndCnt, + (SUM(S1.succCntS) + SUM(S1.succCntL) +SUM(S1.succCntM) +SUM(S1.succCntR) + SUM(fbSuccCntS) + SUM(fbSuccCntL)+ SUM(fbSuccCntM)) AS succCnt, + SUM(S1.sndCntS) AS sndCntS, SUM(S1.succCntS) AS succCntS, SUM(S1.sndCntL) AS sndCntL, SUM(S1.succCntL) AS succCntL, SUM(S1.sndCntM) AS sndCntM, + SUM(S1.succCntM) AS succCntM, SUM(S1.sndCntR) AS sndCntR, SUM(S1.succCntR) AS succCntR, SUM(S1.fbSndCntS) AS fbSndCntS, SUM(S1.fbSuccCntS) AS fbSuccCntS, + SUM(S1.fbSndCntL) AS fbSndCntL, SUM(S1.fbSuccCntL) AS fbSuccCntL, SUM(S1.fbSndCntM) AS fbSndCntM, SUM(S1.fbSuccCntM) AS fbSuccCntM + FROM + ( + SELECT + SUM_YM, + CASE WHEN SND_CH_CD = 'SMS' THEN IFNULL(SND_CNT, 0) ELSE 0 END AS sndCntS, + CASE WHEN SND_CH_CD = 'SMS' THEN IFNULL(SUCC_CNT, 0) ELSE 0 END AS succCntS, + CASE WHEN SND_CH_CD = 'LMS' THEN IFNULL(SND_CNT, 0) ELSE 0 END AS sndCntL, + CASE WHEN SND_CH_CD = 'LMS' THEN IFNULL(SUCC_CNT, 0) ELSE 0 END AS succCntL, + CASE WHEN SND_CH_CD = 'MMS' THEN IFNULL(SND_CNT, 0) ELSE 0 END AS sndCntM, + CASE WHEN SND_CH_CD = 'MMS' THEN IFNULL(SUCC_CNT, 0) ELSE 0 END AS succCntM, + CASE WHEN SND_CH_CD = 'ALIMTALK' THEN IFNULL(SND_CNT, 0) ELSE 0 END AS sndCntR, + CASE WHEN SND_CH_CD = 'ALIMTALK' THEN IFNULL(SUCC_CNT, 0) ELSE 0 END AS succCntR, + CASE WHEN RPLCSND_CH_CD = 'SMS' THEN IFNULL(FBACK_CNT, 0) ELSE 0 END AS fbSndCntS, + CASE WHEN RPLCSND_CH_CD = 'SMS' THEN IFNULL(FBACK_SUCC_CNT, 0) ELSE 0 END AS fbSuccCntS, + CASE WHEN RPLCSND_CH_CD = 'LMS' THEN IFNULL(FBACK_CNT, 0) ELSE 0 END AS fbSndCntL, + CASE WHEN RPLCSND_CH_CD = 'LMS' THEN IFNULL(FBACK_SUCC_CNT, 0) ELSE 0 END AS fbSuccCntL, + CASE WHEN RPLCSND_CH_CD = 'MMS' THEN IFNULL(FBACK_CNT, 0) ELSE 0 END AS fbSndCntM, + CASE WHEN RPLCSND_CH_CD = 'MMS' THEN IFNULL(FBACK_SUCC_CNT, 0) ELSE 0 END AS fbSuccCntM + FROM + hubez_common.EZ_CUST_MSTAT ewm INNER JOIN + hubez_common.EZ_SVC_USER esu ON ewm.USER_SEQ = esu.USER_SEQ + WHERE + SUM_YM BETWEEN DATE_ADD(NOW(), INTERVAL -24 MONTH) AND NOW() + AND ewm.USER_SEQ = #{userSeq} + UNION ALL + SELECT + SUM_YM, + CASE WHEN SND_CH_CD = 'SMS' THEN SUM(SND_CNT) ELSE 0 END AS sndCntS, + CASE WHEN SND_CH_CD = 'SMS' THEN SUM(SUCC_CNT) ELSE 0 END AS succCntS, + CASE WHEN SND_CH_CD = 'LMS' THEN SUM(SND_CNT) ELSE 0 END AS sndCntL, + CASE WHEN SND_CH_CD = 'LMS' THEN SUM(SUCC_CNT) ELSE 0 END AS succCntL, + CASE WHEN SND_CH_CD = 'MMS' THEN SUM(SND_CNT) ELSE 0 END AS sndCntM, + CASE WHEN SND_CH_CD = 'MMS' THEN SUM(SUCC_CNT) ELSE 0 END AS succCntM, + CASE WHEN SND_CH_CD = 'ALIMTALK' THEN SUM(SND_CNT) ELSE 0 END AS sndCntR, + CASE WHEN SND_CH_CD = 'ALIMTALK' THEN SUM(SUCC_CNT) ELSE 0 END AS succCntR, + CASE WHEN SND_CH_CD = 'SMS' THEN SUM(FBACK_CNT) ELSE 0 END AS fbSndCntS, + CASE WHEN SND_CH_CD = 'SMS' THEN SUM(FBACK_SUCC_CNT) ELSE 0 END AS fbSuccCntS, + CASE WHEN SND_CH_CD = 'LMS' THEN SUM(FBACK_CNT) ELSE 0 END AS fbSndCntL, + CASE WHEN SND_CH_CD = 'LMS' THEN SUM(FBACK_SUCC_CNT) ELSE 0 END AS fbSuccCntL, + CASE WHEN SND_CH_CD = 'MMS' THEN SUM(FBACK_CNT) ELSE 0 END AS fbSndCntM, + CASE WHEN SND_CH_CD = 'MMS' THEN SUM(FBACK_SUCC_CNT) ELSE 0 END AS fbSuccCntM + FROM + ( + SELECT + DATE_FORMAT(ewm.YMD, '%Y-%m-01') AS SUM_YM, + REPLACE (ewm.CH_STR ,'KKO_NOTI', 'ALIMTALK') AS SND_CH_CD, + SUM(IFNULL(ewm.SEND_CNT, 0)) AS SND_CNT, + SUM(IFNULL(ewm.SUCC_CNT, 0)) AS SUCC_CNT, + 0 AS FBACK_CNT, + 0 AS FBACK_SUCC_CNT + FROM + hubez_common.EZ_WEB_MSG ewm INNER JOIN + hubez_common.EZ_SVC_USER esu ON ewm.USER_SEQ = esu.USER_SEQ + WHERE + ewm.YMD BETWEEN DATE_FORMAT( NOW(), '%Y-%m-01') AND DATE_FORMAT( NOW(), '%Y-%m-%d') + AND esu.PRNTS_USER_SEQ = #{userSeq} + GROUP BY ewm.YMD, ewm.CH_STR + UNION ALL + SELECT + DATE_FORMAT(ewm.YMD, '%Y-%m-01') AS SUM_YM, + FB_CH_STR AS SND_CH_CD, + 0 AS SND_CNT, + 0 AS SUCC_CNT, + SUM(IFNULL(ewm.FB_SUCC_CNT + ewm.FB_FAIL_CNT, 0)) AS FBACK_CNT, + SUM(IFNULL(ewm.FB_SUCC_CNT, 0)) AS FBACK_SUCC_CNT + FROM + hubez_common.EZ_WEB_MSG ewm INNER JOIN + hubez_common.EZ_SVC_USER esu ON ewm.USER_SEQ = esu.USER_SEQ + WHERE + ewm.YMD BETWEEN DATE_FORMAT( NOW(), '%Y-%m-01') AND DATE_FORMAT( NOW(), '%Y-%m-%d') + AND esu.PRNTS_USER_SEQ = #{userSeq} + AND (FB_SUCC_CNT > 0 OR FB_FAIL_CNT > 0) + GROUP BY ewm.YMD, ewm.FB_CH_STR + ) T1 + WHERE + 1 = 1 + GROUP BY SUM_YM, SND_CH_CD + ) S1 + WHERE + 1 = 1 + GROUP BY S1.SUM_YM + ) A + WHERE 1 = 1 + ORDER BY A.SUM_YM DESC