itsm_ysm/bin/main/mapper/primarydb/sqlmap/itms/bbs/ArticleCommentMapper.xml
2025-08-11 18:00:07 +09:00

108 lines
2.6 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.urpsys.itmsapi.bbs.dao.ArticleCommentDAO">
<!-- 댓글 목록 조회 -->
<select id="selectArticleCommentList" parameterType="java.util.LinkedHashMap" resultType="java.util.LinkedHashMap">
/* ArticleCommentDAO.selectArticleCommentList */
SELECT
a.CMNT_NO AS commentNo
, a.NTT_ID AS nttId
, a.BBS_ID AS bbsId
, a.WRTR_ID AS wrterId
, a.WRTR_NM AS wrterNm
, a.PWD AS commentPassword
, a.CMNT_CN AS commentCn
, a.USE_AT AS useAt
, DATE_FORMAT(a.FRST_REG_DTM, '%Y-%m-%d %H:%i:%S') AS frstRegisterPnttm
, b.USER_NM AS frstRegisterNm
, IF( #{esntlId} = a.FRST_REGR_ID, 'Y', 'N') AS deleteYn
FROM
TB_CMNT_INFO AS a
LEFT OUTER JOIN
COMVNUSERMASTER AS b
ON
a.FRST_REGR_ID = b.ESNTL_ID
WHERE
a.BBS_ID = #{bbsId}
AND
a.NTT_ID = #{nttId}
AND
a.USE_AT = 'Y'
ORDER BY
a.FRST_REG_DTM
DESC
</select>
<!-- 2025.03.31 나혁제 페이징 처리 하지 않는다.
LIMIT
#{subRecordCountPerPage}
OFFSET
#{subFirstIndex}
-->
<!-- 댓글 목록 조회 Count -->
<select id="selectArticleCommentListCnt" parameterType="java.util.LinkedHashMap" resultType="java.lang.Integer">
SELECT
COUNT(CMNT_NO)
FROM
TB_CMNT_INFO
WHERE
BBS_ID = #{bbsId}
AND
NTT_ID = #{nttId}
AND
USE_AT = 'Y'
</select>
<!-- 댓글 등록 -->
<insert id="insertArticleComment" parameterType="java.util.LinkedHashMap">
INSERT INTO
TB_CMNT_INFO
(
CMNT_NO
, NTT_ID
, BBS_ID
, WRTR_ID
, WRTR_NM
, PWD
, CMNT_CN
, USE_AT
, FRST_REGR_ID
, FRST_REG_DTM
)
VALUES
(
#{commentNo}
, #{nttId}
, #{bbsId}
, #{wrterId}
, #{wrterNm}
, #{commentPassword}
, #{commentCn}
, 'Y'
, #{frstRegisterId}
, SYSDATE()
)
</insert>
<!-- 댓글 삭제 -->
<update id="deleteArticleComment" parameterType="java.util.LinkedHashMap">
UPDATE
TB_CMNT_INFO
SET
USE_AT = 'N'
WHERE
CMNT_NO = #{commentNo}
</update>
</mapper>