<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<!--
	수정일          수정자                          수정내용
  ===========      ========    =================================================
  2011.10.06		이기하     	 	보안 취약점 점검사항 반영 $->#변경
-->
<sqlMap namespace="CmmnCodeManage">

	<typeAlias  alias="egovMap"    type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
	<typeAlias  alias="CmmnCode"   type="egovframework.com.sym.ccm.cca.service.CmmnCode"/>
	<typeAlias  alias="CmmnCodeVO" type="egovframework.com.sym.ccm.cca.service.CmmnCodeVO"/>

	<select id="CmmnCodeManageDAO.selectCmmnCodeList" parameterClass="CmmnCodeVO" resultClass="egovMap">
		<![CDATA[
			SELECT  *
			  FROM  (
			SELECT ROWNUM RNUM, ALL_LIST.*
			  FROM  (
			/* 구현 Sql */
			SELECT  B.CL_CODE_NM
			     ,  A.CODE_ID
			     ,  A.CODE_ID_NM
			     ,  A.USE_AT
			  FROM  COMTCCMMNCODE   A
			     ,  COMTCCMMNCLCODE B
			 WHERE  A.CL_CODE = B.CL_CODE
		]]>
			<isEqual prepend="AND" property="searchCondition" compareValue="1">
				<![CDATA[A.CODE_ID LIKE '%' || #searchKeyword# || '%']]>
			</isEqual>
			<isEqual prepend="AND" property="searchCondition" compareValue="2">
				<![CDATA[A.CODE_ID_NM LIKE '%' || #searchKeyword# || '%']]>
			</isEqual>
			<isEqual prepend="AND" property="searchCondition" compareValue="clCode">
				<![CDATA[A.CL_CODE LIKE '%' || #searchKeyword# || '%']]>
			</isEqual>
			<isEqual prepend="AND" property="searchCondition" compareValue="clCode">
				<![CDATA[A.USE_AT = 'Y']]>
			</isEqual>
		<![CDATA[
			/* 구현 Sql */
				    ) ALL_LIST
				    ) Z
			 WHERE  RNUM  > #firstIndex#
			   AND  RNUM <= #firstIndex# + #recordCountPerPage#
		]]>

	</select>

	<select id="CmmnCodeManageDAO.selectCmmnCodeListTotCnt" parameterClass="CmmnCodeVO" resultClass="int">
		<![CDATA[
			SELECT  COUNT(*) totcnt
			  FROM  COMTCCMMNCODE   A
			     ,  COMTCCMMNCLCODE B
			 WHERE  A.CL_CODE = B.CL_CODE
		]]>
			<isEqual prepend="AND" property="searchCondition" compareValue="1">
				<![CDATA[CODE_ID LIKE '%' || #searchKeyword# || '%']]>
			</isEqual>
			<isEqual prepend="AND" property="searchCondition" compareValue="2">
				<![CDATA[CODE_ID_NM LIKE '%' || #searchKeyword# || '%']]>
			</isEqual>
	</select>

	<select id="CmmnCodeManageDAO.selectCmmnCodeDetail" parameterClass="CmmnCode" resultClass="CmmnCode">
		<![CDATA[
            SELECT  B.CL_CODE_NM clCodeNm
                 ,  A.CL_CODE    clCode
                 ,  A.CODE_ID    codeId
			     ,  A.CODE_ID_NM codeIdNm
                 ,  A.CODE_ID_DC codeIdDc
                 ,  A.USE_AT     useAt
			  FROM  COMTCCMMNCODE   A
			     ,  COMTCCMMNCLCODE B
			 WHERE  A.CL_CODE = B.CL_CODE
               AND  A.CODE_ID = #codeId#
		]]>
	</select>

	<insert id="CmmnCodeManageDAO.insertCmmnCode">
		<![CDATA[
		    INSERT
		      INTO  COMTCCMMNCODE
		         (  CODE_ID
		         ,  CODE_ID_NM
		         ,  CODE_ID_DC
		         ,  CL_CODE
		         ,  USE_AT
		         ,  FRST_REGIST_PNTTM
		         ,  FRST_REGISTER_ID
		         ,  LAST_UPDT_PNTTM
		         ,  LAST_UPDUSR_ID
		         )
		    VALUES
		         (  #codeId#
		         ,  #codeIdNm#
		         ,  #codeIdDc#
		         ,  #clCode#
		         ,  #useAt#
		         ,  SYSDATETIME
		         ,  #frstRegisterId#
		         ,  SYSDATETIME
		         ,  #frstRegisterId#
		         )
		]]>
	</insert>

	<update id="CmmnCodeManageDAO.updateCmmnCode">
		<![CDATA[
            UPDATE  COMTCCMMNCODE
               SET  CODE_ID_NM        = #codeIdNm#
                 ,  CODE_ID_DC        = #codeIdDc#
                 ,  USE_AT            = #useAt#
                 ,  LAST_UPDT_PNTTM = SYSDATETIME
                 ,  LAST_UPDUSR_ID    = #lastUpdusrId#
             WHERE  CODE_ID           = #codeId#
		]]>
	</update>

	<delete id="CmmnCodeManageDAO.deleteCmmnCode">
		<![CDATA[
            UPDATE  COMTCCMMNCODE
               SET  USE_AT  = 'N'
             WHERE  CODE_ID = #codeId#
		]]>
	</delete>


</sqlMap>