merge master into develop - CscListRForm.jsp FAQ 아코디언 버그 수정
This commit is contained in:
@@ -0,0 +1,369 @@
|
||||
<?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.gcone.bbs.cm.mapper.BOCmMapper">
|
||||
<!-- 댓글 목록 조회 -->
|
||||
<select id = "selectBOBCmListCnt"
|
||||
parameterType="com.wb.domainserver.domain.gcone.bbs.cm.vo.BOCmVO"
|
||||
resultType="Integer">
|
||||
<![CDATA[
|
||||
SELECT
|
||||
COUNT(1)
|
||||
FROM
|
||||
GC_BOARDCOMMENT FBC
|
||||
WHERE 1 = 1
|
||||
AND FBC.DEPTH = 0
|
||||
AND FBC.SOPMAL_CD = #{sopmalCd}
|
||||
AND (FBC.USE_AT = 'Y' OR (FBC.USE_AT = 'N' && 0 < (SELECT
|
||||
COUNT(FBC2.CM_INNB)
|
||||
FROM
|
||||
GC_BOARDCOMMENT FBC2
|
||||
WHERE
|
||||
1 = 1
|
||||
AND FBC2.USE_AT = 'Y'
|
||||
AND FBC2.DEPTH = 1
|
||||
AND FBC2.PARNTS_CM_INNB = FBC.CM_INNB
|
||||
AND FBC2.SOPMAL_CD = FBC.SOPMAL_CD
|
||||
AND FBC2.BBSCTT_INNB = FBC.BBSCTT_INNB
|
||||
LIMIT 1)))
|
||||
AND FBC.BBSCTT_INNB = #{bbscttInnb}
|
||||
]]>
|
||||
</select>
|
||||
<!-- 댓글 목록 조회 -->
|
||||
<select id = "selectBOCmListInqire"
|
||||
parameterType="com.wb.domainserver.domain.gcone.bbs.cm.vo.BOCmVO"
|
||||
resultType="DataMap">
|
||||
<![CDATA[
|
||||
SELECT FBC.CM_INNB
|
||||
, FBC.BBSCTT_INNB
|
||||
, FBC.PARNTS_CM_INNB
|
||||
, FBC.SOPMAL_CD
|
||||
, FBC.CN
|
||||
, FBC.SECRET_BBSCTT_AT
|
||||
, FBC.USE_AT
|
||||
, FBC.REGUSR_DV_CD
|
||||
, FBC.IP
|
||||
, FBC.PASSWORD
|
||||
, FBC.DEPTH
|
||||
, FBC.REGUSR
|
||||
, FBC.REGUSR_ID
|
||||
, FBC.REGUSR_NM
|
||||
, DATE_FORMAT(FBC.REGIST_DT, '%Y.%m.%d. %H:%i') REGIST_DT
|
||||
, CONCAT(SUBSTRING(FBC.REGUSR_ID, 1, 4), '***') MASKING_REGUSR_ID
|
||||
, CONCAT(SUBSTRING(FBC.REGUSR_NM, 1, 1), '*',
|
||||
SUBSTRING(FBC.REGUSR_NM, CHAR_LENGTH(FBC.REGUSR_NM), 1)) MASKING_REGUSR_NM
|
||||
, IFNULL(FBC.RECOMEND_CNT, 0) RECOMEND_CNT
|
||||
, IFNULL(FBC.NONRECOMEND_CNT, 0) NONRECOMEND_CNT
|
||||
, CASE
|
||||
WHEN DATE_ADD(FBC.REGIST_DT, INTERVAL FBM.NEW_NTT_STDR_DE_CNT DAY) > SYSDATE() THEN 'Y'
|
||||
ELSE 'N'
|
||||
END NEW_AT
|
||||
, FBM.WRTER_INDICT_TY_CD
|
||||
, IFNULL(FBM.MNGR_NM, '관리자') AS MNGR_NM
|
||||
, FMG.MBR_GRAD_NM
|
||||
, GM.JOIN_MTH_CD
|
||||
, GM.MBR_DV_CD
|
||||
, GM.MBR_INNB
|
||||
FROM GC_BOARDCOMMENT FBC
|
||||
INNER JOIN GC_BOARDDATA FB
|
||||
ON FBC.BBSCTT_INNB = FB.BBSCTT_INNB
|
||||
AND FBC.SOPMAL_CD = FB.SOPMAL_CD
|
||||
INNER JOIN GC_BOARDMANAGER FBM
|
||||
ON FB.BBS_ID = FBM.BBS_ID
|
||||
AND FBM.SOPMAL_CD = FBC.SOPMAL_CD
|
||||
LEFT JOIN GC_MEMBER_GRAD_MAPPING FMGM
|
||||
ON FBC.SOPMAL_CD = FMGM.SOPMAL_CD
|
||||
AND FBC.REGUSR = FMGM.MBR_INNB
|
||||
LEFT JOIN GC_MEMBER GM
|
||||
ON GM.MBR_DV_CD = FMGM.MBR_DV_CD
|
||||
AND GM.MBR_INNB = FMGM.MBR_INNB
|
||||
LEFT JOIN GC_MEMBER_GRAD FMG
|
||||
ON FMGM.MBR_GRAD_INNB = FMG.MBR_GRAD_INNB
|
||||
AND FMG.SOPMAL_CD = FBC.SOPMAL_CD
|
||||
WHERE 1=1
|
||||
AND FBC.DEPTH = 0
|
||||
AND (FBC.USE_AT = 'Y' OR (FBC.USE_AT = 'N' && 0 < (SELECT
|
||||
COUNT(FBC2.CM_INNB)
|
||||
FROM
|
||||
GC_BOARDCOMMENT FBC2
|
||||
WHERE
|
||||
1 = 1
|
||||
AND FBC2.USE_AT = 'Y'
|
||||
AND FBC2.DEPTH = 1
|
||||
AND FBC2.PARNTS_CM_INNB = FBC.CM_INNB
|
||||
AND FBC2.SOPMAL_CD = FBC.SOPMAL_CD
|
||||
AND FBC2.BBSCTT_INNB = FBC.BBSCTT_INNB
|
||||
LIMIT 1)))
|
||||
AND FBC.SOPMAL_CD = #{sopmalCd}
|
||||
AND FBC.BBSCTT_INNB = #{bbscttInnb}
|
||||
ORDER BY FBC.CM_INNB DESC
|
||||
LIMIT #{recordCountPerPage} OFFSET #{firstIndex}
|
||||
]]>
|
||||
</select>
|
||||
<!-- 대댓글 목록 조회 -->
|
||||
<select id = "selectBOCmAnswListInqire"
|
||||
parameterType="com.wb.domainserver.domain.gcone.bbs.cm.vo.BOCmVO"
|
||||
resultType="DataMap">
|
||||
SELECT FBC.CM_INNB
|
||||
,FBC.BBSCTT_INNB
|
||||
,FBC.SOPMAL_CD
|
||||
,FBC.CN
|
||||
,DATE_FORMAT(FBC.REGIST_DT,'%Y-%m-%d')REGIST_DT
|
||||
,CONCAT(SUBSTRING(FBC.REGUSR_ID, 1, 4), '***')MASKING_REGUSR_ID
|
||||
,CONCAT(SUBSTRING(FBC.REGUSR_NM, 1, 1),'*',SUBSTRING(FBC.REGUSR_NM,CHAR_LENGTH(FBC.REGUSR_NM),1))MASKING_REGUSR_NM
|
||||
,FBC.PARNTS_CM_INNB
|
||||
,FBC.SECRET_BBSCTT_AT
|
||||
,FBC.USE_AT
|
||||
,FBC.REGUSR_DV_CD
|
||||
,FBC.IP
|
||||
,FBC.PASSWORD
|
||||
,FBC.DEPTH
|
||||
,FBC.REGUSR
|
||||
,FBC.REGUSR_ID
|
||||
,FBC.REGUSR_NM
|
||||
,IFNULL(FBC.RECOMEND_CNT, 0) RECOMEND_CNT
|
||||
,IFNULL(FBC.NONRECOMEND_CNT, 0) NONRECOMEND_CNT
|
||||
,CASE
|
||||
WHEN DATE_ADD(FBC.REGIST_DT, INTERVAL FBM.NEW_NTT_STDR_DE_CNT DAY) > SYSDATE() THEN 'Y'
|
||||
ELSE 'N'
|
||||
END NEW_AT
|
||||
,FBM.WRTER_INDICT_TY_CD
|
||||
,FBM.MNGR_NM
|
||||
,FMG.MBR_GRAD_NM
|
||||
,GM.JOIN_MTH_CD
|
||||
,GM.MBR_DV_CD
|
||||
,GM.MBR_INNB
|
||||
FROM GC_BOARDCOMMENT FBC
|
||||
INNER JOIN GC_BOARDDATA FB
|
||||
ON FBC.BBSCTT_INNB = FB.BBSCTT_INNB
|
||||
AND FBC.SOPMAL_CD = FB.SOPMAL_CD
|
||||
INNER JOIN GC_BOARDMANAGER FBM
|
||||
ON FB.BBS_ID = FBM.BBS_ID
|
||||
AND FBM.SOPMAL_CD = FBC.SOPMAL_CD
|
||||
LEFT JOIN GC_MEMBER_GRAD_MAPPING FMGM
|
||||
ON FBC.SOPMAL_CD = FMGM.SOPMAL_CD
|
||||
AND FBC.REGUSR = FMGM.MBR_INNB
|
||||
LEFT JOIN GC_MEMBER GM
|
||||
ON GM.MBR_DV_CD = FMGM.MBR_DV_CD
|
||||
AND GM.MBR_INNB = FMGM.MBR_INNB
|
||||
LEFT JOIN GC_MEMBER_GRAD FMG
|
||||
ON FMGM.MBR_GRAD_INNB = FMG.MBR_GRAD_INNB
|
||||
AND FMG.SOPMAL_CD = FBC.SOPMAL_CD
|
||||
WHERE 1=1
|
||||
AND FBC.DEPTH = 1
|
||||
AND FBC.USE_AT = 'Y'
|
||||
AND FBC.SOPMAL_CD = #{sopmalCd}
|
||||
AND FBC.PARNTS_CM_INNB IN
|
||||
<foreach collection="cmInnbArr" item="cmInnbArr" open="(" close=")" separator=",">
|
||||
#{cmInnbArr}
|
||||
</foreach>
|
||||
AND FBC.BBSCTT_INNB = #{bbscttInnb}
|
||||
</select>
|
||||
<select id="selectBOCmWrter" parameterType="com.wb.domainserver.domain.gcone.bbs.gnrlbbsctt.vo.BOGnrlbbscttVO"
|
||||
resultType="dataMap">
|
||||
SELECT
|
||||
CONCAT(SUBSTRING(BB.REGUSR_ID, 1, 3), REPEAT('*', CHAR_LENGTH(BB.REGUSR_ID) - 3))MNGR_REGUSR_ID,
|
||||
BB.REGUSR_ID,
|
||||
BB.REGUSR,
|
||||
BB.MBR_GRAD_NM,
|
||||
CONCAT(SUBSTRING(BB.REGUSR_NM, 1, 1), REPEAT('*', CHAR_LENGTH(BB.REGUSR_NM) - 2),SUBSTRING(BB.REGUSR_NM,CHAR_LENGTH(BB.REGUSR_NM),1))REGUSR_NM,
|
||||
BB.WRTER_INDICT_TY_CD,
|
||||
BB.MNGR_NM,
|
||||
BB.REGUSR_DV_CD
|
||||
FROM(SELECT
|
||||
AA.*,
|
||||
(SELECT
|
||||
BB.MBR_GRAD_NM
|
||||
FROM
|
||||
(SELECT
|
||||
FMG.MBR_GRAD_NM
|
||||
FROM
|
||||
GC_MEMBER_GRAD_MAPPING FMGMG
|
||||
LEFT OUTER JOIN GC_MEMBER_GRAD FMG
|
||||
on FMGMG.MBR_GRAD_INNB = FMG.MBR_GRAD_INNB
|
||||
AND FMGMG.SOPMAL_CD = FMG.SOPMAL_CD
|
||||
WHERE FMGMG.SOPMAL_CD= AA.SOPMAL_CD
|
||||
AND FMGMG.MBR_INNB = AA.REGUSR)BB) AS MBR_GRAD_NM
|
||||
FROM
|
||||
(SELECT FBC.REGUSR_DV_CD
|
||||
,FBC.REGUSR_NM
|
||||
,FBC.REGUSR_ID
|
||||
,FBC.REGUSR
|
||||
,FBC.SOPMAL_CD
|
||||
,FBC.DEPTH
|
||||
,FBM.WRTER_INDICT_TY_CD
|
||||
,IFNULL(FBM.MNGR_NM,'관리자')MNGR_NM
|
||||
FROM
|
||||
GC_BOARDCOMMENT FBC
|
||||
INNER JOIN GC_BOARDDATA FB
|
||||
ON FBC.SOPMAL_CD = FB.SOPMAL_CD
|
||||
AND FBC.BBSCTT_INNB = FB.BBSCTT_INNB
|
||||
INNER JOIN GC_BOARDMANAGER FBM
|
||||
ON FB.SOPMAL_CD = FBM.SOPMAL_CD
|
||||
AND FB.BBS_ID = FBM.BBS_ID
|
||||
WHERE 1 = 1
|
||||
AND FBC.CM_INNB = #{cmInnbInt}
|
||||
AND FB.SOPMAL_CD = #{sopmalCd})AA
|
||||
)BB
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 게시글 상세 조회 가능 여부 판단 -->
|
||||
<select id="selectBOCmRegusrCnfirm"
|
||||
parameterType="com.wb.domainserver.domain.gcone.bbs.cm.vo.BOCmVO"
|
||||
resultType="dataMap">
|
||||
SELECT
|
||||
CASE
|
||||
WHEN GB.SECRET_BBSCTT_AT = 'N' AND GB.REGUSR_DV_CD = '01'
|
||||
<if test = "!@com.wb.domainserver.util.dataaccess.MybaitsUtil@isEquals(crudDv, 'R')"> /* 수정, 삭제일 경우 */
|
||||
AND GB.REGUSR = #{mbrInnb}
|
||||
</if> THEN 'YES' /* 회원이 쓴 글이고 작성자가 본인일 시 */
|
||||
<if test = "!@com.wb.domainserver.util.dataaccess.MybaitsUtil@isEquals(crudDv, 'R')"> /* 회원이 쓴 글이고 작성자가 본인이 아닐 시 (수정, 삭제시) */
|
||||
WHEN GB.SECRET_BBSCTT_AT = 'N' AND GB.REGUSR_DV_CD = '01' AND GB.REGUSR <![CDATA[<>]]> #{mbrInnb} AND 0 <![CDATA[<]]> #{mbrInnb} THEN 'OTHER'
|
||||
WHEN GB.SECRET_BBSCTT_AT = 'N' AND GB.REGUSR_DV_CD = '01' AND 0 = #{mbrInnb} THEN 'LOGIN' /* 회원이 쓴 글이고 접속자가 비회원일 경우 로그인 유도 */
|
||||
</if>
|
||||
<choose>
|
||||
<when test="!@com.wb.domainserver.util.dataaccess.MybaitsUtil@isEquals(crudDv, 'R')">
|
||||
WHEN GB.SECRET_BBSCTT_AT = 'N' AND GB.REGUSR_DV_CD = '02' THEN 'PW' /* 관리자가 쓴 글 */
|
||||
WHEN GB.SECRET_BBSCTT_AT = 'N' AND GB.REGUSR_DV_CD = '99' THEN 'PW' /* 비회원 수정, 삭제일 경우 */
|
||||
</when>
|
||||
<otherwise>
|
||||
WHEN GB.SECRET_BBSCTT_AT = 'N' AND GB.REGUSR_DV_CD = '02' THEN 'YES' /* 관리자가 쓴 글 */
|
||||
WHEN GB.SECRET_BBSCTT_AT = 'N' AND GB.REGUSR_DV_CD = '99' THEN 'YES' /* 비회원 읽기 일 경우 */
|
||||
</otherwise>
|
||||
</choose>
|
||||
WHEN GB.SECRET_BBSCTT_AT = 'Y' AND GB.REGUSR_DV_CD <![CDATA[<>]]> '01' THEN 'PW' /* 작성자 구분이 회원이 아닐경우 비밀번호 입력 */
|
||||
WHEN GB.SECRET_BBSCTT_AT = 'Y' AND GB.REGUSR_DV_CD = '01' AND GB.REGUSR = #{mbrInnb} THEN 'YES' /* 회원이 쓴 글이고 작성자가 본인인 경우 */
|
||||
WHEN GB.SECRET_BBSCTT_AT = 'Y' AND GB.REGUSR_DV_CD = '01' AND GB.REGUSR <![CDATA[<>]]> #{mbrInnb} AND 0 <![CDATA[<]]> #{mbrInnb} THEN 'OTHER' /* 회원이 쓴 글이고 작성자가 본인이 아니고 현재 접속자가 회원인 경우 */
|
||||
WHEN GB.SECRET_BBSCTT_AT = 'Y' AND GB.REGUSR_DV_CD = '01' AND 0 = #{mbrInnb} THEN 'LOGIN' /* 회원이 쓴 글이고 접속자가 비회원일 경우 로그인 유도 */
|
||||
END MOVE_AT
|
||||
FROM GC_BOARDCOMMENT GB
|
||||
WHERE GB.BBSCTT_INNB = #{bbscttInnb}
|
||||
AND GB.SOPMAL_CD = #{sopmalCd}
|
||||
AND GB.CM_INNB = #{cmInnb}
|
||||
</select>
|
||||
|
||||
<!-- 댓글 조회 -->
|
||||
<select id="selectBOCmCn" parameterType="com.wb.domainserver.domain.gcone.bbs.cm.vo.BOCmVO"
|
||||
resultType="dataMap">
|
||||
SELECT FBC.CN
|
||||
,FBC.CM_INNB
|
||||
,FBC.PASSWORD
|
||||
,FBC.SECRET_BBSCTT_AT
|
||||
,IFNULL(FBC.RECOMEND_CNT,0)RECOMEND_CNT
|
||||
,IFNULL(FBC.NONRECOMEND_CNT,0)NONRECOMEND_CNT
|
||||
,FBC.REGUSR_NM
|
||||
FROM GC_BOARDCOMMENT FBC
|
||||
WHERE FBC.BBSCTT_INNB = #{bbscttInnb}
|
||||
AND FBC.SOPMAL_CD = #{sopmalCd}
|
||||
AND FBC.CM_INNB = #{cmInnb}
|
||||
</select>
|
||||
|
||||
<!-- 댓글 등록 -->
|
||||
<insert id="insertBOCmRegist">
|
||||
INSERT INTO GC_BOARDCOMMENT (
|
||||
SOPMAL_CD,
|
||||
BBSCTT_INNB,
|
||||
PARNTS_CM_INNB,
|
||||
REGUSR_DV_CD,
|
||||
REGUSR_ID,
|
||||
REGUSR_NM,
|
||||
DEPTH,
|
||||
PASSWORD,
|
||||
CN,
|
||||
SECRET_BBSCTT_AT,
|
||||
INQIRE_CNT,
|
||||
RECOMEND_CNT,
|
||||
NONRECOMEND_CNT,
|
||||
AGENT_ID,
|
||||
IP,
|
||||
USE_AT,
|
||||
REGUSR,
|
||||
REGIST_DT,
|
||||
UPDUSR,
|
||||
UPDT_DT
|
||||
)
|
||||
VALUES (
|
||||
#{sopmalCd},
|
||||
#{bbscttInnb},
|
||||
#{parntsCmInnb},
|
||||
#{regusrDvCd},
|
||||
#{regusrId},
|
||||
#{regusrNm},
|
||||
#{depth},
|
||||
MD5(#{password}),
|
||||
#{cn},
|
||||
#{secretBbscttAt},
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
#{agentId},
|
||||
#{ip},
|
||||
'Y',
|
||||
#{regusr},
|
||||
NOW(),
|
||||
#{updusr},
|
||||
NOW()
|
||||
)
|
||||
</insert>
|
||||
|
||||
<!-- 댓글 수정 -->
|
||||
<update id="updateBOCmUpdt" parameterType="com.wb.domainserver.domain.gcone.bbs.cm.vo.BOCmVO">
|
||||
UPDATE GC_BOARDCOMMENT
|
||||
SET CN = #{cn},
|
||||
UPDUSR = #{updusr},
|
||||
UPDT_DT = NOW(),
|
||||
SECRET_BBSCTT_AT = #{secretBbscttAt}
|
||||
WHERE CM_INNB = #{cmInnb}
|
||||
AND BBSCTT_INNB = #{bbscttInnb}
|
||||
AND SOPMAL_CD = #{sopmalCd}
|
||||
</update>
|
||||
|
||||
<!-- 댓글 논리삭제 -->
|
||||
<update id="updateBOCmDel" parameterType="DataMap">
|
||||
UPDATE GC_BOARDCOMMENT
|
||||
SET USE_AT = #{useAt},
|
||||
UPDUSR = #{updusr},
|
||||
UPDT_DT = NOW()
|
||||
WHERE BBSCTT_INNB = #{bbscttInnb}
|
||||
AND SOPMAL_CD = #{sopmalCd}
|
||||
AND CM_INNB = #{cmInnb}
|
||||
</update>
|
||||
<!-- 비밀번호 체크 -->
|
||||
<select id = "selectBOComparPassword" parameterType="com.wb.domainserver.domain.gcone.bbs.cm.vo.BOCmVO"
|
||||
resultType="Integer">
|
||||
SELECT COUNT(*)
|
||||
FROM GC_BOARDCOMMENT FB
|
||||
WHERE 1=1
|
||||
AND FB.PASSWORD = MD5(#{password})
|
||||
AND FB.CM_INNB = #{cmInnb}
|
||||
AND FB.SOPMAL_CD = #{sopmalCd}
|
||||
</select>
|
||||
<!--추천 비추천 업데이트-->
|
||||
<update id="updateBOCmRecomendUpdt" parameterType="com.wb.domainserver.domain.gcone.bbs.cm.vo.BOCmVO">
|
||||
UPDATE GC_BOARDCOMMENT FBC, (
|
||||
SELECT
|
||||
IFNULL(MAX(RECOMEND_CNT), 0) + 1 AS RECOMEND_CNT
|
||||
,IFNULL(MAX(NONRECOMEND_CNT), 0) + 1 AS NONRECOMEND_CNT
|
||||
,BBSCTT_INNB
|
||||
,SOPMAL_CD
|
||||
,CM_INNB
|
||||
FROM
|
||||
GC_BOARDCOMMENT
|
||||
WHERE
|
||||
1 = 1
|
||||
AND BBSCTT_INNB = #{bbscttInnb}
|
||||
AND SOPMAL_CD = #{sopmalCd}
|
||||
AND CM_INNB = #{cmInnb})FBC2
|
||||
SET
|
||||
<if test = "@com.wb.domainserver.util.dataaccess.MybaitsUtil@isEquals(recomendDv, 'recommend')">
|
||||
FBC.RECOMEND_CNT = FBC2.RECOMEND_CNT
|
||||
</if>
|
||||
<if test = "@com.wb.domainserver.util.dataaccess.MybaitsUtil@isEquals(recomendDv, 'nonrecommend')">
|
||||
FBC.NONRECOMEND_CNT = FBC2.NONRECOMEND_CNT
|
||||
</if>
|
||||
WHERE 1=1
|
||||
AND FBC.BBSCTT_INNB = #{bbscttInnb}
|
||||
AND FBC.SOPMAL_CD = #{sopmalCd}
|
||||
AND FBC.CM_INNB = #{cmInnb}
|
||||
</update>
|
||||
</mapper>
|
||||
Reference in New Issue
Block a user