알림톡 관리자 발송목록, 회원상세 알림톡 발송목록 수정
This commit is contained in:
parent
44b00cbbdf
commit
1dac2a491a
@ -9,6 +9,9 @@ public interface MjonKakaoATService {
|
||||
//알림톡 전체 발송 리스트
|
||||
List<KakaoVO> selectMjonKakaoATGroupCompleteList(KakaoVO searchVO) throws Exception;
|
||||
|
||||
//알림톡 전체 발송 리스트(대시보드용)
|
||||
List<KakaoVO> selectMjonKakaoATGroupCompleteByUserList(KakaoVO searchVO) throws Exception;
|
||||
|
||||
//알림톡 발송 상세 리스트
|
||||
List<KakaoVO> selectMjonKakaoATGroupDtList(KakaoVO searchVO) throws Exception;
|
||||
|
||||
|
||||
@ -17,6 +17,11 @@ public class MjonKakaoATDAO extends EgovAbstractDAO {
|
||||
return (List<KakaoVO>)list("mjonKakaoATDAO.selectMjonKakaoATGroupCompleteList", p_mjonKakaoATVO);
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
public List<KakaoVO> selectMjonKakaoATGroupCompleteByUserList(KakaoVO p_mjonKakaoATVO) throws Exception{
|
||||
return (List<KakaoVO>)list("mjonKakaoATDAO.selectMjonKakaoATGroupCompleteByUserList", p_mjonKakaoATVO);
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
public List<KakaoVO> selectMjonKakaoATGroupDtList(KakaoVO p_mjonKakaoATVO) throws Exception{
|
||||
return (List<KakaoVO>)list("mjonKakaoATDAO.selectMjonKakaoATGroupDtList", p_mjonKakaoATVO);
|
||||
|
||||
@ -74,6 +74,23 @@ public class MjonKakaoATServiceImpl extends EgovAbstractServiceImpl implements M
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<KakaoVO> selectMjonKakaoATGroupCompleteByUserList(KakaoVO p_mjonKakaoATVO) throws Exception {
|
||||
|
||||
List<KakaoVO> result = new ArrayList<KakaoVO>();
|
||||
|
||||
try {
|
||||
|
||||
result = mjonKakaoATDAO.selectMjonKakaoATGroupCompleteByUserList(p_mjonKakaoATVO);
|
||||
|
||||
} catch (Exception e) {
|
||||
System.out.println("selectMjonKakaoATGroupCompleteByUserList ServiceImpl Error ::: " + e);
|
||||
}
|
||||
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<KakaoVO> selectMjonKakaoATGroupDtList(KakaoVO p_mjonKakaoATVO) throws Exception {
|
||||
|
||||
|
||||
@ -1376,7 +1376,7 @@ public class EgovUserManageController {
|
||||
sendKakaoVO.setSearchSortOrd("desc");
|
||||
sendKakaoVO.setFirstIndex(0);
|
||||
List<KakaoVO> kakaoResultList = new ArrayList<KakaoVO>();
|
||||
kakaoResultList = mjonKakaoATService.selectMjonKakaoATGroupCompleteList(sendKakaoVO);
|
||||
kakaoResultList = mjonKakaoATService.selectMjonKakaoATGroupCompleteByUserList(sendKakaoVO);
|
||||
|
||||
model.addAttribute("kakaoResultList", kakaoResultList);
|
||||
|
||||
@ -1905,7 +1905,7 @@ public class EgovUserManageController {
|
||||
//searchVO.setReserveYn("N");
|
||||
// 문자발송 완료건은 모두 보이도록 처리
|
||||
|
||||
kakaoResultList = mjonKakaoATService.selectMjonKakaoATGroupCompleteList(searchVO);
|
||||
kakaoResultList = mjonKakaoATService.selectMjonKakaoATGroupCompleteByUserList(searchVO);
|
||||
model.addAttribute("kakaoResultList", kakaoResultList);
|
||||
|
||||
//카카오톡 발송 통계 정보 불러오기
|
||||
|
||||
@ -146,7 +146,7 @@
|
||||
ELSE 'F'
|
||||
END
|
||||
) AS result ,
|
||||
<!-- ( SELECT COUNT(0)
|
||||
( SELECT COUNT(0)
|
||||
FROM MJ_MSG_DATA C
|
||||
WHERE C.DEL_FLAG = 'N'
|
||||
AND C.RESERVE_C_YN = 'N'
|
||||
@ -162,6 +162,14 @@
|
||||
AND C.MSG_TYPE = '8'
|
||||
) AS atSuccessCount ,
|
||||
( SELECT COUNT(0)
|
||||
FROM MJ_MSG_DATA C
|
||||
WHERE C.DEL_FLAG = 'N'
|
||||
AND C.RESERVE_C_YN = 'N'
|
||||
AND C.MSG_GROUP_ID = MG.MSG_GROUP_ID
|
||||
AND C.RSLT_CODE != '7000'
|
||||
AND C.MSG_TYPE = '8'
|
||||
) AS atFailCount ,
|
||||
<!-- ( SELECT COUNT(0)
|
||||
FROM MJ_MSG_DATA C
|
||||
WHERE C.DEL_FLAG = 'N'
|
||||
AND C.RESERVE_C_YN = 'N'
|
||||
@ -169,14 +177,6 @@
|
||||
AND C.RSLT_CODE = '7000'
|
||||
AND C.MSG_TYPE = '9'
|
||||
) AS ftSuccessCount ,
|
||||
( SELECT COUNT(0)
|
||||
FROM MJ_MSG_DATA C
|
||||
WHERE C.DEL_FLAG = 'N'
|
||||
AND C.RESERVE_C_YN = 'N'
|
||||
AND C.MSG_GROUP_ID = MG.MSG_GROUP_ID
|
||||
AND C.RSLT_CODE != '7000'
|
||||
AND C.MSG_TYPE = '8'
|
||||
) AS atFailCount ,
|
||||
( SELECT COUNT(0)
|
||||
FROM MJ_MSG_DATA C
|
||||
WHERE C.DEL_FLAG = 'N'
|
||||
@ -185,10 +185,7 @@
|
||||
AND C.RSLT_CODE != '7000'
|
||||
AND C.MSG_TYPE = '9'
|
||||
) AS ftFailCount , -->
|
||||
'0' AS successCount,
|
||||
'0' AS atSuccessCount,
|
||||
'0' AS ftSuccessCount,
|
||||
'0' AS atFailCount,
|
||||
'0' AS ftFailCount,
|
||||
MSG_NOTICETALK_SENDER_KEY ,
|
||||
MSG_NOTICETALK_TMP_KEY,
|
||||
@ -201,9 +198,9 @@
|
||||
AND MD.DEL_FLAG = 'N'
|
||||
<!-- JSPark 2023.03.24 알림톡 전송완료 목록은 (즉시 + 예약 발송완료) 노출 -->
|
||||
<![CDATA[ AND MG.REQ_DATE <= NOW() ]]>
|
||||
<isNotEmpty property="userId">
|
||||
<isNotEmpty property="userId">
|
||||
AND MG.USER_ID = #userId#
|
||||
</isNotEmpty>
|
||||
</isNotEmpty>
|
||||
AND MG.DEL_FLAG ='N'
|
||||
AND MG.RESERVE_C_YN = 'N'
|
||||
AND MG.MSG_TYPE = '8'
|
||||
@ -318,6 +315,318 @@
|
||||
|
||||
</select>
|
||||
|
||||
<select id="mjonKakaoATDAO.selectMjonKakaoATGroupCompleteByUserList" parameterClass="kakaoVO" resultClass="kakaoVO">
|
||||
SELECT
|
||||
M2.totCnt ,
|
||||
M2.userId ,
|
||||
M2.msgGroupId ,
|
||||
M2.msgGroupCnt ,
|
||||
M2.smsTxt ,
|
||||
M2.subject ,
|
||||
M2.regDate ,
|
||||
M2.reqDate ,
|
||||
M2.rsltDate ,
|
||||
M2.callFrom ,
|
||||
M2.callTo ,
|
||||
M2.totPrice ,
|
||||
M2.eachPrice ,
|
||||
M2.curState ,
|
||||
M2.rsltCode ,
|
||||
M2.rsltCode2 ,
|
||||
M2.orderByrsltCode ,
|
||||
M2.delFlag ,
|
||||
M2.msgType ,
|
||||
M2.fileCnt ,
|
||||
M2.agentCode ,
|
||||
M2.reserveYn ,
|
||||
M2.reserveCYn ,
|
||||
M2.cancelDate ,
|
||||
M2.msgTypeName ,
|
||||
M2.orderByCode ,
|
||||
M2.msgResult ,
|
||||
M2.msgNoticetalkSenderKey ,
|
||||
M2.msgNoticetalkTmpKey ,
|
||||
M2.yellowId ,
|
||||
M2.userNm ,
|
||||
( SELECT COUNT(0)
|
||||
FROM MJ_MSG_DATA C
|
||||
WHERE C.DEL_FLAG = 'N'
|
||||
AND C.RESERVE_C_YN = 'N'
|
||||
AND C.MSG_GROUP_ID = M2.msgGroupId
|
||||
AND C.RSLT_CODE = '7000'
|
||||
) AS successCount ,
|
||||
( SELECT COUNT(0)
|
||||
FROM MJ_MSG_DATA C
|
||||
WHERE C.DEL_FLAG = 'N'
|
||||
AND C.RESERVE_C_YN = 'N'
|
||||
AND C.MSG_GROUP_ID = M2.msgGroupId
|
||||
AND C.RSLT_CODE = '7000'
|
||||
AND C.MSG_TYPE = '8'
|
||||
) AS atSuccessCount ,
|
||||
( SELECT COUNT(0)
|
||||
FROM MJ_MSG_DATA C
|
||||
WHERE C.DEL_FLAG = 'N'
|
||||
AND C.RESERVE_C_YN = 'N'
|
||||
AND C.MSG_GROUP_ID = M2.msgGroupId
|
||||
AND C.RSLT_CODE != '7000'
|
||||
AND C.MSG_TYPE = '8'
|
||||
) AS atFailCount ,
|
||||
<!-- ( SELECT COUNT(0)
|
||||
FROM MJ_MSG_DATA C
|
||||
WHERE C.DEL_FLAG = 'N'
|
||||
AND C.RESERVE_C_YN = 'N'
|
||||
AND C.MSG_GROUP_ID = MG.MSG_GROUP_ID
|
||||
AND C.RSLT_CODE = '7000'
|
||||
AND C.MSG_TYPE = '9'
|
||||
) AS ftSuccessCount ,
|
||||
( SELECT COUNT(0)
|
||||
FROM MJ_MSG_DATA C
|
||||
WHERE C.DEL_FLAG = 'N'
|
||||
AND C.RESERVE_C_YN = 'N'
|
||||
AND C.MSG_GROUP_ID = MG.MSG_GROUP_ID
|
||||
AND C.RSLT_CODE != '7000'
|
||||
AND C.MSG_TYPE = '9'
|
||||
) AS ftFailCount , -->
|
||||
'0' AS ftSuccessCount,
|
||||
'0' AS ftFailCount,
|
||||
M2.bizUmid,
|
||||
M2.callStatus,
|
||||
M2.bizKakaoResendYn,
|
||||
( SELECT COUNT(0)
|
||||
FROM BIZ_LOG BL1,
|
||||
MJ_MSG_DATA MMD1
|
||||
WHERE M2.bizKakaoResendYn = 'Y'
|
||||
AND M2.msgGroupId = MMD1.MSG_GROUP_ID
|
||||
AND MMD1.BIZ_UMID = BL1.CMID
|
||||
AND (
|
||||
CASE
|
||||
WHEN BL1.CALL_STATUS in ('6600','4100')
|
||||
THEN 'S'
|
||||
ELSE 'F'
|
||||
END ) = 'S'
|
||||
) kakaoResendSuccCount,
|
||||
( SELECT COUNT(0)
|
||||
FROM BIZ_LOG BL1,
|
||||
MJ_MSG_DATA MMD1
|
||||
WHERE M2.bizKakaoResendYn = 'Y'
|
||||
AND M2.msgGroupId = MMD1.MSG_GROUP_ID
|
||||
AND MMD1.BIZ_UMID = BL1.CMID
|
||||
AND (
|
||||
CASE
|
||||
WHEN BL1.CALL_STATUS in ('6600','4100')
|
||||
THEN 'S'
|
||||
ELSE 'F'
|
||||
END ) = 'F'
|
||||
) kakaoResendFailCount
|
||||
FROM (
|
||||
SELECT
|
||||
COUNT(M.USER_ID) OVER() AS totCnt ,
|
||||
M.USER_ID AS userId ,
|
||||
MSG_GROUP_ID AS msgGroupId ,
|
||||
MSG_GROUP_CNT AS msgGroupCnt ,
|
||||
SMS_TXT AS smsTxt ,
|
||||
M.SUBJECT AS subject ,
|
||||
DATE_FORMAT(REGDATE, '%Y-%m-%d %T') AS regDate ,
|
||||
DATE_FORMAT(REQ_DATE, '%Y-%m-%d %T') AS reqDate ,
|
||||
DATE_FORMAT(RSLT_DATE, '%Y-%m-%d %T') AS rsltDate ,
|
||||
CALL_FROM AS callFrom ,
|
||||
CALL_TO AS callTo ,
|
||||
TOT_PRICE AS totPrice ,
|
||||
EACH_PRICE AS eachPrice ,
|
||||
CUR_STATE AS curState ,
|
||||
RSLT_CODE AS rsltCode ,
|
||||
RSLT_CODE2 AS rsltCode2 ,
|
||||
IF((RSLT_CODE != '7000'),'1','0') AS orderByrsltCode ,
|
||||
DEL_FLAG AS delFlag ,
|
||||
M.MSG_TYPE AS msgType ,
|
||||
FILE_CNT AS fileCnt ,
|
||||
AGENT_CODE AS agentCode ,
|
||||
RESERVE_YN AS reserveYn ,
|
||||
RESERVE_C_YN AS reserveCYn ,
|
||||
CANCELDATE AS cancelDate ,
|
||||
msgTypeName AS msgTypeName ,
|
||||
orderByCode AS orderByCode ,
|
||||
RESULT AS msgResult ,
|
||||
MSG_NOTICETALK_SENDER_KEY AS msgNoticetalkSenderKey ,
|
||||
MSG_NOTICETALK_TMP_KEY AS msgNoticetalkTmpKey ,
|
||||
MKPI.YELLOW_ID AS yellowId ,
|
||||
LTM.MBER_NM AS userNm ,
|
||||
BIZ_UMID AS bizUmid,
|
||||
BL.CALL_STATUS AS callStatus,
|
||||
M.BIZ_KAKAO_RESEND_YN AS bizKakaoResendYn
|
||||
FROM (
|
||||
SELECT MG.USER_ID ,
|
||||
MG.MSG_GROUP_ID ,
|
||||
MG.MSG_GROUP_CNT ,
|
||||
MG.SMS_TXT ,
|
||||
MG.SUBJECT ,
|
||||
MG.REGDATE ,
|
||||
MG.REQ_DATE ,
|
||||
MD.RSLT_DATE ,
|
||||
MG.CALL_FROM ,
|
||||
MG.TOT_PRICE ,
|
||||
MG.EACH_PRICE ,
|
||||
MG.DEL_FLAG ,
|
||||
MG.MSG_TYPE ,
|
||||
MG.FILE_CNT ,
|
||||
MG.AGENT_CODE ,
|
||||
MG.RESERVE_YN ,
|
||||
MG.RESERVE_C_YN ,
|
||||
MG.CANCELDATE ,
|
||||
MD.MSG_SEQ ,
|
||||
MD.CALL_TO ,
|
||||
MD.CUR_STATE ,
|
||||
MD.RSLT_CODE ,
|
||||
MD.RSLT_CODE2 ,
|
||||
CASE
|
||||
WHEN MG.MSG_TYPE = '8'
|
||||
THEN '알림톡'
|
||||
WHEN MG.MSG_TYPE = '9'
|
||||
THEN '친구톡'
|
||||
END msgTypeName ,
|
||||
CASE
|
||||
WHEN MG.MSG_TYPE = '8'
|
||||
THEN '1'
|
||||
ELSE '2'
|
||||
END orderByCode ,
|
||||
(
|
||||
CASE
|
||||
WHEN MD.RSLT_CODE = '7000'
|
||||
THEN 'S'
|
||||
WHEN (MD.RSLT_CODE IS NULL AND MD.SENT_DATE IS NULL AND MD.RSLT_DATE IS NULL)
|
||||
THEN 'W'
|
||||
ELSE 'F'
|
||||
END
|
||||
) AS result ,
|
||||
MSG_NOTICETALK_SENDER_KEY ,
|
||||
MSG_NOTICETALK_TMP_KEY,
|
||||
MD.BIZ_UMID,
|
||||
MD.BIZ_KAKAO_RESEND_YN
|
||||
FROM MJ_MSG_DATA MD ,
|
||||
MJ_MSG_GROUP_DATA MG
|
||||
WHERE MD.MSG_GROUP_ID = MG.MSG_GROUP_ID
|
||||
AND IFNULL(MG.DEL_FLAG, 'N') = 'N'
|
||||
AND MD.DEL_FLAG = 'N'
|
||||
<!-- JSPark 2023.03.24 알림톡 전송완료 목록은 (즉시 + 예약 발송완료) 노출 -->
|
||||
<![CDATA[ AND MG.REQ_DATE <= NOW() ]]>
|
||||
<isNotEmpty property="userId">
|
||||
AND MG.USER_ID = #userId#
|
||||
</isNotEmpty>
|
||||
AND MG.DEL_FLAG ='N'
|
||||
AND MG.RESERVE_C_YN = 'N'
|
||||
AND MG.MSG_TYPE = '8'
|
||||
)M
|
||||
LEFT JOIN MJ_KAKAO_PROFILE_INFO MKPI
|
||||
ON M.MSG_NOTICETALK_SENDER_KEY = MKPI.SENDER_KEY
|
||||
AND MKPI.USER_ID = M.USER_ID
|
||||
AND MKPI.DELETE_YN = 'N'
|
||||
LEFT JOIN LETTNGNRLMBER LTM
|
||||
ON M.USER_ID = LTM.MBER_ID
|
||||
LEFT JOIN BIZ_LOG BL
|
||||
ON M.BIZ_UMID = BL.CMID
|
||||
WHERE 1=1
|
||||
<isNotEmpty property="searchKeyword">
|
||||
<isEqual property="searchCondition" compareValue="" >
|
||||
AND (
|
||||
M.USER_ID LIKE CONCAT('%', #searchKeyword#, '%')
|
||||
OR MKPI.YELLOW_ID LIKE CONCAT ('%', #searchKeyword#,'%')
|
||||
OR M.SMS_TXT LIKE CONCAT ('%', #searchKeyword#,'%')
|
||||
)
|
||||
</isEqual>
|
||||
<isEqual property="searchCondition" compareValue="1">
|
||||
AND M.USER_ID LIKE CONCAT('%', #searchKeyword#, '%')
|
||||
</isEqual>
|
||||
<isEqual property="searchCondition" compareValue="2">
|
||||
AND MKPI.YELLOW_ID LIKE CONCAT ('%', #searchKeyword#,'%')
|
||||
</isEqual>
|
||||
<isEqual property="searchCondition" compareValue="3">
|
||||
AND M.SMS_TXT LIKE CONCAT ('%', #searchKeyword#,'%')
|
||||
</isEqual>
|
||||
|
||||
<isEqual property="searchCondition2" compareValue="" >
|
||||
AND M.RESERVE_YN IN ('Y','N')
|
||||
</isEqual>
|
||||
<isEqual property="searchCondition2" compareValue="N">
|
||||
AND M.RESERVE_YN = 'N'
|
||||
</isEqual>
|
||||
<isEqual property="searchCondition2" compareValue="Y">
|
||||
AND M.RESERVE_YN = 'Y'
|
||||
</isEqual>
|
||||
</isNotEmpty>
|
||||
|
||||
<isEmpty property="searchKeyword">
|
||||
<isNotEmpty property="searchCondition">
|
||||
<isEqual property="searchCondition" compareValue="" >
|
||||
AND (
|
||||
M.USER_ID LIKE CONCAT('%', #searchKeyword#, '%')
|
||||
OR MKPI.YELLOW_ID LIKE CONCAT ('%', #searchKeyword#,'%')
|
||||
OR M.SMS_TXT LIKE CONCAT ('%', #searchKeyword#,'%')
|
||||
)
|
||||
</isEqual>
|
||||
<isEqual property="searchCondition" compareValue="1">
|
||||
AND M.USER_ID LIKE CONCAT('%', #searchKeyword#, '%')
|
||||
</isEqual>
|
||||
<isEqual property="searchCondition" compareValue="2">
|
||||
AND MKPI.YELLOW_ID LIKE CONCAT ('%', #searchKeyword#,'%')
|
||||
</isEqual>
|
||||
<isEqual property="searchCondition" compareValue="3">
|
||||
AND M.SMS_TXT LIKE CONCAT ('%', #searchKeyword#,'%')
|
||||
</isEqual>
|
||||
</isNotEmpty>
|
||||
<isNotEmpty property="searchCondition2">
|
||||
<isEqual property="searchCondition2" compareValue="" >
|
||||
AND M.RESERVE_YN IN ('Y','N')
|
||||
</isEqual>
|
||||
<isEqual property="searchCondition2" compareValue="N">
|
||||
AND M.RESERVE_YN = 'N'
|
||||
</isEqual>
|
||||
<isEqual property="searchCondition2" compareValue="Y">
|
||||
AND M.RESERVE_YN = 'Y'
|
||||
</isEqual>
|
||||
</isNotEmpty>
|
||||
</isEmpty>
|
||||
|
||||
|
||||
<isNotEmpty property="msgType">
|
||||
<isEqual property="msgType" compareValue="8">
|
||||
AND M.MSG_TYPE = '8'
|
||||
</isEqual>
|
||||
<isEqual property="msgType" compareValue="9">
|
||||
AND M.MSG_TYPE = '9'
|
||||
</isEqual>
|
||||
</isNotEmpty>
|
||||
<isEmpty property="msgType">
|
||||
AND M.MSG_TYPE IN ('8','9')
|
||||
</isEmpty>
|
||||
<isNotEmpty property="ntceBgnde">
|
||||
<![CDATA[
|
||||
AND DATE_FORMAT(REGDATE, '%Y-%m-%d') >= DATE_FORMAT(#ntceBgnde#, '%Y-%m-%d')
|
||||
]]>
|
||||
</isNotEmpty>
|
||||
<isNotEmpty property="ntceEndde">
|
||||
<![CDATA[
|
||||
AND DATE_FORMAT(REGDATE, '%Y-%m-%d') <= DATE_FORMAT(#ntceEndde#, '%Y-%m-%d')
|
||||
]]>
|
||||
</isNotEmpty>
|
||||
GROUP BY MSG_GROUP_ID
|
||||
ORDER BY 1=1
|
||||
<isNotEmpty property="searchSortCnd">
|
||||
<isEqual property="searchSortCnd" compareValue="curState">
|
||||
, curState $searchSortOrd$
|
||||
, orderByrsltCode
|
||||
</isEqual>
|
||||
<isNotEqual property="searchSortCnd" compareValue="curState">
|
||||
,$searchSortCnd$
|
||||
</isNotEqual>
|
||||
</isNotEmpty>
|
||||
<isNotEmpty property="searchSortOrd">
|
||||
$searchSortOrd$
|
||||
</isNotEmpty>
|
||||
LIMIT #recordCountPerPage# OFFSET #firstIndex#
|
||||
) M2
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 알림톡 상세 리스트 조회 -->
|
||||
<select id="mjonKakaoATDAO.selectMjonKakaoATGroupDtList" parameterClass="kakaoVO" resultClass="kakaoVO">
|
||||
/* mjonKakaoATDAO.selectMjonKakaoATGroupDtList - 알림톡 전송 개별 리스트 */
|
||||
|
||||
Loading…
Reference in New Issue
Block a user