<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//ibatis.apache.org//DTD Mapper 3.0//EN" "http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd">

<mapper namespace="i2c.biz.admin.renewal.registMng.rejectNum.dao.RejectNumDAO">
 	
    <parameterMap id="rejectNumVO"  			type="i2c.biz.admin.renewal.registMng.vo.number.RejectNumVO" />
 	<resultMap    id="rejectNumVO"  			type="i2c.biz.admin.renewal.registMng.vo.number.RejectNumVO" />
 	
 	<sql id="rejectSearchSQL">
 		su.org_sid is not null 		AND
 		su.org_sid != ''
 		<if test='sysYN != "Y"'>
 			AND rnm.status = 'REJECTST01'
        </if>
        <if test="arsIdList.size == 0">
	  		AND (rnm.ars_id is null OR rnm.ars_id = '')
        </if>
        <if test="arsIdList.size != 0">
	  		AND rnm.ars_id IN
	        <foreach item="item" index="index" collection="arsIdList"  open="(" separator="," close=")">
	            #{item}
	        </foreach>
        </if>
		<if test='recipientNum != null and recipientNum != ""'>
          	AND rnm.reject_num = #{recipientNum}
        </if>
        <if test='searchSdate != null and searchSdate != "" and searchEdate != null and searchEdate != ""'>
          	AND rnm.reject_de BETWEEN #{sDateForQuery} AND #{eDateForQuery}
        </if>
	</sql>
 	
 	<select id="rejectNumCnt" parameterMap="rejectNumVO" resultType="int">
 		/* [i2c.biz.admin.renewal.registMng.rejectNum.dao.RejectNumDAO.rejectNumCnt] RejectNum cnt */
 		SELECT
 			COUNT(0)
 		FROM
 			reject_num_mng rnm 							LEFT JOIN
 			ars_num_mng anm ON rnm.ars_id = anm.ars_id 	LEFT JOIN
 			sns_user su 	ON anm.org_id = su.org_sid
 		WHERE
 			<include refid="rejectSearchSQL" />
 	</select>
 	
 	<select id="rejectNumList" parameterMap="rejectNumVO" resultMap="rejectNumVO">
 		/* [i2c.biz.admin.renewal.registMng.rejectNum.dao.RejectNumDAO.rejectNumList] RejectNum list */
 		SELECT
 			 su.usr_nm			usrNm
 			,rnm.ars_id			arsId
 			,anm.ars_num		arsNum
 			,rnm.reject_num		recipientNum
 			,rnm.status			status
 			,scc.cd_nm			statusNm
 			,rnm.REJECT_DE		rejectDate
 		FROM 
 			reject_num_mng rnm 								LEFT JOIN
 			ars_num_mng anm 	ON rnm.ars_id = anm.ars_id 	LEFT JOIN
 			sns_user su 		ON anm.org_id = su.org_sid 	LEFT JOIN
 			sns_common_code scc ON rnm.status = scc.cd
 		WHERE
 			<include refid="rejectSearchSQL" />
 		ORDER BY
 			 su.org_sid
 			,rnm.ars_id
 			,rnm.regist_de desc
		LIMIT #{firstIndex}, #{recordCountPerPage}
 	</select>
 	
 	<select id="rejectDelete" parameterType="HashMap" resultType="int">
 		/* [i2c.biz.admin.renewal.registMng.rejectNum.dao.RejectNumDAO.rejectDelete] RejectNum delete */
 		UPDATE
 			reject_num_mng
 		SET
 			 use_at 	= 'Y'
 			,status 	= 'REJECTST02'
 			,updt_id 	= #{usrId}
 			,REJECT_DE 	= #{updtDate}
 		WHERE
 			ars_id 		= #{arsId} AND
 			reject_num 	= #{recipientNum}
 	</select>
 	
</mapper>