<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.i2sema.naraeSpam.dao.NaraeSpamDAO">

	<insert id="saveSpam" parameterType="java.lang.String">
        /* [com.i2sema.naraeSpam.dao.NaraeSpamDAO.saveSpam] 차단 저장 API */
		 INSERT INTO REJECT_NUM_MNG ( 
		             REJECT_ID
		           , ARS_ID
		           , REJECT_NUM
			       , USE_AT
			       , STATUS
			       , REJECT_DE
			       , REGIST_DE 
			       )
		  SELECT  #{reject_id}, #{ars_id}, #{reject_num}, #{use_at}, #{status}, DATE_FORMAT(SYSDATE(), '%Y%m%d%H%i%s'), DATE_FORMAT(SYSDATE(), '%Y%m%d%H%i%s')
		    FROM DUAL
		   WHERE NOT EXISTS (
					 SELECT *  
					   FROM REJECT_NUM_MNG
					  WHERE  REJECT_NUM = #{reject_num} AND ARS_ID = #{ars_id} )
	</insert>
		
	<update id="updateSpam" parameterType="java.lang.String">
	   /* [com.i2sema.naraeSpam.dao.NaraeSpamDAO.deleteSpam] 차단 삭제 요청(080) */
	    UPDATE REJECT_NUM_MNG
		  SET USE_AT = #{use_at}
		    , STATUS = #{status}
		    , UPDT_DE = DATE_FORMAT(SYSDATE(), '%Y%m%d%H%i%s')
		WHERE REJECT_NUM = #{reject_num}
	      AND ARS_ID = #{ars_id}
	</update>
	
	<delete id="deleteSpam" parameterType="java.lang.String">
	   /* [com.i2sema.naraeSpam.dao.NaraeSpamDAO.deleteSpam] row 삭제  */
	    DELETE FROM REJECT_NUM_MNG
	    WHERE ARS_ID = #{ars_id}
	     AND REJECT_NUM = #{reject_num}		  
	</delete>
	
	<insert id="bulkInsert" parameterType="java.util.HashMap">
		 INSERT INTO BULK_EM_SMT_LOG
(mt_pr, mt_seq, msg_key, input_type, mt_refkey, priority, date_client_req, content, callback, service_type, broadcast_yn, msg_status, recipient_num, change_word1, change_word2, change_word3, change_word4, change_word5, date_mt_sent, date_rslt, date_mt_report, mt_report_code_ib, mt_report_code_ibtype, carrier, rs_id, recipient_net, recipient_npsend, country_code, charset, msg_type, crypto_yn, ttl, emma_id, reg_date_tran, reg_date, mt_res_cnt, client_sub_id, org_id, seq, per_seq, noti_group_id, noti_id)
VALUES(#{mt_pr}, 0, 'S1', '0', NULL, 'VF', '2020-01-10 14:58:14.000', #{content}, '01191540006', '0', 'N', '3', '01088907101', NULL, NULL, NULL, NULL, NULL, '2020-01-10 14:58:16.000', '2020-01-10 14:58:18.000', '2020-01-10 14:58:19.000', '1022', '', 0, 'unirs02', NULL, NULL, '82', NULL, NULL, 'Y', NULL, '', '2020-01-10 14:58:14.000', '2020-01-10 15:08:28.000', 0, NULL, NULL, NULL, NULL, NULL, NULL)
	</insert>
	
	<select id="checkDplct" parameterType="Map" resultType="int">
	/* [com.i2sema.naraeSpam.dao.NaraeSpamDAO.checkDplct] 발송아이디 중복확인 */
		SELECT COUNT(*)
		FROM NARAE_CRTFC
		WHERE ARS_NUM = #{ars_num}
		AND CRTFC_ID = #{crtfc_id}
	</select>
	
	<insert id="insertCrtfc" parameterType="Map">
	/* [com.i2sema.naraeSpam.dao.NaraeSpamDAO.insertCrtfc] ARS 인증 정보 저장 */
		INSERT INTO NARAE_CRTFC (
		              ARS_NUM
		            , CRTFC_NUM
		            , CRTFC_ID
		            , REG_DATE
		            , RESULT_CODE
		            , RESULT_REG_DATE
		            )
		   VALUES (
		              #{ars_num}
		            , #{crtfc_num}
		            , #{crtfc_id}
		            , SYSDATE()
		            , #{result_code}
		            , #{result_reg_date}
		          )
	</insert>
	
	<update id="arsResult" parameterType="java.lang.String">
	/* [com.i2sema.naraeSpam.dao.NaraeSpamDAO.arsResult] ARS 인증 전화수신 결과 */
		UPDATE NARAE_CRTFC
		   SET RESULT_CODE= #{result_code}
		     , RESULT_REG_DATE = SYSDATE()
		WHERE 
			 ARS_NUM  = #{ars_num}
	     AND CRTFC_ID = #{crtfc_id}
	</update>
	
	<select id="selectUserInfo" parameterType="Map" resultType="i2c.cmm.base.CommonResultMap">
	/* [com.i2sema.naraeSpam.dao.NaraeSpamDAO.selectUserInfo] 회원 정보 */
		SELECT
        	   SU.USR_ID          
        	 , SU.USR_NM          
        	 , SU.EMAIL           
        	 , SU.LOGIN_ID        
        	 , SU.LOGIN_PASSWD    
        	 , SU.USE_STOP_YN     
			 , SU.SYS_ADMIN_YN    
			 , SU.PHN_NUM         
			 , SU.APPROVAL        
			 , SU.SEXDSTN         
			 , SU.ORG_SID
			 , CONCAT(SUBSTR(SU.CRT_DTTM, 1,4), '-', SUBSTR(SU.CRT_DTTM, 5,2), '-', SUBSTR(SU.CRT_DTTM, 7,2), ' ', SUBSTR(SU.CRT_DTTM, 9,2), ':', SUBSTR(SU.CRT_DTTM, 11,2)) CRTDTTM
             , CONCAT(SUBSTR(SU.LST_LOGIN_DTTM, 1,4), '-', SUBSTR(SU.LST_LOGIN_DTTM, 5,2), '-', SUBSTR(SU.LST_LOGIN_DTTM, 7,2), ' ', SUBSTR(SU.LST_LOGIN_DTTM, 9,2), ':', SUBSTR(SU.LST_LOGIN_DTTM, 11,2)) LSTLOGINDTTM
		FROM
			SNS_USER SU
		WHERE 1=1
	        AND USR_ID = #{usr_id}
	</select>
	
	<select id="selectArsId" parameterType="java.lang.String" resultType="i2c.cmm.base.CommonResultMap">
	/* [com.i2sema.naraeSpam.dao.NaraeSpamDAO.selectArsId] ars_id 정보 */
		  SELECT ARS_ID
		   FROM ARS_NUM_MNG
		   WHERE ARS_NUM = #{ars_num}
		   LIMIT 1
	</select>
  
 </mapper>