feat: 게시판 연관상품 목록 표준화

This commit is contained in:
이주일
2026-07-18 11:57:45 +09:00
parent 713bd6a64d
commit afbc268b57
4 changed files with 71 additions and 70 deletions

View File

@@ -2656,19 +2656,33 @@
WHERE 1=1
AND FGI.GOODS_INNB = FBG.GOODS_INNB
AND FGI.SOPMAL_CD = FBG.SOPMAL_CD
AND FGI.IMG_KND = '03'
AND FGI.IMG_KND = '02'
AND FGI.CUT_NB = 1
LIMIT 1
)IMG
) AS IMG
,FG.GOODS_NM
,FGO.CNSMRPRIC
,FGO.SLEPRIC
,FGO.STDR_DV_AT
,FN_GET_COMMCODE_NAME('GOODS_STTUS', FG.GOODS_STTUS_CD) AS GOODS_STTUS_NM
,FN_GET_COMMCODE_NAME('EXPSR', FG.EXPSR_DV_CD) AS EXPSR_NM
,FBG.ORDR_GOODS_OPTN_INNB
,FBG.SOPMAL_CD
,FBG.RE_ORDER_AT
,FG.GOODS_ICON_CD
,FG.SRT_DC
,FG.GOODS_STTUS_CD
,IFNULL(ROUND(FGO.CNSMRPRIC, 0), 0) AS CNSMRPRIC
,IFNULL(ROUND(FGO.SLEPRIC, 0), 0) AS SLEPRIC
,IFNULL(ROUND(((FGO.CNSMRPRIC - FGO.SLEPRIC) / NULLIF(FGO.CNSMRPRIC, 0)) * 100, 0), 0) AS SLE_PERCENT
,IFNULL((SELECT ROUND(AVG(FBA.EVL_SCORE), 1)
FROM GC_BOARDDATA_GOODS RBG
INNER JOIN GC_BOARDDATA RB ON RB.BBSCTT_INNB = RBG.BBSCTT_INNB AND RB.SOPMAL_CD = RBG.SOPMAL_CD
INNER JOIN GC_BOARDMANAGER RBM ON RBM.BBS_ID = RB.BBS_ID AND RBM.SOPMAL_CD = RB.SOPMAL_CD
LEFT JOIN GC_BOARDFORM RBF ON RBF.BBS_ID = RBM.BBS_ID AND RBF.SOPMAL_CD = RBM.SOPMAL_CD AND RBF.USE_AT = 'Y' AND RBF.ADIT_ITM_DV_CD = '04'
LEFT JOIN GC_BOARD_ADDITM FBA ON FBA.BBSCTT_INNB = RB.BBSCTT_INNB AND FBA.SOPMAL_CD = RB.SOPMAL_CD AND FBA.QESITM_INNB = RBF.QESITM_INNB
WHERE RBG.SOPMAL_CD = FG.SOPMAL_CD
AND RBG.GOODS_INNB IN (SELECT CAST(RVW_GROUP_NB AS DECIMAL(10)) FROM GC_GOODS_RVW_V WHERE SOPMAL_CD = FG.SOPMAL_CD AND GOODS_INNB = FG.GOODS_INNB)
AND RB.USE_AT = 'Y' AND RB.DEPTH = 0 AND RBM.BBS_TY_CD IN ('06', '07')), 0) AS AVG_EVL_SCORE
,IFNULL((SELECT COUNT(RB.BBSCTT_INNB)
FROM GC_BOARDDATA_GOODS RBG
INNER JOIN GC_BOARDDATA RB ON RB.BBSCTT_INNB = RBG.BBSCTT_INNB AND RB.SOPMAL_CD = RBG.SOPMAL_CD
INNER JOIN GC_BOARDMANAGER RBM ON RBM.BBS_ID = RB.BBS_ID AND RBM.SOPMAL_CD = RB.SOPMAL_CD
WHERE RBG.SOPMAL_CD = FG.SOPMAL_CD
AND RBG.GOODS_INNB IN (SELECT CAST(RVW_GROUP_NB AS DECIMAL(10)) FROM GC_GOODS_RVW_V WHERE SOPMAL_CD = FG.SOPMAL_CD AND GOODS_INNB = FG.GOODS_INNB)
AND RB.USE_AT = 'Y' AND RB.DEPTH = 0 AND RBM.BBS_TY_CD IN ('06', '07')), 0) AS CNT_BBSCTT
FROM GC_BOARDDATA_GOODS FBG
INNER JOIN GC_GOODS FG ON
FG.GOODS_INNB = FBG.GOODS_INNB
@@ -2688,6 +2702,16 @@
</otherwise>
</choose>
AND FGO.STDR_DV_AT = 'Y'
<if test="serverDv == 'sopmal'">
AND FGO.OPTN_EXPSR_AT = 'Y'
AND FGO.USE_AT = 'Y'
AND FG.USE_AT = 'Y'
AND FG.GOODS_KND_CD = '01'
AND FG.GOODS_STTUS_CD IN ('01', '02')
AND (FG.EXPSR_DV_CD = '01' OR (FG.EXPSR_DV_CD = '03' AND SYSDATE() BETWEEN FG.EXPSR_BGN_DT AND FG.EXPSR_END_DT))
ORDER BY CASE FG.GOODS_STTUS_CD WHEN '02' THEN 1 ELSE 0 END ASC, FBG.REGIST_DT ASC, FBG.GOODS_INNB ASC
LIMIT 12
</if>
</select>
<!-- 게시글 연관상품 삭제 (게시글 수정시)-->