|
|
@@ -2455,19 +2455,57 @@
|
|
|
</select>
|
|
|
|
|
|
<!-- 미로그인현황 회원리스트 -->
|
|
|
- <select id="getCustomerUnloginInfoList" resultType="Statistics">
|
|
|
+ <select id="getCustomerUnloginInfoList" parameterType="Statistics" resultType="paramMap">
|
|
|
/* TsaStatistics.getCustomerUnloginInfoList */
|
|
|
- SELECT
|
|
|
- CUST_ID
|
|
|
- , FN_DEC_AES(CUST_NM) AS CUST_NM
|
|
|
- , TIMESTAMPDIFF(MONTH, LOGIN_LDT, NOW()) AS MONTHS
|
|
|
- , FN_DEC_AES(CELL_PHNNO) AS CELL_PHNNO
|
|
|
- , FN_DEC_AES(EMAIL) AS EMAIL
|
|
|
- , SUBSTRING(FN_DEC_AES(BIRTH_YMD), 1, 6) AS BIRTH_YM
|
|
|
- FROM TB_CUSTOMER
|
|
|
- WHERE CUST_NO > 0
|
|
|
- AND CUST_STAT = 'G104_10'
|
|
|
- AND LOGIN_LDT < DATE_FORMAT(STR_TO_DATE(DATE_FORMAT(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), '%Y%m%d%H'), '%Y%m%d%H'), '%Y%m%d%H%i%s') -- now() 수정 : 조회시점의 시간까지만. ex) 2019년9월25일15시 조회 -> 20210925150000
|
|
|
+ SELECT (
|
|
|
+ SELECT CASE WHEN ROLE_CD = 'G001_0000'
|
|
|
+ THEN A.CUST_ID
|
|
|
+ ELSE CONCAT(LEFT(A.CUST_ID, 3), REPEAT('*', CHAR_LENGTH(A.CUST_ID) - 3 ) )
|
|
|
+ END
|
|
|
+ FROM TB_USER
|
|
|
+ WHERE USER_NO = #{regNo}
|
|
|
+ ) AS CUST_ID
|
|
|
+ , (
|
|
|
+ SELECT CASE WHEN ROLE_CD = 'G001_0000'
|
|
|
+ THEN A.CUST_NM
|
|
|
+ ELSE CONCAT(LEFT(A.CUST_NM, 1), REPEAT('*', CHAR_LENGTH(A.CUST_NM) - 1 ) )
|
|
|
+ END
|
|
|
+ FROM TB_USER
|
|
|
+ WHERE USER_NO = #{regNo}
|
|
|
+ ) AS CUST_NM
|
|
|
+ , (
|
|
|
+ SELECT CASE WHEN ROLE_CD = 'G001_0000'
|
|
|
+ THEN A.CELL_PHNNO
|
|
|
+ ELSE CONCAT(substr(A.CELL_PHNNO, 1, 4), '****', substr(A.CELL_PHNNO, 9, 13))
|
|
|
+ END
|
|
|
+ FROM TB_USER
|
|
|
+ WHERE USER_NO = #{regNo}
|
|
|
+ ) AS CELL_PHNNO
|
|
|
+ , (
|
|
|
+ SELECT CASE WHEN ROLE_CD = 'G001_0000'
|
|
|
+ THEN A.EMAIL
|
|
|
+ ELSE CONCAT(LEFT(A.EMAIL, 2), REPEAT('*', instr(A.EMAIL, '@') - 3), SUBSTRING(A.EMAIL, instr(EMAIL, '@'), LENGTH(A.EMAIL)))
|
|
|
+ END
|
|
|
+ FROM TB_USER
|
|
|
+ WHERE USER_NO = #{regNo}
|
|
|
+ ) AS EMAIL
|
|
|
+ , MONTHS
|
|
|
+ , BIRTH_YM
|
|
|
+ FROM (
|
|
|
+ SELECT CUST_ID
|
|
|
+ , FN_DEC_AES(CUST_NM) AS CUST_NM
|
|
|
+ , TIMESTAMPDIFF(MONTH, LOGIN_LDT, NOW()) AS MONTHS
|
|
|
+ , CASE WHEN CELL_PHNNO != 'xx'
|
|
|
+ THEN FN_DEC_AES(CELL_PHNNO)
|
|
|
+ ELSE CELL_PHNNO
|
|
|
+ END AS CELL_PHNNO
|
|
|
+ , FN_DEC_AES(EMAIL) AS EMAIL
|
|
|
+ , SUBSTRING(FN_DEC_AES(BIRTH_YMD), 1, 6) AS BIRTH_YM
|
|
|
+ FROM TB_CUSTOMER
|
|
|
+ WHERE CUST_NO > 0
|
|
|
+ AND CUST_STAT = 'G104_10'
|
|
|
+ AND LOGIN_LDT <![CDATA[ < ]]> DATE_FORMAT(STR_TO_DATE(DATE_FORMAT(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), '%Y%m%d%H'), '%Y%m%d%H'), '%Y-%m-%d %H:%i:%s') -- now() 수정 : 조회시점의 시간까지만. ex) 2019년9월25일15시 조회 -> 20210925150000
|
|
|
+ ) A
|
|
|
</select>
|
|
|
|
|
|
<!-- 마케팅수신동의현황 -->
|
|
|
@@ -2570,16 +2608,51 @@
|
|
|
</select>
|
|
|
|
|
|
<!-- 휴면전환 잔여일별현황 회원리스트 -->
|
|
|
- <select id="getCustomerDormRemainInfoList" resultType="Statistics">
|
|
|
+ <select id="getCustomerDormRemainInfoList" parameterType="Statistics" resultType="paramMap">
|
|
|
/* TsaStatistics.getCustomerDormRemainInfoList */
|
|
|
- SELECT
|
|
|
- *
|
|
|
+ SELECT GB
|
|
|
+ , BIRTH_YM
|
|
|
+ , (
|
|
|
+ SELECT CASE WHEN ROLE_CD = 'G001_0000'
|
|
|
+ THEN A.CUST_ID
|
|
|
+ ELSE CONCAT(LEFT(A.CUST_ID, 3), REPEAT('*', CHAR_LENGTH(A.CUST_ID) - 3 ) )
|
|
|
+ END
|
|
|
+ FROM TB_USER
|
|
|
+ WHERE USER_NO = #{regNo}
|
|
|
+ ) AS CUST_ID
|
|
|
+ , (
|
|
|
+ SELECT CASE WHEN ROLE_CD = 'G001_0000'
|
|
|
+ THEN A.CUST_NM
|
|
|
+ ELSE CONCAT(LEFT(A.CUST_NM, 1), REPEAT('*', CHAR_LENGTH(A.CUST_NM) - 1 ) )
|
|
|
+ END
|
|
|
+ FROM TB_USER
|
|
|
+ WHERE USER_NO = #{regNo}
|
|
|
+ ) AS CUST_NM
|
|
|
+ , (
|
|
|
+ SELECT CASE WHEN ROLE_CD = 'G001_0000'
|
|
|
+ THEN A.CELL_PHNNO
|
|
|
+ ELSE CONCAT(substr(A.CELL_PHNNO, 1, 4), '****', substr(A.CELL_PHNNO, 9, 13))
|
|
|
+ END
|
|
|
+ FROM TB_USER
|
|
|
+ WHERE USER_NO = #{regNo}
|
|
|
+ ) AS CELL_PHNNO
|
|
|
+ , (
|
|
|
+ SELECT CASE WHEN ROLE_CD = 'G001_0000'
|
|
|
+ THEN A.EMAIL
|
|
|
+ ELSE CONCAT(LEFT(A.EMAIL, 2), REPEAT('*', instr(A.EMAIL, '@') - 3), SUBSTRING(A.EMAIL, instr(EMAIL, '@'), LENGTH(A.EMAIL)))
|
|
|
+ END
|
|
|
+ FROM TB_USER
|
|
|
+ WHERE USER_NO = #{regNo}
|
|
|
+ ) AS EMAIL
|
|
|
FROM (
|
|
|
-- 12개월
|
|
|
SELECT '12개월' AS GB -- 12개월
|
|
|
, CUST_ID
|
|
|
, FN_DEC_AES(CUST_NM) AS CUST_NM
|
|
|
- , FN_DEC_AES(CELL_PHNNO) AS CELL_PHNNO
|
|
|
+ , CASE WHEN CELL_PHNNO != 'xx'
|
|
|
+ THEN FN_DEC_AES(CELL_PHNNO)
|
|
|
+ ELSE CELL_PHNNO
|
|
|
+ END AS CELL_PHNNO
|
|
|
, FN_DEC_AES(EMAIL) AS EMAIL
|
|
|
, SUBSTRING(FN_DEC_AES(BIRTH_YMD), 1, 6) AS BIRTH_YM
|
|
|
FROM TB_CUSTOMER
|
|
|
@@ -2591,40 +2664,49 @@
|
|
|
SELECT '9개월' AS GB -- 9개월
|
|
|
, CUST_ID
|
|
|
, FN_DEC_AES(CUST_NM) AS CUST_NM
|
|
|
- , FN_DEC_AES(CELL_PHNNO) AS CELL_PHNNO
|
|
|
+ , CASE WHEN CELL_PHNNO != 'xx'
|
|
|
+ THEN FN_DEC_AES(CELL_PHNNO)
|
|
|
+ ELSE CELL_PHNNO
|
|
|
+ END AS CELL_PHNNO
|
|
|
, FN_DEC_AES(EMAIL) AS EMAIL
|
|
|
, SUBSTRING(FN_DEC_AES(BIRTH_YMD), 1, 6) AS BIRTH_YM
|
|
|
FROM TB_CUSTOMER
|
|
|
WHERE CUST_NO > 0
|
|
|
AND CUST_STAT = 'G104_10'
|
|
|
AND LOGIN_LDT >= DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -3 MONTH ), '%Y%m%d%H%i%s')
|
|
|
- AND LOGIN_LDT < DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -1 DAY ), '%Y%m%d%H%i%s')
|
|
|
+ AND LOGIN_LDT <![CDATA[ < ]]> DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -1 DAY ), '%Y%m%d%H%i%s')
|
|
|
-- 6개월
|
|
|
UNION ALL
|
|
|
SELECT '6개월' AS GB -- 6개월
|
|
|
, CUST_ID
|
|
|
, FN_DEC_AES(CUST_NM) AS CUST_NM
|
|
|
- , FN_DEC_AES(CELL_PHNNO) AS CELL_PHNNO
|
|
|
+ , CASE WHEN CELL_PHNNO != 'xx'
|
|
|
+ THEN FN_DEC_AES(CELL_PHNNO)
|
|
|
+ ELSE CELL_PHNNO
|
|
|
+ END AS CELL_PHNNO
|
|
|
, FN_DEC_AES(EMAIL) AS EMAIL
|
|
|
, SUBSTRING(FN_DEC_AES(BIRTH_YMD), 1, 6) AS BIRTH_YM
|
|
|
FROM TB_CUSTOMER
|
|
|
WHERE CUST_NO > 0
|
|
|
AND CUST_STAT = 'G104_10'
|
|
|
AND LOGIN_LDT >= DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -6 MONTH ), '%Y%m%d%H%i%s')
|
|
|
- AND LOGIN_LDT < DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -3 MONTH ), '%Y%m%d%H%i%s')
|
|
|
+ AND LOGIN_LDT <![CDATA[ < ]]> DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -3 MONTH ), '%Y%m%d%H%i%s')
|
|
|
-- 3개월
|
|
|
UNION ALL
|
|
|
SELECT '3개월' AS GB -- ~3개월
|
|
|
, CUST_ID
|
|
|
, FN_DEC_AES(CUST_NM) AS CUST_NM
|
|
|
- , FN_DEC_AES(CELL_PHNNO) AS CELL_PHNNO
|
|
|
+ , CASE WHEN CELL_PHNNO != 'xx'
|
|
|
+ THEN FN_DEC_AES(CELL_PHNNO)
|
|
|
+ ELSE CELL_PHNNO
|
|
|
+ END AS CELL_PHNNO
|
|
|
, FN_DEC_AES(EMAIL) AS EMAIL
|
|
|
, SUBSTRING(FN_DEC_AES(BIRTH_YMD), 1, 6) AS BIRTH_YM
|
|
|
FROM TB_CUSTOMER
|
|
|
WHERE CUST_NO > 0
|
|
|
AND CUST_STAT = 'G104_10'
|
|
|
AND LOGIN_LDT >= DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -9 MONTH ), '%Y%m%d%H%i%s')
|
|
|
- AND LOGIN_LDT < DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -6 MONTH ), '%Y%m%d%H%i%s')
|
|
|
- ) Z
|
|
|
+ AND LOGIN_LDT <![CDATA[ < ]]> DATE_FORMAT(DATE_ADD(STR_TO_DATE(DATE_FORMAT(NOW(), '%Y%m%d%H'), '%Y%m%d%H'), INTERVAL -6 MONTH ), '%Y%m%d%H%i%s')
|
|
|
+ ) A
|
|
|
</select>
|
|
|
</mapper>
|