<?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.v2.ft.ftApiDAO">

	<sql id="bizTmplSearchSQL">
		<if test="null != orgId and !orgId.equals('')">
			<![CDATA[ AND org_id = #{orgId} ]]>
		</if>
	</sql>

	<select id="ftTmplCount" parameterType="map" resultType="int">
        <![CDATA[
			/* [com.i2sema.v2.ft.ftApiDAO.ftTmplCount] 친구톡 일반 템플릿 카운트 */
			SELECT	COUNT(*) AS cnt
			FROM 		ita_tmplat
			WHERE	1 = 1
					AND use_at = 'Y'
		]]>
					<include refid="bizTmplSearchSQL" />
					<if test="null != title and !title.equals('')">
						<![CDATA[ AND tmpl_name like CONCAT('%', #{title}, '%') ]]>
					</if>
					<if test="null != msgType and !msgType.equals('')">
						<![CDATA[ AND msg_type = #{msgType} ]]>
					</if>
     </select>
     
     
     <select id="ftTmplList" parameterType="map" resultType="map">
		<![CDATA[
			/* [com.i2sema.v2.ft.ftApiDAO.ftTmplList] 친구톡 일반 템플릿 목록 */
			SELECT			*
			FROM				(
									
									SELECT 	it.tmpl_seq AS tmplSeq,
											it.msg_type AS msgType,
											it.tmpl_name AS tmplName,
											it.content AS content, 
											it.rgst_date AS rgstDate
									FROM ita_tmplat it
									WHERE		1=1
														AND it.use_at = 'Y'
		]]>
														<include refid="bizTmplSearchSQL" />
														<if test="null != title and !title.equals('')">
															<![CDATA[ AND tmpl_name like CONCAT('%', #{title}, '%') ]]>
														</if>
														<if test="null != msgType and !msgType.equals('')">
															<![CDATA[ AND msg_type = #{msgType} ]]>
														</if>	
			) B
			ORDER BY		tmplSeq DESC
			LIMIT #{firstIndex}, #{recordCountPerPage}
	</select>
	
	<select id="readFtTmpl" parameterType="int" resultType="map">
		/* [com.i2sema.v2.ft.ftApiDAO.readFtTmpl] 친구톡 일반 템플릿 정보 조회 */
		SELECT 		it.tmpl_seq AS tmplSeq,
					it.msg_type AS msgType,
					it.tmpl_name AS tmplName,
					it.content AS content,
					it.img_seq AS imgSeq,
					it.kakao_img_link AS imgLink,
					it.org_id AS orgId,
					it.mber_no AS mberNo,
					ifi.img_url AS imgUrl,
					ifi.img_name AS imgName,
					CONCAT('[', GROUP_CONCAT(itb.kko_btn_info ORDER BY itb.idx ASC SEPARATOR ','), ']') AS buttons
		FROM ita_tmplat it
			LEFT JOIN ita_tmpl_btn itb ON it.tmpl_seq = itb.tmpl_seq
			LEFT JOIN ita_frt_img ifi ON it.img_seq = ifi.img_seq
		WHERE it.tmpl_seq = #{tmplSeq}
		GROUP BY it.tmpl_seq
	</select>
	
	<update id="deleteFtTmpl" parameterType="map">
		<![CDATA[
			/* [com.i2sema.v2.ft.ftApiDAO.deleteFtTmpl] 일반 템플릿 삭제 */
			UPDATE		ita_tmplat
			SET				use_at = 'N'
			WHERE		tmpl_seq IN
		]]>
		<foreach item="item" index="index" collection="tmplSeq" open="("
			separator="," close=")">
			#{item}
		</foreach>
	</update>


	<select id="checkPermissionItaTemplate" parameterType="map" resultType="int">
		SELECT count(*)
		FROM ita_tmplat
		WHERE org_id = #{orgId}
			AND mber_no = #{mberNo}
			AND use_at = "Y"
			AND tmpl_seq IN
		<foreach item="item" collection="tmplSeqList" open="(" separator="," close=")">
			#{item}
		</foreach>
	</select>

	<select id="checkPermissionItaFtImages" parameterType="map" resultType="int">
		SELECT count(*)
		FROM ita_frt_img
		WHERE org_id = #{orgId}
		AND mber_no = #{mberNo}
		AND use_at = "Y"
		AND img_seq IN
		<foreach item="item" collection="imgSeqList" open="(" separator="," close=")">
			#{item}
		</foreach>
	</select>
	
	<insert id="registFtTmpl" parameterType="map">
		<![CDATA[
    		/* [com.i2sema.v2.ft.ftApiDAO.registFtTmpl] 친구톡 일반템플릿 등록 */
   			INSERT INTO		ita_tmplat
   			(
				tmpl_name,
				content,
				img_seq,
				kakao_img_link,
				msg_type,
				msg_cl_type,
				mber_no,
				org_id,
				rgst_Id
   			)
			VALUES
			(
				#{tmplName},
				#{content},
				#{imgSeq},
				#{imgUrl},
				#{msgType},
				#{msgClType},
				#{mberNo},
				#{orgId},
				#{rgstId}
			)
		]]>
		<selectKey keyProperty="tmplSeq" resultType="Integer" order="AFTER"> SELECT LAST_INSERT_ID() </selectKey>
	</insert>
	
	<insert id="insertFtTmplBtn" parameterType="map">
		<![CDATA[
    		/* [com.i2sema.v2.ft.ftApiDAO.insertFtTmplBtn] 친구톡 일반템플릿 버튼 등록 */
   			INSERT INTO		ita_tmpl_btn
   			(
   				tmpl_seq,
   				idx,
				kakao_btn_type,
				kko_btn_info
   			)
			VALUES
			(
				#{tmplSeq},
				#{index},
				'2',
				#{kkoBtnInfo}
			)
		]]>
	</insert>
	
	<insert id="registFtImg" parameterType="map">
		<![CDATA[
    		/* [com.i2sema.v2.ft.ftApiDAO.registFtImg] 친구톡 이미지 등록 */
   			INSERT INTO		ita_frt_img
   			(
   				img_name,
				img_url,
				img_width,
				img_height,
				img_type,
				org_id,
				mber_no,
				rgst_id
   			)
			VALUES
			(
				#{imgName},
				#{imgUrl},
				#{imgWidth},
				#{imgHeight},
				#{imgType},
				#{orgId},
				#{mberNo},
				#{rgstId}
			)
		]]>
		<selectKey keyProperty="imgSeq" resultType="Integer" order="AFTER"> SELECT LAST_INSERT_ID() </selectKey>
	</insert>
	
	<select id="ftImgCount" parameterType="map" resultType="int">
        <![CDATA[
			/* [com.i2sema.v2.ft.ftApiDAO.ftImgCount] 친구톡 이미지 카운트 */
			SELECT	COUNT(*) AS cnt
			FROM 		ita_frt_img
			WHERE	1 = 1
					AND use_at = 'Y'
		]]>
					<include refid="bizTmplSearchSQL" />
					<if test="null != imgName and !imgName.equals('')">
						<![CDATA[ AND img_name like CONCAT('%', #{imgName}, '%') ]]>
					</if>
					<if test="null != imgType and !imgType.equals('')">
						<![CDATA[ AND img_type = #{imgType} ]]>
					</if>
     </select>
     
     <select id="ftImgList" parameterType="map" resultType="map">
		<![CDATA[
			/* [com.i2sema.v2.ft.ftApiDAO.ftImgList] 친구톡 이미지 목록 */
			SELECT			*
			FROM				(
									SELECT 	it.img_seq AS imgSeq,
											it.img_name AS imgName,
											it.img_url AS imgUrl,
											it.img_type AS imgType, 
											it.img_width AS imgWidth,
											it.img_height AS imgHeight,
											it.rgst_date AS rgstDate
									FROM ita_frt_img it
									WHERE		1=1
														AND it.use_at = 'Y'
		]]>
														<include refid="bizTmplSearchSQL" />
														<if test="null != imgName and !imgName.equals('')">
															<![CDATA[ AND img_name like CONCAT('%', #{imgName}, '%') ]]>
														</if>
														<if test="null != imgType and !imgType.equals('')">
															<![CDATA[ AND img_type = #{imgType} ]]>
														</if>
			) B
			ORDER BY		imgSeq DESC
			LIMIT #{firstIndex}, #{recordCountPerPage}
	</select>
	
	<update id="deleteFtImg" parameterType="map">
		<![CDATA[
			/* [com.i2sema.v2.ft.ftApiDAO.deleteFtImg] 친구톡 이미지 삭제 */
			UPDATE		ita_frt_img
			SET			use_at = 'N'
			WHERE		img_seq IN
		]]>
		<foreach item="item" index="index" collection="imgSeqList" open="("
			separator="," close=")">
			#{item}
		</foreach>
	</update>
	
</mapper>
