itn 2023-10-23
발송결과 일림톡 휴대폰 대쉬 함수 관련 속도저하 수정
@6599d71b7fbc0f2319d38136a03d39da893a98b9
src/main/resources/egovframework/sqlmap/let/mjo/kakao/KakaoSent_SQL_Mysql.xml
--- src/main/resources/egovframework/sqlmap/let/mjo/kakao/KakaoSent_SQL_Mysql.xml
+++ src/main/resources/egovframework/sqlmap/let/mjo/kakao/KakaoSent_SQL_Mysql.xml
@@ -478,173 +478,210 @@
 	
 	<!-- 전체 발송결과 조회  (개인별)-->
 	<select id="KakaoSentDAO.selectAllPrivateKakaoSentList" parameterClass="kakaoSentVO" resultClass="kakaoSentVO">
-		
 		SELECT
-			COUNT(USER_ID) OVER()					AS totMsgCnt
-			, USER_ID								AS userId
-			, IFNULL(ADDR_NM, '-')					AS addrNm
-			, MSG_GROUP_ID							AS msgGroupId
-			, USERDATA								AS msgSeq
-			, '1'									AS msgGroupCnt
-			, SMS_TXT								AS smsTxt
-			, SUBJECT								AS subject
-			, DATE_FORMAT(REGDATE, '%Y-%m-%d %T')	AS regdate
-			, DATE_FORMAT(REQ_DATE, '%Y-%m-%d %T')	AS reqdate
-			, CALL_FROM								AS callFrom
-			, CALL_TO								AS callTo
-			, FN_GETHYPHEN(CALL_FROM)	AS callFromComma
-			, FN_GETHYPHEN(CALL_TO)	AS callToComma			
-			, 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
-			, MSG_TYPE								AS msgType
-			, FILE_CNT								AS fileCnt
-			, AGENT_CODE							AS agentCode
-			, RESERVE_C_YN							AS reserveCYn
-			, CANCELDATE							AS cancelDate
-			, MSG_ID								AS msgId
-			, RESULT								AS msgResult
-			, BIZ_KAKAO_RESEND_YN					AS bizKakaoResendYn
-			, BIZ_KAKAO_RESEND_TYPE					AS bizKakaoResendType
-			, BIZ_KAKAO_RESEND_DATA					AS bizKakaoResendData
-			, CALL_STATUS							AS callStatus
-			, BIZ_KAKAO_AT_PRICE					AS bizKakaoAtPrice
-			, BIZ_KAKAO_FT_PRICE					AS bizKakaoFtPrice
-			, BIZ_SMS_PRICE							AS bizSmsPrice
-			, BIZ_MMS_PRICE							AS bizMmsPrice
+			M2.totMsgCnt
+			, M2.userId
+			, M2.addrNm
+			, M2.msgGroupId
+			, M2.msgSeq
+			, M2.msgGroupCnt
+			, M2.smsTxt
+			, M2.subject
+			, M2.regdate
+			, M2.reqdate
+			, M2.callFrom
+			, M2.callTo
+			, FN_GETHYPHEN(M2.callFrom)	AS callFromComma
+			, FN_GETHYPHEN(M2.callTo)	AS callToComma			
+			, M2.totPrice
+			, M2.eachPrice
+			, M2.curState
+			, M2.rsltCode
+			, M2.rsltCode2
+			, M2.orderByrsltCode
+			, M2.delFlag
+			, M2.msgType
+			, M2.fileCnt
+			, M2.agentCode
+			, M2.reserveCYn
+			, M2.cancelDate
+			, M2.msgId
+			, M2.msgResult
+			, M2.bizKakaoResendYn
+			, M2.bizKakaoResendType
+			, M2.bizKakaoResendData
+			, M2.callStatus
+			, M2.bizKakaoAtPrice
+			, M2.bizKakaoFtPrice
+			, M2.bizSmsPrice
+			, M2.bizMmsPrice
 		FROM
