<?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="cbdoro.mods.roadSect.mapper.BmlDoroAreaMapper">

    <resultMap id="bmlDoroAreaVO" type="bmlDoroAreaVO">
        <result column="IDX"                property="idx"                  /> <!-- 키 -->
        <result column="MNUM"               property="mnum"                 /> <!-- 지정코드 -->
        <result column="ALIAS"              property="alias"                /> <!-- 설명 -->
        <result column="GU_CD"              property="guCd"                 /> <!-- 구코드 -->
        <result column="GU_NM"              property="guNm"                 /> <!-- 구명 -->
        <result column="EMD_CD"             property="emdCd"                /> <!-- 면코드 -->
        <result column="EMD_NM"             property="emdNm"                /> <!-- 면명 -->
        <result column="RI_CD"              property="riCd"                 /> <!-- 동리코드 -->
        <result column="RI_NM"              property="riNm"                 /> <!-- 동리명 -->
        <result column="Ext_MaxX"           property="extMaxx"              /> <!-- X축_최대 -->
        <result column="Ext_MaxY"           property="extMaxy"              /> <!-- Y축_최대 -->
        <result column="Ext_MinX"           property="extMinx"              /> <!-- X축_최소 -->
        <result column="Ext_MinY"           property="extMiny"              /> <!-- Y축_최소 -->
        <result column="GBN_CDE"            property="gbnCde"               /> <!-- 구분코드 -->
        <result column="LAND_CD"            property="landCd"               /> <!-- 지적 고유번호 -->
        <result column="JIBUN"              property="jibun"                /> <!-- 지번 -->
        <result column="BON"                property="bon"                  /> <!-- 본번 -->
        <result column="BU"                 property="bu"                   /> <!-- 부번 -->
        <result column="JIMOK"              property="jimok"                /> <!-- 지목 -->
        <result column="AREA"               property="area"                 /> <!-- 면적 -->
        <result column="ADDR"               property="addr"                 /> <!-- 토지주소 -->
        <result column="OWN_ADDR"           property="ownAddr"              /> <!-- 소유자_주소 -->
        <result column="OWN_NAM"            property="ownNam"               /> <!-- 소유자_명 -->
        <result column="OWN_GBN"            property="ownGbn"               /> <!-- 소유구분 -->
        <result column="GEOSHAPE"            property="geoshape"               /> <!-- 소유구분 -->
    </resultMap>

    <!-- 컬럼 -->
    <sql id="columns">
        IDX
        , MNUM
        , ALIAS
        , GU_CD
        , GU_NM
        , EMD_CD
        , EMD_NM
        , RI_CD
        , RI_NM
        , Ext_MaxX
        , Ext_MaxY
        , Ext_MinX
        , Ext_MinY
    </sql>

    <!-- 값 -->
    <sql id="values">
        #{idx}
        , #{mnum}
        , #{alias}
        , #{guCd}
        , #{guNm}
        , #{emdCd}
        , #{emdNm}
        , #{riCd}
        , #{riNm}
        , #{extMaxX}
        , #{extMaxY}
        , #{extMinX}
        , #{extMinY}
    </sql>

    <!-- 업데이트 값 -->
    <sql id="updateField">
        IDX       = #{idx}
        , MNUM      = #{mnum}
        , ALIAS     = #{alias}
        , GU_CD     = #{guCd}
        , GU_NM     = #{guNm}
        , EMD_CD    = #{emdCd}
        , EMD_NM    = #{emdNm}
        , RI_CD     = #{riCd}
        , RI_NM     = #{riNm}
        , Ext_MaxX  = #{extMaxX}
        , Ext_MaxY  = #{extMaxY}
        , Ext_MinX  = #{extMinX}
        , Ext_MinY  = #{extMinY}
    </sql>

    <!-- 검색조건 -->
    <sql id="searchWhere">
        <where>
            1 = 1
                AND BDUD.MNUM = #{mnum}
                <if test="sw != null and sw != ''">
                    AND BDUD.LAND_CD = BLD.LAND_CD
                    AND
                    (
                    BLD.BON LIKE CONCAT('%', #{sw} , '%')
                    OR
                    BLD.BU LIKE CONCAT('%', #{sw} , '%')
                    )
                </if>
        </where>
    </sql>

    <!-- 도로구역 시군구 조회 -->
    <select id="itemListSiGunGu" resultMap="bmlDoroAreaVO">
        SELECT      GU_CD, GU_NM

        FROM        BML_DORO_AREA

        GROUP BY    GU_CD
        ORDER BY    GU_CD ASC
    </select>

    <!-- 도로구역 읍면 조회 -->
    <select id="itemListEupMyeon" resultMap="bmlDoroAreaVO">
        SELECT      EMD_CD, EMD_NM

        FROM        BML_DORO_AREA

        WHERE       GU_CD = #{guCd}

        GROUP BY    EMD_CD
        ORDER BY    EMD_NM ASC
    </select>

    <!-- 도로구역 동리 조회 -->
    <select id="itemListDongRi" resultMap="bmlDoroAreaVO">
        SELECT      RI_CD, RI_NM

        FROM        BML_DORO_AREA

        WHERE       EMD_CD = #{emdCd}

        GROUP BY    RI_CD
        ORDER BY    RI_NM ASC
    </select>

    <!-- 도로구역 도로구역 조회 -->
    <select id="itemListDoroArea" resultMap="bmlDoroAreaVO">
        SELECT      MNUM,ALIAS

        FROM        BML_DORO_AREA

        WHERE       RI_CD = #{riCd}

        GROUP BY    MNUM
        ORDER BY    MNUM ASC
    </select>

    <!-- 도로구역 검색결과 총갯수 조회 -->
    <select id="itemListTCount" resultType="int">
        SELECT      COUNT(BDUD.LAND_CD)

        FROM        BML_DORO_UI_DT  AS BDUD
        LEFT JOIN   BML_LAND_DT     AS BLD
        ON          BDUD.LAND_CD    = BLD.LAND_CD

        <include refid="searchWhere" />

        ORDER BY    BDUD.MNUM ASC
    </select>

    <!-- 도로구역 검색결과 조회 -->
    <select id="itemListResultList" resultMap="bmlDoroAreaVO">
        SELECT      BDUD.LAND_CD, BDUD.JIBUN, BDUD.GBN_CDE 

        FROM        BML_DORO_UI_DT  AS BDUD ,BML_LAND_DT     AS BLD , BML_LAND_AS_GEO  AS BLAG , BML_LAND_AS_FEA AS BLAF
        
        

        <include refid="searchWhere" />
		AND  		BDUD.LAND_CD    = BLD.LAND_CD
		AND  		BLD.LAND_CD = BLAF.PNU AND BLAF.UID = BLAG.UID
        ORDER BY    BDUD.MNUM ASC

        LIMIT       #{firstIndex}, #{maxList}
    </select>

    <!-- 도로구역 상세정보 조회 -->
    <select id="objectDetailView" resultMap="bmlDoroAreaVO">
        SELECT
              LAND_CD,
				ADDR,
				DJ_GBN,
				BON,
				BU,
				JIMOK_CD,
				JIMOK,
				AREA,
				MV_CD,
				MV_RSN,
				MV_DATE,
				OWN_ADDR,
				OWN_GBN,
				OWN_PER,
				OWN_CHG_DATE,
				OWN_CHG_REA,
				OWN_CHG_CD,
				LAND_PRICE,
				LAND_PRICE_NS,
				LAND_PRICE_1,
				LAND_PRICE_1_NS,
				LAND_PRICE_2,
				LAND_PRICE_2_NS,
				LAND_PRICE_3,
				LAND_PRICE_3_NS,
				LAND_PRICE_4,
				LAND_PRICE_4_NS,
				SGG,
         		FN_GETUSER(OWN_NAM) as OWN_NAM
        FROM        BML_LAND_DT
        WHERE       LAND_CD = #{landCd}
    </select>

    <!-- 도로구역 상세정보 조회(토지연명부) -->
    <select id="objectDetailViewLandLst" resultMap="bmlDoroAreaVO">
        SELECT      FTR_IDN,
					LAND_CD,
					ADDR,
					DJ_GBN,
					BON,
					BU,
					JIMOK_CD,
					JIMOK,
					AREA,
					OWN_ADDR,
					OWN_GBN,
					OWN_PER,
					OWN_CHG_DATE,
					OWN_CHG_REA,
					OWN_CHG_CD,
					LAND_PRICE,
					LAND_PRICE_NS,
					LAND_PRICE_1,
					LAND_PRICE_1_NS,
					LAND_PRICE_2,
					LAND_PRICE_2_NS,
					LAND_PRICE_3,
					LAND_PRICE_3_NS,
					LAND_PRICE_4,
					LAND_PRICE_4_NS,
					FN_GETUSER(OWN_NAM) as OWN_NAM
        FROM        BML_LAND_DT_LST
        WHERE       LAND_CD = #{landCd}
    </select>
	<select id="getCoordi" resultMap="bmlDoroAreaVO">
	 SELECT      FN_GEOJSON(ST_ASTEXT(BLAG.GEOSHAPE)) AS GEOSHAPE
     FROM        BML_LAND_AS_GEO  AS BLAG , BML_LAND_AS_FEA AS BLAF
     where  	 PNU = #{landCd}
	 AND  		 BLAF.UID = BLAG.UID
        
	</select>
	<select id="getpolycoordi" resultMap="bmlDoroAreaVO">
	 CALL GMR_SELECT_FIGUER('INTERSECT','BML_LAND_AS','*','GEOSHAPE','POINT','#{extMaxx} #{extMaxy}')
        
	</select>
	<select id="getcovertcoordi" resultMap="bmlDoroAreaVO">
	 SELECT      FN_GEOJSON(ST_ASTEXT(#{geoshape})) AS GEOSHAPE from duel
        
	</select>
	
	
</mapper>
