226 lines
8.8 KiB
XML
226 lines
8.8 KiB
XML
<?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.wb.domainserver.domain.itrnt.str.mapper.BOItrntStrMapper">
|
|
|
|
|
|
<!-- 매장 > 매장 목록 조회 > where -->
|
|
<sql id="selectBOStrListWhere">
|
|
<![CDATA[
|
|
WHERE 1=1
|
|
AND ST.TENT_STTUS = '02'
|
|
AND ST.MRHST_AT = 'Y'
|
|
AND ST.SITE_EXPSR_AT = 'Y'
|
|
AND IFNULl(ST.REPRSNT_BRAND, '') != ''
|
|
]]>
|
|
<if test="@com.wb.domainserver.util.dataaccess.MybaitsUtil@isNotEmpty(sopmalCd)">
|
|
AND ST.TRTMNT_BRAND LIKE CONCAT('%',#{sopmalCd},'%')
|
|
</if>
|
|
<if test="@com.wb.domainserver.util.dataaccess.MybaitsUtil@isNotEmpty(reprsntBrand)">
|
|
AND ST.REPRSNT_BRAND = #{reprsntBrand}
|
|
</if>
|
|
<if test="@com.wb.domainserver.util.dataaccess.MybaitsUtil@isNotEmpty(srchKeyword)">
|
|
<![CDATA[
|
|
AND ST.STR_NM LIKE CONCAT('%', #{srchKeyword},'%')
|
|
]]>
|
|
</if>
|
|
<if test="@com.wb.domainserver.util.dataaccess.MybaitsUtil@isNotEmpty(srchCtyDo)">
|
|
<![CDATA[
|
|
AND ST.CTY_DO = (
|
|
SELECT
|
|
GCD.CD_NM
|
|
FROM GC_CODE_GROUP GRP
|
|
INNER JOIN GC_CODE GCD ON GCD.GROUP_CD = GRP.GROUP_CD
|
|
WHERE 1=1
|
|
AND GRP.GROUP_CD = 'SIDO'
|
|
AND GCD.CD = #{srchCtyDo}
|
|
)
|
|
]]>
|
|
</if>
|
|
<if test="@com.wb.domainserver.util.dataaccess.MybaitsUtil@isNotEmpty(srchCtyGunGu)">
|
|
<![CDATA[
|
|
AND ST.CTY_GUN_GU LIKE CONCAT('%', #{srchCtyGunGu},'%')
|
|
]]>
|
|
</if>
|
|
</sql>
|
|
|
|
<!-- 매장 > 매장 목록 조회 > from -->
|
|
<sql id="selectBOStrListFrom">
|
|
<![CDATA[
|
|
FROM
|
|
GC_STORE ST
|
|
INNER JOIN
|
|
(
|
|
SELECT
|
|
CTY_DO
|
|
FROM
|
|
GC_STORE
|
|
GROUP BY
|
|
CTY_DO
|
|
) AS CTY
|
|
ON
|
|
ST.CTY_DO = CTY.CTY_DO
|
|
]]>
|
|
</sql>
|
|
|
|
|
|
<!-- 매장 > 매장 목록 조회 -->
|
|
<select id = "selectBOStrListCnt"
|
|
parameterType="com.wb.domainserver.domain.itrnt.str.vo.BOItrntStrVO"
|
|
resultType = "java.lang.Integer">
|
|
<![CDATA[
|
|
SELECT COUNT(1)
|
|
]]>
|
|
<include refid = "selectBOStrListFrom"/>
|
|
<include refid = "selectBOStrListWhere"/>
|
|
</select>
|
|
|
|
<!-- 매장 > 매장 목록 조회 -->
|
|
<select id = "selectBOStrListInqire"
|
|
parameterType="com.wb.domainserver.domain.itrnt.str.vo.BOItrntStrVO"
|
|
resultType = "dataMap">
|
|
<![CDATA[
|
|
SELECT *
|
|
FROM (
|
|
SELECT CAST(@ROWNUM:=@ROWNUM+1 AS UNSIGNED) AS RNUM
|
|
,TB.*
|
|
FROM (
|
|
SELECT
|
|
ST.STR_INNB,
|
|
ST.TENTCPN_ID,
|
|
ST.TENTCPN_NM,
|
|
ST.STR_NM,
|
|
ST.TENT_GROUP,
|
|
ST.TENT_STTUS,
|
|
ST.STR_CD,
|
|
ST.CTY_DO,
|
|
ST.CTY_GUN_GU,
|
|
ST.STR_ADRES_DV,
|
|
ST.STR_ZIP,
|
|
ST.STR_ADRES,
|
|
ST.STR_RNM_ADRES,
|
|
ST.STR_DTL_ADRES,
|
|
ST.STR_TELNB,
|
|
ST.REPRSNT_BRAND
|
|
]]>
|
|
<include refid = "selectBOStrListFrom"/>
|
|
<include refid = "selectBOStrListWhere"/>
|
|
<![CDATA[
|
|
ORDER BY FIELD(ST.CTY_DO, '제주특별자치도', '부산광역시', '울산광역시', '대구광역시', '광주광역시', '세종', '충청남도', '충청북도', '대전광역시', '강원도', '인천광역시', '경기도', '서울특별시') DESC
|
|
, ST.CTY_GUN_GU
|
|
) TB
|
|
WHERE (@rownum:=0)=0
|
|
) PV
|
|
WHERE 1=1
|
|
LIMIT #{recordCountPerPage} OFFSET #{firstIndex}
|
|
]]>
|
|
</select>
|
|
|
|
|
|
<!-- 매장 > 매장 목록 조회 시/도 별 그룹 -->
|
|
<select id = "selectBOStrListCtyGroup"
|
|
parameterType="com.wb.domainserver.domain.itrnt.str.vo.BOItrntStrVO"
|
|
resultType = "com.wb.domainserver.domain.itrnt.str.vo.BOItrntStrVO">
|
|
<![CDATA[
|
|
SELECT
|
|
CTY_DO,
|
|
COUNT(STR_INNB) AS STR_COUNT
|
|
FROM GC_STORE
|
|
WHERE CTY_DO IS NOT NULL
|
|
AND TRTMNT_BRAND LIKE CONCAT('%',#{sopmalCd},'%')
|
|
AND TENT_STTUS = '02' -- 개점
|
|
AND SITE_EXPSR_AT = 'Y'
|
|
AND MRHST_AT = 'Y'
|
|
AND IFNULl(REPRSNT_BRAND, '') != ''
|
|
GROUP BY CTY_DO
|
|
ORDER BY FIELD(CTY_DO, '제주특별자치도', '부산광역시', '울산광역시', '대구광역시', '광주광역시', '세종', '충청남도', '충청북도', '대전광역시', '강원도', '인천광역시', '경기도', '서울특별시') DESC;
|
|
]]>
|
|
</select>
|
|
|
|
|
|
<!-- 매장 > 매장 목록 조회 군/구 별 그룹 -->
|
|
<select id = "selectBOStrListGunGuGroup"
|
|
parameterType="com.wb.domainserver.domain.itrnt.str.vo.BOItrntStrVO"
|
|
resultType = "dataMap">
|
|
<![CDATA[
|
|
SELECT
|
|
CASE
|
|
WHEN SUBSTR(ST.CTY_DO,1,2) = '서울' THEN 1
|
|
WHEN SUBSTR(ST.CTY_DO,1,2) = '경기' THEN 2
|
|
WHEN SUBSTR(ST.CTY_DO,1,2) = '인천' THEN 3
|
|
WHEN SUBSTR(ST.CTY_DO,1,2) = '강원' THEN 4
|
|
WHEN SUBSTR(ST.CTY_DO,1,2) = '대전' THEN 5
|
|
WHEN SUBSTR(ST.CTY_DO,1,4) = '충청북도' THEN 6
|
|
WHEN SUBSTR(ST.CTY_DO,1,4) = '충청남도' THEN 7
|
|
WHEN SUBSTR(ST.CTY_DO,1,2) = '광주' THEN 8
|
|
WHEN SUBSTR(ST.CTY_DO,1,4) = '전라북도' THEN 9
|
|
WHEN SUBSTR(ST.CTY_DO,1,4) = '전라남도' THEN 10
|
|
WHEN SUBSTR(ST.CTY_DO,1,2) = '대구' THEN 11
|
|
WHEN SUBSTR(ST.CTY_DO,1,2) = '울산' THEN 12
|
|
WHEN SUBSTR(ST.CTY_DO,1,2) = '부산' THEN 13
|
|
WHEN SUBSTR(ST.CTY_DO,1,2) = '경북' THEN 14
|
|
WHEN SUBSTR(ST.CTY_DO,1,2) = '경남' THEN 15
|
|
WHEN SUBSTR(ST.CTY_DO,1,2) = '제주' THEN 16
|
|
ELSE 99
|
|
END AS CTY_DO_IDX,
|
|
ST.STR_INNB,
|
|
ST.CTY_DO,
|
|
ST.CTY_GUN_GU,
|
|
ST.STR_NM
|
|
FROM GC_STORE ST
|
|
INNER JOIN (
|
|
SELECT CTY_DO,
|
|
COUNT(STR_INNB) AS STR_COUNT
|
|
FROM GC_STORE
|
|
GROUP BY CTY_DO ) AS GROUP_COUNT
|
|
ON ST.CTY_DO = GROUP_COUNT.CTY_DO
|
|
WHERE TRTMNT_BRAND LIKE CONCAT('%',#{sopmalCd},'%')
|
|
AND TENT_STTUS = '02' -- 개점
|
|
AND SITE_EXPSR_AT = 'Y'
|
|
AND MRHST_AT = 'Y'
|
|
AND IFNULl(REPRSNT_BRAND, '') != ''
|
|
ORDER BY CTY_DO_IDX, STR_NM
|
|
]]>
|
|
</select>
|
|
|
|
|
|
<!-- 매장 > 매장 상세 조회 -->
|
|
<select id = "selectBOStrDtlInqire"
|
|
parameterType="com.wb.domainserver.domain.itrnt.str.vo.BOItrntStrVO"
|
|
resultType = "dataMap">
|
|
<![CDATA[
|
|
SELECT
|
|
STR_INNB
|
|
,STR_NM
|
|
,HVOF_DE
|
|
,HVOF_DE_ADIT
|
|
,CASE WHEN BSN_TME ='||||' THEN NULL ELSE BSN_TME END AS BSN_TME -- 빈값일 경우 |||| 으로 저장되는 부분있어 수정
|
|
,DATE_FORMAT(OPBIZ_DE, '%Y-%m-%d') AS OPBIZ_DE
|
|
,FN_GET_SOPMAL_NAME(#{sopmalCd}) AS SOPMAL_NM
|
|
,FN_GET_SOPMAL_NAME(REPRSNT_BRAND) AS REPRSNT_BRAND_NM
|
|
,REPRSNT_BRAND
|
|
,STR_TELNB
|
|
,STR_OPER_DV
|
|
,CTY_DO
|
|
,CTY_GUN_GU
|
|
,STR_ADRES_DV
|
|
,STR_ZIP
|
|
,STR_ADRES
|
|
,STR_RNM_ADRES
|
|
,STR_DTL_ADRES
|
|
,STR_REPRSNT_IMG
|
|
,STR_DTL_IMG
|
|
,CONCAT(STR_REPRSNT_IMG,'|',STR_DTL_IMG) AS STR_IMG
|
|
,LA
|
|
,LO
|
|
FROM
|
|
GC_STORE
|
|
WHERE 1=1
|
|
AND STR_INNB = #{strInnb}
|
|
AND TENT_STTUS = '02' -- 개점
|
|
AND SITE_EXPSR_AT = 'Y'
|
|
AND MRHST_AT = 'Y'
|
|
AND IFNULL(REPRSNT_BRAND, '') != ''
|
|
]]>
|
|
</select>
|
|
|
|
</mapper>
|