-			(SELECT
-				MG.USER_ID
-				, MG.MSG_GROUP_ID
-				, MG.MSG_GROUP_CNT
-				, MG.SMS_TXT
-				, MG.SUBJECT
-				, MG.REGDATE
-				, MG.REQ_DATE
-				, MG.CALL_FROM
-				, MG.TOT_PRICE
-				, MG.EACH_PRICE
-				, MG.DEL_FLAG
-				, MG.MSG_TYPE
-				, MG.FILE_CNT
-				, MG.AGENT_CODE
-				, MG.RESERVE_C_YN
-				, MG.CANCELDATE
-				, MD.MSG_ID
-				, MD.MSG_SEQ
-				, MD.USERDATA
-				, MD.CALL_TO
-				, MD.CUR_STATE
-				, MD.RSLT_CODE
-				, MD.RSLT_CODE2
-				,(<include refid="KakaoSentDAO.selectAgentResultQuery_MD"/>) AS RESULT
-				, MD.BIZ_KAKAO_RESEND_YN
-				, MD.BIZ_KAKAO_RESEND_TYPE
-				, MD.BIZ_KAKAO_RESEND_DATA
-				, CASE
-					WHEN BZ.CALL_STATUS in ('4100','6600')
-						THEN 'S'
-					WHEN BZ.STATUS in ('0','1')
-						THEN 'W'
-						ELSE 'F'
-					END AS CALL_STATUS
-				, BZP.BIZ_KAKAO_AT_PRICE
-				, BZP.BIZ_KAKAO_FT_PRICE
-				, BZP.BIZ_SMS_PRICE
-				, BZP.BIZ_MMS_PRICE
+			(		
+			SELECT
+				COUNT(USER_ID) OVER()					AS totMsgCnt
+				, USER_ID								AS userId
+				, IFNULL(ADDR_NM, '-')					AS addrNm
+				, MSG_GROUP_ID							AS msgGroupId
+				, USERDATA								AS msgSeq
+				, '1'									AS msgGroupCnt
+				, SMS_TXT								AS smsTxt
+				, SUBJECT								AS subject
+				, DATE_FORMAT(REGDATE, '%Y-%m-%d %T')	AS regdate
+				, DATE_FORMAT(REQ_DATE, '%Y-%m-%d %T')	AS reqdate
+				, 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
+				, MSG_TYPE								AS msgType
+				, FILE_CNT								AS fileCnt
+				, AGENT_CODE							AS agentCode
+				, RESERVE_C_YN							AS reserveCYn
+				, CANCELDATE							AS cancelDate
+				, MSG_ID								AS msgId
+				, RESULT								AS msgResult
+				, BIZ_KAKAO_RESEND_YN					AS bizKakaoResendYn
+				, BIZ_KAKAO_RESEND_TYPE					AS bizKakaoResendType
+				, BIZ_KAKAO_RESEND_DATA					AS bizKakaoResendData
+				, CALL_STATUS							AS callStatus
+				, BIZ_KAKAO_AT_PRICE					AS bizKakaoAtPrice
+				, BIZ_KAKAO_FT_PRICE					AS bizKakaoFtPrice
+				, BIZ_SMS_PRICE							AS bizSmsPrice
+				, BIZ_MMS_PRICE							AS bizMmsPrice
 			FROM
-				mj_msg_data MD
-				INNER JOIN MJ_MSG_GROUP_DATA MG
-				ON MD.MSG_GROUP_ID		= MG.MSG_GROUP_ID
-				LEFT OUTER JOIN BIZ_LOG BZ
-				ON MD.BIZ_UMID = BZ.CMID
-				INNER JOIN BIZ_KAKAO_PRICE BZP
-				ON MG.MSG_GROUP_ID = BZP.MSG_GROUP_ID
-				AND MG.USER_ID			= #userId#
-				AND MG.DEL_FLAG		='N'
-				AND	MG.RESERVE_C_YN	='N'
-				<![CDATA[ 
-					AND MG.REQ_DATE <= DATE_ADD(NOW(), INTERVAL 60 MINUTE)
-				]]>
-			)A
-			LEFT JOIN
 				(SELECT
-					ADDR_PHONE_NO
-					, ADDR_NM
+					MG.USER_ID
+					, MG.MSG_GROUP_ID
+					, MG.MSG_GROUP_CNT
+					, MG.SMS_TXT
+					, MG.SUBJECT
+					, MG.REGDATE
+					, MG.REQ_DATE
+					, MG.CALL_FROM
+					, MG.TOT_PRICE
+					, MG.EACH_PRICE
+					, MG.DEL_FLAG
+					, MG.MSG_TYPE
+					, MG.FILE_CNT
+					, MG.AGENT_CODE
+					, MG.RESERVE_C_YN
+					, MG.CANCELDATE
+					, MD.MSG_ID
+					, MD.MSG_SEQ
+					, MD.USERDATA
+					, MD.CALL_TO
+					, MD.CUR_STATE
+					, MD.RSLT_CODE
+					, MD.RSLT_CODE2
+					,(<include refid="KakaoSentDAO.selectAgentResultQuery_MD"/>) AS RESULT
+					, MD.BIZ_KAKAO_RESEND_YN
+					, MD.BIZ_KAKAO_RESEND_TYPE
+					, MD.BIZ_KAKAO_RESEND_DATA
+					, CASE
+						WHEN BZ.CALL_STATUS in ('4100','6600')
+							THEN 'S'
+						WHEN BZ.STATUS in ('0','1')
+							THEN 'W'
+							ELSE 'F'
+						END AS CALL_STATUS
+					, BZP.BIZ_KAKAO_AT_PRICE
+					, BZP.BIZ_KAKAO_FT_PRICE
+					, BZP.BIZ_SMS_PRICE
+					, BZP.BIZ_MMS_PRICE
 				FROM
-					MJ_ADDR
-				WHERE
-					MBER_ID = #userId#
-				GROUP BY
-					ADDR_PHONE_NO
-				)MA
-				ON A.CALL_TO = MA.ADDR_PHONE_NO
-		WHERE 1=1 
-		<isNotEmpty property="stateType">
-			<isEqual property="stateType" compareValue="all">
-				AND CUR_STATE IN ('0','1','2','3')
-			</isEqual>
-			<isEqual property="stateType" compareValue="ready">
-				AND CUR_STATE = '0'
-				AND RESERVE_C_YN = 'N'
-			</isEqual>
-			<isEqual property="stateType" compareValue="complete">
-				AND CUR_STATE IN ('2','3')
-				AND (RESULT = 'S' )
-				AND RESERVE_C_YN = 'N'
-			</isEqual>
-			<isEqual property="stateType" compareValue="fail">
-				AND RESERVE_C_YN = 'N'
-				AND (RESULT = 'F' )
-			</isEqual>
-		</isNotEmpty>
-		<isNotEmpty property="tabType">
-			<isEqual property="tabType" compareValue="at">
-				AND MSG_TYPE = '8'
-			</isEqual>
-			<isEqual property="tabType" compareValue="ft">
-				AND MSG_TYPE = '9'
-			</isEqual>
-			<isEqual property="tabType" compareValue="all">
-				AND MSG_TYPE IN ('8','9')
-			</isEqual>
-		</isNotEmpty>
-		<isEmpty property="tabType">
-				AND MSG_TYPE IN ('8','9')
-		</isEmpty>
-		<isNotEmpty property="searchKeyword">
-			<isEqual property="searchCondition" compareValue="2" >
-				AND	CALL_FROM LIKE CONCAT('%', #searchKeyword#, '%')
-			</isEqual>
-		</isNotEmpty>
-		<isNotEmpty property="startDate">
-			<![CDATA[ 
-				AND 	DATE_FORMAT(REGDATE, '%Y-%m-%d') >= DATE_FORMAT(#startDate#, '%Y-%m-%d')
-			]]>
-		</isNotEmpty>
-		<isNotEmpty property="endDate">
-			<![CDATA[ 
-				AND 	DATE_FORMAT(REGDATE, '%Y-%m-%d')  <=  DATE_FORMAT(#endDate#, '%Y-%m-%d')  
-			]]>
-		</isNotEmpty>
-		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#	
+					mj_msg_data MD
+					INNER JOIN MJ_MSG_GROUP_DATA MG
+					ON MD.MSG_GROUP_ID		= MG.MSG_GROUP_ID
+					LEFT OUTER JOIN BIZ_LOG BZ
+					ON MD.BIZ_UMID = BZ.CMID
+					INNER JOIN BIZ_KAKAO_PRICE BZP
+					ON MG.MSG_GROUP_ID = BZP.MSG_GROUP_ID
+					AND MG.USER_ID			= #userId#
+					AND MG.DEL_FLAG		='N'
+					AND	MG.RESERVE_C_YN	='N'
+					<![CDATA[ 
+						AND MG.REQ_DATE <= DATE_ADD(NOW(), INTERVAL 60 MINUTE)
+					]]>
+				)A
+				LEFT JOIN
+					(SELECT
+						ADDR_PHONE_NO
+						, ADDR_NM
+					FROM
+						MJ_ADDR
+					WHERE
+						MBER_ID = #userId#
+					GROUP BY
+						ADDR_PHONE_NO
+					)MA
+					ON A.CALL_TO = MA.ADDR_PHONE_NO
+			WHERE 1=1 
+			<isNotEmpty property="stateType">
+				<isEqual property="stateType" compareValue="all">
+					AND CUR_STATE IN ('0','1','2','3')
+				</isEqual>
+				<isEqual property="stateType" compareValue="ready">
+					AND CUR_STATE = '0'
+					AND RESERVE_C_YN = 'N'
+				</isEqual>
+				<isEqual property="stateType" compareValue="complete">
+					AND CUR_STATE IN ('2','3')
+					AND (RESULT = 'S' )
+					AND RESERVE_C_YN = 'N'
+				</isEqual>
+				<isEqual property="stateType" compareValue="fail">
+					AND RESERVE_C_YN = 'N'
+					AND (RESULT = 'F' )
+				</isEqual>
+			</isNotEmpty>
+			<isNotEmpty property="tabType">
+				<isEqual property="tabType" compareValue="at">
+					AND MSG_TYPE = '8'
+				</isEqual>
+				<isEqual property="tabType" compareValue="ft">
+					AND MSG_TYPE = '9'
+				</isEqual>
+				<isEqual property="tabType" compareValue="all">
+					AND MSG_TYPE IN ('8','9')
+				</isEqual>
+			</isNotEmpty>
+			<isEmpty property="tabType">
+					AND MSG_TYPE IN ('8','9')
+			</isEmpty>
+			<isNotEmpty property="searchKeyword">
+				<isEqual property="searchCondition" compareValue="2" >
+					AND	CALL_FROM LIKE CONCAT('%', #searchKeyword#, '%')
+				</isEqual>
+			</isNotEmpty>
+			<isNotEmpty property="startDate">
+				<![CDATA[ 
+					AND 	DATE_FORMAT(REGDATE, '%Y-%m-%d') >= DATE_FORMAT(#startDate#, '%Y-%m-%d')
+				]]>
+			</isNotEmpty>
+			<isNotEmpty property="endDate">
+				<![CDATA[ 
+					AND 	DATE_FORMAT(REGDATE, '%Y-%m-%d')  <=  DATE_FORMAT(#endDate#, '%Y-%m-%d')  
+				]]>
+			</isNotEmpty>
+			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>
 	
 	<!-- 
@@ -652,174 +689,211 @@
 		KakaoSentDAO.selectAllPrivateKakaoSentList 의 쿼리에서 where 그룹ID 만 추가 
 	-->
 	<select id="KakaoSentDAO.selectKakaoSentSFDetailListAjax" parameterClass="kakaoSentVO" resultClass="kakaoSentVO">
-		
 		SELECT
-			COUNT(USER_ID) OVER()					AS totMsgCnt
-			, USER_ID								AS userId
-			, IFNULL(ADDR_NM, '-')					AS addrNm
-			, MSG_GROUP_ID							AS msgGroupId
-			, USERDATA								AS msgSeq
-			, '1'									AS msgGroupCnt
-			, SMS_TXT								AS smsTxt
-			, SUBJECT								AS subject
-			, DATE_FORMAT(REGDATE, '%Y-%m-%d %T')	AS regdate
-			, DATE_FORMAT(REQ_DATE, '%Y-%m-%d %T')	AS reqdate
-			, CALL_FROM								AS callFrom
-			, CALL_TO								AS callTo
-			, FN_GETHYPHEN(CALL_FROM)	AS callFromComma
-			, FN_GETHYPHEN(CALL_TO)		AS callToComma						
-			, 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
-			, MSG_TYPE								AS msgType
-			, FILE_CNT								AS fileCnt
-			, AGENT_CODE							AS agentCode
-			, RESERVE_C_YN							AS reserveCYn
-			, CANCELDATE							AS cancelDate
-			, MSG_ID								AS msgId
-			, RESULT								AS msgResult
-			, BIZ_KAKAO_RESEND_YN					AS bizKakaoResendYn
-			, BIZ_KAKAO_RESEND_TYPE					AS bizKakaoResendType
-			, BIZ_KAKAO_RESEND_DATA					AS bizKakaoResendData
-			, CALL_STATUS							AS callStatus
-			, BIZ_KAKAO_AT_PRICE					AS bizKakaoAtPrice
-			, BIZ_KAKAO_FT_PRICE					AS bizKakaoFtPrice
-			, BIZ_SMS_PRICE							AS bizSmsPrice
-			, BIZ_MMS_PRICE							AS bizMmsPrice
+			M2.totMsgCnt
+			, M2.userId
+			, M2.addrNm
+			, M2.msgGroupId
+			, M2.msgSeq
+			, M2.msgGroupCnt
+			, M2.smsTxt
+			, M2.subject
+			, M2.regdate
+			, M2.reqdate
+			, M2.callFrom
+			, M2.callTo
+			, FN_GETHYPHEN(M2.callFrom)	AS callFromComma
+			, FN_GETHYPHEN(M2.callTo)	AS callToComma						
+			, M2.totPrice
+			, M2.eachPrice
+			, M2.curState
+			, M2.rsltCode
+			, M2.rsltCode2
+			, M2.orderByrsltCode
+			, M2.delFlag
+			, M2.msgType
+			, M2.fileCnt
+			, M2.agentCode
+			, M2.reserveCYn
+			, M2.cancelDate
+			, M2.msgId
+			, M2.msgResult
+			, M2.bizKakaoResendYn
+			, M2.bizKakaoResendType
+			, M2.bizKakaoResendData
+			, M2.callStatus
+			, M2.bizKakaoAtPrice
+			, M2.bizKakaoFtPrice
+			, M2.bizSmsPrice
+			, M2.bizMmsPrice
 		FROM
-			(SELECT
-				MG.USER_ID
-				, MG.MSG_GROUP_ID
-				, MG.MSG_GROUP_CNT
-				, MG.SMS_TXT
-				, MG.SUBJECT
-				, MG.REGDATE
-				, MG.REQ_DATE
-				, MG.CALL_FROM
-				, MG.TOT_PRICE
-				, MG.EACH_PRICE
-				, MG.DEL_FLAG
-				, MG.MSG_TYPE
-				, MG.FILE_CNT
-				, MG.AGENT_CODE
-				, MG.RESERVE_C_YN
-				, MG.CANCELDATE
-				, MD.MSG_ID
-				, MD.MSG_SEQ
-				, MD.USERDATA
-				, MD.CALL_TO
-				, MD.CUR_STATE
-				, MD.RSLT_CODE
-				, MD.RSLT_CODE2
-				,(<include refid="KakaoSentDAO.selectAgentResultQuery_MD"/>) AS RESULT
-				, MD.BIZ_KAKAO_RESEND_YN
-				, MD.BIZ_KAKAO_RESEND_TYPE
-				, MD.BIZ_KAKAO_RESEND_DATA
-				, CASE
-					WHEN BZ.CALL_STATUS in ('4100','6600')
-						THEN 'S'
-					WHEN BZ.STATUS in ('0','1')
-						THEN 'W'
-						ELSE 'F'
-					END AS CALL_STATUS
-				, BZP.BIZ_KAKAO_AT_PRICE
-				, BZP.BIZ_KAKAO_FT_PRICE
-				, BZP.BIZ_SMS_PRICE
-				, BZP.BIZ_MMS_PRICE
+			(		
+			SELECT
+				COUNT(USER_ID) OVER()					AS totMsgCnt
+				, USER_ID								AS userId
+				, IFNULL(ADDR_NM, '-')					AS addrNm
+				, MSG_GROUP_ID							AS msgGroupId
+				, USERDATA								AS msgSeq
+				, '1'									AS msgGroupCnt
+				, SMS_TXT								AS smsTxt
+				, SUBJECT								AS subject
+				, DATE_FORMAT(REGDATE, '%Y-%m-%d %T')	AS regdate
+				, DATE_FORMAT(REQ_DATE, '%Y-%m-%d %T')	AS reqdate
+				, 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
+				, MSG_TYPE								AS msgType
+				, FILE_CNT								AS fileCnt
+				, AGENT_CODE							AS agentCode
+				, RESERVE_C_YN							AS reserveCYn
+				, CANCELDATE							AS cancelDate
+				, MSG_ID								AS msgId
+				, RESULT								AS msgResult
+				, BIZ_KAKAO_RESEND_YN					AS bizKakaoResendYn
+				, BIZ_KAKAO_RESEND_TYPE					AS bizKakaoResendType
+				, BIZ_KAKAO_RESEND_DATA					AS bizKakaoResendData
+				, CALL_STATUS							AS callStatus
+				, BIZ_KAKAO_AT_PRICE					AS bizKakaoAtPrice
+				, BIZ_KAKAO_FT_PRICE					AS bizKakaoFtPrice
+				, BIZ_SMS_PRICE							AS bizSmsPrice
+				, BIZ_MMS_PRICE							AS bizMmsPrice
 			FROM
-				mj_msg_data MD
-				INNER JOIN MJ_MSG_GROUP_DATA MG
-				ON MD.MSG_GROUP_ID		= MG.MSG_GROUP_ID
-				LEFT OUTER JOIN BIZ_LOG BZ
-				ON MD.BIZ_UMID = BZ.CMID
-				INNER JOIN BIZ_KAKAO_PRICE BZP
-				ON MG.MSG_GROUP_ID = BZP.MSG_GROUP_ID
-				AND MG.USER_ID		= #userId#
-				AND MG.DEL_FLAG		='N'
-				AND	MG.RESERVE_C_YN	='N'
-				AND MD.MSG_GROUP_ID = #msgGroupId#
-				<![CDATA[ 
-					AND MG.REQ_DATE <= DATE_ADD(NOW(), INTERVAL 60 MINUTE)
-				]]>
-			)A
-			LEFT JOIN
 				(SELECT
-					ADDR_PHONE_NO
-					, ADDR_NM
+					MG.USER_ID
+					, MG.MSG_GROUP_ID
+					, MG.MSG_GROUP_CNT
+					, MG.SMS_TXT
+					, MG.SUBJECT
+					, MG.REGDATE
+					, MG.REQ_DATE
+					, MG.CALL_FROM
+					, MG.TOT_PRICE
+					, MG.EACH_PRICE
+					, MG.DEL_FLAG
+					, MG.MSG_TYPE
+					, MG.FILE_CNT
+					, MG.AGENT_CODE
+					, MG.RESERVE_C_YN
+					, MG.CANCELDATE
+					, MD.MSG_ID
+					, MD.MSG_SEQ
+					, MD.USERDATA
+					, MD.CALL_TO
+					, MD.CUR_STATE
+					, MD.RSLT_CODE
+					, MD.RSLT_CODE2
+					,(<include refid="KakaoSentDAO.selectAgentResultQuery_MD"/>) AS RESULT
+					, MD.BIZ_KAKAO_RESEND_YN
+					, MD.BIZ_KAKAO_RESEND_TYPE
+					, MD.BIZ_KAKAO_RESEND_DATA
+					, CASE
+						WHEN BZ.CALL_STATUS in ('4100','6600')
+							THEN 'S'
+						WHEN BZ.STATUS in ('0','1')
+							THEN 'W'
+							ELSE 'F'
+						END AS CALL_STATUS
+					, BZP.BIZ_KAKAO_AT_PRICE
+					, BZP.BIZ_KAKAO_FT_PRICE
+					, BZP.BIZ_SMS_PRICE
+					, BZP.BIZ_MMS_PRICE
 				FROM
-					MJ_ADDR
-				WHERE
-					MBER_ID = #userId#
-				GROUP BY
-					ADDR_PHONE_NO
-				)MA
-				ON A.CALL_TO = MA.ADDR_PHONE_NO
-		WHERE 1=1 
-		<isNotEmpty property="stateType">
-			<isEqual property="stateType" compareValue="all">
-				AND CUR_STATE IN ('0','1','2','3')
-			</isEqual>
-			<isEqual property="stateType" compareValue="ready">
-				AND CUR_STATE = '0'
-				AND RESERVE_C_YN = 'N'
-			</isEqual>
-			<isEqual property="stateType" compareValue="complete">
-				AND CUR_STATE IN ('2','3')
-				AND (RESULT = 'S' )
-				AND RESERVE_C_YN = 'N'
-			</isEqual>
-			<isEqual property="stateType" compareValue="fail">
-				AND RESERVE_C_YN = 'N'
-				AND (RESULT = 'F' )
-			</isEqual>
-		</isNotEmpty>
-		<isNotEmpty property="tabType">
-			<isEqual property="tabType" compareValue="at">
-				AND MSG_TYPE = '8'
-			</isEqual>
-			<isEqual property="tabType" compareValue="ft">
-				AND MSG_TYPE = '9'
-			</isEqual>
-			<isEqual property="tabType" compareValue="all">
-				AND MSG_TYPE IN ('8','9')
-			</isEqual>
-		</isNotEmpty>
-		<isEmpty property="tabType">
-				AND MSG_TYPE IN ('8','9')
-		</isEmpty>
-		<isNotEmpty property="searchKeyword">
-			<isEqual property="searchCondition" compareValue="2" >
-				AND	CALL_FROM LIKE CONCAT('%', #searchKeyword#, '%')
-			</isEqual>
-		</isNotEmpty>
-		<isNotEmpty property="startDate">
-			<![CDATA[ 
-				AND 	DATE_FORMAT(REGDATE, '%Y-%m-%d') >= DATE_FORMAT(#startDate#, '%Y-%m-%d')
-			]]>
-		</isNotEmpty>
-		<isNotEmpty property="endDate">
-			<![CDATA[ 
-				AND 	DATE_FORMAT(REGDATE, '%Y-%m-%d')  <=  DATE_FORMAT(#endDate#, '%Y-%m-%d')  
-			]]>
-		</isNotEmpty>
-		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#	
+					mj_msg_data MD
+					INNER JOIN MJ_MSG_GROUP_DATA MG
+					ON MD.MSG_GROUP_ID		= MG.MSG_GROUP_ID
+					LEFT OUTER JOIN BIZ_LOG BZ
+					ON MD.BIZ_UMID = BZ.CMID
+					INNER JOIN BIZ_KAKAO_PRICE BZP
+					ON MG.MSG_GROUP_ID = BZP.MSG_GROUP_ID
+					AND MG.USER_ID		= #userId#
+					AND MG.DEL_FLAG		='N'
+					AND	MG.RESERVE_C_YN	='N'
+					AND MD.MSG_GROUP_ID = #msgGroupId#
+					<![CDATA[ 
+						AND MG.REQ_DATE <= DATE_ADD(NOW(), INTERVAL 60 MINUTE)
+					]]>
+				)A
+				LEFT JOIN
+					(SELECT
+						ADDR_PHONE_NO
+						, ADDR_NM
+					FROM
+						MJ_ADDR
+					WHERE
+						MBER_ID = #userId#
+					GROUP BY
+						ADDR_PHONE_NO
+					)MA
+					ON A.CALL_TO = MA.ADDR_PHONE_NO
+			WHERE 1=1 
+			<isNotEmpty property="stateType">
+				<isEqual property="stateType" compareValue="all">
+					AND CUR_STATE IN ('0','1','2','3')
+				</isEqual>
+				<isEqual property="stateType" compareValue="ready">
+					AND CUR_STATE = '0'
+					AND RESERVE_C_YN = 'N'
+				</isEqual>
+				<isEqual property="stateType" compareValue="complete">
+					AND CUR_STATE IN ('2','3')
+					AND (RESULT = 'S' )
+					AND RESERVE_C_YN = 'N'
+				</isEqual>
+				<isEqual property="stateType" compareValue="fail">
+					AND RESERVE_C_YN = 'N'
+					AND (RESULT = 'F' )
+				</isEqual>
+			</isNotEmpty>
+			<isNotEmpty property="tabType">
+				<isEqual property="tabType" compareValue="at">
+					AND MSG_TYPE = '8'
+				</isEqual>
+				<isEqual property="tabType" compareValue="ft">
+					AND MSG_TYPE = '9'
+				</isEqual>
+				<isEqual property="tabType" compareValue="all">
+					AND MSG_TYPE IN ('8','9')
+				</isEqual>
+			</isNotEmpty>
+			<isEmpty property="tabType">
+					AND MSG_TYPE IN ('8','9')
+			</isEmpty>
+			<isNotEmpty property="searchKeyword">
+				<isEqual property="searchCondition" compareValue="2" >
+					AND	CALL_FROM LIKE CONCAT('%', #searchKeyword#, '%')
+				</isEqual>
+			</isNotEmpty>
+			<isNotEmpty property="startDate">
+				<![CDATA[ 
+					AND 	DATE_FORMAT(REGDATE, '%Y-%m-%d') >= DATE_FORMAT(#startDate#, '%Y-%m-%d')
+				]]>
+			</isNotEmpty>
+			<isNotEmpty property="endDate">
+				<![CDATA[ 
+					AND 	DATE_FORMAT(REGDATE, '%Y-%m-%d')  <=  DATE_FORMAT(#endDate#, '%Y-%m-%d')  
+				]]>
+			</isNotEmpty>
+			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>
 	
 	<!-- 발신 내용 상세보기 조회 (상세보기 버튼 클릭시)-->
src/main/resources/egovframework/sqlmap/let/msg/MjonMsgSent_SQL_mysql.xml
--- src/main/resources/egovframework/sqlmap/let/msg/MjonMsgSent_SQL_mysql.xml
+++ src/main/resources/egovframework/sqlmap/let/msg/MjonMsgSent_SQL_mysql.xml
@@ -442,7 +442,7 @@
 			, M2.regdate
 			, M2.reqdate
 			, M2.callFrom
-			, M2.callFromComma
+			, FN_GETHYPHEN(M2.callFrom)	AS callFromComma
 			, (
 				SELECT FN_GETHYPHEN(CALL_TO) FROM MJ_MSG_DATA A
 				WHERE A.MSG_GROUP_ID = M2.msgGroupId
@@ -499,7 +499,6 @@
 				, DATE_FORMAT(REGDATE, '%Y-%m-%d %T')	 AS regdate
 				, DATE_FORMAT(REQ_DATE, '%Y-%m-%d %T')	 AS reqdate
 				, CALL_FROM								 AS callFrom
-				, FN_GETHYPHEN(CALL_FROM)	AS callFromComma
 				, ''						 AS addrNm
 				, TOT_PRICE								 AS totPrice
 				, EACH_PRICE							 AS eachPrice
Add a comment
List