mirror of
http://git.mhez-qa.uplus.co.kr/hubez/hubez-admin.git
synced 2025-12-07 05:39:35 +09:00
수정건 수정
This commit is contained in:
@@ -32,4 +32,6 @@ public interface LoginMapper {
|
||||
int updateAdmUser(AuthUser authUser);
|
||||
|
||||
void insertSendMsg(SendMsgDto sendMsgDto);
|
||||
|
||||
public List<AuthNum> getAuthNumList(AuthNum authNum);
|
||||
}
|
||||
|
||||
@@ -17,6 +17,7 @@ import org.springframework.beans.factory.annotation.Qualifier;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
@@ -39,6 +40,15 @@ public class LoginService {
|
||||
@Value("${sendMsg.tableNm}")
|
||||
private String sendMsgTableName;
|
||||
|
||||
@Value("${authentication.searchTime.min-30: 30}")
|
||||
private String searchTime30M;
|
||||
|
||||
@Value("${authentication.searchTime.min-01: 1}")
|
||||
private String searchTime01M;
|
||||
|
||||
@Value("${authentication.cntLimit: 10}")
|
||||
private int cntLimit;
|
||||
|
||||
/**
|
||||
* 1차 로그인 인증
|
||||
*
|
||||
@@ -145,8 +155,51 @@ public class LoginService {
|
||||
if (autchrFailCnt >= Const.MAX_AUTHNUM_FAIL) {
|
||||
return new AuthNumResDto(ApiResponseCode.CE_AUTHNUM_LOCK);
|
||||
}
|
||||
|
||||
|
||||
/*------------------------ 인증요청 임계 체크 2022.08.01 --------------------------------------- */
|
||||
// 인증 요청 시간에서 30분 데이터 가져오기
|
||||
Date nowDate = new Date();
|
||||
String now = DateUtils.dateToStr(nowDate, "yyyyMMddHHmmss");
|
||||
|
||||
AuthNum authParam = new AuthNum();
|
||||
authParam.setRegDt(now);
|
||||
authParam.setSttusCd(Const.AUTH_STTUS_CD_03);
|
||||
authParam.setHpNo(user.getHpNo());
|
||||
authParam.setSearchTime(searchTime30M);
|
||||
|
||||
List<AuthNum> authNumList = loginMapper.getAuthNumList(authParam);
|
||||
|
||||
if(authNumList != null && authNumList.size() > 0) { // 30분 이내에 lock 상태가 존재함
|
||||
return new AuthNumResDto(ApiResponseCode.CE_AUTHNUM_STAT_LOCK);
|
||||
}
|
||||
|
||||
authParam = new AuthNum();
|
||||
authParam.setRegDt(now);
|
||||
authParam.setSttusCd(Const.AUTH_STTUS_CD_01);
|
||||
authParam.setHpNo(user.getHpNo());
|
||||
authParam.setSearchTime(searchTime01M);
|
||||
authNumList = null;
|
||||
|
||||
authNumList = loginMapper.getAuthNumList(authParam);
|
||||
|
||||
String authNum = TextUtils.randNumStr(6);
|
||||
|
||||
if(authNumList != null) {
|
||||
if(authNumList.size() >= cntLimit) {
|
||||
// 발송 요청 건수가 1분에 10개 이상
|
||||
|
||||
// 발행한 인증번호 DB에 저장
|
||||
AuthNum anum = new AuthNum();
|
||||
anum.setAuthTpCd(Const.AUTH_TP_CD);
|
||||
anum.setSttusCd(Const.AUTH_STTUS_CD_03);
|
||||
anum.setHpNo(user.getHpNo());
|
||||
anum.setChrVal(authNum);
|
||||
anum.setRegId(user.getOprtrId());
|
||||
loginMapper.addAuthNum(anum);
|
||||
|
||||
return new AuthNumResDto(ApiResponseCode.CE_AUTHNUM_STAT_LOCK);
|
||||
}
|
||||
}
|
||||
|
||||
// 발행한 인증번호 DB에 저장
|
||||
AuthNum anum = new AuthNum();
|
||||
|
||||
@@ -18,4 +18,6 @@ public class AuthNum {
|
||||
private String chgDt; // 변경 일시
|
||||
private String oprtrId; // 어드민 ID
|
||||
private Integer authchrFailCnt; // 인증 실패 카운트
|
||||
private String searchTime; // 조회시간
|
||||
|
||||
}
|
||||
|
||||
@@ -63,6 +63,8 @@ public enum ApiResponseCode {
|
||||
,CE_SYSMGT_AUTHCODE_EXISTS_USER("4020", "해당 권한코드에 해당하는 어드민 사용자가 존재함.")
|
||||
/** 이미 등록된 발신번호로 저장 불가. */
|
||||
,CE_SENDMGT_DUPLICATE_SENDNUM("4021", "이미 등록된 발신번호로 저장 불가.")
|
||||
/** 인증번호 발송 요청 임계값 초과 분당 10회 */
|
||||
,CE_AUTHNUM_STAT_LOCK("4022", "인증요청 제한")
|
||||
// 시스템
|
||||
/** 알 수 없는 에러. */
|
||||
,SE_UNKNOWN("9999", "알 수 없는 에러");
|
||||
|
||||
@@ -14,6 +14,7 @@ public class Const {
|
||||
public static final String AUTH_TP_CD = "01"; // 어드민 로그인
|
||||
public static final String AUTH_STTUS_CD_01 = "01"; // 인증대기
|
||||
public static final String AUTH_STTUS_CD_02 = "02"; // 인증완료
|
||||
public static final String AUTH_STTUS_CD_03 = "03"; // 인증Lock
|
||||
|
||||
public static final String AUTH_CD_ADMIN = "1001";
|
||||
public static final String AUTH_CD_AGENCY = "1002";
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
spring:
|
||||
datasource-db1:
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
jdbc-url: jdbc:mysql://dev-msghubez-db.cluster-chhh2ppdeksu.ap-northeast-2.rds.amazonaws.com:3306?serverTimezone=UTC&characterEncoding=UTF-8
|
||||
jdbc-url: jdbc:mysql://dev-msghubez-db.cluster-chhh2ppdeksu.ap-northeast-2.rds.amazonaws.com:3306?serverTimezone=UTC&characterEncoding=UTF-8&autoReconnect=true
|
||||
username: hubez_admin
|
||||
password: ENC(KujgLXvYG1ZD0bT9ec6I3Ld/xV25JmyX)
|
||||
hikari:
|
||||
@@ -15,7 +15,7 @@ spring:
|
||||
max-lifetime: 1800000
|
||||
datasource-db2:
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
jdbc-url: jdbc:mysql://dev-msghubez-db.cluster-chhh2ppdeksu.ap-northeast-2.rds.amazonaws.com:3306?serverTimezone=UTC&characterEncoding=UTF-8
|
||||
jdbc-url: jdbc:mysql://dev-msghubez-db.cluster-ro-chhh2ppdeksu.ap-northeast-2.rds.amazonaws.com:3306?serverTimezone=UTC&characterEncoding=UTF-8&autoReconnect=true
|
||||
username: hubez_admin
|
||||
password: ENC(KujgLXvYG1ZD0bT9ec6I3Ld/xV25JmyX)
|
||||
hikari:
|
||||
@@ -36,7 +36,11 @@ schedule:
|
||||
authentication:
|
||||
without:
|
||||
id: superadminuser,jambler01,jambler02,jambler03,jambler04,jambler05,jambler06
|
||||
|
||||
searchTime:
|
||||
min-30: "30"
|
||||
min-01: "1"
|
||||
cntLimit: 10
|
||||
|
||||
mail:
|
||||
from: msghubez@lguplus.co.kr
|
||||
templeteCode: E0005
|
||||
|
||||
@@ -36,7 +36,11 @@ schedule:
|
||||
authentication:
|
||||
without:
|
||||
id: jambler01,jambler02,jambler03,jambler04,jambler05,jambler06,superadminuser
|
||||
|
||||
searchTime:
|
||||
min-30: "30"
|
||||
min-01: "1"
|
||||
cntLimit: 10
|
||||
|
||||
mail:
|
||||
from: msghubez@lguplus.co.kr
|
||||
templeteCode: E0005
|
||||
|
||||
@@ -15,7 +15,7 @@ spring:
|
||||
max-lifetime: 1800000
|
||||
datasource-db2:
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
jdbc-url: jdbc:mysql://prd-msghubez-db.cluster-clgtyr2wjyos.ap-northeast-2.rds.amazonaws.com:3306?serverTimezone=UTC&characterEncoding=UTF-8
|
||||
jdbc-url: jdbc:mysql://prd-msghubez-db.cluster-ro-clgtyr2wjyos.ap-northeast-2.rds.amazonaws.com:3306?serverTimezone=UTC&characterEncoding=UTF-8&autoReconnect=true
|
||||
username: hubez_admin
|
||||
password: ENC(KujgLXvYG1ZD0bT9ec6I3Ld/xV25JmyX)
|
||||
hikari:
|
||||
@@ -36,7 +36,10 @@ schedule:
|
||||
authentication:
|
||||
without:
|
||||
id: superadminuser,hacktestadmin,jambler01,jambler02,jambler03,jambler04,jambler05,jambler06,dvtadmin01,dvtadmin02,dvtadmin03,dvtadmin04,dvtadmin05,dvtadmin06,dvtadmin07,dvtadmin08,dvtadmin09,dvtadmin10,dvtadmin11,dvtadmin12,dvtadmin13,dvtadmin14,dvtadmin15,dvtadmin16,dvtadmin17,dvtadmin18,dvtadmin19,dvtadmin20
|
||||
|
||||
searchTime:
|
||||
min-30: "30"
|
||||
min-01: "1"
|
||||
cntLimit: 10
|
||||
|
||||
mail:
|
||||
from: msghubez@lguplus.co.kr
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
spring:
|
||||
datasource-db1:
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
jdbc-url: jdbc:mysql://stg-msghubez-db.cluster-chhh2ppdeksu.ap-northeast-2.rds.amazonaws.com:3306?serverTimezone=UTC&characterEncoding=UTF-8
|
||||
jdbc-url: jdbc:mysql://stg-msghubez-db.cluster-chhh2ppdeksu.ap-northeast-2.rds.amazonaws.com:3306?serverTimezone=UTC&characterEncoding=UTF-8&autoReconnect=true
|
||||
username: hubez_admin
|
||||
password: ENC(KujgLXvYG1ZD0bT9ec6I3Ld/xV25JmyX)
|
||||
hikari:
|
||||
@@ -15,7 +15,7 @@ spring:
|
||||
max-lifetime: 1800000
|
||||
datasource-db2:
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
jdbc-url: jdbc:mysql://stg-msghubez-db.cluster-chhh2ppdeksu.ap-northeast-2.rds.amazonaws.com:3306?serverTimezone=UTC&characterEncoding=UTF-8
|
||||
jdbc-url: jdbc:mysql://stg-msghubez-db.cluster-ro-chhh2ppdeksu.ap-northeast-2.rds.amazonaws.com:3306?serverTimezone=UTC&characterEncoding=UTF-8&autoReconnect=true
|
||||
username: hubez_admin
|
||||
password: ENC(KujgLXvYG1ZD0bT9ec6I3Ld/xV25JmyX)
|
||||
hikari:
|
||||
@@ -36,7 +36,11 @@ schedule:
|
||||
authentication:
|
||||
without:
|
||||
id: superadminuser,hacktestadmin,jambler01,jambler02,jambler03,jambler04,jambler05,jambler06
|
||||
|
||||
searchTime:
|
||||
min-30: "30"
|
||||
min-01: "1"
|
||||
cntLimit: 10
|
||||
|
||||
mail:
|
||||
from: msghubez@lguplus.co.kr
|
||||
templeteCode: E0005
|
||||
|
||||
@@ -214,6 +214,7 @@
|
||||
|
||||
<select id="selectSndCountList" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetailReqDto"
|
||||
resultType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetail">
|
||||
/* attractMgt-mapper.xml(selectSndCountList) */
|
||||
SELECT DATE_FORMAT(ecm.SUM_YM, '%Y-%m') AS sumYm
|
||||
, ecm.SND_CNT
|
||||
, ecm.SUCC_CNT
|
||||
@@ -351,6 +352,7 @@
|
||||
|
||||
<select id="sendNumberListExcel" parameterType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetailReqDto"
|
||||
resultType="kr.co.uplus.ez.api.attractMgt.dto.ChannelDetail">
|
||||
/* attractMgt-mapper.xml(sendNumberListExcel) */
|
||||
SELECT DATE_FORMAT(ecm.SUM_YM, '%Y-%m') AS SUM_YM
|
||||
, ecm.SND_CNT
|
||||
, S.SND_CNT AS SND_CNT_S
|
||||
|
||||
@@ -234,4 +234,39 @@
|
||||
WHERE
|
||||
OPRTR_ID = #{oprtrId}
|
||||
</update>
|
||||
|
||||
|
||||
<select id="getAuthNumList" parameterType="kr.co.uplus.ez.api.login.dto.AuthNum" resultType="kr.co.uplus.ez.api.login.dto.AuthNum">
|
||||
/* login-mapper.xml(getAuthNumList) */
|
||||
SELECT
|
||||
T2.SEQ_NO
|
||||
,T1.OPRTR_ID
|
||||
,T1.AUTHCHR_FAIL_CNT
|
||||
,T2.AUTH_TP_CD
|
||||
,T2.STTUS_CD
|
||||
,T2.HP_NO
|
||||
,T2.CHR_VAL
|
||||
,T2.EXP_DT
|
||||
,T2.REG_DT
|
||||
,T2.REG_ID
|
||||
,T2.CHG_ID
|
||||
,T2.CHG_DT
|
||||
FROM hubez_admin.EZ_ADM_USER T1
|
||||
LEFT JOIN hubez_common.EZ_AUTH_CHR T2
|
||||
ON T1.OPRTR_ID = T2.REG_ID
|
||||
AND T1.HP_NO = T2.HP_NO
|
||||
WHERE 1=1
|
||||
<if test="regDt != null and regDt != ''">
|
||||
AND T2.REG_DT >= DATE_SUB(#{regDt}, INTERVAL #{searchTime} MINUTE)
|
||||
</if>
|
||||
<if test="hpNo != null and hpNo != ''">
|
||||
AND T2.HP_NO = #{hpNo}
|
||||
</if>
|
||||
<if test="sttusCd != null and sttusCd != ''">
|
||||
AND T2.STTUS_CD = #{sttusCd}
|
||||
</if>
|
||||
<if test="authTpCd != null and authTpCd != ''">
|
||||
AND T2.AUTH_TP_CD = #{authTpCd}
|
||||
</if>
|
||||
</select>
|
||||
</mapper>
|
||||
@@ -115,7 +115,7 @@
|
||||
, 0 as FB_SUCC_CNT
|
||||
FROM hubez_common.EZ_WEB_MSG
|
||||
WHERE 1=1
|
||||
AND CH_STR = 'SMS'
|
||||
AND CH_STR = #{chStr}
|
||||
<if test='reqType != null and reqType != ""'>
|
||||
<if test='reqType eq "M"'>
|
||||
<![CDATA[
|
||||
@@ -141,7 +141,7 @@
|
||||
, SUM(IFNULL(FB_SUCC_CNT,0)) AS FB_SUCC_CNT
|
||||
FROM hubez_common.EZ_WEB_MSG
|
||||
WHERE 1=1
|
||||
AND FB_CH_STR = 'SMS'
|
||||
AND FB_CH_STR = #{chStr}
|
||||
<if test='reqType != null and reqType != ""'>
|
||||
<if test='reqType eq "M"'>
|
||||
<![CDATA[
|
||||
|
||||
@@ -205,64 +205,49 @@
|
||||
</sql>
|
||||
|
||||
<select id="selectMsgBlckwordListTotalCnt" parameterType="kr.co.uplus.ez.api.riskMgt.dto.MsgIntrcpListReqDto" resultType="int">
|
||||
/* riskMgt-mapper.xml(selectMsgBlckwordListTotalCnt) */
|
||||
SELECT
|
||||
COUNT(*) AS TOTAL_CNT
|
||||
FROM
|
||||
hubez_common.EZ_MSG_BLCKWORD emb
|
||||
LEFT OUTER JOIN hubez_common.EZ_BLCKWORD_DTL ebd
|
||||
ON emb.SEQ_NO = ebd.SEQ_NO
|
||||
/* riskMgt-mapper.xml(selectMsgBlckwordListTotalCnt) */
|
||||
SELECT COUNT(*) AS TOTAL_CNT
|
||||
FROM hubez_common.EZ_MSG_BLCKWORD emb
|
||||
WHERE 1 = 1
|
||||
<include refid="msgBlckwordListCondition"/>
|
||||
</select>
|
||||
|
||||
<select id="selectMsgBlckwordList" parameterType="kr.co.uplus.ez.api.riskMgt.dto.MsgIntrcpListReqDto" resultType="kr.co.uplus.ez.api.riskMgt.dto.MsgIntrcpList">
|
||||
/* riskMgt-mapper.xml(selectMsgBlckwordList) */
|
||||
SELECT
|
||||
@ROWNUM := @ROWNUM + 1 AS NO
|
||||
, A.*
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
emb.SEQ_NO
|
||||
, ebd.WORD
|
||||
, (SELECT
|
||||
T2.DTL_CD_NM AS codeNm
|
||||
FROM hubez_common.EZ_CD_GRP T1
|
||||
LEFT JOIN hubez_common.EZ_CD_DTL T2
|
||||
ON T1.GRP_CD = T2.GRP_CD
|
||||
WHERE T1.GRP_CD = 'SNDBLCK_YN_CD'
|
||||
AND T2.DTL_CD=emb.BLCK_YN) AS BLCK_YN
|
||||
, DATE_FORMAT(emb.CHG_DT , '%Y-%m-%d') AS LAST_CHG_DT
|
||||
,(
|
||||
SELECT
|
||||
DTL_CD_NM
|
||||
FROM
|
||||
hubez_common.EZ_CD_DTL
|
||||
WHERE
|
||||
GRP_CD = 'SNDBLCK_RSN_CD'
|
||||
AND DTL_CD = emb.BLCK_RSN_CD) AS BLCK_RSN_CD
|
||||
, emb.REG_ID
|
||||
FROM
|
||||
hubez_common.EZ_MSG_BLCKWORD emb
|
||||
LEFT OUTER JOIN hubez_common.EZ_BLCKWORD_DTL ebd
|
||||
ON emb.SEQ_NO = ebd.SEQ_NO
|
||||
WHERE 1 = 1
|
||||
<include refid="msgBlckwordListCondition"/>
|
||||
ORDER BY emb.CHG_DT DESC
|
||||
LIMIT #{page}, #{pagePerRows} ) A
|
||||
,( SELECT @ROWNUM := #{page} ) AS R;
|
||||
/* riskMgt-mapper.xml(selectMsgBlckwordList) */
|
||||
select @ROWNUM := @ROWNUM + 1 AS NO
|
||||
, A.SEQ_NO
|
||||
, ( select case when char_length(GROUP_CONCAT(WORD)) > 12 then concat(substr(GROUP_CONCAT(WORD) , 1, 12),'...')
|
||||
else GROUP_CONCAT(WORD)
|
||||
end
|
||||
from hubez_common.EZ_BLCKWORD_DTL
|
||||
where SEQ_NO = A.SEQ_NO
|
||||
) as WORD
|
||||
, (select DTL_CD_NM from hubez_common.EZ_CD_DTL where GRP_CD = 'SNDBLCK_YN_CD' and DTL_CD = A.BLCK_YN ) as BLCK_YN
|
||||
, DATE_FORMAT(A.CHG_DT , '%Y-%m-%d') AS LAST_CHG_DT
|
||||
, (select DTL_CD_NM from hubez_common.EZ_CD_DTL where GRP_CD = 'SNDBLCK_RSN_CD' and DTL_CD = A.BLCK_RSN_CD ) as BLCK_RSN_CD
|
||||
, A.REG_ID
|
||||
from (
|
||||
select emb.SEQ_NO
|
||||
, emb.BLCK_YN
|
||||
, emb.BLCK_RSN_CD
|
||||
, emb.REG_ID
|
||||
, emb.CHG_DT
|
||||
from hubez_common.EZ_MSG_BLCKWORD emb
|
||||
where 1 = 1
|
||||
<include refid="msgBlckwordListCondition"/>
|
||||
ORDER BY emb.CHG_DT DESC
|
||||
LIMIT #{page}, #{pagePerRows} ) A ,( SELECT @ROWNUM := #{page} ) AS R
|
||||
</select>
|
||||
|
||||
<sql id="msgBlckwordListCondition">
|
||||
<sql id="msgBlckwordListCondition">
|
||||
<if test="regId != null and regId != ''">
|
||||
AND UPPER(emb.REG_ID) LIKE UPPER(CONCAT('%', #{regId}, '%'))
|
||||
AND emb.REG_ID LIKE CONCAT('%', #{regId}, '%')
|
||||
</if>
|
||||
<if test="blckRsnCd != null and blckRsnCd != ''">
|
||||
AND emb.BLCK_RSN_CD = #{blckRsnCd}
|
||||
</if>
|
||||
<if test="word != null and word != ''">
|
||||
AND UPPER(ebd.WORD) LIKE UPPER(CONCAT('%', #{word}, '%'))
|
||||
and emb.SEQ_NO in (select SEQ_NO from hubez_common.EZ_BLCKWORD_DTL where WORD like CONCAT('%', #{word}, '%'))
|
||||
</if>
|
||||
</sql>
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
from (
|
||||
SELECT SUM(IFNULL(SND_CNT,0)) AS T_SND_CNT
|
||||
,SUM(IFNULL(SUCC_CNT,0)) AS T_SUCC_CNT
|
||||
,ROUND((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS T_SUCC_RT
|
||||
,TRUNCATE((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS T_SUCC_RT
|
||||
, 0 as S_SND_CNT
|
||||
, 0 as S_SUCC_CNT
|
||||
, 0 as S_SUCC_RT
|
||||
@@ -47,7 +47,7 @@
|
||||
, 0 as T_SUCC_RT
|
||||
, SUM(IFNULL(SND_CNT,0)) AS S_SND_CNT
|
||||
, SUM(IFNULL(SUCC_CNT,0)) AS S_SUCC_CNT
|
||||
, ROUND((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS S_SUCC_RT
|
||||
, TRUNCATE((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS S_SUCC_RT
|
||||
, 0 as L_SND_CNT
|
||||
, 0 as L_SUCC_CNT
|
||||
, 0 as L_SUCC_RT
|
||||
@@ -70,7 +70,7 @@
|
||||
, 0 as S_SUCC_RT
|
||||
, SUM(IFNULL(SND_CNT,0)) AS L_SND_CNT
|
||||
, SUM(IFNULL(SUCC_CNT,0)) AS L_SUCC_CNT
|
||||
, ROUND((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS L_SUCC_RT
|
||||
, TRUNCATE((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS L_SUCC_RT
|
||||
, 0 as M_SND_CNT
|
||||
, 0 as M_SUCC_CNT
|
||||
, 0 as M_SUCC_RT
|
||||
@@ -93,7 +93,7 @@
|
||||
, 0 as L_SUCC_RT
|
||||
, SUM(IFNULL(SND_CNT,0)) AS M_SND_CNT
|
||||
, SUM(IFNULL(SUCC_CNT,0)) AS M_SUCC_CNT
|
||||
, ROUND((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS M_SUCC_RT
|
||||
, TRUNCATE((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS M_SUCC_RT
|
||||
, 0 as A_SND_CNT
|
||||
, 0 as A_SUCC_CNT
|
||||
, 0 as A_SUCC_RT
|
||||
@@ -116,7 +116,7 @@
|
||||
, 0 as M_SUCC_RT
|
||||
, SUM(IFNULL(SND_CNT,0)) AS A_SND_CNT
|
||||
, SUM(IFNULL(SUCC_CNT,0)) AS A_SUCC_CNT
|
||||
, ROUND((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS A_SUCC_RT
|
||||
, TRUNCATE((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS A_SUCC_RT
|
||||
FROM hubez_common.EZ_MON_STAT
|
||||
WHERE 1=1
|
||||
AND SUM_YM BETWEEN STR_TO_DATE(CONCAT(#{startMon},'01'),'%Y%m%d') AND STR_TO_DATE(CONCAT(#{endMon},'01'),'%Y%m%d')
|
||||
@@ -143,7 +143,7 @@
|
||||
SELECT SUM_YM
|
||||
, SUM(IFNULL(SND_CNT,0)) AS T_SND_CNT
|
||||
,SUM(IFNULL(SUCC_CNT,0)) AS T_SUCC_CNT
|
||||
,ROUND((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS T_SUCC_RT
|
||||
,TRUNCATE((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS T_SUCC_RT
|
||||
, 0 as S_SND_CNT
|
||||
, 0 as S_SUCC_CNT
|
||||
, 0 as S_SUCC_RT
|
||||
@@ -167,7 +167,7 @@
|
||||
, 0 as T_SUCC_RT
|
||||
, SUM(IFNULL(SND_CNT,0)) AS S_SND_CNT
|
||||
, SUM(IFNULL(SUCC_CNT,0)) AS S_SUCC_CNT
|
||||
, ROUND((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS S_SUCC_RT
|
||||
, TRUNCATE((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS S_SUCC_RT
|
||||
, 0 as L_SND_CNT
|
||||
, 0 as L_SUCC_CNT
|
||||
, 0 as L_SUCC_RT
|
||||
@@ -192,7 +192,7 @@
|
||||
, 0 as S_SUCC_RT
|
||||
, SUM(IFNULL(SND_CNT,0)) AS L_SND_CNT
|
||||
, SUM(IFNULL(SUCC_CNT,0)) AS L_SUCC_CNT
|
||||
, ROUND((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS L_SUCC_RT
|
||||
, TRUNCATE((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS L_SUCC_RT
|
||||
, 0 as M_SND_CNT
|
||||
, 0 as M_SUCC_CNT
|
||||
, 0 as M_SUCC_RT
|
||||
@@ -217,7 +217,7 @@
|
||||
, 0 as L_SUCC_RT
|
||||
, SUM(IFNULL(SND_CNT,0)) AS M_SND_CNT
|
||||
, SUM(IFNULL(SUCC_CNT,0)) AS M_SUCC_CNT
|
||||
, ROUND((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS M_SUCC_RT
|
||||
, TRUNCATE((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS M_SUCC_RT
|
||||
, 0 as A_SND_CNT
|
||||
, 0 as A_SUCC_CNT
|
||||
, 0 as A_SUCC_RT
|
||||
@@ -242,7 +242,7 @@
|
||||
, 0 as M_SUCC_RT
|
||||
, SUM(IFNULL(SND_CNT,0)) AS A_SND_CNT
|
||||
, SUM(IFNULL(SUCC_CNT,0)) AS A_SUCC_CNT
|
||||
, ROUND((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS A_SUCC_RT
|
||||
, TRUNCATE((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS A_SUCC_RT
|
||||
FROM hubez_common.EZ_MON_STAT
|
||||
WHERE 1=1
|
||||
AND SUM_YM BETWEEN STR_TO_DATE(CONCAT(#{startMon},'01'),'%Y%m%d') AND STR_TO_DATE(CONCAT(#{endMon},'01'),'%Y%m%d')
|
||||
@@ -273,7 +273,7 @@
|
||||
from (
|
||||
SELECT SUM(IFNULL(SND_CNT,0)) AS T_SND_CNT
|
||||
,SUM(IFNULL(SUCC_CNT,0)) AS T_SUCC_CNT
|
||||
,ROUND((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS T_SUCC_RT
|
||||
,TRUNCATE((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS T_SUCC_RT
|
||||
, 0 as S_SND_CNT
|
||||
, 0 as S_SUCC_CNT
|
||||
, 0 as S_SUCC_RT
|
||||
@@ -318,7 +318,7 @@
|
||||
, 0 as S_SUCC_RT
|
||||
, SUM(IFNULL(SND_CNT,0)) AS L_SND_CNT
|
||||
, SUM(IFNULL(SUCC_CNT,0)) AS L_SUCC_CNT
|
||||
, ROUND((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS L_SUCC_RT
|
||||
, TRUNCATE((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS L_SUCC_RT
|
||||
, 0 as M_SND_CNT
|
||||
, 0 as M_SUCC_CNT
|
||||
, 0 as M_SUCC_RT
|
||||
@@ -341,7 +341,7 @@
|
||||
, 0 as L_SUCC_RT
|
||||
, SUM(IFNULL(SND_CNT,0)) AS M_SND_CNT
|
||||
, SUM(IFNULL(SUCC_CNT,0)) AS M_SUCC_CNT
|
||||
, ROUND((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS M_SUCC_RT
|
||||
, TRUNCATE((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS M_SUCC_RT
|
||||
, 0 as A_SND_CNT
|
||||
, 0 as A_SUCC_CNT
|
||||
, 0 as A_SUCC_RT
|
||||
@@ -364,7 +364,7 @@
|
||||
, 0 as M_SUCC_RT
|
||||
, SUM(IFNULL(SND_CNT,0)) AS A_SND_CNT
|
||||
, SUM(IFNULL(SUCC_CNT,0)) AS A_SUCC_CNT
|
||||
, ROUND((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS A_SUCC_RT
|
||||
, TRUNCATE((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS A_SUCC_RT
|
||||
FROM hubez_common.EZ_DAY_STAT
|
||||
WHERE 1=1
|
||||
AND SUM_YMD BETWEEN STR_TO_DATE(#{startDay},'%Y%m%d') AND STR_TO_DATE(#{endDay},'%Y%m%d')
|
||||
@@ -391,7 +391,7 @@
|
||||
SELECT SUM_YMD
|
||||
, SUM(IFNULL(SND_CNT,0)) AS T_SND_CNT
|
||||
,SUM(IFNULL(SUCC_CNT,0)) AS T_SUCC_CNT
|
||||
,ROUND((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS T_SUCC_RT
|
||||
,TRUNCATE((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS T_SUCC_RT
|
||||
, 0 as S_SND_CNT
|
||||
, 0 as S_SUCC_CNT
|
||||
, 0 as S_SUCC_RT
|
||||
@@ -415,7 +415,7 @@
|
||||
, 0 as T_SUCC_RT
|
||||
, SUM(IFNULL(SND_CNT,0)) AS S_SND_CNT
|
||||
, SUM(IFNULL(SUCC_CNT,0)) AS S_SUCC_CNT
|
||||
, ROUND((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS S_SUCC_RT
|
||||
, TRUNCATE((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS S_SUCC_RT
|
||||
, 0 as L_SND_CNT
|
||||
, 0 as L_SUCC_CNT
|
||||
, 0 as L_SUCC_RT
|
||||
@@ -440,7 +440,7 @@
|
||||
, 0 as S_SUCC_RT
|
||||
, SUM(IFNULL(SND_CNT,0)) AS L_SND_CNT
|
||||
, SUM(IFNULL(SUCC_CNT,0)) AS L_SUCC_CNT
|
||||
, ROUND((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS L_SUCC_RT
|
||||
, TRUNCATE((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS L_SUCC_RT
|
||||
, 0 as M_SND_CNT
|
||||
, 0 as M_SUCC_CNT
|
||||
, 0 as M_SUCC_RT
|
||||
@@ -465,7 +465,7 @@
|
||||
, 0 as L_SUCC_RT
|
||||
, SUM(IFNULL(SND_CNT,0)) AS M_SND_CNT
|
||||
, SUM(IFNULL(SUCC_CNT,0)) AS M_SUCC_CNT
|
||||
, ROUND((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS M_SUCC_RT
|
||||
, TRUNCATE((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS M_SUCC_RT
|
||||
, 0 as A_SND_CNT
|
||||
, 0 as A_SUCC_CNT
|
||||
, 0 as A_SUCC_RT
|
||||
@@ -490,7 +490,7 @@
|
||||
, 0 as M_SUCC_RT
|
||||
, SUM(IFNULL(SND_CNT,0)) AS A_SND_CNT
|
||||
, SUM(IFNULL(SUCC_CNT,0)) AS A_SUCC_CNT
|
||||
, ROUND((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS A_SUCC_RT
|
||||
, TRUNCATE((SUM(IFNULL(SUCC_CNT,0)) / SUM(IFNULL(SND_CNT,0)) * 100), 2) AS A_SUCC_RT
|
||||
FROM hubez_common.EZ_DAY_STAT
|
||||
WHERE 1=1
|
||||
AND SUM_YMD BETWEEN STR_TO_DATE(#{startDay},'%Y%m%d') AND STR_TO_DATE(#{endDay},'%Y%m%d')
|
||||
@@ -521,7 +521,7 @@
|
||||
, t1.BIZRNO AS bizrno
|
||||
, (t2.sndCntS + t2.sndCntL + t2.sndCntM + t2.sndCntR) AS sndCnt
|
||||
, (t2.succCntS + t2.succCntL + t2.succCntM + t2.succCntR) AS succCnt
|
||||
, round((t2.succCntS + t2.succCntL + t2.succCntM + t2.succCntR) / (t2.sndCntS + t2.sndCntL + t2.sndCntM + t2.sndCntR), 2) as succRt
|
||||
, TRUNCATE((t2.succCntS + t2.succCntL + t2.succCntM + t2.succCntR) / (t2.sndCntS + t2.sndCntL + t2.sndCntM + t2.sndCntR) * 100, 2) as succRt
|
||||
, t2.sndCntS
|
||||
, t2.succCntS
|
||||
, t2.succRtS
|
||||
@@ -576,7 +576,7 @@
|
||||
, case when sndChCd = 'SMS' then SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)
|
||||
else 0
|
||||
end as smsSuccCnt
|
||||
, case when sndChCd = 'SMS' then ROUND((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)), 2)
|
||||
, case when sndChCd = 'SMS' then TRUNCATE((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)) * 100, 2)
|
||||
else 0
|
||||
end as smsSuccRt
|
||||
, case when sndChCd = 'LMS' then SUM(SND_CNT) + SUM(FBACK_CNT)
|
||||
@@ -585,7 +585,7 @@
|
||||
, case when sndChCd = 'LMS' then SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)
|
||||
else 0
|
||||
end as lmsSuccCnt
|
||||
, case when sndChCd = 'LMS' then ROUND((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)), 2)
|
||||
, case when sndChCd = 'LMS' then TRUNCATE((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)) * 100, 2)
|
||||
else 0
|
||||
end as lmsSuccRt
|
||||
, case when sndChCd = 'MMS' then SUM(SND_CNT) + SUM(FBACK_CNT)
|
||||
@@ -594,7 +594,7 @@
|
||||
, case when sndChCd = 'MMS' then SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)
|
||||
else 0
|
||||
end as mmsSuccCnt
|
||||
, case when sndChCd = 'MMS' then ROUND((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)), 2)
|
||||
, case when sndChCd = 'MMS' then TRUNCATE((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)) * 100, 2)
|
||||
else 0
|
||||
end as mmsSuccRt
|
||||
, case when sndChCd = 'ALIMTALK' then SUM(SND_CNT) + SUM(FBACK_CNT)
|
||||
@@ -603,7 +603,7 @@
|
||||
, case when sndChCd = 'ALIMTALK' then SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)
|
||||
else 0
|
||||
end as alimtSuccCnt
|
||||
, case when sndChCd = 'ALIMTALK' then ROUND((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)), 2)
|
||||
, case when sndChCd = 'ALIMTALK' then TRUNCATE((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)) * 100, 2)
|
||||
else 0
|
||||
end as alimtSuccRt
|
||||
from (
|
||||
@@ -674,7 +674,7 @@
|
||||
, t1.BIZRNO AS bizrno
|
||||
, (t2.sndCntS + t2.sndCntL + t2.sndCntM + t2.sndCntR) AS sndCnt
|
||||
, (t2.succCntS + t2.succCntL + t2.succCntM + t2.succCntR) AS succCnt
|
||||
, round((t2.succCntS + t2.succCntL + t2.succCntM + t2.succCntR) / (t2.sndCntS + t2.sndCntL + t2.sndCntM + t2.sndCntR), 2) as succRt
|
||||
, TRUNCATE((t2.succCntS + t2.succCntL + t2.succCntM + t2.succCntR) / (t2.sndCntS + t2.sndCntL + t2.sndCntM + t2.sndCntR) * 100, 2) as succRt
|
||||
, t2.sndCntS
|
||||
, t2.succCntS
|
||||
, t2.succRtS
|
||||
@@ -728,7 +728,7 @@
|
||||
, case when sndChCd = 'SMS' then SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)
|
||||
else 0
|
||||
end as smsSuccCnt
|
||||
, case when sndChCd = 'SMS' then ROUND((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)), 2)
|
||||
, case when sndChCd = 'SMS' then TRUNCATE((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)) * 100, 2)
|
||||
else 0
|
||||
end as smsSuccRt
|
||||
, case when sndChCd = 'LMS' then SUM(SND_CNT) + SUM(FBACK_CNT)
|
||||
@@ -737,7 +737,7 @@
|
||||
, case when sndChCd = 'LMS' then SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)
|
||||
else 0
|
||||
end as lmsSuccCnt
|
||||
, case when sndChCd = 'LMS' then ROUND((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)), 2)
|
||||
, case when sndChCd = 'LMS' then TRUNCATE((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)) * 100, 2)
|
||||
else 0
|
||||
end as lmsSuccRt
|
||||
, case when sndChCd = 'MMS' then SUM(SND_CNT) + SUM(FBACK_CNT)
|
||||
@@ -746,7 +746,7 @@
|
||||
, case when sndChCd = 'MMS' then SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)
|
||||
else 0
|
||||
end as mmsSuccCnt
|
||||
, case when sndChCd = 'MMS' then ROUND((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)), 2)
|
||||
, case when sndChCd = 'MMS' then TRUNCATE((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)) * 100, 2)
|
||||
else 0
|
||||
end as mmsSuccRt
|
||||
, case when sndChCd = 'ALIMTALK' then SUM(SND_CNT) + SUM(FBACK_CNT)
|
||||
@@ -755,7 +755,7 @@
|
||||
, case when sndChCd = 'ALIMTALK' then SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)
|
||||
else 0
|
||||
end as alimtSuccCnt
|
||||
, case when sndChCd = 'ALIMTALK' then ROUND((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)), 2)
|
||||
, case when sndChCd = 'ALIMTALK' then TRUNCATE((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)) * 100, 2)
|
||||
else 0
|
||||
end as alimtSuccRt
|
||||
from (
|
||||
@@ -846,7 +846,7 @@
|
||||
, t1.BIZRNO AS BIZRNO
|
||||
, (t2.sndCntS + t2.sndCntL + t2.sndCntM + t2.sndCntR) AS SND_CNT
|
||||
, (t2.succCntS + t2.succCntL + t2.succCntM + t2.succCntR) AS SUCC_CNT
|
||||
, round((t2.succCntS + t2.succCntL + t2.succCntM + t2.succCntR) / (t2.sndCntS + t2.sndCntL + t2.sndCntM + t2.sndCntR), 2) as SUCC_RT
|
||||
, TRUNCATE((t2.succCntS + t2.succCntL + t2.succCntM + t2.succCntR) / (t2.sndCntS + t2.sndCntL + t2.sndCntM + t2.sndCntR) * 100, 2) as SUCC_RT
|
||||
, t2.sndCntS as SND_CNT_S
|
||||
, t2.succCntS as SUCC_CNT_S
|
||||
, t2.succRtS as SUCC_RT_S
|
||||
@@ -901,7 +901,7 @@
|
||||
, case when sndChCd = 'SMS' then SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)
|
||||
else 0
|
||||
end as smsSuccCnt
|
||||
, case when sndChCd = 'SMS' then ROUND((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)), 2)
|
||||
, case when sndChCd = 'SMS' then TRUNCATE((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)) * 100, 2)
|
||||
else 0
|
||||
end as smsSuccRt
|
||||
, case when sndChCd = 'LMS' then SUM(SND_CNT) + SUM(FBACK_CNT)
|
||||
@@ -910,7 +910,7 @@
|
||||
, case when sndChCd = 'LMS' then SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)
|
||||
else 0
|
||||
end as lmsSuccCnt
|
||||
, case when sndChCd = 'LMS' then ROUND((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)), 2)
|
||||
, case when sndChCd = 'LMS' then TRUNCATE((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)) * 100, 2)
|
||||
else 0
|
||||
end as lmsSuccRt
|
||||
, case when sndChCd = 'MMS' then SUM(SND_CNT) + SUM(FBACK_CNT)
|
||||
@@ -919,7 +919,7 @@
|
||||
, case when sndChCd = 'MMS' then SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)
|
||||
else 0
|
||||
end as mmsSuccCnt
|
||||
, case when sndChCd = 'MMS' then ROUND((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)), 2)
|
||||
, case when sndChCd = 'MMS' then TRUNCATE((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)) * 100, 2)
|
||||
else 0
|
||||
end as mmsSuccRt
|
||||
, case when sndChCd = 'ALIMTALK' then SUM(SND_CNT) + SUM(FBACK_CNT)
|
||||
@@ -928,7 +928,7 @@
|
||||
, case when sndChCd = 'ALIMTALK' then SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)
|
||||
else 0
|
||||
end as alimtSuccCnt
|
||||
, case when sndChCd = 'ALIMTALK' then ROUND((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)), 2)
|
||||
, case when sndChCd = 'ALIMTALK' then TRUNCATE((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)) * 100, 2)
|
||||
else 0
|
||||
end as alimtSuccRt
|
||||
from (
|
||||
@@ -999,7 +999,7 @@
|
||||
, t1.BIZRNO AS BIZRNO
|
||||
, (t2.sndCntS + t2.sndCntL + t2.sndCntM + t2.sndCntR) AS SND_CNT
|
||||
, (t2.succCntS + t2.succCntL + t2.succCntM + t2.succCntR) AS SUCC_CNT
|
||||
, round((t2.succCntS + t2.succCntL + t2.succCntM + t2.succCntR) / (t2.sndCntS + t2.sndCntL + t2.sndCntM + t2.sndCntR), 2) as SUCC_RT
|
||||
, TRUNCATE((t2.succCntS + t2.succCntL + t2.succCntM + t2.succCntR) / (t2.sndCntS + t2.sndCntL + t2.sndCntM + t2.sndCntR) * 100, 2) as SUCC_RT
|
||||
, t2.sndCntS as SND_CNT_S
|
||||
, t2.succCntS as SUCC_CNT_S
|
||||
, t2.succRtS as SUCC_RT_S
|
||||
@@ -1053,7 +1053,7 @@
|
||||
, case when sndChCd = 'SMS' then SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)
|
||||
else 0
|
||||
end as smsSuccCnt
|
||||
, case when sndChCd = 'SMS' then ROUND((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)), 2)
|
||||
, case when sndChCd = 'SMS' then TRUNCATE((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)) * 100, 2)
|
||||
else 0
|
||||
end as smsSuccRt
|
||||
, case when sndChCd = 'LMS' then SUM(SND_CNT) + SUM(FBACK_CNT)
|
||||
@@ -1062,7 +1062,7 @@
|
||||
, case when sndChCd = 'LMS' then SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)
|
||||
else 0
|
||||
end as lmsSuccCnt
|
||||
, case when sndChCd = 'LMS' then ROUND((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)), 2)
|
||||
, case when sndChCd = 'LMS' then TRUNCATE((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)) * 100, 2)
|
||||
else 0
|
||||
end as lmsSuccRt
|
||||
, case when sndChCd = 'MMS' then SUM(SND_CNT) + SUM(FBACK_CNT)
|
||||
@@ -1071,7 +1071,7 @@
|
||||
, case when sndChCd = 'MMS' then SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)
|
||||
else 0
|
||||
end as mmsSuccCnt
|
||||
, case when sndChCd = 'MMS' then ROUND((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)), 2)
|
||||
, case when sndChCd = 'MMS' then TRUNCATE((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)) * 100, 2)
|
||||
else 0
|
||||
end as mmsSuccRt
|
||||
, case when sndChCd = 'ALIMTALK' then SUM(SND_CNT) + SUM(FBACK_CNT)
|
||||
@@ -1080,7 +1080,7 @@
|
||||
, case when sndChCd = 'ALIMTALK' then SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)
|
||||
else 0
|
||||
end as alimtSuccCnt
|
||||
, case when sndChCd = 'ALIMTALK' then ROUND((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)), 2)
|
||||
, case when sndChCd = 'ALIMTALK' then TRUNCATE((SUM(SUCC_CNT) + SUM(FBACK_SUCC_CNT)) / (SUM(SND_CNT) + SUM(FBACK_CNT)) * 100, 2)
|
||||
else 0
|
||||
end as alimtSuccRt
|
||||
from (
|
||||
|
||||
Reference in New Issue
Block a user