이지우 - 쿼리 파일 생성(티베로 -> 오라클)

This commit is contained in:
JIWOO 2024-07-23 16:42:55 +09:00
parent f07a71b704
commit 7a2e48513b
100 changed files with 31401 additions and 436 deletions

View File

@ -1,10 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="File">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="FileVO" type="kcc.com.cmm.service.FileVO"/>
<typeAlias alias="vEEduAplctVO" type="kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO"/>
<resultMap id="fileList" class="kcc.com.cmm.service.FileVO">
<result property="atchFileId" column="ATCH_FILE_ID" columnIndex="1"/>
@ -16,6 +17,9 @@
<result property="orignlFileNm" column="ORIGNL_FILE_NM" columnIndex="7"/>
<result property="streFileNm" column="STRE_FILE_NM" columnIndex="8"/>
<result property="creatDt" column="CREAT_DT" columnIndex="9"/>
<result property="fileSize" column="FILE_SIZE" columnIndex="10"/>
<result property="scholInsttNm" column="scholInsttNm" columnIndex="11"/>
<result property="chrgNm" column="chrgNm" columnIndex="12"/>
</resultMap>
<resultMap id="fileDetail" class="kcc.com.cmm.service.FileVO">
@ -28,32 +32,117 @@
<result property="orignlFileNm" column="ORIGNL_FILE_NM" columnIndex="7"/>
<result property="streFileNm" column="STRE_FILE_NM" columnIndex="8"/>
<result property="thumbFileNm" column="THUMB_FILE_NM" />
<result property="fileSize" column="FILE_SIZE" columnIndex="10"/>
</resultMap>
<select id="FileManageDAO.selectFileList" parameterClass="FileVO" resultMap="fileList" >
/* FileManageDAO.selectFileList */
<![CDATA[
SELECT
a.ATCH_FILE_ID, b.FILE_CN, b.FILE_SN, b.FILE_STRE_COURS, b.STRE_FILE_NM,
b.FILE_EXTSN, b.ORIGNL_FILE_NM, b.FILE_SIZE, DATE_FORMAT(a.CREAT_DT, '%Y-%m-%d %h:%m:%s' ) AS CREAT_DT
b.FILE_EXTSN, b.ORIGNL_FILE_NM, b.FILE_SIZE, TO_CHAR(a.CREAT_DT, 'YYYY-MM-DD HH24:MI:SS' ) AS CREAT_DT
, '' AS scholInsttNm
, '' AS chrgNm
FROM
LETTNFILE a, LETTNFILEDETAIL b
WHERE
a.ATCH_FILE_ID = #atchFileId#
WHERE 1=1
AND
a.ATCH_FILE_ID = b.ATCH_FILE_ID
AND
a.ATCH_FILE_ID = #atchFileId#
AND
a.USE_AT = 'Y'
ORDER BY b.FILE_SN
]]>
</select>
<select id="FileManageDAO.selectZipFileList" parameterClass="FileVO" resultMap="fileList" >
/* FileManageDAO.selectZipFileList */
SELECT
a.ATCH_FILE_ID, b.FILE_CN, b.FILE_SN, b.FILE_STRE_COURS, b.STRE_FILE_NM,
b.FILE_EXTSN, b.ORIGNL_FILE_NM, b.FILE_SIZE, TO_CHAR(a.CREAT_DT, 'YYYY-MM-DD HH24:MI:SS' ) AS CREAT_DT
, '' AS scholInsttNm
, '' AS chrgNm
FROM
LETTNFILE a, LETTNFILEDETAIL b
WHERE
a.ATCH_FILE_ID = b.ATCH_FILE_ID
AND
a.USE_AT = 'Y'
<isEqual property="downloadType" compareValue="A">
AND a.ATCH_FILE_ID IN
<iterate property="atchFileIdList" open="(" close=")" conjunction=",">
#atchFileIdList[]#
</iterate>
<isNotEmpty property="fileSn">
AND b.FILE_SN = #fileSn#
</isNotEmpty>
</isEqual>
<isEqual property="downloadType" compareValue="B">
AND a.ATCH_FILE_ID = #atchFileId#
AND b.FILE_SN IN
<iterate property="atchFileSnList" open="(" close=")" conjunction=",">
#atchFileSnList[]#
</iterate>
</isEqual>
ORDER BY b.FILE_SN
</select>
<select id="FileManageDAO.selectZipFileExprnList" parameterClass="FileVO" resultMap="fileList" >
/* FileManageDAO.selectZipFileExprnList */
SELECT
a.ATCH_FILE_ID, b.FILE_CN, b.FILE_SN, b.FILE_STRE_COURS, b.STRE_FILE_NM,
b.FILE_EXTSN, b.ORIGNL_FILE_NM, b.FILE_SIZE, TO_CHAR(a.CREAT_DT, 'YYYY-MM-DD HH24:MI:SS' ) AS CREAT_DT
, c.schol_instt_nm AS scholInsttNm
, c.chrg_nm AS chrgNm
FROM
LETTNFILE a, LETTNFILEDETAIL b, VE_EDU_APLCT c
WHERE
a.ATCH_FILE_ID = b.ATCH_FILE_ID
AND
a.ATCH_FILE_ID =c.SCHOL_SEAL_ATCH_FILE_ID
AND
a.USE_AT = 'Y'
<isEqual property="downloadType" compareValue="A">
AND a.ATCH_FILE_ID IN
<iterate property="atchFileIdList" open="(" close=")" conjunction=",">
#atchFileIdList[]#
</iterate>
<isNotEmpty property="fileSn">
AND b.FILE_SN = #fileSn#
</isNotEmpty>
</isEqual>
<isEqual property="downloadType" compareValue="B">
AND a.ATCH_FILE_ID = #atchFileId#
AND b.FILE_SN IN
<iterate property="atchFileSnList" open="(" close=")" conjunction=",">
#atchFileSnList[]#
</iterate>
</isEqual>
ORDER BY b.FILE_SN
</select>
<insert id="FileManageDAO.insertFileMaster" parameterClass="FileVO" >
<![CDATA[
INSERT INTO LETTNFILE
(ATCH_FILE_ID, CREAT_DT, USE_AT)
VALUES
( #atchFileId#, NOW(), 'Y')
( #atchFileId#, SYSDATE, 'Y')
]]>
</insert>
@ -69,6 +158,7 @@
</insert>
<delete id="FileManageDAO.deleteFileDetail" parameterClass="FileVO" >
/* FileManageDAO.deleteFileDetail */
<![CDATA[
DELETE FROM LETTNFILEDETAIL
WHERE
@ -77,16 +167,27 @@
FILE_SN = #fileSn#
]]>
</delete>
<select id="FileManageDAO.getMaxFileSN" parameterClass="FileVO" resultClass="java.lang.Integer">
<delete id="FileManageDAO.deleteFileDetails" parameterClass="FileVO" >
/* FileManageDAO.deleteFileDetails */
<![CDATA[
SELECT IFNULL(MAX(FILE_SN),0)+1 AS FILE_SN
DELETE FROM LETTNFILEDETAIL
WHERE
ATCH_FILE_ID = #atchFileId#
]]>
</delete>
<select id="FileManageDAO.getMaxFileSN" parameterClass="FileVO" resultClass="java.lang.Integer">
/* FileManageDAO.getMaxFileSN */
<![CDATA[
SELECT NVL(MAX(FILE_SN),0)+1 AS FILE_SN
FROM LETTNFILEDETAIL
WHERE ATCH_FILE_ID = #atchFileId#
]]>
</select>
<select id="FileManageDAO.selectFileInf" parameterClass="FileVO" resultMap="fileDetail" >
/* FileManageDAO.selectFileInf */
<![CDATA[
SELECT
ATCH_FILE_ID, FILE_CN, FILE_SN, FILE_STRE_COURS, STRE_FILE_NM,
@ -100,6 +201,19 @@
]]>
</select>
<select id="FileManageDAO.selectFileInfs" parameterClass="FileVO" resultMap="fileDetail" >
/* FileManageDAO.selectFileInfs */
<![CDATA[
SELECT
ATCH_FILE_ID, FILE_CN, FILE_SN, FILE_STRE_COURS, STRE_FILE_NM,
FILE_EXTSN, ORIGNL_FILE_NM, FILE_SIZE, THUMB_FILE_NM
FROM
LETTNFILEDETAIL
WHERE
ATCH_FILE_ID = #atchFileId#
]]>
</select>
<update id="FileManageDAO.deleteCOMTNFILE" parameterClass="FileVO" >
<![CDATA[
UPDATE LETTNFILE
@ -109,10 +223,15 @@
</update>
<select id="FileManageDAO.selectFileListByFileNm" parameterClass="FileVO" resultMap="fileList" >
/* FileManageDAO.selectFileListByFileNm */
<![CDATA[
SELECT
a.ATCH_FILE_ID, b.FILE_CN, b.FILE_SN, b.FILE_STRE_COURS, b.STRE_FILE_NM,
b.FILE_EXTSN, b.ORIGNL_FILE_NM, b.FILE_SIZE, DATE_FORMAT(a.CREAT_DT, '%Y-%m-%d %h:%m:%s' ) AS CREAT_DT
b.FILE_EXTSN, b.ORIGNL_FILE_NM, b.FILE_SIZE, TO_CHAR(a.CREAT_DT, 'YYYY-MM-DD HH24:MI:SS' ) AS CREAT_DT
, '' AS scholInsttNm
, '' AS chrgNm
FROM
LETTNFILE a, LETTNFILEDETAIL b
WHERE
@ -128,11 +247,15 @@
</isEqual>
<![CDATA[
ORDER BY a.ATCH_FILE_ID, b.FILE_SN
LIMIT #recordCountPerPage# OFFSET #firstIndex#
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
]]>
</select>
<select id="FileManageDAO.selectFileListCntByFileNm" parameterClass="FileVO" resultClass="java.lang.Integer" >
/* FileManageDAO.selectFileListCntByFileNm */
<![CDATA[
SELECT
COUNT(a.ATCH_FILE_ID)
@ -152,10 +275,15 @@
</select>
<select id="FileManageDAO.selectImageFileList" parameterClass="FileVO" resultMap="fileList" >
/* FileManageDAO.selectImageFileList */
<![CDATA[
SELECT
a.ATCH_FILE_ID, b.FILE_CN, b.FILE_SN, b.FILE_STRE_COURS, b.STRE_FILE_NM,
b.FILE_EXTSN, b.ORIGNL_FILE_NM, b.FILE_SIZE, a.CREAT_DT
, '' AS scholInsttNm
, '' AS chrgNm
FROM
LETTNFILE a, LETTNFILEDETAIL b
WHERE
@ -188,4 +316,60 @@
]]>
</update>
<update id="FileManageDAO.updateFileName" parameterClass="FileVO" >
UPDATE
LETTNFILEDETAIL
SET
ORIGNL_FILE_NM = #orignlFileNm#
WHERE 1=1
AND ATCH_FILE_ID = #atchFileId#
AND FILE_SN = #fileSn#
</update>
<update id="FileManageDAO.updateOffeduFileNull" parameterClass="VEEduAplctVO" >
UPDATE
$table$
SET
$type$ = null
WHERE 1=1
AND edu_aplct_ord = #eduAplctOrd#
</update>
<select id="FileManageDAO.selectZipFileOrderList" parameterClass="FileVO" resultMap="fileList" >
/* FileManageDAO.selectZipFileOrderList */
SELECT
a.ATCH_FILE_ID, b.FILE_CN, b.FILE_SN, b.FILE_STRE_COURS, b.STRE_FILE_NM,
b.FILE_EXTSN, b.ORIGNL_FILE_NM, b.FILE_SIZE, TO_CHAR(a.CREAT_DT, 'YYYY-MM-DD HH24:MI:SS' ) AS CREAT_DT
, '' AS scholInsttNm
, '' AS chrgNm
FROM
LETTNFILE a, LETTNFILEDETAIL b
WHERE
a.ATCH_FILE_ID = b.ATCH_FILE_ID
AND
a.USE_AT = 'Y'
<isEqual property="downloadType" compareValue="A">
AND a.ATCH_FILE_ID IN
<iterate property="atchFileIdList" open="(" close=")" conjunction=",">
#atchFileIdList[]#
</iterate>
<isNotEmpty property="fileSn">
AND b.FILE_SN = #fileSn#
</isNotEmpty>
</isEqual>
<isEqual property="downloadType" compareValue="B">
AND a.ATCH_FILE_ID = #atchFileId#
AND b.FILE_SN IN
<iterate property="atchFileSnList" open="(" close=")" conjunction=",">
#atchFileSnList[]#
</iterate>
</isEqual>
ORDER BY INSTR ($orderQuery$)
</select>
</sqlMap>

View File

@ -0,0 +1,375 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="File">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="FileVO" type="kcc.com.cmm.service.FileVO"/>
<typeAlias alias="vEEduAplctVO" type="kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO"/>
<resultMap id="fileList" class="kcc.com.cmm.service.FileVO">
<result property="atchFileId" column="ATCH_FILE_ID" columnIndex="1"/>
<result property="fileCn" column="FILE_CN" columnIndex="2"/>
<result property="fileExtsn" column="FILE_EXTSN" columnIndex="3"/>
<result property="fileMg" column="FILE_SIZE" columnIndex="4"/>
<result property="fileSn" column="FILE_SN" columnIndex="5"/>
<result property="fileStreCours" column="FILE_STRE_COURS" columnIndex="6"/>
<result property="orignlFileNm" column="ORIGNL_FILE_NM" columnIndex="7"/>
<result property="streFileNm" column="STRE_FILE_NM" columnIndex="8"/>
<result property="creatDt" column="CREAT_DT" columnIndex="9"/>
<result property="fileSize" column="FILE_SIZE" columnIndex="10"/>
<result property="scholInsttNm" column="scholInsttNm" columnIndex="11"/>
<result property="chrgNm" column="chrgNm" columnIndex="12"/>
</resultMap>
<resultMap id="fileDetail" class="kcc.com.cmm.service.FileVO">
<result property="atchFileId" column="ATCH_FILE_ID" columnIndex="1"/>
<result property="fileCn" column="FILE_CN" columnIndex="2"/>
<result property="fileExtsn" column="FILE_EXTSN" columnIndex="3"/>
<result property="fileMg" column="FILE_SIZE" columnIndex="4"/>
<result property="fileSn" column="FILE_SN" columnIndex="5"/>
<result property="fileStreCours" column="FILE_STRE_COURS" columnIndex="6"/>
<result property="orignlFileNm" column="ORIGNL_FILE_NM" columnIndex="7"/>
<result property="streFileNm" column="STRE_FILE_NM" columnIndex="8"/>
<result property="thumbFileNm" column="THUMB_FILE_NM" />
<result property="fileSize" column="FILE_SIZE" columnIndex="10"/>
</resultMap>
<select id="FileManageDAO.selectFileList" parameterClass="FileVO" resultMap="fileList" >
/* FileManageDAO.selectFileList */
<![CDATA[
SELECT
a.ATCH_FILE_ID, b.FILE_CN, b.FILE_SN, b.FILE_STRE_COURS, b.STRE_FILE_NM,
b.FILE_EXTSN, b.ORIGNL_FILE_NM, b.FILE_SIZE, TO_CHAR(a.CREAT_DT, 'YYYY-MM-DD HH24:MI:SS' ) AS CREAT_DT
, '' AS scholInsttNm
, '' AS chrgNm
FROM
LETTNFILE a, LETTNFILEDETAIL b
WHERE 1=1
AND
a.ATCH_FILE_ID = b.ATCH_FILE_ID
AND
a.ATCH_FILE_ID = #atchFileId#
AND
a.USE_AT = 'Y'
ORDER BY b.FILE_SN
]]>
</select>
<select id="FileManageDAO.selectZipFileList" parameterClass="FileVO" resultMap="fileList" >
/* FileManageDAO.selectZipFileList */
SELECT
a.ATCH_FILE_ID, b.FILE_CN, b.FILE_SN, b.FILE_STRE_COURS, b.STRE_FILE_NM,
b.FILE_EXTSN, b.ORIGNL_FILE_NM, b.FILE_SIZE, TO_CHAR(a.CREAT_DT, 'YYYY-MM-DD HH24:MI:SS' ) AS CREAT_DT
, '' AS scholInsttNm
, '' AS chrgNm
FROM
LETTNFILE a, LETTNFILEDETAIL b
WHERE
a.ATCH_FILE_ID = b.ATCH_FILE_ID
AND
a.USE_AT = 'Y'
<isEqual property="downloadType" compareValue="A">
AND a.ATCH_FILE_ID IN
<iterate property="atchFileIdList" open="(" close=")" conjunction=",">
#atchFileIdList[]#
</iterate>
<isNotEmpty property="fileSn">
AND b.FILE_SN = #fileSn#
</isNotEmpty>
</isEqual>
<isEqual property="downloadType" compareValue="B">
AND a.ATCH_FILE_ID = #atchFileId#
AND b.FILE_SN IN
<iterate property="atchFileSnList" open="(" close=")" conjunction=",">
#atchFileSnList[]#
</iterate>
</isEqual>
ORDER BY b.FILE_SN
</select>
<select id="FileManageDAO.selectZipFileExprnList" parameterClass="FileVO" resultMap="fileList" >
/* FileManageDAO.selectZipFileExprnList */
SELECT
a.ATCH_FILE_ID, b.FILE_CN, b.FILE_SN, b.FILE_STRE_COURS, b.STRE_FILE_NM,
b.FILE_EXTSN, b.ORIGNL_FILE_NM, b.FILE_SIZE, TO_CHAR(a.CREAT_DT, 'YYYY-MM-DD HH24:MI:SS' ) AS CREAT_DT
, c.schol_instt_nm AS scholInsttNm
, c.chrg_nm AS chrgNm
FROM
LETTNFILE a, LETTNFILEDETAIL b, VE_EDU_APLCT c
WHERE
a.ATCH_FILE_ID = b.ATCH_FILE_ID
AND
a.ATCH_FILE_ID =c.SCHOL_SEAL_ATCH_FILE_ID
AND
a.USE_AT = 'Y'
<isEqual property="downloadType" compareValue="A">
AND a.ATCH_FILE_ID IN
<iterate property="atchFileIdList" open="(" close=")" conjunction=",">
#atchFileIdList[]#
</iterate>
<isNotEmpty property="fileSn">
AND b.FILE_SN = #fileSn#
</isNotEmpty>
</isEqual>
<isEqual property="downloadType" compareValue="B">
AND a.ATCH_FILE_ID = #atchFileId#
AND b.FILE_SN IN
<iterate property="atchFileSnList" open="(" close=")" conjunction=",">
#atchFileSnList[]#
</iterate>
</isEqual>
ORDER BY b.FILE_SN
</select>
<insert id="FileManageDAO.insertFileMaster" parameterClass="FileVO" >
<![CDATA[
INSERT INTO LETTNFILE
(ATCH_FILE_ID, CREAT_DT, USE_AT)
VALUES
( #atchFileId#, SYSDATE, 'Y')
]]>
</insert>
<insert id="FileManageDAO.insertFileDetail" parameterClass="FileVO" >
<![CDATA[
INSERT INTO LETTNFILEDETAIL
( ATCH_FILE_ID, FILE_SN, FILE_STRE_COURS, STRE_FILE_NM,
ORIGNL_FILE_NM, FILE_EXTSN, FILE_SIZE, FILE_CN, THUMB_FILE_NM )
VALUES
( #atchFileId#, #fileSn#, #fileStreCours#, #streFileNm#,
#orignlFileNm#, #fileExtsn#, #fileMg#, #fileCn#, #thumbFileNm# )
]]>
</insert>
<delete id="FileManageDAO.deleteFileDetail" parameterClass="FileVO" >
/* FileManageDAO.deleteFileDetail */
<![CDATA[
DELETE FROM LETTNFILEDETAIL
WHERE
ATCH_FILE_ID = #atchFileId#
AND
FILE_SN = #fileSn#
]]>
</delete>
<delete id="FileManageDAO.deleteFileDetails" parameterClass="FileVO" >
/* FileManageDAO.deleteFileDetails */
<![CDATA[
DELETE FROM LETTNFILEDETAIL
WHERE
ATCH_FILE_ID = #atchFileId#
]]>
</delete>
<select id="FileManageDAO.getMaxFileSN" parameterClass="FileVO" resultClass="java.lang.Integer">
/* FileManageDAO.getMaxFileSN */
<![CDATA[
SELECT NVL(MAX(FILE_SN),0)+1 AS FILE_SN
FROM LETTNFILEDETAIL
WHERE ATCH_FILE_ID = #atchFileId#
]]>
</select>
<select id="FileManageDAO.selectFileInf" parameterClass="FileVO" resultMap="fileDetail" >
/* FileManageDAO.selectFileInf */
<![CDATA[
SELECT
ATCH_FILE_ID, FILE_CN, FILE_SN, FILE_STRE_COURS, STRE_FILE_NM,
FILE_EXTSN, ORIGNL_FILE_NM, FILE_SIZE, THUMB_FILE_NM
FROM
LETTNFILEDETAIL
WHERE
ATCH_FILE_ID = #atchFileId#
AND
FILE_SN = #fileSn#
]]>
</select>
<select id="FileManageDAO.selectFileInfs" parameterClass="FileVO" resultMap="fileDetail" >
/* FileManageDAO.selectFileInfs */
<![CDATA[
SELECT
ATCH_FILE_ID, FILE_CN, FILE_SN, FILE_STRE_COURS, STRE_FILE_NM,
FILE_EXTSN, ORIGNL_FILE_NM, FILE_SIZE, THUMB_FILE_NM
FROM
LETTNFILEDETAIL
WHERE
ATCH_FILE_ID = #atchFileId#
]]>
</select>
<update id="FileManageDAO.deleteCOMTNFILE" parameterClass="FileVO" >
<![CDATA[
UPDATE LETTNFILE
SET USE_AT = 'N'
WHERE ATCH_FILE_ID = #atchFileId#
]]>
</update>
<select id="FileManageDAO.selectFileListByFileNm" parameterClass="FileVO" resultMap="fileList" >
/* FileManageDAO.selectFileListByFileNm */
<![CDATA[
SELECT
a.ATCH_FILE_ID, b.FILE_CN, b.FILE_SN, b.FILE_STRE_COURS, b.STRE_FILE_NM,
b.FILE_EXTSN, b.ORIGNL_FILE_NM, b.FILE_SIZE, TO_CHAR(a.CREAT_DT, 'YYYY-MM-DD HH24:MI:SS' ) AS CREAT_DT
, '' AS scholInsttNm
, '' AS chrgNm
FROM
LETTNFILE a, LETTNFILEDETAIL b
WHERE
a.ATCH_FILE_ID = b.ATCH_FILE_ID
AND
a.USE_AT = 'Y'
]]>
<isEqual prepend="AND" property="searchCnd" compareValue="streFileNm">
<![CDATA[ b.STRE_FILE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCnd" compareValue="orignlFileNm">
<![CDATA[ b.ORIGNL_FILE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<![CDATA[
ORDER BY a.ATCH_FILE_ID, b.FILE_SN
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
]]>
</select>
<select id="FileManageDAO.selectFileListCntByFileNm" parameterClass="FileVO" resultClass="java.lang.Integer" >
/* FileManageDAO.selectFileListCntByFileNm */
<![CDATA[
SELECT
COUNT(a.ATCH_FILE_ID)
FROM
LETTNFILE a, LETTNFILEDETAIL b
WHERE
a.ATCH_FILE_ID = b.ATCH_FILE_ID
AND
a.USE_AT = 'Y'
]]>
<isEqual prepend="AND" property="searchCnd" compareValue="streFileNm">
<![CDATA[ b.STRE_FILE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCnd" compareValue="orignlFileNm">
<![CDATA[ b.ORIGNL_FILE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
</select>
<select id="FileManageDAO.selectImageFileList" parameterClass="FileVO" resultMap="fileList" >
/* FileManageDAO.selectImageFileList */
<![CDATA[
SELECT
a.ATCH_FILE_ID, b.FILE_CN, b.FILE_SN, b.FILE_STRE_COURS, b.STRE_FILE_NM,
b.FILE_EXTSN, b.ORIGNL_FILE_NM, b.FILE_SIZE, a.CREAT_DT
, '' AS scholInsttNm
, '' AS chrgNm
FROM
LETTNFILE a, LETTNFILEDETAIL b
WHERE
a.ATCH_FILE_ID = #atchFileId#
AND
a.ATCH_FILE_ID = b.ATCH_FILE_ID
AND
UPPER(b.FILE_EXTSN) IN ('GIF','JPG','BMP','PNG')
AND
a.USE_AT = 'Y'
ORDER BY b.FILE_SN
]]>
</select>
<update id="FileManageDAO.updateFileInfo" parameterClass="FileVO" >
<![CDATA[
INSERT INTO LETTNFILEDETAIL
( ATCH_FILE_ID, FILE_SN, FILE_STRE_COURS, STRE_FILE_NM,
ORIGNL_FILE_NM, FILE_EXTSN, FILE_SIZE, FILE_CN )
VALUES
( #atchFileId#, #fileSn#, #fileStreCours#, #streFileNm#,
#orignlFileNm#, #fileExtsn#, #fileMg#, #fileCn# )
ON DUPLICATE KEY UPDATE ATCH_FILE_ID = #atchFileId#,
FILE_STRE_COURS = #fileStreCours#,
STRE_FILE_NM = #streFileNm#,
ORIGNL_FILE_NM = #orignlFileNm#,
FILE_EXTSN = #fileExtsn#,
FILE_SIZE = #fileMg#,
FILE_CN = #fileCn#
]]>
</update>
<update id="FileManageDAO.updateFileName" parameterClass="FileVO" >
UPDATE
LETTNFILEDETAIL
SET
ORIGNL_FILE_NM = #orignlFileNm#
WHERE 1=1
AND ATCH_FILE_ID = #atchFileId#
AND FILE_SN = #fileSn#
</update>
<update id="FileManageDAO.updateOffeduFileNull" parameterClass="VEEduAplctVO" >
UPDATE
$table$
SET
$type$ = null
WHERE 1=1
AND edu_aplct_ord = #eduAplctOrd#
</update>
<select id="FileManageDAO.selectZipFileOrderList" parameterClass="FileVO" resultMap="fileList" >
/* FileManageDAO.selectZipFileOrderList */
SELECT
a.ATCH_FILE_ID, b.FILE_CN, b.FILE_SN, b.FILE_STRE_COURS, b.STRE_FILE_NM,
b.FILE_EXTSN, b.ORIGNL_FILE_NM, b.FILE_SIZE, TO_CHAR(a.CREAT_DT, 'YYYY-MM-DD HH24:MI:SS' ) AS CREAT_DT
, '' AS scholInsttNm
, '' AS chrgNm
FROM
LETTNFILE a, LETTNFILEDETAIL b
WHERE
a.ATCH_FILE_ID = b.ATCH_FILE_ID
AND
a.USE_AT = 'Y'
<isEqual property="downloadType" compareValue="A">
AND a.ATCH_FILE_ID IN
<iterate property="atchFileIdList" open="(" close=")" conjunction=",">
#atchFileIdList[]#
</iterate>
<isNotEmpty property="fileSn">
AND b.FILE_SN = #fileSn#
</isNotEmpty>
</isEqual>
<isEqual property="downloadType" compareValue="B">
AND a.ATCH_FILE_ID = #atchFileId#
AND b.FILE_SN IN
<iterate property="atchFileSnList" open="(" close=")" conjunction=",">
#atchFileSnList[]#
</iterate>
</isEqual>
ORDER BY INSTR ($orderQuery$)
</select>
</sqlMap>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="Read">

View File

@ -0,0 +1,38 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="Read">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="readVO" type="kcc.com.cmm.ReadVO"/>
<resultMap id="readList" class="kcc.com.cmm.ReadVO">
<result property="menuNo" column="MENU_NO" columnIndex="1"/>
<result property="readId" column="READ_ID" columnIndex="2"/>
<result property="loginId" column="LOGIN_ID" columnIndex="3"/>
</resultMap>
<select id="readDAO.selectReadYn" parameterClass="readVO" resultMap="readList" >
SELECT
MENU_NO,
READ_ID,
LOGIN_ID
FROM
READYN
WHERE
READ_ID = #readId#
AND LOGIN_ID= #loginId#
</select>
<insert id="readDAO.insertReadYn" parameterClass="readVO" >
INSERT INTO READYN (
MENU_NO,
READ_ID,
LOGIN_ID
) values(
#menuNo#,
#readId#,
#loginId#
)
</insert>
</sqlMap>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="CmmUse">
@ -22,7 +22,7 @@
WHERE
USE_AT = 'Y'
AND CODE_ID = #codeId#
ORDER BY SORT, CODE_NM
ORDER BY SORT
]]>
</select>
@ -67,8 +67,64 @@
WHERE
USE_AT = 'Y'
AND CODE_ID = #codeId#
AND CODE = #code#
]]>
<isEmpty property="codeDc">
AND CODE = #code#
</isEmpty>
<isNotEmpty property="codeDc">
AND CODE_DC = #codeDc#
</isNotEmpty>
</select>
<select id="CmmUseDAO.selectCmmCodeDetailValueOnlyName" parameterClass="ComDefaultCodeVO" resultMap="CmmCodeDetail">
<![CDATA[
SELECT
CODE_ID, CODE, CODE_NM, CODE_DC
FROM
LETTCCMMNDETAILCODE
WHERE
1=1
AND CODE_ID = #codeId#
]]>
<isEmpty property="codeDc">
AND CODE = #code#
</isEmpty>
<isNotEmpty property="codeDc">
AND CODE_DC = #codeDc#
</isNotEmpty>
</select>
<select id="CmmUseDAO.selectCmmCodeDetailOrderByCode" parameterClass="ComDefaultCodeVO" resultMap="CmmCodeDetail">
/* CmmUseDAO.selectCmmCodeDetailOrderByCode */
<![CDATA[
SELECT
CODE_ID, CODE, CODE_NM, CODE_DC
FROM
LETTCCMMNDETAILCODE
WHERE
USE_AT = 'Y'
AND CODE_ID = 'VEA008'
ORDER BY
SUBSTRING(code_nm, 1, 2) ,
instr(code_nm,'-') ,
code_nm
]]>
</select>
<select id="CmmUseDAO.selectCmmCodeDetailLikeNmOrderByCode" parameterClass="ComDefaultCodeVO" resultMap="CmmCodeDetail">
SELECT
CODE_ID, CODE, CODE_NM, CODE_DC
FROM
LETTCCMMNDETAILCODE
WHERE
USE_AT = 'Y'
AND CODE_ID = 'VEA008'
<isNotEmpty property="codeNm">
AND CODE_NM like #codeNm# || '%'
</isNotEmpty>
<!-- AND CODE = #code# -->
ORDER BY code
</select>
</sqlMap>

View File

@ -0,0 +1,130 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="CmmUse">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="ComDefaultCodeVO" type="kcc.com.cmm.ComDefaultCodeVO"/>
<resultMap id="CmmCodeDetail" class="kcc.com.cmm.service.CmmnDetailCode">
<result property="codeId" column="CODE_ID" columnIndex="1"/>
<result property="code" column="CODE" columnIndex="2"/>
<result property="codeNm" column="CODE_NM" columnIndex="3"/>
<result property="codeDc" column="CODE_DC" columnIndex="4"/>
</resultMap>
<select id="CmmUseDAO.selectCmmCodeDetail" parameterClass="ComDefaultCodeVO" resultMap="CmmCodeDetail">
<![CDATA[
SELECT
CODE_ID, CODE, CODE_NM, CODE_DC
FROM
LETTCCMMNDETAILCODE
WHERE
USE_AT = 'Y'
AND CODE_ID = #codeId#
ORDER BY SORT
]]>
</select>
<select id="CmmUseDAO.selectOgrnztIdDetail" parameterClass="ComDefaultCodeVO" resultMap="CmmCodeDetail">
<![CDATA[
SELECT
#tableNm# CODE_ID,
ORGNZT_ID CODE,
ORGNZT_NM CODE_NM,
ORGNZT_DC CODE_DC
FROM
LETTNORGNZTINFO
WHERE 1=1
]]>
<isEqual prepend="AND" property="haveDetailCondition" compareValue="Y">
ORGNZT_ID LIKE #detailConditionValue#
</isEqual>
</select>
<select id="CmmUseDAO.selectGroupIdDetail" parameterClass="ComDefaultCodeVO" resultMap="CmmCodeDetail">
<![CDATA[
SELECT
#tableNm# CODE_ID,
GROUP_ID CODE,
GROUP_NM CODE_NM,
GROUP_DC CODE_DC
FROM
LETTNAUTHORGROUPINFO
WHERE 1=1
]]>
<isEqual prepend="AND" property="haveDetailCondition" compareValue="Y">
GROUP_ID LIKE #detailConditionValue#
</isEqual>
</select>
<select id="CmmUseDAO.selectCmmCodeDetailValue" parameterClass="ComDefaultCodeVO" resultMap="CmmCodeDetail">
<![CDATA[
SELECT
CODE_ID, CODE, CODE_NM, CODE_DC
FROM
LETTCCMMNDETAILCODE
WHERE
USE_AT = 'Y'
AND CODE_ID = #codeId#
]]>
<isEmpty property="codeDc">
AND CODE = #code#
</isEmpty>
<isNotEmpty property="codeDc">
AND CODE_DC = #codeDc#
</isNotEmpty>
</select>
<select id="CmmUseDAO.selectCmmCodeDetailValueOnlyName" parameterClass="ComDefaultCodeVO" resultMap="CmmCodeDetail">
<![CDATA[
SELECT
CODE_ID, CODE, CODE_NM, CODE_DC
FROM
LETTCCMMNDETAILCODE
WHERE
1=1
AND CODE_ID = #codeId#
]]>
<isEmpty property="codeDc">
AND CODE = #code#
</isEmpty>
<isNotEmpty property="codeDc">
AND CODE_DC = #codeDc#
</isNotEmpty>
</select>
<select id="CmmUseDAO.selectCmmCodeDetailOrderByCode" parameterClass="ComDefaultCodeVO" resultMap="CmmCodeDetail">
/* CmmUseDAO.selectCmmCodeDetailOrderByCode */
<![CDATA[
SELECT
CODE_ID, CODE, CODE_NM, CODE_DC
FROM
LETTCCMMNDETAILCODE
WHERE
USE_AT = 'Y'
AND CODE_ID = 'VEA008'
ORDER BY
SUBSTRING(code_nm, 1, 2) ,
instr(code_nm,'-') ,
code_nm
]]>
</select>
<select id="CmmUseDAO.selectCmmCodeDetailLikeNmOrderByCode" parameterClass="ComDefaultCodeVO" resultMap="CmmCodeDetail">
SELECT
CODE_ID, CODE, CODE_NM, CODE_DC
FROM
LETTCCMMNDETAILCODE
WHERE
USE_AT = 'Y'
AND CODE_ID = 'VEA008'
<isNotEmpty property="codeNm">
AND CODE_NM like #codeNm# || '%'
</isNotEmpty>
<!-- AND CODE = #code# -->
ORDER BY code
</select>
</sqlMap>

View File

@ -0,0 +1,735 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="BBSMaster">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="BoardMasterVO" type="kcc.let.cop.bbs.service.BoardMasterVO"/>
<typeAlias alias="BoardMaster" type="kcc.let.cop.bbs.service.BoardMaster"/>
<typeAlias alias="boardVO" type="kcc.let.cop.bbs.service.BoardVO"/>
<typeAlias alias="ComDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<resultMap id="boardMasterList" class="kcc.let.cop.bbs.service.BoardMasterVO">
<result property="bbsId" column="BBS_ID"/>
<result property="bbsTyCode" column="BBS_TY_CODE"/>
<result property="bbsTyCodeNm" column="BBS_TY_CODE_NM"/>
<result property="bbsAttrbCode" column="BBS_ATTRB_CODE"/>
<result property="bbsAttrbCodeNm" column="BBS_ATTRB_CODE_NM"/>
<result property="bbsNm" column="BBS_NM"/>
<result property="tmplatId" column="TMPLAT_ID"/>
<result property="useAt" column="USE_AT"/>
<result property="useAtTxt" column="USE_AT_TXT"/>
<result property="frstRegisterPnttm" column="FRST_REGIST_PNTTM"/>
<result property="totCnt" column="TOTCNT"/>
<result property="newCnt" column="NEWCNT"/>
<result property="writeYn" column="WRITE_YN"/>
<result property="menuNm" column="MENU_NM"/>
</resultMap>
<resultMap id="boardMasterDetail" class="kcc.let.cop.bbs.service.BoardMasterVO">
<result property="bbsId" column="BBS_ID"/>
<result property="bbsTyCode" column="BBS_TY_CODE"/>
<result property="bbsAttrbCode" column="BBS_ATTRB_CODE"/>
<result property="bbsNm" column="BBS_NM"/>
<result property="bbsIntrcn" column="BBS_INTRCN"/>
<result property="replyPosblAt" column="REPLY_POSBL_AT"/>
<result property="fileAtchPosblAt" column="FILE_ATCH_POSBL_AT"/>
<result property="posblAtchFileNumber" column="ATCH_POSBL_FILE_NUMBER"/>
<result property="posblAtchFileSize" column="ATCH_POSBL_FILE_SIZE"/>
<result property="tmplatId" column="TMPLAT_ID"/>
<result property="frstRegisterId" column="FRST_REGISTER_ID"/>
<result property="frstRegisterNm" column="FRST_REGISTER_NM"/>
<result property="frstRegisterPnttm" column="FRST_REGIST_PNTTM"/>
<result property="bbsTyCodeNm" column="BBS_TY_CODE_NM"/>
<result property="bbsAttrbCodeNm" column="BBS_ATTRB_CODE_NM"/>
<result property="tmplatNm" column="TMPLAT_NM"/>
<result property="authFlag" column="AUTH_FLAG"/>
<result property="tmplatCours" column="TMPLAT_COURS"/>
<result property="listNum" column="LIST_NUM" nullValue="0" />
<result property="pageNum" column="PAGE_NUM" nullValue="0" />
<result property="titleNum" column="TITLE_NUM" nullValue="0" />
<result property="addYn" column="ADD_YN" nullValue="" />
<result property="noticeYn" column="NOTICE_YN" nullValue="" />
<result property="passwordYn" column="PASSWORD_YN" nullValue="" />
<result property="openYn" column="OPEN_YN" nullValue="" />
<result property="regidayYn" column="REGIDAY_YN" nullValue="" />
<result property="regierYn" column="REGIER_YN" nullValue="" />
<result property="ipYn" column="IP_YN" nullValue="" />
<result property="manageAuth" column="MANAGE_AUTH" nullValue="" />
<result property="noticeAuth" column="NOTICE_AUTH" nullValue="" />
<result property="listAuth" column="LIST_AUTH" nullValue="" />
<result property="viewAuth" column="VIEW_AUTH" nullValue="" />
<result property="writeAuth" column="WRITE_AUTH" nullValue="" />
<result property="replyAuth" column="REPLY_AUTH" nullValue="" />
<result property="addAuth" column="ADD_AUTH" nullValue="" />
<result property="fileatchAuth" column="FILEATCH_AUTH" nullValue="" />
<result property="deleteAuth" column="DELETE_AUTH" nullValue="" />
<result property="viewsYn" column="VIEWS_YN" nullValue="" />
<result property="useAt" column="USE_AT" nullValue="" />
<result property="bbsDc" column="BBS_DC" nullValue="" />
<result property="menuCours" column="MENU_COURS" nullValue="" />
<result property="firstDeptMenuNo" column="FIRST_DEPT_MENU_NO" nullValue="" />
<result property="thumbAtchFileYn" column="THUMB_ATCH_FILE_YN" nullValue="" />
<result property="seCmmnCdId" column="SE_CMMN_CD_ID" nullValue="" />
<result property="koglCnYn" column="KOGL_CN_YN" nullValue="" />
<result property="linkUrlYn" column="LINK_URL_YN" nullValue="" />
<result property="ntceDateYn" column="NTCE_DATE_YN" nullValue="" />
<result property="writeYn" column="WRITE_YN" nullValue="" />
<result property="menuNm" column="MENU_NM" nullValue="" />
<result property="menuNo" column="MENU_NO" nullValue="" />
<result property="secretYn" column="SECRET_YN" nullValue="" />
</resultMap>
<resultMap id="boardMasterAll" class="kcc.let.cop.bbs.service.BoardMasterVO">
<result property="bbsId" column="BBS_ID"/>
<result property="bbsTyCode" column="BBS_TY_CODE"/>
<result property="bbsAttrbCode" column="BBS_ATTRB_CODE"/>
<result property="bbsNm" column="BBS_NM"/>
<result property="tmplatId" column="TMPLAT_ID"/>
</resultMap>
<select id="BBSAttributeManageDAO.selectBBSMasterInfs" parameterClass="BoardMasterVO" resultMap="boardMasterList" >
/* BBSAttributeManageDAO.selectBBSMasterInfs */
<![CDATA[
SELECT
a.BBS_ID, a.BBS_TY_CODE, b.CODE_NM as BBS_TY_CODE_NM,
a.BBS_ATTRB_CODE, c.CODE_NM as BBS_ATTRB_CODE_NM, a.BBS_NM,
a.TMPLAT_ID, a.USE_AT,
a.WRITE_YN,
DECODE(a.USE_AT , 'N', '미사용', '사용') USE_AT_TXT ,
TO_CHAR(a.FRST_REGIST_PNTTM, 'YYYY-MM-DD') AS FRST_REGIST_PNTTM,
NVL(d.TOTCNT, 0) AS TOTCNT,
NVL(d.NEWCNT, 0) AS NEWCNT,
a.WRITE_YN,
DECODE(e.MENU_NM,'root' , '', e.MENU_NM) AS MENU_NM
FROM
LETTNBBSMASTER a
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM004' AND USE_AT='Y') b
ON a.BBS_TY_CODE = b.CODE
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM009' AND USE_AT='Y') c
ON a.BBS_ATTRB_CODE = c.CODE
LEFT OUTER JOIN
(SELECT BBS_ID,
COUNT(1) AS TOTCNT,
/*
COUNT(IF(DATEDIFF(FRST_REGIST_PNTTM, NOW()) <= 7, BBS_ID, NULL)) as NEWCNT
*/
COUNT(
CASE
WHEN CAST(FRST_REGIST_PNTTM AS date)- SYSDATE <= 7 THEN BBS_ID ELSE NULL
END
) AS NEWCNT
/*COUNT(IF(TIMESTAMPDIFF(DAY, FRST_REGIST_PNTTM, NOW()) <= 7, BBS_ID, NULL)) as NEWCNT*/
FROM (SELECT BBS_ID, FRST_REGIST_PNTTM, USE_AT
FROM LETTNBBS WHERE USE_AT = 'Y') z GROUP BY z.BBS_ID
) d
ON a.BBS_ID = d.BBS_ID
LEFT OUTER JOIN LETTNMENUINFO e ON a.MENU_NO = e.MENU_NO
WHERE 1=1
]]>
<isNotEmpty property="useAt">
AND a.USE_AT = #useAt#
</isNotEmpty>
<isEqual prepend="AND" property="searchCnd" compareValue="0">
<![CDATA[( a.BBS_NM LIKE '%'||#searchWrd#||'%' or MENU_NM LIKE '%'||#searchWrd#||'%' ) ]]>
</isEqual>
<isEqual prepend="AND" property="searchCnd" compareValue="1">
<![CDATA[ b.CODE_NM LIKE '%'||#searchWrd#||'%' ]]>
</isEqual>
<isNotEmpty prepend="AND" property="bbsMngId">
<![CDATA[ a.BBS_ID IN (SELECT BBS_ID FROM LETTNBBSMNG WHERE EMPLYR_ID = #bbsMngId#) ]]>
</isNotEmpty>
<isNotEmpty property="bbsTyCode">
AND a.BBS_TY_CODE = #bbsTyCode#
</isNotEmpty>
<isNotEmpty property="seCmmnCdId">
AND a.SE_CMMN_CD_ID = #seCmmnCdId#
</isNotEmpty>
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<select id="BBSAttributeManageDAO.selectBBSMasterInfsCnt" parameterClass="BoardMasterVO" resultClass="java.lang.Integer" >
<![CDATA[
SELECT
COUNT(a.BBS_ID)
FROM
LETTNBBSMASTER a
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM004' AND USE_AT='Y') b
ON a.BBS_TY_CODE = b.CODE
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM009' AND USE_AT='Y') c
ON a.BBS_ATTRB_CODE = c.CODE
LEFT OUTER JOIN LETTNMENUINFO e ON a.MENU_NO = e.MENU_NO
WHERE 1=1
]]>
<isNotEmpty property="useAt">
AND a.USE_AT = #useAt#
</isNotEmpty>
<isEqual prepend="AND" property="searchCnd" compareValue="0">
<![CDATA[( a.BBS_NM LIKE '%'||#searchWrd#||'%' or MENU_NM LIKE '%'||#searchWrd#||'%' ) ]]>
</isEqual>
<isEqual prepend="AND" property="searchCnd" compareValue="1">
<![CDATA[ b.CODE_NM LIKE '%'||#searchWrd#||'%' ]]>
</isEqual>
<isNotEmpty prepend="AND" property="bbsMngId">
<![CDATA[ a.BBS_ID IN (SELECT BBS_ID FROM LETTNBBSMNG WHERE EMPLYR_ID = #bbsMngId#) ]]>
</isNotEmpty>
<isNotEmpty property="searchConditionSite"> /* 수퍼 관리자가 조회 */
AND a.SITE_ID = #searchConditionSite#
</isNotEmpty>
</select>
<update id="BBSAttributeManageDAO.deleteBBSMasterInf" parameterClass="BoardMaster">
<![CDATA[
UPDATE LETTNBBSMASTER SET
USE_AT = 'N',
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = SYSDATE
WHERE BBS_ID = #bbsId#
]]>
</update>
<select id="BBSAttributeManageDAO.selectAllBBSMaster" parameterClass="BoardMasterVO" resultMap="boardMasterAll" >
<![CDATA[
SELECT
BBS_ID, BBS_TY_CODE, BBS_ATTRB_CODE, BBS_NM, TMPLAT_ID
FROM
LETTNBBSMASTER
WHERE USE_AT = 'Y'
]]>
</select>
<select id="BBSAttributeManageDAO.selectAllBdMstrByTrget" parameterClass="BoardMasterVO" resultMap="boardMasterAll" >
<![CDATA[
SELECT
a.BBS_ID, a.BBS_TY_CODE, a.BBS_ATTRB_CODE, a.BBS_NM, a.TMPLAT_ID
FROM
LETTNBBSMASTER a, LETTNBBSUSE b
WHERE
a.BBS_ID = b.BBS_ID
AND
b.TRGET_ID = #trgetId#
AND
a.USE_AT = 'Y' AND b.USE_AT = 'Y'
ORDER BY a.BBS_ID
]]>
</select>
<select id="BBSAttributeManageDAO.selectBdMstrListByTrget" parameterClass="BoardMasterVO" resultMap="boardMasterList" >
<![CDATA[
/* no use */
SELECT
a.BBS_ID, a.BBS_TY_CODE, b.CODE_NM as BBS_TY_CODE_NM,
a.BBS_ATTRB_CODE, c.CODE_NM as BBS_ATTRB_CODE_NM, a.BBS_NM,
a.TMPLAT_ID, a.USE_AT, IF(a.USE_AT = 'N', '미사용', '사용') USE_AT_TXT ,
DATE_FORMAT(a.FRST_REGIST_PNTTM, '%Y-%m-%d') as FRST_REGIST_PNTTM
FROM
LETTNBBSMASTER a
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM004' AND USE_AT='Y') b
ON a.BBS_TY_CODE = b.CODE
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM009' AND USE_AT='Y') c
ON a.BBS_ATTRB_CODE = c.CODE,
LETTNBBSUSE d
WHERE
a.BBS_ID = d.BBS_ID
AND
d.TRGET_ID = #trgetId#
]]>
<isEqual prepend="AND" property="searchCnd" compareValue="0">
<![CDATA[ a.BBS_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCnd" compareValue="1">
<![CDATA[ b.CODE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<![CDATA[
ORDER BY a.FRST_REGIST_PNTTM DESC
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
]]>
</select>
<select id="BBSAttributeManageDAO.selectBdMstrListCntByTrget" parameterClass="BoardMasterVO" resultClass="java.lang.Integer" >
<![CDATA[
/* no use */
SELECT
COUNT(a.BBS_ID)
FROM
LETTNBBSMASTER a
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM004' AND USE_AT='Y') b
ON a.BBS_TY_CODE = b.CODE
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM009' AND USE_AT='Y') c
ON a.BBS_ATTRB_CODE = c.CODE,
LETTNBBSUSE d
WHERE
a.BBS_ID = d.BBS_ID
AND
d.TRGET_ID = #trgetId#
]]>
<isEqual prepend="AND" property="searchCnd" compareValue="0">
<![CDATA[ a.BBS_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCnd" compareValue="1">
<![CDATA[ b.CODE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
</select>
<select id="BBSAttributeManageDAO.selectNotUsedBdMstrList" parameterClass="BoardMasterVO" resultMap="boardMasterList" >
<![CDATA[
/* no use */
SELECT
a.BBS_ID, a.BBS_TY_CODE, b.CODE_NM as BBS_TY_CODE_NM,
a.BBS_ATTRB_CODE, c.CODE_NM as BBS_ATTRB_CODE_NM, a.BBS_NM,
a.TMPLAT_ID, a.USE_AT, IF(a.USE_AT = 'N', '미사용', '사용') USE_AT_TXT ,
DATE_FORMAT(a.FRST_REGIST_PNTTM, '%Y-%m-%d') as FRST_REGIST_PNTTM
FROM
LETTNBBSMASTER a
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM004' AND USE_AT='Y') b
ON a.BBS_TY_CODE = b.CODE
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM009' AND USE_AT='Y') c
ON a.BBS_ATTRB_CODE = c.CODE
WHERE a.USE_AT = 'Y'
AND a.BBS_ID NOT IN (SELECT BBS_ID FROM LETTNBBSUSE WHERE USE_AT = 'Y')
]]>
<isEqual prepend="AND" property="searchCnd" compareValue="0">
<![CDATA[ a.BBS_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCnd" compareValue="1">
<![CDATA[ b.CODE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<![CDATA[
ORDER BY a.FRST_REGIST_PNTTM DESC
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
]]>
</select>
<select id="BBSAttributeManageDAO.selectNotUsedBdMstrListCnt" parameterClass="BoardMasterVO" resultClass="java.lang.Integer" >
<![CDATA[
/* no use */
SELECT
COUNT(a.BBS_ID)
FROM
LETTNBBSMASTER a
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM004' AND USE_AT='Y') b
ON a.BBS_TY_CODE = b.CODE
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM009' AND USE_AT='Y') c
ON a.BBS_ATTRB_CODE = c.CODE
WHERE a.USE_AT = 'Y'
AND a.BBS_ID NOT IN (SELECT BBS_ID FROM LETTNBBSUSE WHERE USE_AT = 'Y')
]]>
<isEqual prepend="AND" property="searchCnd" compareValue="0">
<![CDATA[ a.BBS_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCnd" compareValue="1">
<![CDATA[ b.CODE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
</select>
<insert id="BBSAttributeManageDAO.insertBBSMasterInf" parameterClass="BoardMaster" >
INSERT INTO LETTNBBSMASTER
(BBS_ID, BBS_TY_CODE, BBS_ATTRB_CODE, BBS_NM, BBS_INTRCN,
REPLY_POSBL_AT, FILE_ATCH_POSBL_AT, ATCH_POSBL_FILE_NUMBER,
ATCH_POSBL_FILE_SIZE, TMPLAT_ID, USE_AT,
FRST_REGISTER_ID, FRST_REGIST_PNTTM, BBS_DC,
LIST_NUM, PAGE_NUM, TITLE_NUM,
ADD_YN, NOTICE_YN, PASSWORD_YN, OPEN_YN,
REGIDAY_YN, REGIER_YN, IP_YN, MANAGE_AUTH,
NOTICE_AUTH, LIST_AUTH, VIEW_AUTH, WRITE_AUTH,
REPLY_AUTH, ADD_AUTH, FILEATCH_AUTH, DELETE_AUTH ,
<isEqual property="bbsTyCode" compareValue="BBST07">
MENU_NO,
</isEqual>
VIEWS_YN,SE_CMMN_CD_ID, SECRET_YN
)
VALUES
( #bbsId#, #bbsTyCode#, #bbsAttrbCode#, #bbsNm#, #bbsIntrcn#,
#replyPosblAt#, #fileAtchPosblAt#, #posblAtchFileNumber#,
#posblAtchFileSize#, #tmplatId#, #useAt#, #frstRegisterId#, SYSDATE, #bbsDc#,
#listNum#, #pageNum#, #titleNum#,
#addYn#, #noticeYn#, #passwordYn#, #openYn#,
#regidayYn#, #regierYn#, #ipYn#, #manageAuth#,
#noticeAuth#, #listAuth#, #viewAuth#, #writeAuth#,
#replyAuth#, #addAuth#, #fileatchAuth#, #deleteAuth# ,
<isEqual property="bbsTyCode" compareValue="BBST07">
'9620000', /**사전정보공표 */
</isEqual>
#viewsYn#,#seCmmnCdId#,#secretYn#
)
</insert>
<select id="BBSAttributeManageDAO.selectBBSMasterInf" parameterClass="BoardMaster" resultMap="boardMasterDetail" >
/* 임시.*NOT_SQL_LOG.* - BBSAttributeManageDAO.selectBBSMasterInf */
<![CDATA[
SELECT
a.BBS_ID, a.BBS_TY_CODE, b.CODE_NM as BBS_TY_CODE_NM, a.BBS_INTRCN,
a.BBS_ATTRB_CODE, c.CODE_NM as BBS_ATTRB_CODE_NM, a.BBS_NM,
a.TMPLAT_ID, d.CODE_NM as TMPLAT_NM, d.CODE_DC as TMPLAT_COURS, a.FILE_ATCH_POSBL_AT, a.ATCH_POSBL_FILE_NUMBER,
a.ATCH_POSBL_FILE_SIZE, a.REPLY_POSBL_AT, a.FRST_REGISTER_ID, e.USER_NM as FRST_REGISTER_NM,
a.USE_AT,
/*
DATE_FORMAT(a.FRST_REGIST_PNTTM, '%Y-%m-%d') as FRST_REGIST_PNTTM,
*/
TO_CHAR(a.FRST_REGIST_PNTTM, 'YYYY-MM-DD') as FRST_REGIST_PNTTM,
'' as AUTH_FLAG, /* 게시판사용 테이블 사용안함 */
a.LIST_NUM ,
a.PAGE_NUM,
a.TITLE_NUM,
a.REPLY_YN,
a.ADD_YN,
a.NOTICE_YN,
a.PASSWORD_YN,
a.OPEN_YN,
a.REGIDAY_YN,
a.REGIER_YN,
a.IP_YN,
a.MANAGE_AUTH,
a.NOTICE_AUTH,
a.LIST_AUTH,
a.VIEW_AUTH,
a.WRITE_AUTH,
a.REPLY_AUTH,
a.ADD_AUTH,
a.FILEATCH_AUTH,
a.DELETE_AUTH ,
a.VIEWS_YN,
a.BBS_DC,
a.SECRET_YN,
'' as MENU_COURS,
'' as FIRST_DEPT_MENU_NO,
/*REPLACE(GETMENUCOURS(h.MENU_NO), '|', ' > ') as MENU_COURS,*/
/*get1DepthMenuNo(h.MENU_NO) as FIRST_DEPT_MENU_NO,*/
/*
(
SELECT a.menu_no
FROM (
SELECT @r AS menuNo
FROM (
SELECT @r := ''
) vars, LETTNMENUINFO a
WHERE @r <> 0
) func
JOIN LETTNMENUINFO a
ON func.menuNo = a.MENU_NO
ORDER BY a.MENU_NO
LIMIT 1
) AS FIRST_DEPT_MENU_NO,
*/
a.THUMB_ATCH_FILE_YN,
a.SE_CMMN_CD_ID,
a.KOGL_CN_YN,
a.LINK_URL_YN,
a.NTCE_DATE_YN,
a.WRITE_YN,
h.MENU_NM,
h.MENU_NO
FROM
LETTNBBSMASTER a
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM004' AND USE_AT='Y') b
ON a.BBS_TY_CODE = b.CODE
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM009' AND USE_AT='Y') c
ON a.BBS_ATTRB_CODE = c.CODE
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM, CODE_DC FROM LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM005' AND USE_AT='Y') d
ON a.TMPLAT_ID = d.CODE
LEFT OUTER JOIN COMVNUSERMASTER e
ON a.FRST_REGISTER_ID = e.ESNTL_ID
LEFT OUTER JOIN LETTNPROGRMLIST f
ON TO_CHAR(a.MENU_NO) = f.PROGRM_FILE_NM
LEFT OUTER JOIN LETTNMENUINFO h
ON f.PROGRM_FILE_NM = h.PROGRM_FILE_NM
WHERE a.BBS_ID = #bbsId#
]]>
</select>
<update id="BBSAttributeManageDAO.updateBBSMasterInf" parameterClass="BoardMaster">
UPDATE LETTNBBSMASTER SET
BBS_NM = #bbsNm#,
BBS_INTRCN = #bbsIntrcn#,
BBS_TY_CODE = #bbsTyCode#,
FILE_ATCH_POSBL_AT = #fileAtchPosblAt#,
ATCH_POSBL_FILE_NUMBER = #posblAtchFileNumber#,
ATCH_POSBL_FILE_SIZE = #posblAtchFileSize#,
TMPLAT_ID = #tmplatId#,
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = SYSDATE,
REPLY_POSBL_AT = #replyPosblAt#,
USE_AT = #useAt# ,
LIST_NUM = #listNum#,
PAGE_NUM = #pageNum#,
TITLE_NUM = #titleNum#,
ADD_YN = #addYn#,
NOTICE_YN = #noticeYn#,
PASSWORD_YN = #passwordYn#,
OPEN_YN = #openYn#,
REGIDAY_YN = #regidayYn#,
REGIER_YN = #regierYn#,
IP_YN = #ipYn#,
MANAGE_AUTH = #manageAuth#,
NOTICE_AUTH = #noticeAuth#,
LIST_AUTH = #listAuth#,
VIEW_AUTH = #viewAuth#,
WRITE_AUTH = #writeAuth#,
REPLY_AUTH = #replyAuth#,
ADD_AUTH = #addAuth#,
FILEATCH_AUTH = #fileatchAuth#,
DELETE_AUTH = #deleteAuth#,
VIEWS_YN = #viewsYn#,
<isNotEmpty property="writeYn">
WRITE_YN = #writeYn# ,
</isNotEmpty>
<isNotEmpty property="thumbAtchFileYn">
THUMB_ATCH_FILE_YN = #thumbAtchFileYn# ,
</isNotEmpty>
<isNotEmpty property="seCmmnCdId">
SE_CMMN_CD_ID = #seCmmnCdId#,
</isNotEmpty>
<isNotEmpty property="koglCnYn">
KOGL_CN_YN = #koglCnYn#,
</isNotEmpty>
<isNotEmpty property="linkUrlYn">
LINK_URL_YN = #linkUrlYn#,
</isNotEmpty>
<isNotEmpty property="ntceDateYn">
NTCE_DATE_YN = #ntceDateYn#,
</isNotEmpty>
<isEqual property="bbsTyCode" compareValue="BBST07">
MENU_NO = '9620000', /**사전정보공표 */
</isEqual>
BBS_DC = #bbsDc#,
SECRET_YN = #secretYn#
WHERE BBS_ID = #bbsId#
</update>
<select id="BBSAttributeManageDAO.selectBBSMngIdList" parameterClass="BoardMaster" resultClass="egovMap" >
<![CDATA[
SELECT a.MNG_ID,
a.EMPLYR_ID,
b.EMAIL_ADRES ,
b.ESNTL_ID
FROM LETTNBBSMNG a
INNER JOIN LETTNEMPLYRINFO b
ON a.EMPLYR_ID = b.EMPLYR_ID
WHERE a.BBS_ID = #bbsId#
ORDER BY a.EMPLYR_ID
]]>
</select>
<insert id="BBSAttributeManageDAO.insertBBSMngInf" parameterClass="BoardMaster">
<![CDATA[
INSERT INTO LETTNBBSMNG
(MNG_ID, BBS_ID, EMPLYR_ID)
VALUES
(#mngId#, #bbsId#, #bbsMngId#)
]]>
</insert>
<select id="BBSAttributeManageDAO.selectBBSMaxMngId" resultClass="java.lang.Integer">
<![CDATA[
SELECT IFNULL(MAX(MNG_ID), 0) + 1 FROM LETTNBBSMNG
]]>
</select>
<select id="BBSAttributeManageDAO.selectBBSMngInfCnt" parameterClass="BoardMaster" resultClass="java.lang.Integer" >
<![CDATA[
SELECT COUNT(1)
FROM LETTNBBSMNG
WHERE BBS_ID = #bbsId#
AND EMPLYR_ID = #bbsMngId#
]]>
</select>
<delete id="BBSAttributeManageDAO.deleteBBSMngInf" parameterClass="BoardMaster">
<![CDATA[
DELETE FROM LETTNBBSMNG
WHERE MNG_ID = #mngId#
]]>
</delete>
<select id="BBSAttributeManageDAO.selectBBSIdList" parameterClass="ComDefaultVO" resultClass="egovMap" >
SELECT A.BBS_ID
, A.BBS_NM
, CASE WHEN B.MENU_NM = 'root' THEN '' ELSE B.MENU_NM END AS MENU_NM
FROM LETTNBBSMASTER A
LEFT OUTER JOIN LETTNMENUINFO B
ON A.MENU_NO = B.MENU_NO
WHERE USE_AT = 'Y'
AND BBS_NM LIKE '%'|| #searchKeyword# ||'%'
ORDER BY BBS_NM
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY
</select>
<select id="BBSAttributeManageDAO.selectBBSIdListCnt" parameterClass="ComDefaultVO" resultClass="java.lang.Integer" >
SELECT COUNT(1)
FROM LETTNBBSMASTER A
WHERE USE_AT = 'Y'
AND BBS_NM LIKE '%'|| #searchKeyword# ||'%'
<isNotEmpty property="siteId">
AND SITE_ID = #siteId#
</isNotEmpty>
</select>
<insert id="BBSAttributeManageDAO.insupNoticeBbsid" parameterClass="BoardMaster">
<![CDATA[
INSERT INTO SITE_MAIN_BBS (SITE_ID, NOTICE_BBSID) VALUES (#siteId#, #noticeBbsid#)
ON DUPLICATE KEY UPDATE SITE_ID=#siteId#, NOTICE_BBSID= #noticeBbsid#
]]>
</insert>
<insert id="BBSAttributeManageDAO.insupQnaBbsid" parameterClass="BoardMaster">
<![CDATA[
INSERT INTO SITE_MAIN_BBS (SITE_ID, QNA_BBSID) VALUES (#siteId#, #qnaBbsid#)
ON DUPLICATE KEY UPDATE SITE_ID=#siteId#, QNA_BBSID= #qnaBbsid#
]]>
</insert>
<insert id="BBSAttributeManageDAO.insupNewsBbsid" parameterClass="BoardMaster">
<![CDATA[
INSERT INTO SITE_MAIN_BBS (SITE_ID, NEWS_BBSID) VALUES (#siteId#, #newsBbsid#)
ON DUPLICATE KEY UPDATE SITE_ID=#siteId#, NEWS_BBSID= #newsBbsid#
]]>
</insert>
<insert id="BBSAttributeManageDAO.insupLibraryBbsid" parameterClass="BoardMaster">
<![CDATA[
INSERT INTO SITE_MAIN_BBS (SITE_ID, LIBRARY_BBSID) VALUES (#siteId#, #libraryBbsid#)
ON DUPLICATE KEY UPDATE SITE_ID=#siteId#, LIBRARY_BBSID= #libraryBbsid#
]]>
</insert>
<select id="BBSAttributeManageDAO.getSiteMainNbsVO" parameterClass="BoardMasterVO" resultClass="BoardMasterVO" >
SELECT NOTICE_BBSID as noticeBbsid ,
QNA_BBSID as qnaBbsid,
NEWS_BBSID as newsBbsid,
LIBRARY_BBSID as libraryBbsid
FROM SITE_MAIN_BBS
WHERE 1=1
</select>
<select id="BBSAttributeManageDAO.selectMenuBbs" parameterClass="BoardMasterVO" resultClass="BoardMasterVO" >
<![CDATA[
SELECT
BBS_ID AS bbsId,
BBS_TY_CODE AS bbsTyCode ,
BBS_ATTRB_CODE AS bbsAttrbCode ,
BBS_NM AS bbsNm ,
MENU_NO AS menuNo,
BBS_SORT AS bbsSort
FROM
LETTNBBSMASTER
WHERE MENU_NO = #menuNo#
]]>
</select>
<update id="BBSAttributeManageDAO.deleteMenuBbs" parameterClass="BoardMasterVO">
<![CDATA[
UPDATE LETTNBBSMASTER SET
MENU_NO = '',
BBS_SORT = 0
WHERE MENU_NO = #menuNo#
]]>
</update>
<update id="BBSAttributeManageDAO.updateMenuBbs" parameterClass="BoardMasterVO">
UPDATE LETTNBBSMASTER SET
MENU_NO = #menuNo#,
BBS_SORT = #bbsSort#
WHERE BBS_ID = #bbsId#
</update>
<select id="BBSAttributeManageDAO.selectBBSMenuByUrl" parameterClass="BoardMasterVO" resultClass="BoardMasterVO" >
SELECT A.BBS_ID AS bbsId
, A.BBS_NM AS bbsNm
, A.BBS_SORT AS bbsSort
, C.MENU_NM AS menuNm
, C.MENU_NO AS menuNo
, A.VIEWS_YN AS viewsYn
FROM LETTNBBSMASTER A INNER JOIN LETTNPROGRMLIST B ON A.MENU_NO = B.PROGRM_FILE_NM
AND B.URL = #url#
LEFT OUTER JOIN LETTNMENUINFO C ON B.PROGRM_FILE_NM = C.PROGRM_FILE_NM
ORDER BY A.BBS_SORT
</select>
<update id="BBSAttributeManageDAO.deleteMenuNo" parameterClass="BoardMasterVO">
UPDATE LETTNBBSMASTER SET
MENU_NO = null,
BBS_SORT = 0
WHERE MENU_NO = #menuNo#
</update>
<select id="BBSAttributeManageDAO.selectBbsIdByNttId" parameterClass="boardVO" resultClass="BoardMasterVO" >
SELECT BBS_ID AS bbsId ,
NTT_ID AS nttId FROM LETTNBBS A
WHERE A.NTT_ID = #nttId#
</select>
<select id="BBSAttributeManageDAO.selectBbsAdmin" parameterClass="boardVO" resultClass="boardVO" >
SELECT BBS_ID AS bbsId
,BBS_NM AS bbsNm
,BBS_SORT AS bbsSort
FROM LETTNBBSMASTER
WHERE BBS_ID = 'BBSMSTR_000000000632' ;
</select>
</sqlMap>

View File

@ -0,0 +1,735 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="BBSMaster">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="BoardMasterVO" type="kcc.let.cop.bbs.service.BoardMasterVO"/>
<typeAlias alias="BoardMaster" type="kcc.let.cop.bbs.service.BoardMaster"/>
<typeAlias alias="boardVO" type="kcc.let.cop.bbs.service.BoardVO"/>
<typeAlias alias="ComDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<resultMap id="boardMasterList" class="kcc.let.cop.bbs.service.BoardMasterVO">
<result property="bbsId" column="BBS_ID"/>
<result property="bbsTyCode" column="BBS_TY_CODE"/>
<result property="bbsTyCodeNm" column="BBS_TY_CODE_NM"/>
<result property="bbsAttrbCode" column="BBS_ATTRB_CODE"/>
<result property="bbsAttrbCodeNm" column="BBS_ATTRB_CODE_NM"/>
<result property="bbsNm" column="BBS_NM"/>
<result property="tmplatId" column="TMPLAT_ID"/>
<result property="useAt" column="USE_AT"/>
<result property="useAtTxt" column="USE_AT_TXT"/>
<result property="frstRegisterPnttm" column="FRST_REGIST_PNTTM"/>
<result property="totCnt" column="TOTCNT"/>
<result property="newCnt" column="NEWCNT"/>
<result property="writeYn" column="WRITE_YN"/>
<result property="menuNm" column="MENU_NM"/>
</resultMap>
<resultMap id="boardMasterDetail" class="kcc.let.cop.bbs.service.BoardMasterVO">
<result property="bbsId" column="BBS_ID"/>
<result property="bbsTyCode" column="BBS_TY_CODE"/>
<result property="bbsAttrbCode" column="BBS_ATTRB_CODE"/>
<result property="bbsNm" column="BBS_NM"/>
<result property="bbsIntrcn" column="BBS_INTRCN"/>
<result property="replyPosblAt" column="REPLY_POSBL_AT"/>
<result property="fileAtchPosblAt" column="FILE_ATCH_POSBL_AT"/>
<result property="posblAtchFileNumber" column="ATCH_POSBL_FILE_NUMBER"/>
<result property="posblAtchFileSize" column="ATCH_POSBL_FILE_SIZE"/>
<result property="tmplatId" column="TMPLAT_ID"/>
<result property="frstRegisterId" column="FRST_REGISTER_ID"/>
<result property="frstRegisterNm" column="FRST_REGISTER_NM"/>
<result property="frstRegisterPnttm" column="FRST_REGIST_PNTTM"/>
<result property="bbsTyCodeNm" column="BBS_TY_CODE_NM"/>
<result property="bbsAttrbCodeNm" column="BBS_ATTRB_CODE_NM"/>
<result property="tmplatNm" column="TMPLAT_NM"/>
<result property="authFlag" column="AUTH_FLAG"/>
<result property="tmplatCours" column="TMPLAT_COURS"/>
<result property="listNum" column="LIST_NUM" nullValue="0" />
<result property="pageNum" column="PAGE_NUM" nullValue="0" />
<result property="titleNum" column="TITLE_NUM" nullValue="0" />
<result property="addYn" column="ADD_YN" nullValue="" />
<result property="noticeYn" column="NOTICE_YN" nullValue="" />
<result property="passwordYn" column="PASSWORD_YN" nullValue="" />
<result property="openYn" column="OPEN_YN" nullValue="" />
<result property="regidayYn" column="REGIDAY_YN" nullValue="" />
<result property="regierYn" column="REGIER_YN" nullValue="" />
<result property="ipYn" column="IP_YN" nullValue="" />
<result property="manageAuth" column="MANAGE_AUTH" nullValue="" />
<result property="noticeAuth" column="NOTICE_AUTH" nullValue="" />
<result property="listAuth" column="LIST_AUTH" nullValue="" />
<result property="viewAuth" column="VIEW_AUTH" nullValue="" />
<result property="writeAuth" column="WRITE_AUTH" nullValue="" />
<result property="replyAuth" column="REPLY_AUTH" nullValue="" />
<result property="addAuth" column="ADD_AUTH" nullValue="" />
<result property="fileatchAuth" column="FILEATCH_AUTH" nullValue="" />
<result property="deleteAuth" column="DELETE_AUTH" nullValue="" />
<result property="viewsYn" column="VIEWS_YN" nullValue="" />
<result property="useAt" column="USE_AT" nullValue="" />
<result property="bbsDc" column="BBS_DC" nullValue="" />
<result property="menuCours" column="MENU_COURS" nullValue="" />
<result property="firstDeptMenuNo" column="FIRST_DEPT_MENU_NO" nullValue="" />
<result property="thumbAtchFileYn" column="THUMB_ATCH_FILE_YN" nullValue="" />
<result property="seCmmnCdId" column="SE_CMMN_CD_ID" nullValue="" />
<result property="koglCnYn" column="KOGL_CN_YN" nullValue="" />
<result property="linkUrlYn" column="LINK_URL_YN" nullValue="" />
<result property="ntceDateYn" column="NTCE_DATE_YN" nullValue="" />
<result property="writeYn" column="WRITE_YN" nullValue="" />
<result property="menuNm" column="MENU_NM" nullValue="" />
<result property="menuNo" column="MENU_NO" nullValue="" />
<result property="secretYn" column="SECRET_YN" nullValue="" />
</resultMap>
<resultMap id="boardMasterAll" class="kcc.let.cop.bbs.service.BoardMasterVO">
<result property="bbsId" column="BBS_ID"/>
<result property="bbsTyCode" column="BBS_TY_CODE"/>
<result property="bbsAttrbCode" column="BBS_ATTRB_CODE"/>
<result property="bbsNm" column="BBS_NM"/>
<result property="tmplatId" column="TMPLAT_ID"/>
</resultMap>
<select id="BBSAttributeManageDAO.selectBBSMasterInfs" parameterClass="BoardMasterVO" resultMap="boardMasterList" >
/* BBSAttributeManageDAO.selectBBSMasterInfs */
<![CDATA[
SELECT
a.BBS_ID, a.BBS_TY_CODE, b.CODE_NM as BBS_TY_CODE_NM,
a.BBS_ATTRB_CODE, c.CODE_NM as BBS_ATTRB_CODE_NM, a.BBS_NM,
a.TMPLAT_ID, a.USE_AT,
a.WRITE_YN,
DECODE(a.USE_AT , 'N', '미사용', '사용') USE_AT_TXT ,
TO_CHAR(a.FRST_REGIST_PNTTM, 'YYYY-MM-DD') AS FRST_REGIST_PNTTM,
NVL(d.TOTCNT, 0) AS TOTCNT,
NVL(d.NEWCNT, 0) AS NEWCNT,
a.WRITE_YN,
DECODE(e.MENU_NM,'root' , '', e.MENU_NM) AS MENU_NM
FROM
LETTNBBSMASTER a
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM004' AND USE_AT='Y') b
ON a.BBS_TY_CODE = b.CODE
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM009' AND USE_AT='Y') c
ON a.BBS_ATTRB_CODE = c.CODE
LEFT OUTER JOIN
(SELECT BBS_ID,
COUNT(1) AS TOTCNT,
/*
COUNT(IF(DATEDIFF(FRST_REGIST_PNTTM, NOW()) <= 7, BBS_ID, NULL)) as NEWCNT
*/
COUNT(
CASE
WHEN CAST(FRST_REGIST_PNTTM AS date)- SYSDATE <= 7 THEN BBS_ID ELSE NULL
END
) AS NEWCNT
/*COUNT(IF(TIMESTAMPDIFF(DAY, FRST_REGIST_PNTTM, NOW()) <= 7, BBS_ID, NULL)) as NEWCNT*/
FROM (SELECT BBS_ID, FRST_REGIST_PNTTM, USE_AT
FROM LETTNBBS WHERE USE_AT = 'Y') z GROUP BY z.BBS_ID
) d
ON a.BBS_ID = d.BBS_ID
LEFT OUTER JOIN LETTNMENUINFO e ON a.MENU_NO = e.MENU_NO
WHERE 1=1
]]>
<isNotEmpty property="useAt">
AND a.USE_AT = #useAt#
</isNotEmpty>
<isEqual prepend="AND" property="searchCnd" compareValue="0">
<![CDATA[( a.BBS_NM LIKE '%'||#searchWrd#||'%' or MENU_NM LIKE '%'||#searchWrd#||'%' ) ]]>
</isEqual>
<isEqual prepend="AND" property="searchCnd" compareValue="1">
<![CDATA[ b.CODE_NM LIKE '%'||#searchWrd#||'%' ]]>
</isEqual>
<isNotEmpty prepend="AND" property="bbsMngId">
<![CDATA[ a.BBS_ID IN (SELECT BBS_ID FROM LETTNBBSMNG WHERE EMPLYR_ID = #bbsMngId#) ]]>
</isNotEmpty>
<isNotEmpty property="bbsTyCode">
AND a.BBS_TY_CODE = #bbsTyCode#
</isNotEmpty>
<isNotEmpty property="seCmmnCdId">
AND a.SE_CMMN_CD_ID = #seCmmnCdId#
</isNotEmpty>
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<select id="BBSAttributeManageDAO.selectBBSMasterInfsCnt" parameterClass="BoardMasterVO" resultClass="java.lang.Integer" >
<![CDATA[
SELECT
COUNT(a.BBS_ID)
FROM
LETTNBBSMASTER a
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM004' AND USE_AT='Y') b
ON a.BBS_TY_CODE = b.CODE
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM009' AND USE_AT='Y') c
ON a.BBS_ATTRB_CODE = c.CODE
LEFT OUTER JOIN LETTNMENUINFO e ON a.MENU_NO = e.MENU_NO
WHERE 1=1
]]>
<isNotEmpty property="useAt">
AND a.USE_AT = #useAt#
</isNotEmpty>
<isEqual prepend="AND" property="searchCnd" compareValue="0">
<![CDATA[( a.BBS_NM LIKE '%'||#searchWrd#||'%' or MENU_NM LIKE '%'||#searchWrd#||'%' ) ]]>
</isEqual>
<isEqual prepend="AND" property="searchCnd" compareValue="1">
<![CDATA[ b.CODE_NM LIKE '%'||#searchWrd#||'%' ]]>
</isEqual>
<isNotEmpty prepend="AND" property="bbsMngId">
<![CDATA[ a.BBS_ID IN (SELECT BBS_ID FROM LETTNBBSMNG WHERE EMPLYR_ID = #bbsMngId#) ]]>
</isNotEmpty>
<isNotEmpty property="searchConditionSite"> /* 수퍼 관리자가 조회 */
AND a.SITE_ID = #searchConditionSite#
</isNotEmpty>
</select>
<update id="BBSAttributeManageDAO.deleteBBSMasterInf" parameterClass="BoardMaster">
<![CDATA[
UPDATE LETTNBBSMASTER SET
USE_AT = 'N',
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = SYSDATE
WHERE BBS_ID = #bbsId#
]]>
</update>
<select id="BBSAttributeManageDAO.selectAllBBSMaster" parameterClass="BoardMasterVO" resultMap="boardMasterAll" >
<![CDATA[
SELECT
BBS_ID, BBS_TY_CODE, BBS_ATTRB_CODE, BBS_NM, TMPLAT_ID
FROM
LETTNBBSMASTER
WHERE USE_AT = 'Y'
]]>
</select>
<select id="BBSAttributeManageDAO.selectAllBdMstrByTrget" parameterClass="BoardMasterVO" resultMap="boardMasterAll" >
<![CDATA[
SELECT
a.BBS_ID, a.BBS_TY_CODE, a.BBS_ATTRB_CODE, a.BBS_NM, a.TMPLAT_ID
FROM
LETTNBBSMASTER a, LETTNBBSUSE b
WHERE
a.BBS_ID = b.BBS_ID
AND
b.TRGET_ID = #trgetId#
AND
a.USE_AT = 'Y' AND b.USE_AT = 'Y'
ORDER BY a.BBS_ID
]]>
</select>
<select id="BBSAttributeManageDAO.selectBdMstrListByTrget" parameterClass="BoardMasterVO" resultMap="boardMasterList" >
<![CDATA[
/* no use */
SELECT
a.BBS_ID, a.BBS_TY_CODE, b.CODE_NM as BBS_TY_CODE_NM,
a.BBS_ATTRB_CODE, c.CODE_NM as BBS_ATTRB_CODE_NM, a.BBS_NM,
a.TMPLAT_ID, a.USE_AT, IF(a.USE_AT = 'N', '미사용', '사용') USE_AT_TXT ,
DATE_FORMAT(a.FRST_REGIST_PNTTM, '%Y-%m-%d') as FRST_REGIST_PNTTM
FROM
LETTNBBSMASTER a
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM004' AND USE_AT='Y') b
ON a.BBS_TY_CODE = b.CODE
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM009' AND USE_AT='Y') c
ON a.BBS_ATTRB_CODE = c.CODE,
LETTNBBSUSE d
WHERE
a.BBS_ID = d.BBS_ID
AND
d.TRGET_ID = #trgetId#
]]>
<isEqual prepend="AND" property="searchCnd" compareValue="0">
<![CDATA[ a.BBS_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCnd" compareValue="1">
<![CDATA[ b.CODE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<![CDATA[
ORDER BY a.FRST_REGIST_PNTTM DESC
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
]]>
</select>
<select id="BBSAttributeManageDAO.selectBdMstrListCntByTrget" parameterClass="BoardMasterVO" resultClass="java.lang.Integer" >
<![CDATA[
/* no use */
SELECT
COUNT(a.BBS_ID)
FROM
LETTNBBSMASTER a
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM004' AND USE_AT='Y') b
ON a.BBS_TY_CODE = b.CODE
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM009' AND USE_AT='Y') c
ON a.BBS_ATTRB_CODE = c.CODE,
LETTNBBSUSE d
WHERE
a.BBS_ID = d.BBS_ID
AND
d.TRGET_ID = #trgetId#
]]>
<isEqual prepend="AND" property="searchCnd" compareValue="0">
<![CDATA[ a.BBS_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCnd" compareValue="1">
<![CDATA[ b.CODE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
</select>
<select id="BBSAttributeManageDAO.selectNotUsedBdMstrList" parameterClass="BoardMasterVO" resultMap="boardMasterList" >
<![CDATA[
/* no use */
SELECT
a.BBS_ID, a.BBS_TY_CODE, b.CODE_NM as BBS_TY_CODE_NM,
a.BBS_ATTRB_CODE, c.CODE_NM as BBS_ATTRB_CODE_NM, a.BBS_NM,
a.TMPLAT_ID, a.USE_AT, IF(a.USE_AT = 'N', '미사용', '사용') USE_AT_TXT ,
DATE_FORMAT(a.FRST_REGIST_PNTTM, '%Y-%m-%d') as FRST_REGIST_PNTTM
FROM
LETTNBBSMASTER a
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM004' AND USE_AT='Y') b
ON a.BBS_TY_CODE = b.CODE
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM009' AND USE_AT='Y') c
ON a.BBS_ATTRB_CODE = c.CODE
WHERE a.USE_AT = 'Y'
AND a.BBS_ID NOT IN (SELECT BBS_ID FROM LETTNBBSUSE WHERE USE_AT = 'Y')
]]>
<isEqual prepend="AND" property="searchCnd" compareValue="0">
<![CDATA[ a.BBS_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCnd" compareValue="1">
<![CDATA[ b.CODE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<![CDATA[
ORDER BY a.FRST_REGIST_PNTTM DESC
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
]]>
</select>
<select id="BBSAttributeManageDAO.selectNotUsedBdMstrListCnt" parameterClass="BoardMasterVO" resultClass="java.lang.Integer" >
<![CDATA[
/* no use */
SELECT
COUNT(a.BBS_ID)
FROM
LETTNBBSMASTER a
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM004' AND USE_AT='Y') b
ON a.BBS_TY_CODE = b.CODE
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM009' AND USE_AT='Y') c
ON a.BBS_ATTRB_CODE = c.CODE
WHERE a.USE_AT = 'Y'
AND a.BBS_ID NOT IN (SELECT BBS_ID FROM LETTNBBSUSE WHERE USE_AT = 'Y')
]]>
<isEqual prepend="AND" property="searchCnd" compareValue="0">
<![CDATA[ a.BBS_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCnd" compareValue="1">
<![CDATA[ b.CODE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
</select>
<insert id="BBSAttributeManageDAO.insertBBSMasterInf" parameterClass="BoardMaster" >
INSERT INTO LETTNBBSMASTER
(BBS_ID, BBS_TY_CODE, BBS_ATTRB_CODE, BBS_NM, BBS_INTRCN,
REPLY_POSBL_AT, FILE_ATCH_POSBL_AT, ATCH_POSBL_FILE_NUMBER,
ATCH_POSBL_FILE_SIZE, TMPLAT_ID, USE_AT,
FRST_REGISTER_ID, FRST_REGIST_PNTTM, BBS_DC,
LIST_NUM, PAGE_NUM, TITLE_NUM,
ADD_YN, NOTICE_YN, PASSWORD_YN, OPEN_YN,
REGIDAY_YN, REGIER_YN, IP_YN, MANAGE_AUTH,
NOTICE_AUTH, LIST_AUTH, VIEW_AUTH, WRITE_AUTH,
REPLY_AUTH, ADD_AUTH, FILEATCH_AUTH, DELETE_AUTH ,
<isEqual property="bbsTyCode" compareValue="BBST07">
MENU_NO,
</isEqual>
VIEWS_YN,SE_CMMN_CD_ID, SECRET_YN
)
VALUES
( #bbsId#, #bbsTyCode#, #bbsAttrbCode#, #bbsNm#, #bbsIntrcn#,
#replyPosblAt#, #fileAtchPosblAt#, #posblAtchFileNumber#,
#posblAtchFileSize#, #tmplatId#, #useAt#, #frstRegisterId#, SYSDATE, #bbsDc#,
#listNum#, #pageNum#, #titleNum#,
#addYn#, #noticeYn#, #passwordYn#, #openYn#,
#regidayYn#, #regierYn#, #ipYn#, #manageAuth#,
#noticeAuth#, #listAuth#, #viewAuth#, #writeAuth#,
#replyAuth#, #addAuth#, #fileatchAuth#, #deleteAuth# ,
<isEqual property="bbsTyCode" compareValue="BBST07">
'9620000', /**사전정보공표 */
</isEqual>
#viewsYn#,#seCmmnCdId#,#secretYn#
)
</insert>
<select id="BBSAttributeManageDAO.selectBBSMasterInf" parameterClass="BoardMaster" resultMap="boardMasterDetail" >
/* 임시.*NOT_SQL_LOG.* - BBSAttributeManageDAO.selectBBSMasterInf */
<![CDATA[
SELECT
a.BBS_ID, a.BBS_TY_CODE, b.CODE_NM as BBS_TY_CODE_NM, a.BBS_INTRCN,
a.BBS_ATTRB_CODE, c.CODE_NM as BBS_ATTRB_CODE_NM, a.BBS_NM,
a.TMPLAT_ID, d.CODE_NM as TMPLAT_NM, d.CODE_DC as TMPLAT_COURS, a.FILE_ATCH_POSBL_AT, a.ATCH_POSBL_FILE_NUMBER,
a.ATCH_POSBL_FILE_SIZE, a.REPLY_POSBL_AT, a.FRST_REGISTER_ID, e.USER_NM as FRST_REGISTER_NM,
a.USE_AT,
/*
DATE_FORMAT(a.FRST_REGIST_PNTTM, '%Y-%m-%d') as FRST_REGIST_PNTTM,
*/
TO_CHAR(a.FRST_REGIST_PNTTM, 'YYYY-MM-DD') as FRST_REGIST_PNTTM,
'' as AUTH_FLAG, /* 게시판사용 테이블 사용안함 */
a.LIST_NUM ,
a.PAGE_NUM,
a.TITLE_NUM,
a.REPLY_YN,
a.ADD_YN,
a.NOTICE_YN,
a.PASSWORD_YN,
a.OPEN_YN,
a.REGIDAY_YN,
a.REGIER_YN,
a.IP_YN,
a.MANAGE_AUTH,
a.NOTICE_AUTH,
a.LIST_AUTH,
a.VIEW_AUTH,
a.WRITE_AUTH,
a.REPLY_AUTH,
a.ADD_AUTH,
a.FILEATCH_AUTH,
a.DELETE_AUTH ,
a.VIEWS_YN,
a.BBS_DC,
a.SECRET_YN,
'' as MENU_COURS,
'' as FIRST_DEPT_MENU_NO,
/*REPLACE(GETMENUCOURS(h.MENU_NO), '|', ' > ') as MENU_COURS,*/
/*get1DepthMenuNo(h.MENU_NO) as FIRST_DEPT_MENU_NO,*/
/*
(
SELECT a.menu_no
FROM (
SELECT @r AS menuNo
FROM (
SELECT @r := ''
) vars, LETTNMENUINFO a
WHERE @r <> 0
) func
JOIN LETTNMENUINFO a
ON func.menuNo = a.MENU_NO
ORDER BY a.MENU_NO
LIMIT 1
) AS FIRST_DEPT_MENU_NO,
*/
a.THUMB_ATCH_FILE_YN,
a.SE_CMMN_CD_ID,
a.KOGL_CN_YN,
a.LINK_URL_YN,
a.NTCE_DATE_YN,
a.WRITE_YN,
h.MENU_NM,
h.MENU_NO
FROM
LETTNBBSMASTER a
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM004' AND USE_AT='Y') b
ON a.BBS_TY_CODE = b.CODE
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM009' AND USE_AT='Y') c
ON a.BBS_ATTRB_CODE = c.CODE
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM, CODE_DC FROM LETTCCMMNDETAILCODE WHERE CODE_ID = 'COM005' AND USE_AT='Y') d
ON a.TMPLAT_ID = d.CODE
LEFT OUTER JOIN COMVNUSERMASTER e
ON a.FRST_REGISTER_ID = e.ESNTL_ID
LEFT OUTER JOIN LETTNPROGRMLIST f
ON TO_CHAR(a.MENU_NO) = f.PROGRM_FILE_NM
LEFT OUTER JOIN LETTNMENUINFO h
ON f.PROGRM_FILE_NM = h.PROGRM_FILE_NM
WHERE a.BBS_ID = #bbsId#
]]>
</select>
<update id="BBSAttributeManageDAO.updateBBSMasterInf" parameterClass="BoardMaster">
UPDATE LETTNBBSMASTER SET
BBS_NM = #bbsNm#,
BBS_INTRCN = #bbsIntrcn#,
BBS_TY_CODE = #bbsTyCode#,
FILE_ATCH_POSBL_AT = #fileAtchPosblAt#,
ATCH_POSBL_FILE_NUMBER = #posblAtchFileNumber#,
ATCH_POSBL_FILE_SIZE = #posblAtchFileSize#,
TMPLAT_ID = #tmplatId#,
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = SYSDATE,
REPLY_POSBL_AT = #replyPosblAt#,
USE_AT = #useAt# ,
LIST_NUM = #listNum#,
PAGE_NUM = #pageNum#,
TITLE_NUM = #titleNum#,
ADD_YN = #addYn#,
NOTICE_YN = #noticeYn#,
PASSWORD_YN = #passwordYn#,
OPEN_YN = #openYn#,
REGIDAY_YN = #regidayYn#,
REGIER_YN = #regierYn#,
IP_YN = #ipYn#,
MANAGE_AUTH = #manageAuth#,
NOTICE_AUTH = #noticeAuth#,
LIST_AUTH = #listAuth#,
VIEW_AUTH = #viewAuth#,
WRITE_AUTH = #writeAuth#,
REPLY_AUTH = #replyAuth#,
ADD_AUTH = #addAuth#,
FILEATCH_AUTH = #fileatchAuth#,
DELETE_AUTH = #deleteAuth#,
VIEWS_YN = #viewsYn#,
<isNotEmpty property="writeYn">
WRITE_YN = #writeYn# ,
</isNotEmpty>
<isNotEmpty property="thumbAtchFileYn">
THUMB_ATCH_FILE_YN = #thumbAtchFileYn# ,
</isNotEmpty>
<isNotEmpty property="seCmmnCdId">
SE_CMMN_CD_ID = #seCmmnCdId#,
</isNotEmpty>
<isNotEmpty property="koglCnYn">
KOGL_CN_YN = #koglCnYn#,
</isNotEmpty>
<isNotEmpty property="linkUrlYn">
LINK_URL_YN = #linkUrlYn#,
</isNotEmpty>
<isNotEmpty property="ntceDateYn">
NTCE_DATE_YN = #ntceDateYn#,
</isNotEmpty>
<isEqual property="bbsTyCode" compareValue="BBST07">
MENU_NO = '9620000', /**사전정보공표 */
</isEqual>
BBS_DC = #bbsDc#,
SECRET_YN = #secretYn#
WHERE BBS_ID = #bbsId#
</update>
<select id="BBSAttributeManageDAO.selectBBSMngIdList" parameterClass="BoardMaster" resultClass="egovMap" >
<![CDATA[
SELECT a.MNG_ID,
a.EMPLYR_ID,
b.EMAIL_ADRES ,
b.ESNTL_ID
FROM LETTNBBSMNG a
INNER JOIN LETTNEMPLYRINFO b
ON a.EMPLYR_ID = b.EMPLYR_ID
WHERE a.BBS_ID = #bbsId#
ORDER BY a.EMPLYR_ID
]]>
</select>
<insert id="BBSAttributeManageDAO.insertBBSMngInf" parameterClass="BoardMaster">
<![CDATA[
INSERT INTO LETTNBBSMNG
(MNG_ID, BBS_ID, EMPLYR_ID)
VALUES
(#mngId#, #bbsId#, #bbsMngId#)
]]>
</insert>
<select id="BBSAttributeManageDAO.selectBBSMaxMngId" resultClass="java.lang.Integer">
<![CDATA[
SELECT IFNULL(MAX(MNG_ID), 0) + 1 FROM LETTNBBSMNG
]]>
</select>
<select id="BBSAttributeManageDAO.selectBBSMngInfCnt" parameterClass="BoardMaster" resultClass="java.lang.Integer" >
<![CDATA[
SELECT COUNT(1)
FROM LETTNBBSMNG
WHERE BBS_ID = #bbsId#
AND EMPLYR_ID = #bbsMngId#
]]>
</select>
<delete id="BBSAttributeManageDAO.deleteBBSMngInf" parameterClass="BoardMaster">
<![CDATA[
DELETE FROM LETTNBBSMNG
WHERE MNG_ID = #mngId#
]]>
</delete>
<select id="BBSAttributeManageDAO.selectBBSIdList" parameterClass="ComDefaultVO" resultClass="egovMap" >
SELECT A.BBS_ID
, A.BBS_NM
, CASE WHEN B.MENU_NM = 'root' THEN '' ELSE B.MENU_NM END AS MENU_NM
FROM LETTNBBSMASTER A
LEFT OUTER JOIN LETTNMENUINFO B
ON A.MENU_NO = B.MENU_NO
WHERE USE_AT = 'Y'
AND BBS_NM LIKE '%'|| #searchKeyword# ||'%'
ORDER BY BBS_NM
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY
</select>
<select id="BBSAttributeManageDAO.selectBBSIdListCnt" parameterClass="ComDefaultVO" resultClass="java.lang.Integer" >
SELECT COUNT(1)
FROM LETTNBBSMASTER A
WHERE USE_AT = 'Y'
AND BBS_NM LIKE '%'|| #searchKeyword# ||'%'
<isNotEmpty property="siteId">
AND SITE_ID = #siteId#
</isNotEmpty>
</select>
<insert id="BBSAttributeManageDAO.insupNoticeBbsid" parameterClass="BoardMaster">
<![CDATA[
INSERT INTO SITE_MAIN_BBS (SITE_ID, NOTICE_BBSID) VALUES (#siteId#, #noticeBbsid#)
ON DUPLICATE KEY UPDATE SITE_ID=#siteId#, NOTICE_BBSID= #noticeBbsid#
]]>
</insert>
<insert id="BBSAttributeManageDAO.insupQnaBbsid" parameterClass="BoardMaster">
<![CDATA[
INSERT INTO SITE_MAIN_BBS (SITE_ID, QNA_BBSID) VALUES (#siteId#, #qnaBbsid#)
ON DUPLICATE KEY UPDATE SITE_ID=#siteId#, QNA_BBSID= #qnaBbsid#
]]>
</insert>
<insert id="BBSAttributeManageDAO.insupNewsBbsid" parameterClass="BoardMaster">
<![CDATA[
INSERT INTO SITE_MAIN_BBS (SITE_ID, NEWS_BBSID) VALUES (#siteId#, #newsBbsid#)
ON DUPLICATE KEY UPDATE SITE_ID=#siteId#, NEWS_BBSID= #newsBbsid#
]]>
</insert>
<insert id="BBSAttributeManageDAO.insupLibraryBbsid" parameterClass="BoardMaster">
<![CDATA[
INSERT INTO SITE_MAIN_BBS (SITE_ID, LIBRARY_BBSID) VALUES (#siteId#, #libraryBbsid#)
ON DUPLICATE KEY UPDATE SITE_ID=#siteId#, LIBRARY_BBSID= #libraryBbsid#
]]>
</insert>
<select id="BBSAttributeManageDAO.getSiteMainNbsVO" parameterClass="BoardMasterVO" resultClass="BoardMasterVO" >
SELECT NOTICE_BBSID as noticeBbsid ,
QNA_BBSID as qnaBbsid,
NEWS_BBSID as newsBbsid,
LIBRARY_BBSID as libraryBbsid
FROM SITE_MAIN_BBS
WHERE 1=1
</select>
<select id="BBSAttributeManageDAO.selectMenuBbs" parameterClass="BoardMasterVO" resultClass="BoardMasterVO" >
<![CDATA[
SELECT
BBS_ID AS bbsId,
BBS_TY_CODE AS bbsTyCode ,
BBS_ATTRB_CODE AS bbsAttrbCode ,
BBS_NM AS bbsNm ,
MENU_NO AS menuNo,
BBS_SORT AS bbsSort
FROM
LETTNBBSMASTER
WHERE MENU_NO = #menuNo#
]]>
</select>
<update id="BBSAttributeManageDAO.deleteMenuBbs" parameterClass="BoardMasterVO">
<![CDATA[
UPDATE LETTNBBSMASTER SET
MENU_NO = '',
BBS_SORT = 0
WHERE MENU_NO = #menuNo#
]]>
</update>
<update id="BBSAttributeManageDAO.updateMenuBbs" parameterClass="BoardMasterVO">
UPDATE LETTNBBSMASTER SET
MENU_NO = #menuNo#,
BBS_SORT = #bbsSort#
WHERE BBS_ID = #bbsId#
</update>
<select id="BBSAttributeManageDAO.selectBBSMenuByUrl" parameterClass="BoardMasterVO" resultClass="BoardMasterVO" >
SELECT A.BBS_ID AS bbsId
, A.BBS_NM AS bbsNm
, A.BBS_SORT AS bbsSort
, C.MENU_NM AS menuNm
, C.MENU_NO AS menuNo
, A.VIEWS_YN AS viewsYn
FROM LETTNBBSMASTER A INNER JOIN LETTNPROGRMLIST B ON A.MENU_NO = B.PROGRM_FILE_NM
AND B.URL = #url#
LEFT OUTER JOIN LETTNMENUINFO C ON B.PROGRM_FILE_NM = C.PROGRM_FILE_NM
ORDER BY A.BBS_SORT
</select>
<update id="BBSAttributeManageDAO.deleteMenuNo" parameterClass="BoardMasterVO">
UPDATE LETTNBBSMASTER SET
MENU_NO = null,
BBS_SORT = 0
WHERE MENU_NO = #menuNo#
</update>
<select id="BBSAttributeManageDAO.selectBbsIdByNttId" parameterClass="boardVO" resultClass="BoardMasterVO" >
SELECT BBS_ID AS bbsId ,
NTT_ID AS nttId FROM LETTNBBS A
WHERE A.NTT_ID = #nttId#
</select>
<select id="BBSAttributeManageDAO.selectBbsAdmin" parameterClass="boardVO" resultClass="boardVO" >
SELECT BBS_ID AS bbsId
,BBS_NM AS bbsNm
,BBS_SORT AS bbsSort
FROM LETTNBBSMASTER
WHERE BBS_ID = 'BBSMSTR_000000000632' ;
</select>
</sqlMap>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,158 @@
<?xml version="1.0" encoding="UTF-8"?><!--
수정일 수정자 수정내용
========= ======= =================================================
2011.9.7 정진오 resultMap id="commentDetail" : FRST_REGISTER_ID -> FRST_REGISTER_NM
"selectComment" : FRST_REGISTER_ID -> FRST_REGISTER_NM
오라클 SQL MAP과 일치하도록 하기 위해 수정함
2011.10.18 서준식 insertComment : select key 태그 삭제
-->
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="ArticleComment">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="Comment" type="kcc.let.cop.cmt.service.Comment"/>
<typeAlias alias="CommentVO" type="kcc.let.cop.cmt.service.CommentVO"/>
<resultMap id="commentList" class="kcc.let.cop.cmt.service.CommentVO">
<result property="commentNo" column="ANSWER_NO"/>
<result property="nttId" column="NTT_ID"/>
<result property="bbsId" column="BBS_ID"/>
<result property="wrterId" column="WRTER_ID"/>
<result property="wrterNm" column="WRTER_NM"/>
<result property="commentPassword" column="PASSWORD"/>
<result property="commentCn" column="ANSWER"/>
<result property="useAt" column="USE_AT"/>
<result property="frstRegisterPnttm" column="FRST_REGIST_PNTTM"/>
<result property="frstRegisterNm" column="FRST_REGISTER_ID"/>
<result property="frstRegisterNm" column="FRST_REGISTER_ID"/>
<result property="mblDn" column="MBL_DN"/>
</resultMap>
<resultMap id="commentDetail" class="kcc.let.cop.cmt.service.CommentVO">
<result property="commentNo" column="ANSWER_NO"/>
<result property="nttId" column="NTT_ID"/>
<result property="bbsId" column="BBS_ID"/>
<result property="wrterId" column="WRTER_ID"/>
<result property="wrterNm" column="WRTER_NM"/>
<result property="commentPassword" column="PASSWORD"/>
<result property="commentCn" column="ANSWER"/>
<result property="useAt" column="USE_AT"/>
<result property="frstRegisterPnttm" column="FRST_REGIST_PNTTM"/>
<result property="frstRegisterNm" column="FRST_REGISTER_NM"/>
<result property="mblDn" column="MBL_DN"/>
</resultMap>
<select id="EgovArticleCommentDAO.selectArticleCommentListAll" parameterClass="CommentVO" resultMap="commentList">
/* EgovArticleCommentDAO.selectArticleCommentListAll */
SELECT
a.ANSWER_NO, a.NTT_ID, a.BBS_ID,
DECODE(a.MBL_DN , '', '0', '1') AS MBL_DN,
a.WRTER_NM, a.WRTER_ID, a.PASSWORD, a.ANSWER, a.USE_AT,
TO_CHAR(a.FRST_REGIST_PNTTM, 'YYYY-MM-DD HH24:MI:SS')
as FRST_REGIST_PNTTM,
b.USER_NM as FRST_REGISTER_ID
FROM
LETTNCOMMENT a
LEFT OUTER JOIN COMVNUSERMASTER b
ON a.FRST_REGISTER_ID = b.ESNTL_ID
WHERE
a.BBS_ID = #bbsId# AND a.NTT_ID = #nttId#
AND
a.USE_AT = 'Y'
ORDER BY a.FRST_REGIST_PNTTM ASC
</select>
<select id="EgovArticleCommentDAO.selectArticleCommentList" parameterClass="CommentVO" resultMap="commentList">
/* EgovArticleCommentDAO.selectArticleCommentList */
SELECT
a.ANSWER_NO, a.NTT_ID, a.BBS_ID,
DECODE(a.MBL_DN , '', '0', '1') AS MBL_DN,
a.WRTER_NM, a.WRTER_ID, a.PASSWORD, a.ANSWER, a.USE_AT,
TO_CHAR(a.FRST_REGIST_PNTTM, 'YYYY-MM-DD HH24:MI:SS')
as FRST_REGIST_PNTTM,
b.USER_NM as FRST_REGISTER_ID
FROM
LETTNCOMMENT a
LEFT OUTER JOIN COMVNUSERMASTER b
ON a.FRST_REGISTER_ID = b.ESNTL_ID
WHERE
a.BBS_ID = #bbsId# AND a.NTT_ID = #nttId#
AND
a.USE_AT = 'Y'
ORDER BY a.FRST_REGIST_PNTTM ASC
/*
LIMIT subRecordCountPerPage OFFSET subFirstIndex
*/
OFFSET #subFirstIndex# ROWS FETCH NEXT #subRecordCountPerPage# ROWS ONLY;
</select>
<select id="EgovArticleCommentDAO.selectArticleCommentListCnt" parameterClass="CommentVO" resultClass="java.lang.Integer">
SELECT
COUNT(ANSWER_NO)
FROM
LETTNCOMMENT
WHERE
BBS_ID = #bbsId# AND NTT_ID = #nttId#
AND
USE_AT = 'Y'
</select>
<insert id="EgovArticleCommentDAO.insertArticleComment" parameterClass="Comment">
INSERT INTO LETTNCOMMENT
(ANSWER_NO, NTT_ID, BBS_ID, WRTER_ID, WRTER_NM, PASSWORD,
ANSWER, USE_AT,
FRST_REGISTER_ID, FRST_REGIST_PNTTM, MBL_DN
)
VALUES
( #commentNo#, #nttId#, #bbsId#, #wrterId#, #wrterNm#, #commentPassword#,
#commentCn#, 'Y',
#frstRegisterId#, SYSDATE, #mblDn#
)
</insert>
<update id="EgovArticleCommentDAO.deleteArticleComment" parameterClass="CommentVO">
UPDATE LETTNCOMMENT
SET USE_AT = 'N'
WHERE ANSWER_NO = #commentNo#
</update>
<select id="EgovArticleCommentDAO.selectArticleCommentDetail" parameterClass="CommentVO" resultMap="commentDetail">
SELECT
a.ANSWER_NO, a.NTT_ID, a.BBS_ID,
a.WRTER_ID, a.WRTER_NM, a.PASSWORD, a.ANSWER, a.USE_AT,
TO_CHAR(a.FRST_REGIST_PNTTM, 'YYYY-MM-DD HH24:MI:SS')
as FRST_REGIST_PNTTM,
b.USER_NM as FRST_REGISTER_NM, a.MBL_DN
FROM
LETTNCOMMENT a
LEFT OUTER JOIN COMVNUSERMASTER b
ON a.FRST_REGISTER_ID = b.ESNTL_ID
WHERE
a.ANSWER_NO = #commentNo#
</select>
<update id="EgovArticleCommentDAO.updateArticleComment" parameterClass="Comment">
UPDATE LETTNCOMMENT SET
ANSWER = #commentCn#,
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = SYSDATE
WHERE ANSWER_NO = #commentNo#
</update>
</sqlMap>

View File

@ -0,0 +1,158 @@
<?xml version="1.0" encoding="UTF-8"?><!--
수정일 수정자 수정내용
========= ======= =================================================
2011.9.7 정진오 resultMap id="commentDetail" : FRST_REGISTER_ID -> FRST_REGISTER_NM
"selectComment" : FRST_REGISTER_ID -> FRST_REGISTER_NM
오라클 SQL MAP과 일치하도록 하기 위해 수정함
2011.10.18 서준식 insertComment : select key 태그 삭제
-->
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="ArticleComment">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="Comment" type="kcc.let.cop.cmt.service.Comment"/>
<typeAlias alias="CommentVO" type="kcc.let.cop.cmt.service.CommentVO"/>
<resultMap id="commentList" class="kcc.let.cop.cmt.service.CommentVO">
<result property="commentNo" column="ANSWER_NO"/>
<result property="nttId" column="NTT_ID"/>
<result property="bbsId" column="BBS_ID"/>
<result property="wrterId" column="WRTER_ID"/>
<result property="wrterNm" column="WRTER_NM"/>
<result property="commentPassword" column="PASSWORD"/>
<result property="commentCn" column="ANSWER"/>
<result property="useAt" column="USE_AT"/>
<result property="frstRegisterPnttm" column="FRST_REGIST_PNTTM"/>
<result property="frstRegisterNm" column="FRST_REGISTER_ID"/>
<result property="frstRegisterNm" column="FRST_REGISTER_ID"/>
<result property="mblDn" column="MBL_DN"/>
</resultMap>
<resultMap id="commentDetail" class="kcc.let.cop.cmt.service.CommentVO">
<result property="commentNo" column="ANSWER_NO"/>
<result property="nttId" column="NTT_ID"/>
<result property="bbsId" column="BBS_ID"/>
<result property="wrterId" column="WRTER_ID"/>
<result property="wrterNm" column="WRTER_NM"/>
<result property="commentPassword" column="PASSWORD"/>
<result property="commentCn" column="ANSWER"/>
<result property="useAt" column="USE_AT"/>
<result property="frstRegisterPnttm" column="FRST_REGIST_PNTTM"/>
<result property="frstRegisterNm" column="FRST_REGISTER_NM"/>
<result property="mblDn" column="MBL_DN"/>
</resultMap>
<select id="EgovArticleCommentDAO.selectArticleCommentListAll" parameterClass="CommentVO" resultMap="commentList">
/* EgovArticleCommentDAO.selectArticleCommentListAll */
SELECT
a.ANSWER_NO, a.NTT_ID, a.BBS_ID,
DECODE(a.MBL_DN , '', '0', '1') AS MBL_DN,
a.WRTER_NM, a.WRTER_ID, a.PASSWORD, a.ANSWER, a.USE_AT,
TO_CHAR(a.FRST_REGIST_PNTTM, 'YYYY-MM-DD HH24:MI:SS')
as FRST_REGIST_PNTTM,
b.USER_NM as FRST_REGISTER_ID
FROM
LETTNCOMMENT a
LEFT OUTER JOIN COMVNUSERMASTER b
ON a.FRST_REGISTER_ID = b.ESNTL_ID
WHERE
a.BBS_ID = #bbsId# AND a.NTT_ID = #nttId#
AND
a.USE_AT = 'Y'
ORDER BY a.FRST_REGIST_PNTTM ASC
</select>
<select id="EgovArticleCommentDAO.selectArticleCommentList" parameterClass="CommentVO" resultMap="commentList">
/* EgovArticleCommentDAO.selectArticleCommentList */
SELECT
a.ANSWER_NO, a.NTT_ID, a.BBS_ID,
DECODE(a.MBL_DN , '', '0', '1') AS MBL_DN,
a.WRTER_NM, a.WRTER_ID, a.PASSWORD, a.ANSWER, a.USE_AT,
TO_CHAR(a.FRST_REGIST_PNTTM, 'YYYY-MM-DD HH24:MI:SS')
as FRST_REGIST_PNTTM,
b.USER_NM as FRST_REGISTER_ID
FROM
LETTNCOMMENT a
LEFT OUTER JOIN COMVNUSERMASTER b
ON a.FRST_REGISTER_ID = b.ESNTL_ID
WHERE
a.BBS_ID = #bbsId# AND a.NTT_ID = #nttId#
AND
a.USE_AT = 'Y'
ORDER BY a.FRST_REGIST_PNTTM ASC
/*
LIMIT subRecordCountPerPage OFFSET subFirstIndex
*/
OFFSET #subFirstIndex# ROWS FETCH NEXT #subRecordCountPerPage# ROWS ONLY;
</select>
<select id="EgovArticleCommentDAO.selectArticleCommentListCnt" parameterClass="CommentVO" resultClass="java.lang.Integer">
SELECT
COUNT(ANSWER_NO)
FROM
LETTNCOMMENT
WHERE
BBS_ID = #bbsId# AND NTT_ID = #nttId#
AND
USE_AT = 'Y'
</select>
<insert id="EgovArticleCommentDAO.insertArticleComment" parameterClass="Comment">
INSERT INTO LETTNCOMMENT
(ANSWER_NO, NTT_ID, BBS_ID, WRTER_ID, WRTER_NM, PASSWORD,
ANSWER, USE_AT,
FRST_REGISTER_ID, FRST_REGIST_PNTTM, MBL_DN
)
VALUES
( #commentNo#, #nttId#, #bbsId#, #wrterId#, #wrterNm#, #commentPassword#,
#commentCn#, 'Y',
#frstRegisterId#, SYSDATE, #mblDn#
)
</insert>
<update id="EgovArticleCommentDAO.deleteArticleComment" parameterClass="CommentVO">
UPDATE LETTNCOMMENT
SET USE_AT = 'N'
WHERE ANSWER_NO = #commentNo#
</update>
<select id="EgovArticleCommentDAO.selectArticleCommentDetail" parameterClass="CommentVO" resultMap="commentDetail">
SELECT
a.ANSWER_NO, a.NTT_ID, a.BBS_ID,
a.WRTER_ID, a.WRTER_NM, a.PASSWORD, a.ANSWER, a.USE_AT,
TO_CHAR(a.FRST_REGIST_PNTTM, 'YYYY-MM-DD HH24:MI:SS')
as FRST_REGIST_PNTTM,
b.USER_NM as FRST_REGISTER_NM, a.MBL_DN
FROM
LETTNCOMMENT a
LEFT OUTER JOIN COMVNUSERMASTER b
ON a.FRST_REGISTER_ID = b.ESNTL_ID
WHERE
a.ANSWER_NO = #commentNo#
</select>
<update id="EgovArticleCommentDAO.updateArticleComment" parameterClass="Comment">
UPDATE LETTNCOMMENT SET
ANSWER = #commentCn#,
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = SYSDATE
WHERE ANSWER_NO = #commentNo#
</update>
</sqlMap>

View File

@ -0,0 +1,356 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="BBSUseInfoManageDAO">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="BoardUseInf" type="kcc.let.cop.com.service.BoardUseInf"/>
<typeAlias alias="BoardUseInfVO" type="kcc.let.cop.com.service.BoardUseInfVO"/>
<resultMap id="BoardUseList" class="kcc.let.cop.com.service.BoardUseInfVO">
<result property="bbsId" column="BBS_ID" columnIndex="1"/>
<result property="bbsNm" column="BBS_NM" columnIndex="2"/>
<result property="trgetId" column="TRGET_ID" columnIndex="3"/>
<result property="registSeCode" column="REGIST_SE_CODE" columnIndex="4"/>
<result property="registSeCodeNm" column="REGIST_SE_CODE_NM" columnIndex="5"/>
<result property="useAt" column="USE_AT" columnIndex="6"/>
<result property="frstRegisterId" column="FRST_REGISTER_ID" columnIndex="7"/>
<result property="frstRegisterPnttm" column="FRST_REGIST_PNTTM" columnIndex="8"/>
<result property="cmmntyId" column="CMMNTY_ID" columnIndex="9"/>
<result property="cmmntyNm" column="CMMNTY_NM" columnIndex="10"/>
<result property="clbId" column="CLB_ID" columnIndex="11"/>
<result property="clbNm" column="CLB_NM" columnIndex="12"/>
<result property="bbsTyCode" column="BBS_TY_CODE" columnIndex="13"/>
</resultMap>
<resultMap id="BoardUseListByTrget" class="kcc.let.cop.com.service.BoardUseInfVO">
<result property="bbsId" column="BBS_ID" columnIndex="1"/>
<result property="bbsNm" column="BBS_NM" columnIndex="2"/>
<result property="trgetId" column="TRGET_ID" columnIndex="3"/>
<result property="userNm" column="USER_NM" columnIndex="4"/>
<result property="registSeCode" column="REGIST_SE_CODE" columnIndex="5"/>
<result property="registSeCodeNm" column="REGIST_SE_CODE_NM" columnIndex="6"/>
<result property="useAt" column="USE_AT" columnIndex="7"/>
<result property="frstRegisterId" column="FRST_REGISTER_ID" columnIndex="8"/>
<result property="frstRegisterPnttm" column="FRST_REGIST_PNTTM" columnIndex="9"/>
</resultMap>
<resultMap id="selectBBSUse" class="kcc.let.cop.com.service.BoardUseInfVO">
<result property="bbsId" column="BBS_ID" columnIndex="1"/>
</resultMap>
<update id="BBSUseInfoManageDAO.deleteBBSUseInf" parameterClass="BoardUseInf" >
<![CDATA[
UPDATE LETTNBBSUSE SET
USE_AT = 'N',
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = NOW()
WHERE BBS_ID = #bbsId#
AND TRGET_ID = #trgetId#
]]>
</update>
<select id="BBSUseInfoManageDAO.selectBBSUseInfByCmmnty" parameterClass="BoardUseInfVO" resultMap="selectBBSUse" >
<![CDATA[
SELECT BBS_ID FROM LETTNBBSUSE
WHERE TRGET_ID = #cmmntyId#
]]>
</select>
<select id="BBSUseInfoManageDAO.selectBBSUseInfByClub" parameterClass="BoardUseInfVO" resultMap="selectBBSUse" >
<![CDATA[
SELECT BBS_ID FROM LETTNBBSUSE
WHERE TRGET_ID = #clbId#
]]>
</select>
<update id="BBSUseInfoManageDAO.deleteAllBBSUseInfByCmmnty" parameterClass="BoardUseInfVO" >
<!-- [CDATA[
UPDATE LETTNBBSUSE SET
USE_AT = 'N',
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = NOW()
WHERE BBS_ID IN
(SELECT BBS_ID FROM LETTNBBSUSE
WHERE TRGET_ID = #cmmntyId# )
]]-->
<![CDATA[
UPDATE LETTNBBSUSE SET
USE_AT = 'N',
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = NOW()
WHERE TRGET_ID = #cmmntyId#
]]>
</update>
<update id="BBSUseInfoManageDAO.deleteAllBBSUseInfByClub" parameterClass="BoardUseInfVO" >
<!-- [CDATA[
UPDATE LETTNBBSUSE SET
USE_AT = 'N',
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = NOW()
WHERE BBS_ID IN
(SELECT BBS_ID FROM LETTNBBSUSE
WHERE TRGET_ID = #clbId# )
]]-->
<![CDATA[
UPDATE LETTNBBSUSE SET
USE_AT = 'N',
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = NOW()
WHERE TRGET_ID = #clbId#
]]>
</update>
<insert id="BBSUseInfoManageDAO.insertBBSUseInf" parameterClass="BoardUseInf" >
<![CDATA[
INSERT INTO LETTNBBSUSE
(BBS_ID, TRGET_ID, REGIST_SE_CODE, USE_AT,
FRST_REGISTER_ID, FRST_REGIST_PNTTM )
VALUES
(#bbsId#, #trgetId#, #registSeCode#, #useAt#, #frstRegisterId#, NOW())
]]>
</insert>
<select id="BBSUseInfoManageDAO.selectBBSUseInfs" parameterClass="BoardUseInfVO" resultMap="BoardUseList" >
<![CDATA[
SELECT
a.BBS_ID, e.BBS_NM, a.TRGET_ID, a.REGIST_SE_CODE, b.CODE_NM as REGIST_SE_CODE_NM,
a.USE_AT, a.FRST_REGISTER_ID, a.FRST_REGIST_PNTTM,
'시스템 활용' CMMNTY_ID, '시스템 활용' CMMNTY_NM,
'시스템 활용' CLB_ID, '시스템 활용' CLB_NM, '시스템 활용' BBS_TY_CODE
FROM
LETTNBBSUSE a
LEFT OUTER JOIN LETTNBBSMASTER e
ON a.BBS_ID = e.BBS_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE b
ON b.CODE = a.REGIST_SE_CODE
WHERE
b.CODE_ID = 'COM001'
AND a.REGIST_SE_CODE != 'REGC07'
]]>
<isEqual prepend="AND" property="searchCnd" compareValue="0">
<![CDATA[ e.BBS_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<![CDATA[
ORDER BY a.FRST_REGIST_PNTTM DESC
LIMIT #recordCountPerPage# OFFSET #firstIndex#
]]>
</select>
<select id="BBSUseInfoManageDAO.selectBBSUseInfsCnt" parameterClass="BoardUseInfVO" resultClass="java.lang.Integer" >
<![CDATA[
SELECT
COUNT(a.BBS_ID)
FROM
LETTNBBSUSE a
LEFT OUTER JOIN LETTNBBSMASTER e
ON a.BBS_ID = e.BBS_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE b
ON b.CODE = a.REGIST_SE_CODE
WHERE
b.CODE_ID = 'COM001'
AND a.REGIST_SE_CODE != 'REGC07'
]]>
<isEqual prepend="AND" property="searchCnd" compareValue="0">
<![CDATA[ e.BBS_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
</select>
<select id="BBSUseInfoManageDAO.selectBBSUseInf" parameterClass="BoardUseInfVO" resultMap="BoardUseList" >
<![CDATA[
SELECT
a.BBS_ID, e.BBS_NM, a.TRGET_ID, a.REGIST_SE_CODE, b.CODE_NM as REGIST_SE_CODE_NM,
a.USE_AT, a.FRST_REGISTER_ID, a.FRST_REGIST_PNTTM,
'시스템 활용' CMMNTY_ID, '시스템 활용' CMMNTY_NM,
'시스템 활용' CLB_ID, '시스템 활용' CLB_NM, '시스템 활용' BBS_TY_CODE
FROM
LETTNBBSUSE a
LEFT OUTER JOIN LETTNBBSMASTER e
ON a.BBS_ID = e.BBS_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE b
ON b.CODE = a.REGIST_SE_CODE
WHERE
b.CODE_ID = 'COM001'
AND
a.BBS_ID = #bbsId#
AND
a.TRGET_ID = #trgetId#
]]>
</select>
<update id="BBSUseInfoManageDAO.updateBBSUseInf" parameterClass="BoardUseInf">
<![CDATA[
UPDATE LETTNBBSUSE SET
USE_AT = #useAt#,
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = NOW()
WHERE BBS_ID = #bbsId#
]]>
</update>
<update id="BBSUseInfoManageDAO.deleteBBSUseInfByBoardId" parameterClass="BoardUseInf" >
<![CDATA[
UPDATE LETTNBBSUSE SET
USE_AT = 'N',
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = NOW()
WHERE BBS_ID = #bbsId#
]]>
</update>
<select id="BBSUseInfoManageDAO.selectBBSUseInfsByTrget" parameterClass="BoardUseInfVO" resultMap="BoardUseListByTrget" >
<![CDATA[
SELECT * FROM (
SELECT
a.BBS_ID, b.BBS_NM, a.TRGET_ID, d.USER_NM, a.REGIST_SE_CODE, c.CODE_NM as REGIST_SE_CODE_NM,
a.USE_AT, a.FRST_REGISTER_ID, a.FRST_REGIST_PNTTM
FROM
LETTNBBSUSE a
LEFT OUTER JOIN LETTNBBSMASTER b
ON a.BBS_ID = b.BBS_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE c
ON c.CODE = a.REGIST_SE_CODE
LEFT OUTER JOIN COMVNUSERMASTER d
ON a.TRGET_ID = d.ESNTL_ID
WHERE
a.BBS_ID IN
( SELECT BBS_ID FROM LETTNBBSUSE
WHERE TRGET_ID = #trgetId# AND USE_AT ='Y' )
AND a.REGIST_SE_CODE = 'REGC07'
UNION ALL
SELECT
a.BBS_ID, b.BBS_NM, a.TRGET_ID, '[전체]' USER_NM, a.REGIST_SE_CODE, c.CODE_NM as REGIST_SE_CODE_NM,
a.USE_AT, a.FRST_REGISTER_ID, a.FRST_REGIST_PNTTM
FROM
LETTNBBSUSE a
LEFT OUTER JOIN LETTNBBSMASTER b
ON a.BBS_ID = b.BBS_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE c
ON c.CODE = a.REGIST_SE_CODE
WHERE
a.BBS_ID IN
( SELECT BBS_ID FROM LETTNBBSUSE
WHERE TRGET_ID = #trgetId# )
AND a.REGIST_SE_CODE in ('REGC05', 'REGC06')
UNION ALL
SELECT
a.BBS_ID, b.BBS_NM,
case WHEN e.EMPLYR_ID is null THEN f.EMPLYR_ID ELSE e.EMPLYR_ID END as TRGET_ID,
case WHEN g.USER_NM is null THEN h.USER_NM ELSE g.USER_NM END as USER_NM,
'REGC07' as REGIST_SE_CODE, '게시판사용자등록' as REGIST_SE_CODE_NM,
'' as USE_AT, '' as FRST_REGISTER_ID, '' as FRST_REGIST_PNTTM
FROM
LETTNBBSUSE a
LEFT OUTER JOIN LETTNBBSMASTER b
ON a.BBS_ID = b.BBS_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE c
ON c.CODE = a.REGIST_SE_CODE
LEFT OUTER JOIN LETTNCMMNTYUSER e
ON e.CMMNTY_ID = #trgetId#
LEFT OUTER JOIN LETTNCLUBUSER f
ON f.CLB_ID = #trgetId#
LEFT OUTER JOIN COMVNUSERMASTER g
ON e.EMPLYR_ID = g.ESNTL_ID
LEFT OUTER JOIN COMVNUSERMASTER h
ON f.EMPLYR_ID = h.ESNTL_ID
WHERE
a.BBS_ID IN
( SELECT BBS_ID FROM LETTNBBSUSE
WHERE TRGET_ID = #trgetId# AND USE_AT ='Y' )
AND a.REGIST_SE_CODE in ('REGC05', 'REGC06')
AND (
(a.BBS_ID, e.EMPLYR_ID) not in (SELECT BBS_ID, TRGET_ID FROM LETTNBBSUSE)
OR
(a.BBS_ID, f.EMPLYR_ID) not in (SELECT BBS_ID, TRGET_ID FROM LETTNBBSUSE)
)
) tt
]]>
<isEqual prepend="WHERE" property="searchCnd" compareValue="0">
<![CDATA[ tt.USER_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<![CDATA[
ORDER BY tt.USER_NM DESC
LIMIT #recordCountPerPage# OFFSET #firstIndex#
]]>
</select>
<select id="BBSUseInfoManageDAO.selectBBSUseInfsCntByTrget" parameterClass="BoardUseInfVO" resultClass="java.lang.Integer" >
<![CDATA[
SELECT COUNT(tt.BBS_ID) FROM (
SELECT
a.BBS_ID, d.USER_NM
FROM
LETTNBBSUSE a
LEFT OUTER JOIN LETTNBBSMASTER b
ON a.BBS_ID = b.BBS_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE c
ON c.CODE = a.REGIST_SE_CODE
LEFT OUTER JOIN COMVNUSERMASTER d
ON a.TRGET_ID = d.ESNTL_ID
WHERE
a.BBS_ID IN
( SELECT BBS_ID FROM LETTNBBSUSE
WHERE TRGET_ID = #trgetId# AND USE_AT ='Y' )
AND a.REGIST_SE_CODE = 'REGC07'
UNION ALL
SELECT
a.BBS_ID, '[전체]' USER_NM
FROM
LETTNBBSUSE a
LEFT OUTER JOIN LETTNBBSMASTER b
ON a.BBS_ID = b.BBS_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE c
ON c.CODE = a.REGIST_SE_CODE
WHERE
a.BBS_ID IN
( SELECT BBS_ID FROM LETTNBBSUSE
WHERE TRGET_ID = #trgetId# )
AND a.REGIST_SE_CODE in ('REGC05', 'REGC06')
UNION ALL
SELECT
a.BBS_ID, '' as USER_NM
FROM
LETTNBBSUSE a
LEFT OUTER JOIN LETTNBBSMASTER b
ON a.BBS_ID = b.BBS_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE c
ON c.CODE = a.REGIST_SE_CODE
LEFT OUTER JOIN LETTNCMMNTYUSER e
ON e.CMMNTY_ID = #trgetId#
LEFT OUTER JOIN LETTNCLUBUSER f
ON f.CLB_ID = #trgetId#
LEFT OUTER JOIN COMVNUSERMASTER g
ON e.EMPLYR_ID = g.ESNTL_ID
LEFT OUTER JOIN COMVNUSERMASTER h
ON f.EMPLYR_ID = h.ESNTL_ID
WHERE
a.BBS_ID IN
( SELECT BBS_ID FROM LETTNBBSUSE
WHERE TRGET_ID = #trgetId# AND USE_AT ='Y' )
AND a.REGIST_SE_CODE in ('REGC05', 'REGC06')
AND (
(a.BBS_ID, e.EMPLYR_ID) not in (SELECT BBS_ID, TRGET_ID FROM LETTNBBSUSE)
OR
(a.BBS_ID, f.EMPLYR_ID) not in (SELECT BBS_ID, TRGET_ID FROM LETTNBBSUSE)
)
) tt
]]>
<isEqual prepend="WHERE" property="searchCnd" compareValue="0">
<![CDATA[ tt.USER_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
</select>
<update id="BBSUseInfoManageDAO.updateBBSUseInfByTrget" parameterClass="BoardUseInf" >
<![CDATA[
UPDATE LETTNBBSUSE SET
USE_AT = #useAt#,
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = NOW()
WHERE BBS_ID = #bbsId#
AND TRGET_ID = #trgetId#
]]>
</update>
</sqlMap>

View File

@ -0,0 +1,356 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="BBSUseInfoManageDAO">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="BoardUseInf" type="kcc.let.cop.com.service.BoardUseInf"/>
<typeAlias alias="BoardUseInfVO" type="kcc.let.cop.com.service.BoardUseInfVO"/>
<resultMap id="BoardUseList" class="kcc.let.cop.com.service.BoardUseInfVO">
<result property="bbsId" column="BBS_ID" columnIndex="1"/>
<result property="bbsNm" column="BBS_NM" columnIndex="2"/>
<result property="trgetId" column="TRGET_ID" columnIndex="3"/>
<result property="registSeCode" column="REGIST_SE_CODE" columnIndex="4"/>
<result property="registSeCodeNm" column="REGIST_SE_CODE_NM" columnIndex="5"/>
<result property="useAt" column="USE_AT" columnIndex="6"/>
<result property="frstRegisterId" column="FRST_REGISTER_ID" columnIndex="7"/>
<result property="frstRegisterPnttm" column="FRST_REGIST_PNTTM" columnIndex="8"/>
<result property="cmmntyId" column="CMMNTY_ID" columnIndex="9"/>
<result property="cmmntyNm" column="CMMNTY_NM" columnIndex="10"/>
<result property="clbId" column="CLB_ID" columnIndex="11"/>
<result property="clbNm" column="CLB_NM" columnIndex="12"/>
<result property="bbsTyCode" column="BBS_TY_CODE" columnIndex="13"/>
</resultMap>
<resultMap id="BoardUseListByTrget" class="kcc.let.cop.com.service.BoardUseInfVO">
<result property="bbsId" column="BBS_ID" columnIndex="1"/>
<result property="bbsNm" column="BBS_NM" columnIndex="2"/>
<result property="trgetId" column="TRGET_ID" columnIndex="3"/>
<result property="userNm" column="USER_NM" columnIndex="4"/>
<result property="registSeCode" column="REGIST_SE_CODE" columnIndex="5"/>
<result property="registSeCodeNm" column="REGIST_SE_CODE_NM" columnIndex="6"/>
<result property="useAt" column="USE_AT" columnIndex="7"/>
<result property="frstRegisterId" column="FRST_REGISTER_ID" columnIndex="8"/>
<result property="frstRegisterPnttm" column="FRST_REGIST_PNTTM" columnIndex="9"/>
</resultMap>
<resultMap id="selectBBSUse" class="kcc.let.cop.com.service.BoardUseInfVO">
<result property="bbsId" column="BBS_ID" columnIndex="1"/>
</resultMap>
<update id="BBSUseInfoManageDAO.deleteBBSUseInf" parameterClass="BoardUseInf" >
<![CDATA[
UPDATE LETTNBBSUSE SET
USE_AT = 'N',
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = NOW()
WHERE BBS_ID = #bbsId#
AND TRGET_ID = #trgetId#
]]>
</update>
<select id="BBSUseInfoManageDAO.selectBBSUseInfByCmmnty" parameterClass="BoardUseInfVO" resultMap="selectBBSUse" >
<![CDATA[
SELECT BBS_ID FROM LETTNBBSUSE
WHERE TRGET_ID = #cmmntyId#
]]>
</select>
<select id="BBSUseInfoManageDAO.selectBBSUseInfByClub" parameterClass="BoardUseInfVO" resultMap="selectBBSUse" >
<![CDATA[
SELECT BBS_ID FROM LETTNBBSUSE
WHERE TRGET_ID = #clbId#
]]>
</select>
<update id="BBSUseInfoManageDAO.deleteAllBBSUseInfByCmmnty" parameterClass="BoardUseInfVO" >
<!-- [CDATA[
UPDATE LETTNBBSUSE SET
USE_AT = 'N',
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = NOW()
WHERE BBS_ID IN
(SELECT BBS_ID FROM LETTNBBSUSE
WHERE TRGET_ID = #cmmntyId# )
]]-->
<![CDATA[
UPDATE LETTNBBSUSE SET
USE_AT = 'N',
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = NOW()
WHERE TRGET_ID = #cmmntyId#
]]>
</update>
<update id="BBSUseInfoManageDAO.deleteAllBBSUseInfByClub" parameterClass="BoardUseInfVO" >
<!-- [CDATA[
UPDATE LETTNBBSUSE SET
USE_AT = 'N',
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = NOW()
WHERE BBS_ID IN
(SELECT BBS_ID FROM LETTNBBSUSE
WHERE TRGET_ID = #clbId# )
]]-->
<![CDATA[
UPDATE LETTNBBSUSE SET
USE_AT = 'N',
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = NOW()
WHERE TRGET_ID = #clbId#
]]>
</update>
<insert id="BBSUseInfoManageDAO.insertBBSUseInf" parameterClass="BoardUseInf" >
<![CDATA[
INSERT INTO LETTNBBSUSE
(BBS_ID, TRGET_ID, REGIST_SE_CODE, USE_AT,
FRST_REGISTER_ID, FRST_REGIST_PNTTM )
VALUES
(#bbsId#, #trgetId#, #registSeCode#, #useAt#, #frstRegisterId#, NOW())
]]>
</insert>
<select id="BBSUseInfoManageDAO.selectBBSUseInfs" parameterClass="BoardUseInfVO" resultMap="BoardUseList" >
<![CDATA[
SELECT
a.BBS_ID, e.BBS_NM, a.TRGET_ID, a.REGIST_SE_CODE, b.CODE_NM as REGIST_SE_CODE_NM,
a.USE_AT, a.FRST_REGISTER_ID, a.FRST_REGIST_PNTTM,
'시스템 활용' CMMNTY_ID, '시스템 활용' CMMNTY_NM,
'시스템 활용' CLB_ID, '시스템 활용' CLB_NM, '시스템 활용' BBS_TY_CODE
FROM
LETTNBBSUSE a
LEFT OUTER JOIN LETTNBBSMASTER e
ON a.BBS_ID = e.BBS_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE b
ON b.CODE = a.REGIST_SE_CODE
WHERE
b.CODE_ID = 'COM001'
AND a.REGIST_SE_CODE != 'REGC07'
]]>
<isEqual prepend="AND" property="searchCnd" compareValue="0">
<![CDATA[ e.BBS_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<![CDATA[
ORDER BY a.FRST_REGIST_PNTTM DESC
LIMIT #recordCountPerPage# OFFSET #firstIndex#
]]>
</select>
<select id="BBSUseInfoManageDAO.selectBBSUseInfsCnt" parameterClass="BoardUseInfVO" resultClass="java.lang.Integer" >
<![CDATA[
SELECT
COUNT(a.BBS_ID)
FROM
LETTNBBSUSE a
LEFT OUTER JOIN LETTNBBSMASTER e
ON a.BBS_ID = e.BBS_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE b
ON b.CODE = a.REGIST_SE_CODE
WHERE
b.CODE_ID = 'COM001'
AND a.REGIST_SE_CODE != 'REGC07'
]]>
<isEqual prepend="AND" property="searchCnd" compareValue="0">
<![CDATA[ e.BBS_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
</select>
<select id="BBSUseInfoManageDAO.selectBBSUseInf" parameterClass="BoardUseInfVO" resultMap="BoardUseList" >
<![CDATA[
SELECT
a.BBS_ID, e.BBS_NM, a.TRGET_ID, a.REGIST_SE_CODE, b.CODE_NM as REGIST_SE_CODE_NM,
a.USE_AT, a.FRST_REGISTER_ID, a.FRST_REGIST_PNTTM,
'시스템 활용' CMMNTY_ID, '시스템 활용' CMMNTY_NM,
'시스템 활용' CLB_ID, '시스템 활용' CLB_NM, '시스템 활용' BBS_TY_CODE
FROM
LETTNBBSUSE a
LEFT OUTER JOIN LETTNBBSMASTER e
ON a.BBS_ID = e.BBS_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE b
ON b.CODE = a.REGIST_SE_CODE
WHERE
b.CODE_ID = 'COM001'
AND
a.BBS_ID = #bbsId#
AND
a.TRGET_ID = #trgetId#
]]>
</select>
<update id="BBSUseInfoManageDAO.updateBBSUseInf" parameterClass="BoardUseInf">
<![CDATA[
UPDATE LETTNBBSUSE SET
USE_AT = #useAt#,
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = NOW()
WHERE BBS_ID = #bbsId#
]]>
</update>
<update id="BBSUseInfoManageDAO.deleteBBSUseInfByBoardId" parameterClass="BoardUseInf" >
<![CDATA[
UPDATE LETTNBBSUSE SET
USE_AT = 'N',
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = NOW()
WHERE BBS_ID = #bbsId#
]]>
</update>
<select id="BBSUseInfoManageDAO.selectBBSUseInfsByTrget" parameterClass="BoardUseInfVO" resultMap="BoardUseListByTrget" >
<![CDATA[
SELECT * FROM (
SELECT
a.BBS_ID, b.BBS_NM, a.TRGET_ID, d.USER_NM, a.REGIST_SE_CODE, c.CODE_NM as REGIST_SE_CODE_NM,
a.USE_AT, a.FRST_REGISTER_ID, a.FRST_REGIST_PNTTM
FROM
LETTNBBSUSE a
LEFT OUTER JOIN LETTNBBSMASTER b
ON a.BBS_ID = b.BBS_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE c
ON c.CODE = a.REGIST_SE_CODE
LEFT OUTER JOIN COMVNUSERMASTER d
ON a.TRGET_ID = d.ESNTL_ID
WHERE
a.BBS_ID IN
( SELECT BBS_ID FROM LETTNBBSUSE
WHERE TRGET_ID = #trgetId# AND USE_AT ='Y' )
AND a.REGIST_SE_CODE = 'REGC07'
UNION ALL
SELECT
a.BBS_ID, b.BBS_NM, a.TRGET_ID, '[전체]' USER_NM, a.REGIST_SE_CODE, c.CODE_NM as REGIST_SE_CODE_NM,
a.USE_AT, a.FRST_REGISTER_ID, a.FRST_REGIST_PNTTM
FROM
LETTNBBSUSE a
LEFT OUTER JOIN LETTNBBSMASTER b
ON a.BBS_ID = b.BBS_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE c
ON c.CODE = a.REGIST_SE_CODE
WHERE
a.BBS_ID IN
( SELECT BBS_ID FROM LETTNBBSUSE
WHERE TRGET_ID = #trgetId# )
AND a.REGIST_SE_CODE in ('REGC05', 'REGC06')
UNION ALL
SELECT
a.BBS_ID, b.BBS_NM,
case WHEN e.EMPLYR_ID is null THEN f.EMPLYR_ID ELSE e.EMPLYR_ID END as TRGET_ID,
case WHEN g.USER_NM is null THEN h.USER_NM ELSE g.USER_NM END as USER_NM,
'REGC07' as REGIST_SE_CODE, '게시판사용자등록' as REGIST_SE_CODE_NM,
'' as USE_AT, '' as FRST_REGISTER_ID, '' as FRST_REGIST_PNTTM
FROM
LETTNBBSUSE a
LEFT OUTER JOIN LETTNBBSMASTER b
ON a.BBS_ID = b.BBS_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE c
ON c.CODE = a.REGIST_SE_CODE
LEFT OUTER JOIN LETTNCMMNTYUSER e
ON e.CMMNTY_ID = #trgetId#
LEFT OUTER JOIN LETTNCLUBUSER f
ON f.CLB_ID = #trgetId#
LEFT OUTER JOIN COMVNUSERMASTER g
ON e.EMPLYR_ID = g.ESNTL_ID
LEFT OUTER JOIN COMVNUSERMASTER h
ON f.EMPLYR_ID = h.ESNTL_ID
WHERE
a.BBS_ID IN
( SELECT BBS_ID FROM LETTNBBSUSE
WHERE TRGET_ID = #trgetId# AND USE_AT ='Y' )
AND a.REGIST_SE_CODE in ('REGC05', 'REGC06')
AND (
(a.BBS_ID, e.EMPLYR_ID) not in (SELECT BBS_ID, TRGET_ID FROM LETTNBBSUSE)
OR
(a.BBS_ID, f.EMPLYR_ID) not in (SELECT BBS_ID, TRGET_ID FROM LETTNBBSUSE)
)
) tt
]]>
<isEqual prepend="WHERE" property="searchCnd" compareValue="0">
<![CDATA[ tt.USER_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<![CDATA[
ORDER BY tt.USER_NM DESC
LIMIT #recordCountPerPage# OFFSET #firstIndex#
]]>
</select>
<select id="BBSUseInfoManageDAO.selectBBSUseInfsCntByTrget" parameterClass="BoardUseInfVO" resultClass="java.lang.Integer" >
<![CDATA[
SELECT COUNT(tt.BBS_ID) FROM (
SELECT
a.BBS_ID, d.USER_NM
FROM
LETTNBBSUSE a
LEFT OUTER JOIN LETTNBBSMASTER b
ON a.BBS_ID = b.BBS_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE c
ON c.CODE = a.REGIST_SE_CODE
LEFT OUTER JOIN COMVNUSERMASTER d
ON a.TRGET_ID = d.ESNTL_ID
WHERE
a.BBS_ID IN
( SELECT BBS_ID FROM LETTNBBSUSE
WHERE TRGET_ID = #trgetId# AND USE_AT ='Y' )
AND a.REGIST_SE_CODE = 'REGC07'
UNION ALL
SELECT
a.BBS_ID, '[전체]' USER_NM
FROM
LETTNBBSUSE a
LEFT OUTER JOIN LETTNBBSMASTER b
ON a.BBS_ID = b.BBS_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE c
ON c.CODE = a.REGIST_SE_CODE
WHERE
a.BBS_ID IN
( SELECT BBS_ID FROM LETTNBBSUSE
WHERE TRGET_ID = #trgetId# )
AND a.REGIST_SE_CODE in ('REGC05', 'REGC06')
UNION ALL
SELECT
a.BBS_ID, '' as USER_NM
FROM
LETTNBBSUSE a
LEFT OUTER JOIN LETTNBBSMASTER b
ON a.BBS_ID = b.BBS_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE c
ON c.CODE = a.REGIST_SE_CODE
LEFT OUTER JOIN LETTNCMMNTYUSER e
ON e.CMMNTY_ID = #trgetId#
LEFT OUTER JOIN LETTNCLUBUSER f
ON f.CLB_ID = #trgetId#
LEFT OUTER JOIN COMVNUSERMASTER g
ON e.EMPLYR_ID = g.ESNTL_ID
LEFT OUTER JOIN COMVNUSERMASTER h
ON f.EMPLYR_ID = h.ESNTL_ID
WHERE
a.BBS_ID IN
( SELECT BBS_ID FROM LETTNBBSUSE
WHERE TRGET_ID = #trgetId# AND USE_AT ='Y' )
AND a.REGIST_SE_CODE in ('REGC05', 'REGC06')
AND (
(a.BBS_ID, e.EMPLYR_ID) not in (SELECT BBS_ID, TRGET_ID FROM LETTNBBSUSE)
OR
(a.BBS_ID, f.EMPLYR_ID) not in (SELECT BBS_ID, TRGET_ID FROM LETTNBBSUSE)
)
) tt
]]>
<isEqual prepend="WHERE" property="searchCnd" compareValue="0">
<![CDATA[ tt.USER_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
</select>
<update id="BBSUseInfoManageDAO.updateBBSUseInfByTrget" parameterClass="BoardUseInf" >
<![CDATA[
UPDATE LETTNBBSUSE SET
USE_AT = #useAt#,
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = NOW()
WHERE BBS_ID = #bbsId#
AND TRGET_ID = #trgetId#
]]>
</update>
</sqlMap>

View File

@ -0,0 +1,168 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="TemplateMng">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="TemplateInf" type="kcc.let.cop.com.service.TemplateInf"/>
<typeAlias alias="TemplateInfVO" type="kcc.let.cop.com.service.TemplateInfVO"/>
<resultMap id="tmplatList" class="kcc.let.cop.com.service.TemplateInfVO">
<result property="tmplatId" column="TMPLAT_ID" columnIndex="1"/>
<result property="tmplatNm" column="TMPLAT_NM" columnIndex="2"/>
<result property="tmplatSeCode" column="TMPLAT_SE_CODE" columnIndex="3"/>
<result property="tmplatSeCodeNm" column="TMPLAT_SE_CODE_NM" columnIndex="4"/>
<result property="tmplatCours" column="TMPLAT_COURS" columnIndex="5"/>
<result property="useAt" column="USE_AT" columnIndex="6"/>
<result property="frstRegisterPnttm" column="FRST_REGIST_PNTTM" columnIndex="7"/>
</resultMap>
<resultMap id="tmplatDetail" class="kcc.let.cop.com.service.TemplateInfVO">
<result property="tmplatId" column="TMPLAT_ID" columnIndex="1"/>
<result property="tmplatNm" column="TMPLAT_NM" columnIndex="2"/>
<result property="tmplatSeCode" column="TMPLAT_SE_CODE" columnIndex="3"/>
<result property="tmplatSeCodeNm" column="TMPLAT_SE_CODE_NM" columnIndex="4"/>
<result property="tmplatCours" column="TMPLAT_COURS" columnIndex="5"/>
<result property="useAt" column="USE_AT" columnIndex="6"/>
<result property="frstRegisterId" column="FRST_REGISTER_ID" columnIndex="7"/>
<result property="frstRegisterNm" column="FRST_REGISTER_NM" columnIndex="8"/>
<result property="frstRegisterPnttm" column="FRST_REGIST_PNTTM" columnIndex="9"/>
<result property="lastUpdusrId" column="LAST_UPDUSR_ID" columnIndex="10"/>
<result property="lastUpdusrNm" column="LAST_UPDUSR_NM" columnIndex="11"/>
<result property="lastUpdusrPnttm" column="LAST_UPDT_PNTTM" columnIndex="12"/>
</resultMap>
<insert id="TemplateManageDAO.insertTemplateInf" parameterClass="TemplateInf" >
<![CDATA[
INSERT INTO LETTNTMPLATINFO
(TMPLAT_ID, TMPLAT_NM, TMPLAT_SE_CODE, TMPLAT_COURS,
USE_AT, FRST_REGISTER_ID, FRST_REGIST_PNTTM )
VALUES
( #tmplatId#, #tmplatNm#, #tmplatSeCode#, #tmplatCours#,
#useAt#, #frstRegisterId#, NOW()
)
]]>
</insert>
<select id="TemplateManageDAO.selectTemplateInfs" parameterClass="TemplateInfVO" resultMap="tmplatList" >
<![CDATA[
SELECT
a.TMPLAT_ID, a.TMPLAT_NM, a.TMPLAT_SE_CODE, a.TMPLAT_COURS, a.USE_AT,
a.FRST_REGISTER_ID, a.FRST_REGIST_PNTTM,
b.USER_NM AS FRST_REGISTER_NM, c.CODE_NM AS TMPLAT_SE_CODE_NM
FROM
LETTNTMPLATINFO a
LEFT OUTER JOIN COMVNUSERMASTER b
ON a.FRST_REGISTER_ID = b.ESNTL_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE c
ON a.TMPLAT_SE_CODE = c.CODE
WHERE
c.CODE_ID = 'COM005'
]]>
<isNotEmpty property="typeFlag">
AND a.TMPLAT_SE_CODE = #tmplatSeCode#
</isNotEmpty>
<isEqual prepend="AND" property="searchCnd" compareValue="0">
<![CDATA[ a.TMPLAT_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCnd" compareValue="1">
<![CDATA[ c.CODE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<![CDATA[
ORDER BY a.FRST_REGIST_PNTTM DESC
LIMIT #recordCountPerPage# OFFSET #firstIndex#
]]>
</select>
<select id="TemplateManageDAO.selectTemplateInfsCnt" parameterClass="TemplateInfVO" resultClass="java.lang.Integer" >
<![CDATA[
SELECT
COUNT(a.TMPLAT_ID)
FROM
LETTNTMPLATINFO a
LEFT OUTER JOIN COMVNUSERMASTER b
ON a.FRST_REGISTER_ID = b.ESNTL_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE c
ON a.TMPLAT_SE_CODE = c.CODE
WHERE
c.CODE_ID = 'COM005'
]]>
<isNotEmpty property="typeFlag">
AND a.TMPLAT_SE_CODE = #tmplatSeCode#
</isNotEmpty>
<isEqual prepend="AND" property="searchCnd" compareValue="0">
<![CDATA[ a.TMPLAT_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCnd" compareValue="1">
<![CDATA[ c.CODE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
</select>
<select id="TemplateManageDAO.selectTemplateInf" parameterClass="TemplateInfVO" resultMap="tmplatDetail" >
<![CDATA[
SELECT
a.TMPLAT_ID, a.TMPLAT_NM, a.TMPLAT_SE_CODE, a.TMPLAT_COURS, a.USE_AT,
a.FRST_REGISTER_ID, a.FRST_REGIST_PNTTM,
b.USER_NM AS FRST_REGISTER_NM, c.CODE_NM AS TMPLAT_SE_CODE_NM,
a.LAST_UPDUSR_ID,
d.USER_NM AS LAST_UPDUSR_NM, a.LAST_UPDT_PNTTM
FROM
LETTNTMPLATINFO a
LEFT OUTER JOIN COMVNUSERMASTER b
ON a.FRST_REGISTER_ID = b.ESNTL_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE c
ON a.TMPLAT_SE_CODE = c.CODE
LEFT OUTER JOIN LETTNEMPLYRINFO d
ON a.LAST_UPDUSR_ID = d.EMPLYR_ID
WHERE
c.CODE_ID = 'COM005'
AND
a.TMPLAT_ID = #tmplatId#
]]>
</select>
<update id="TemplateManageDAO.updateTemplateInf" parameterClass="TemplateInf">
<![CDATA[
UPDATE LETTNTMPLATINFO SET
TMPLAT_SE_CODE = #tmplatSeCode#,
TMPLAT_COURS = #tmplatCours#,
USE_AT = #useAt#,
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = NOW()
WHERE TMPLAT_ID = #tmplatId#
]]>
</update>
<update id="TemplateManageDAO.deleteTemplateInf" parameterClass="TemplateInf">
<![CDATA[
UPDATE LETTNBBSMASTER SET
USE_AT = 'N',
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = NOW()
WHERE TMPLAT_ID = #tmplatId#
]]>
</update>
<select id="TemplateManageDAO.selectTemplateInfsByCode" parameterClass="TemplateInfVO" resultMap="tmplatList" >
<![CDATA[
SELECT
a.TMPLAT_ID, a.TMPLAT_NM, a.TMPLAT_SE_CODE, a.TMPLAT_COURS, a.USE_AT,
a.FRST_REGISTER_ID, a.FRST_REGIST_PNTTM,
b.USER_NM AS FRST_REGISTER_NM, c.CODE_NM AS TMPLAT_SE_CODE_NM
FROM
LETTNTMPLATINFO a
LEFT OUTER JOIN COMVNUSERMASTER b
ON a.FRST_REGISTER_ID = b.ESNTL_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE c
ON a.TMPLAT_SE_CODE = c.CODE
WHERE
c.CODE_ID = 'COM005'
AND
a.TMPLAT_SE_CODE = #tmplatSeCode#
ORDER BY a.FRST_REGIST_PNTTM DESC
]]>
</select>
</sqlMap>

View File

@ -0,0 +1,168 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="TemplateMng">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="TemplateInf" type="kcc.let.cop.com.service.TemplateInf"/>
<typeAlias alias="TemplateInfVO" type="kcc.let.cop.com.service.TemplateInfVO"/>
<resultMap id="tmplatList" class="kcc.let.cop.com.service.TemplateInfVO">
<result property="tmplatId" column="TMPLAT_ID" columnIndex="1"/>
<result property="tmplatNm" column="TMPLAT_NM" columnIndex="2"/>
<result property="tmplatSeCode" column="TMPLAT_SE_CODE" columnIndex="3"/>
<result property="tmplatSeCodeNm" column="TMPLAT_SE_CODE_NM" columnIndex="4"/>
<result property="tmplatCours" column="TMPLAT_COURS" columnIndex="5"/>
<result property="useAt" column="USE_AT" columnIndex="6"/>
<result property="frstRegisterPnttm" column="FRST_REGIST_PNTTM" columnIndex="7"/>
</resultMap>
<resultMap id="tmplatDetail" class="kcc.let.cop.com.service.TemplateInfVO">
<result property="tmplatId" column="TMPLAT_ID" columnIndex="1"/>
<result property="tmplatNm" column="TMPLAT_NM" columnIndex="2"/>
<result property="tmplatSeCode" column="TMPLAT_SE_CODE" columnIndex="3"/>
<result property="tmplatSeCodeNm" column="TMPLAT_SE_CODE_NM" columnIndex="4"/>
<result property="tmplatCours" column="TMPLAT_COURS" columnIndex="5"/>
<result property="useAt" column="USE_AT" columnIndex="6"/>
<result property="frstRegisterId" column="FRST_REGISTER_ID" columnIndex="7"/>
<result property="frstRegisterNm" column="FRST_REGISTER_NM" columnIndex="8"/>
<result property="frstRegisterPnttm" column="FRST_REGIST_PNTTM" columnIndex="9"/>
<result property="lastUpdusrId" column="LAST_UPDUSR_ID" columnIndex="10"/>
<result property="lastUpdusrNm" column="LAST_UPDUSR_NM" columnIndex="11"/>
<result property="lastUpdusrPnttm" column="LAST_UPDT_PNTTM" columnIndex="12"/>
</resultMap>
<insert id="TemplateManageDAO.insertTemplateInf" parameterClass="TemplateInf" >
<![CDATA[
INSERT INTO LETTNTMPLATINFO
(TMPLAT_ID, TMPLAT_NM, TMPLAT_SE_CODE, TMPLAT_COURS,
USE_AT, FRST_REGISTER_ID, FRST_REGIST_PNTTM )
VALUES
( #tmplatId#, #tmplatNm#, #tmplatSeCode#, #tmplatCours#,
#useAt#, #frstRegisterId#, NOW()
)
]]>
</insert>
<select id="TemplateManageDAO.selectTemplateInfs" parameterClass="TemplateInfVO" resultMap="tmplatList" >
<![CDATA[
SELECT
a.TMPLAT_ID, a.TMPLAT_NM, a.TMPLAT_SE_CODE, a.TMPLAT_COURS, a.USE_AT,
a.FRST_REGISTER_ID, a.FRST_REGIST_PNTTM,
b.USER_NM AS FRST_REGISTER_NM, c.CODE_NM AS TMPLAT_SE_CODE_NM
FROM
LETTNTMPLATINFO a
LEFT OUTER JOIN COMVNUSERMASTER b
ON a.FRST_REGISTER_ID = b.ESNTL_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE c
ON a.TMPLAT_SE_CODE = c.CODE
WHERE
c.CODE_ID = 'COM005'
]]>
<isNotEmpty property="typeFlag">
AND a.TMPLAT_SE_CODE = #tmplatSeCode#
</isNotEmpty>
<isEqual prepend="AND" property="searchCnd" compareValue="0">
<![CDATA[ a.TMPLAT_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCnd" compareValue="1">
<![CDATA[ c.CODE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<![CDATA[
ORDER BY a.FRST_REGIST_PNTTM DESC
LIMIT #recordCountPerPage# OFFSET #firstIndex#
]]>
</select>
<select id="TemplateManageDAO.selectTemplateInfsCnt" parameterClass="TemplateInfVO" resultClass="java.lang.Integer" >
<![CDATA[
SELECT
COUNT(a.TMPLAT_ID)
FROM
LETTNTMPLATINFO a
LEFT OUTER JOIN COMVNUSERMASTER b
ON a.FRST_REGISTER_ID = b.ESNTL_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE c
ON a.TMPLAT_SE_CODE = c.CODE
WHERE
c.CODE_ID = 'COM005'
]]>
<isNotEmpty property="typeFlag">
AND a.TMPLAT_SE_CODE = #tmplatSeCode#
</isNotEmpty>
<isEqual prepend="AND" property="searchCnd" compareValue="0">
<![CDATA[ a.TMPLAT_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCnd" compareValue="1">
<![CDATA[ c.CODE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
</select>
<select id="TemplateManageDAO.selectTemplateInf" parameterClass="TemplateInfVO" resultMap="tmplatDetail" >
<![CDATA[
SELECT
a.TMPLAT_ID, a.TMPLAT_NM, a.TMPLAT_SE_CODE, a.TMPLAT_COURS, a.USE_AT,
a.FRST_REGISTER_ID, a.FRST_REGIST_PNTTM,
b.USER_NM AS FRST_REGISTER_NM, c.CODE_NM AS TMPLAT_SE_CODE_NM,
a.LAST_UPDUSR_ID,
d.USER_NM AS LAST_UPDUSR_NM, a.LAST_UPDT_PNTTM
FROM
LETTNTMPLATINFO a
LEFT OUTER JOIN COMVNUSERMASTER b
ON a.FRST_REGISTER_ID = b.ESNTL_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE c
ON a.TMPLAT_SE_CODE = c.CODE
LEFT OUTER JOIN LETTNEMPLYRINFO d
ON a.LAST_UPDUSR_ID = d.EMPLYR_ID
WHERE
c.CODE_ID = 'COM005'
AND
a.TMPLAT_ID = #tmplatId#
]]>
</select>
<update id="TemplateManageDAO.updateTemplateInf" parameterClass="TemplateInf">
<![CDATA[
UPDATE LETTNTMPLATINFO SET
TMPLAT_SE_CODE = #tmplatSeCode#,
TMPLAT_COURS = #tmplatCours#,
USE_AT = #useAt#,
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = NOW()
WHERE TMPLAT_ID = #tmplatId#
]]>
</update>
<update id="TemplateManageDAO.deleteTemplateInf" parameterClass="TemplateInf">
<![CDATA[
UPDATE LETTNBBSMASTER SET
USE_AT = 'N',
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = NOW()
WHERE TMPLAT_ID = #tmplatId#
]]>
</update>
<select id="TemplateManageDAO.selectTemplateInfsByCode" parameterClass="TemplateInfVO" resultMap="tmplatList" >
<![CDATA[
SELECT
a.TMPLAT_ID, a.TMPLAT_NM, a.TMPLAT_SE_CODE, a.TMPLAT_COURS, a.USE_AT,
a.FRST_REGISTER_ID, a.FRST_REGIST_PNTTM,
b.USER_NM AS FRST_REGISTER_NM, c.CODE_NM AS TMPLAT_SE_CODE_NM
FROM
LETTNTMPLATINFO a
LEFT OUTER JOIN COMVNUSERMASTER b
ON a.FRST_REGISTER_ID = b.ESNTL_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE c
ON a.TMPLAT_SE_CODE = c.CODE
WHERE
c.CODE_ID = 'COM005'
AND
a.TMPLAT_SE_CODE = #tmplatSeCode#
ORDER BY a.FRST_REGIST_PNTTM DESC
]]>
</select>
</sqlMap>

View File

@ -0,0 +1,222 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="OrgChartManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="PartInfVO" type="kcc.let.cop.org.service.PartInfVO"/>
<typeAlias alias="EmpInfVO" type="kcc.let.cop.org.service.EmpInfVO"/>
<resultMap id="partInfList" class="kcc.let.cop.org.service.PartInfVO">
<result property="partIdx" column="PART_IDX" columnIndex="1"/>
<result property="partTitle" column="PART_TITLE" columnIndex="2"/>
<result property="upperIdx" column="UPPER_IDX" columnIndex="3"/>
<result property="depth" column="DEPTH" columnIndex="4"/>
<result property="insertDate" column="INSERT_DATE" columnIndex="5"/>
<result property="sortOrd" column="SORT_ORD" columnIndex="6"/>
</resultMap>
<resultMap id="empInfList" class="kcc.let.cop.org.service.EmpInfVO">
<result property="paIdx" column="PA_IDX" columnIndex="1"/>
<result property="paName" column="PA_NAME" columnIndex="2"/>
<result property="paGrade" column="PA_GRADE" columnIndex="3"/>
<result property="partIdx" column="PART_IDX" columnIndex="4"/>
<result property="insertDate" column="INSERT_DATE" columnIndex="5"/>
<result property="paJob" column="PA_JOB" columnIndex="6"/>
<result property="paTel" column="PA_TEL" columnIndex="7"/>
<result property="sortOrd" column="SORT_ORD" columnIndex="8"/>
</resultMap>
<select id="orgChartManageDAO.selectPartInfs" parameterClass="PartInfVO" resultMap="partInfList" >
<![CDATA[
WITH RECURSIVE partinfo AS (
SELECT PART_IDX,
PART_TITLE,
UPPER_IDX,
1 AS DEPTH,
INSERT_DATE,
SORT_ORD,
CAST(SORT_ORD AS CHAR(50)) AS SORT_LPAD
FROM TB_PARTINFO
WHERE UPPER_IDX = 0
UNION ALL
SELECT sub_partinfo.PART_IDX,
sub_partinfo.PART_TITLE,
sub_partinfo.UPPER_IDX,
partinfo.DEPTH + 1 AS DEPTH,
sub_partinfo.INSERT_DATE,
sub_partinfo.SORT_ORD,
CONCAT(partinfo.SORT_LPAD, ",", LPAD(sub_partinfo.SORT_ORD, 5, 0)) AS SORT_LPAD
FROM TB_PARTINFO AS sub_partinfo
INNER JOIN partinfo ON partinfo.PART_IDX = sub_partinfo.UPPER_IDX
)
SELECT PART_IDX, PART_TITLE, UPPER_IDX, DEPTH, INSERT_DATE, SORT_ORD
FROM partinfo
ORDER BY SORT_LPAD
]]>
</select>
<update id="orgChartManageDAO.updatePartTitle" parameterClass="PartInfVO" >
<![CDATA[
UPDATE TB_PARTINFO
SET PART_TITLE = #partTitle#
WHERE PART_IDX = #partIdx#
]]>
</update>
<update id="orgChartManageDAO.updatePartOrder" parameterClass="PartInfVO" >
<![CDATA[
UPDATE TB_PARTINFO SET
UPPER_IDX = #upperIdx#,
SORT_ORD = #sortOrd#
WHERE PART_IDX = #partIdx#
]]>
</update>
<update id="orgChartManageDAO.updatePartSortOrderIncrs" parameterClass="PartInfVO" >
<![CDATA[
UPDATE TB_PARTINFO SET
SORT_ORD = SORT_ORD + 1
WHERE UPPER_IDX = #upperIdx#
AND SORT_ORD >= #incrsSortOrd#
]]>
</update>
<update id="orgChartManageDAO.insertPartInf" parameterClass="PartInfVO" >
<![CDATA[
INSERT INTO TB_PARTINFO (
PART_IDX,
PART_TITLE,
UPPER_IDX,
DEPTH,
INSERT_DATE,
SORT_ORD
) SELECT
(SELECT IFNULL(MAX(PART_IDX), 0) + 1 FROM TB_PARTINFO) AS PART_IDX,
#partTitle# AS PART_TITLE,
#upperIdx# AS UPPER_IDX,
#depth# AS DEPTH,
NOW() AS INSERT_DATE,
#sortOrd# AS SORT_ORD
]]>
</update>
<procedure id="orgChartManageDAO.deletePart" parameterClass="PartInfVO" >
<![CDATA[
{ CALL P_DELETE_PART(#partIdx#) }
]]>
</procedure>
<select id="orgChartManageDAO.selectPartEmpInf" parameterClass="EmpInfVO" resultMap="empInfList" >
<![CDATA[
SELECT
PA_IDX,
PA_NAME,
PA_GRADE,
PART_IDX,
INSERT_DATE,
PA_JOB,
PA_TEL,
SORT_ORD
FROM TB_PARTACCOUNT
WHERE PART_IDX = #partIdx#
]]>
<isNotEqual property="paIdx" compareValue="0">
AND PA_IDX = #paIdx#
</isNotEqual>
<![CDATA[
ORDER BY SORT_ORD
]]>
</select>
<update id="orgChartManageDAO.insertEmpInf" parameterClass="EmpInfVO" >
<![CDATA[
INSERT INTO TB_PARTACCOUNT (
PA_IDX,
PA_NAME,
PA_GRADE,
PART_IDX,
INSERT_DATE,
PA_JOB,
PA_TEL,
SORT_ORD
) SELECT
(SELECT IFNULL(MAX(PA_IDX), 0) + 1 FROM TB_PARTACCOUNT) AS PA_IDX,
#paName# AS PA_NAME,
#paGrade# AS PA_GRADE,
#partIdx# AS PART_IDX,
NOW() AS INSERT_DATE,
#paJob# AS PA_JOB,
#paTel# AS PA_TEL,
#sortOrd# AS SORT_ORD
]]>
</update>
<update id="orgChartManageDAO.updateEmpInf" parameterClass="EmpInfVO" >
<![CDATA[
UPDATE TB_PARTACCOUNT SET
PA_NAME = #paName#,
PA_GRADE = #paGrade#,
PART_IDX = #partIdx#,
PA_JOB = #paJob#,
PA_TEL = #paTel#,
SORT_ORD = #sortOrd#
WHERE PA_IDX = #paIdx#
]]>
</update>
<delete id="orgChartManageDAO.deleteEmpInf" parameterClass="EmpInfVO" >
<![CDATA[
DELETE FROM TB_PARTACCOUNT
WHERE PA_IDX = #paIdx#
]]>
</delete>
<select id="orgChartManageDAO.selectChartDepth" parameterClass="PartInfVO" resultClass="PartInfVO" >
SELECT PART_IDX partIdx,
PART_TITLE partTitle ,
UPPER_IDX upperIdx ,
DEPTH depth
FROM TB_PARTINFO
WHERE 1=1
AND DEPTH = #depth#
<isNotNull property="upperIdx">
AND UPPER_IDX = #upperIdx#
</isNotNull>
</select>
<select id="orgChartManageDAO.selectUserPart" parameterClass="PartInfVO" resultClass="PartInfVO" >
WITH RECURSIVE partinfo AS
(
SELECT PART_IDX,
PART_TITLE,
UPPER_IDX,
DEPTH,
INSERT_DATE,
SORT_ORD,
CAST(SORT_ORD AS CHAR(50)) AS SORT_LPAD
FROM TB_PARTINFO
WHERE PART_IDX = #partIdx#
UNION ALL
SELECT sub_partinfo.PART_IDX,
sub_partinfo.PART_TITLE,
sub_partinfo.UPPER_IDX,
sub_partinfo.DEPTH ,
sub_partinfo.INSERT_DATE,
sub_partinfo.SORT_ORD,
CONCAT(partinfo.SORT_LPAD, ",", LPAD(sub_partinfo.SORT_ORD, 5, 0)) AS SORT_LPAD
FROM TB_PARTINFO AS sub_partinfo
INNER JOIN partinfo
ON sub_partinfo.PART_IDX = partinfo.UPPER_IDX
)
SELECT PART_IDX as partIdx,
PART_TITLE as partTitle,
UPPER_IDX as upperIdx,
DEPTH as depth,
SORT_ORD as sortOrd
FROM partinfo
ORDER BY DEPTH
</select>
</sqlMap>

View File

@ -0,0 +1,222 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="OrgChartManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="PartInfVO" type="kcc.let.cop.org.service.PartInfVO"/>
<typeAlias alias="EmpInfVO" type="kcc.let.cop.org.service.EmpInfVO"/>
<resultMap id="partInfList" class="kcc.let.cop.org.service.PartInfVO">
<result property="partIdx" column="PART_IDX" columnIndex="1"/>
<result property="partTitle" column="PART_TITLE" columnIndex="2"/>
<result property="upperIdx" column="UPPER_IDX" columnIndex="3"/>
<result property="depth" column="DEPTH" columnIndex="4"/>
<result property="insertDate" column="INSERT_DATE" columnIndex="5"/>
<result property="sortOrd" column="SORT_ORD" columnIndex="6"/>
</resultMap>
<resultMap id="empInfList" class="kcc.let.cop.org.service.EmpInfVO">
<result property="paIdx" column="PA_IDX" columnIndex="1"/>
<result property="paName" column="PA_NAME" columnIndex="2"/>
<result property="paGrade" column="PA_GRADE" columnIndex="3"/>
<result property="partIdx" column="PART_IDX" columnIndex="4"/>
<result property="insertDate" column="INSERT_DATE" columnIndex="5"/>
<result property="paJob" column="PA_JOB" columnIndex="6"/>
<result property="paTel" column="PA_TEL" columnIndex="7"/>
<result property="sortOrd" column="SORT_ORD" columnIndex="8"/>
</resultMap>
<select id="orgChartManageDAO.selectPartInfs" parameterClass="PartInfVO" resultMap="partInfList" >
<![CDATA[
WITH RECURSIVE partinfo AS (
SELECT PART_IDX,
PART_TITLE,
UPPER_IDX,
1 AS DEPTH,
INSERT_DATE,
SORT_ORD,
CAST(SORT_ORD AS CHAR(50)) AS SORT_LPAD
FROM TB_PARTINFO
WHERE UPPER_IDX = 0
UNION ALL
SELECT sub_partinfo.PART_IDX,
sub_partinfo.PART_TITLE,
sub_partinfo.UPPER_IDX,
partinfo.DEPTH + 1 AS DEPTH,
sub_partinfo.INSERT_DATE,
sub_partinfo.SORT_ORD,
CONCAT(partinfo.SORT_LPAD, ",", LPAD(sub_partinfo.SORT_ORD, 5, 0)) AS SORT_LPAD
FROM TB_PARTINFO AS sub_partinfo
INNER JOIN partinfo ON partinfo.PART_IDX = sub_partinfo.UPPER_IDX
)
SELECT PART_IDX, PART_TITLE, UPPER_IDX, DEPTH, INSERT_DATE, SORT_ORD
FROM partinfo
ORDER BY SORT_LPAD
]]>
</select>
<update id="orgChartManageDAO.updatePartTitle" parameterClass="PartInfVO" >
<![CDATA[
UPDATE TB_PARTINFO
SET PART_TITLE = #partTitle#
WHERE PART_IDX = #partIdx#
]]>
</update>
<update id="orgChartManageDAO.updatePartOrder" parameterClass="PartInfVO" >
<![CDATA[
UPDATE TB_PARTINFO SET
UPPER_IDX = #upperIdx#,
SORT_ORD = #sortOrd#
WHERE PART_IDX = #partIdx#
]]>
</update>
<update id="orgChartManageDAO.updatePartSortOrderIncrs" parameterClass="PartInfVO" >
<![CDATA[
UPDATE TB_PARTINFO SET
SORT_ORD = SORT_ORD + 1
WHERE UPPER_IDX = #upperIdx#
AND SORT_ORD >= #incrsSortOrd#
]]>
</update>
<update id="orgChartManageDAO.insertPartInf" parameterClass="PartInfVO" >
<![CDATA[
INSERT INTO TB_PARTINFO (
PART_IDX,
PART_TITLE,
UPPER_IDX,
DEPTH,
INSERT_DATE,
SORT_ORD
) SELECT
(SELECT IFNULL(MAX(PART_IDX), 0) + 1 FROM TB_PARTINFO) AS PART_IDX,
#partTitle# AS PART_TITLE,
#upperIdx# AS UPPER_IDX,
#depth# AS DEPTH,
NOW() AS INSERT_DATE,
#sortOrd# AS SORT_ORD
]]>
</update>
<procedure id="orgChartManageDAO.deletePart" parameterClass="PartInfVO" >
<![CDATA[
{ CALL P_DELETE_PART(#partIdx#) }
]]>
</procedure>
<select id="orgChartManageDAO.selectPartEmpInf" parameterClass="EmpInfVO" resultMap="empInfList" >
<![CDATA[
SELECT
PA_IDX,
PA_NAME,
PA_GRADE,
PART_IDX,
INSERT_DATE,
PA_JOB,
PA_TEL,
SORT_ORD
FROM TB_PARTACCOUNT
WHERE PART_IDX = #partIdx#
]]>
<isNotEqual property="paIdx" compareValue="0">
AND PA_IDX = #paIdx#
</isNotEqual>
<![CDATA[
ORDER BY SORT_ORD
]]>
</select>
<update id="orgChartManageDAO.insertEmpInf" parameterClass="EmpInfVO" >
<![CDATA[
INSERT INTO TB_PARTACCOUNT (
PA_IDX,
PA_NAME,
PA_GRADE,
PART_IDX,
INSERT_DATE,
PA_JOB,
PA_TEL,
SORT_ORD
) SELECT
(SELECT IFNULL(MAX(PA_IDX), 0) + 1 FROM TB_PARTACCOUNT) AS PA_IDX,
#paName# AS PA_NAME,
#paGrade# AS PA_GRADE,
#partIdx# AS PART_IDX,
NOW() AS INSERT_DATE,
#paJob# AS PA_JOB,
#paTel# AS PA_TEL,
#sortOrd# AS SORT_ORD
]]>
</update>
<update id="orgChartManageDAO.updateEmpInf" parameterClass="EmpInfVO" >
<![CDATA[
UPDATE TB_PARTACCOUNT SET
PA_NAME = #paName#,
PA_GRADE = #paGrade#,
PART_IDX = #partIdx#,
PA_JOB = #paJob#,
PA_TEL = #paTel#,
SORT_ORD = #sortOrd#
WHERE PA_IDX = #paIdx#
]]>
</update>
<delete id="orgChartManageDAO.deleteEmpInf" parameterClass="EmpInfVO" >
<![CDATA[
DELETE FROM TB_PARTACCOUNT
WHERE PA_IDX = #paIdx#
]]>
</delete>
<select id="orgChartManageDAO.selectChartDepth" parameterClass="PartInfVO" resultClass="PartInfVO" >
SELECT PART_IDX partIdx,
PART_TITLE partTitle ,
UPPER_IDX upperIdx ,
DEPTH depth
FROM TB_PARTINFO
WHERE 1=1
AND DEPTH = #depth#
<isNotNull property="upperIdx">
AND UPPER_IDX = #upperIdx#
</isNotNull>
</select>
<select id="orgChartManageDAO.selectUserPart" parameterClass="PartInfVO" resultClass="PartInfVO" >
WITH RECURSIVE partinfo AS
(
SELECT PART_IDX,
PART_TITLE,
UPPER_IDX,
DEPTH,
INSERT_DATE,
SORT_ORD,
CAST(SORT_ORD AS CHAR(50)) AS SORT_LPAD
FROM TB_PARTINFO
WHERE PART_IDX = #partIdx#
UNION ALL
SELECT sub_partinfo.PART_IDX,
sub_partinfo.PART_TITLE,
sub_partinfo.UPPER_IDX,
sub_partinfo.DEPTH ,
sub_partinfo.INSERT_DATE,
sub_partinfo.SORT_ORD,
CONCAT(partinfo.SORT_LPAD, ",", LPAD(sub_partinfo.SORT_ORD, 5, 0)) AS SORT_LPAD
FROM TB_PARTINFO AS sub_partinfo
INNER JOIN partinfo
ON sub_partinfo.PART_IDX = partinfo.UPPER_IDX
)
SELECT PART_IDX as partIdx,
PART_TITLE as partTitle,
UPPER_IDX as upperIdx,
DEPTH as depth,
SORT_ORD as sortOrd
FROM partinfo
ORDER BY DEPTH
</select>
</sqlMap>

View File

@ -0,0 +1,336 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="ResveManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="ResveVO" type="kcc.let.cop.resve.service.ResveVO"/>
<typeAlias alias="Resve" type="kcc.let.cop.resve.service.Resve"/>
<typeAlias alias="ComDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<resultMap id="resveList" class="kcc.let.cop.resve.service.ResveVO">
<result property="applyNum" column="APPLY_NUM" />
<result property="userName" column="USER_NAME" />
<result property="userTypeNm" column="USER_TYPE_NM" />
<result property="resSdate" column="RES_SDATE" />
<result property="resEdate" column="RES_EDATE" />
<result property="resStart" column="RES_START" />
<result property="resStateNm" column="RES_STATE_NM" />
<result property="exName" column="EX_NAME" />
<result property="exRoom1" column="EX_ROOM1" />
<result property="exRoom2" column="EX_ROOM2" />
<result property="exRoom3" column="EX_ROOM3" />
<result property="exRoom4" column="EX_ROOM4" />
<result property="exRoom5" column="EX_ROOM5" />
<result property="exRoom6" column="EX_ROOM6" />
<result property="imgAtchFileId" column="IMG_ATCH_FILE_ID" />
<result property="thumbAtchFileId" column="THUMB_ATCH_FILE_ID" />
<result property="portfolioAtchFileId" column="PORTFOLIO_ATCH_FILE_ID" />
</resultMap>
<resultMap id="resveDetail" class="kcc.let.cop.resve.service.ResveVO">
<result property="applyNum" column="APPLY_NUM" />
<result property="userName" column="USER_NAME" />
<result property="userType" column="USER_TYPE" />
<result property="email" column="EMAIL" />
<result property="display" column="DISPLAY" />
<result property="maindisplay" column="MAINDISPLAY" />
<result property="resSdate" column="RES_SDATE" />
<result property="resEdate" column="RES_EDATE" />
<result property="resStart" column="RES_START" />
<result property="resState" column="RES_STATE" />
<result property="recordStatus" column="RECORD_STATUS" />
<result property="exDevise" column="EX_DEVISE" />
<result property="exName" column="EX_NAME" />
<result property="exExplain" column="EX_EXPLAIN" />
<result property="exHours" column="EX_HOURS" />
<result property="exRoom1" column="EX_ROOM1" />
<result property="exRoom2" column="EX_ROOM2" />
<result property="exRoom3" column="EX_ROOM3" />
<result property="exRoom4" column="EX_ROOM4" />
<result property="exRoom5" column="EX_ROOM5" />
<result property="exRoom6" column="EX_ROOM6" />
<result property="telHome1" column="TEL_HOME1" />
<result property="telHome2" column="TEL_HOME2" />
<result property="telHome3" column="TEL_HOME3" />
<result property="telMobile1" column="TEL_MOBILE1" />
<result property="telMobile2" column="TEL_MOBILE2" />
<result property="telMobile3" column="TEL_MOBILE3" />
<result property="authorName" column="AUTHOR_NAME" />
<result property="companyName" column="COMPANY_NAME" />
<result property="companyNumber" column="COMPANY_NUMBER" />
<result property="groupName" column="GROUP_NAME" />
<result property="imgAtchFileId" column="IMG_ATCH_FILE_ID" />
<result property="thumbAtchFileId" column="THUMB_ATCH_FILE_ID" />
<result property="portfolioAtchFileId" column="PORTFOLIO_ATCH_FILE_ID" />
</resultMap>
<resultMap id="resveListWeb" class="kcc.let.cop.resve.service.ResveVO">
<result property="strDate" column="strDate" />
<result property="exRoom1" column="EX_ROOM1" />
<result property="exRoom2" column="EX_ROOM2" />
<result property="exRoom3" column="EX_ROOM3" />
<result property="exRoom5Am" column="EX_ROOM5_AM" />
<result property="exRoom5Pm" column="EX_ROOM5_PM" />
</resultMap>
<select id="ResveManageDAO.selectResveManageList" parameterClass="ResveVO" resultMap="resveList" >
<![CDATA[
SELECT
a.APPLY_NUM
,c.CODE_NM as USER_TYPE_NM
,a.EX_NAME
,SUBSTR(TRIM(a.USER_NAME), 1, 1) as USER_NAME
,a.EX_ROOM1
,a.EX_ROOM2
,a.EX_ROOM3
,a.EX_ROOM4
,a.EX_ROOM5
,a.EX_ROOM6
,DATE_FORMAT(a.RES_SDATE, '%Y-%m-%d') as RES_SDATE
,DATE_FORMAT(a.RES_EDATE, '%Y-%m-%d') as RES_EDATE
,b.CODE_NM as RES_STATE_NM
,DATE_FORMAT(a.RES_START, '%Y-%m-%d') as RES_START
,IFNULL(a.THUMB_ATCH_FILE_ID, '-') as THUMB_ATCH_FILE_ID
,IFNULL(a.IMG_ATCH_FILE_ID, '-') as IMG_ATCH_FILE_ID
,IFNULL(a.PORTFOLIO_ATCH_FILE_ID, '-') as PORTFOLIO_ATCH_FILE_ID
FROM TB_RESERVATION a
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'ITN006' AND USE_AT='Y') b
ON a.RES_STATE = b.CODE
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'ITN007' AND USE_AT='Y') c
ON a.USER_TYPE = c.CODE
WHERE RECORD_STATUS != 'D'
AND RES_STATE != 'a' /* 신청상태. a:의미파악안됨 */
]]>
<isEqual prepend="AND" property="searchCnd" compareValue="0">
<![CDATA[ a.EX_NAME LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCnd" compareValue="1">
<![CDATA[ a.USER_NAME LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<![CDATA[
ORDER BY a.RES_START DESC
LIMIT #recordCountPerPage# OFFSET #firstIndex#
]]>
</select>
<select id="ResveManageDAO.selectResveManageListCnt" parameterClass="ResveVO" resultClass="java.lang.Integer" >
<![CDATA[
SELECT
COUNT(1)
FROM TB_RESERVATION a
WHERE RECORD_STATUS != 'D'
AND RES_STATE != 'a' /* 신청상태. a:의미파악안됨 */
]]>
<isEqual prepend="AND" property="searchCnd" compareValue="0">
<![CDATA[ a.EX_NAME LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCnd" compareValue="1">
<![CDATA[ a.USER_NAME LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isEqual>
</select>
<select id="ResveManageDAO.selectResveManageInf" parameterClass="ResveVO" resultMap="resveDetail" >
<![CDATA[
SELECT
a.APPLY_NUM
,a.USER_NAME
,a.USER_TYPE
,a.EMAIL
,a.DISPLAY
,a.MAINDISPLAY
,DATE_FORMAT(a.RES_SDATE, '%Y-%m-%d') as RES_SDATE
,DATE_FORMAT(a.RES_EDATE, '%Y-%m-%d') as RES_EDATE
,a.RES_START
,a.RES_STATE
,a.RECORD_STATUS
,a.EX_DEVISE
,a.EX_NAME
,a.EX_EXPLAIN
,a.EX_HOURS
,a.EX_ROOM1
,a.EX_ROOM2
,a.EX_ROOM3
,a.EX_ROOM4
,a.EX_ROOM5
,a.EX_ROOM6
,a.TEL_HOME1
,a.TEL_HOME2
,a.TEL_HOME3
,a.TEL_MOBILE1
,a.TEL_MOBILE2
,a.TEL_MOBILE3
,a.AUTHOR_NAME
,a.COMPANY_NAME
,a.COMPANY_NUMBER
,a.GROUP_NAME
,a.IMG_ATCH_FILE_ID
,a.THUMB_ATCH_FILE_ID
,a.PORTFOLIO_ATCH_FILE_ID
FROM TB_RESERVATION a
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'ITN006' AND USE_AT='Y') b
ON a.RES_STATE = b.CODE
LEFT OUTER JOIN
(SELECT CODE_ID, CODE, CODE_NM FROM
LETTCCMMNDETAILCODE WHERE CODE_ID = 'ITN007' AND USE_AT='Y') c
ON a.USER_TYPE = c.CODE
WHERE RECORD_STATUS != 'D'
AND RES_STATE != 'a' /* 신청상태. a:의미파악안됨 */
AND a.APPLY_NUM = #applyNum#
]]>
</select>
<update id="ResveManageDAO.updateResveManageInf" parameterClass="Resve">
<![CDATA[
UPDATE TB_RESERVATION
SET RES_STATE = #resState#
WHERE RECORD_STATUS != 'D'
AND RES_STATE != 'a' /* 신청상태. a:의미파악안됨 */
AND APPLY_NUM = #applyNum#
]]>
</update>
<update id="ResveManageDAO.insertResveManage" parameterClass="Resve" >
<![CDATA[
INSERT INTO TB_RESERVATION (
APPLY_NUM, USER_NAME, USER_TYPE, EMAIL, DISPLAY, MAINDISPLAY,
RES_SDATE, RES_EDATE, RES_START, RES_STATE, RECORD_STATUS,
EX_DEVISE, EX_NAME, EX_EXPLAIN, EX_HOURS,
EX_ROOM1, EX_ROOM2, EX_ROOM3, EX_ROOM4, EX_ROOM5, EX_ROOM6,
TEL_HOME1, TEL_HOME2, TEL_HOME3, TEL_MOBILE1, TEL_MOBILE2, TEL_MOBILE3,
AUTHOR_NAME, COMPANY_NAME, COMPANY_NUMBER, GROUP_NAME,
IMG_ATCH_FILE_ID, THUMB_ATCH_FILE_ID, PORTFOLIO_ATCH_FILE_ID, MEMBER_ID
) VALUES (
(SELECT IFNULL(MAX(APPLY_NUM), 0)+1 FROM TB_RESERVATION a),
#userName#, #userType#, #email#, 'Y', 'N',
#resSdate#, #resEdate#, NOW(), #resState#, '',
#exDevise#, #exName#, #exExplain#, #exHours#,
#exRoom1#, #exRoom2#, #exRoom3#, #exRoom4#, #exRoom5#, #exRoom6#,
#telHome1#, #telHome2#, #telHome3#, #telMobile1#, #telMobile2#, #telMobile3#,
#authorName#, #companyName#, #companyNumber#, #groupName#,
#imgAtchFileId#, #thumbAtchFileId#, #portfolioAtchFileId#, #memberId#
)
]]>
</update>
<update id="ResveManageDAO.deleteResveManage" parameterClass="Resve" >
<![CDATA[
UPDATE TB_RESERVATION SET
RECORD_STATUS = 'D'
WHERE APPLY_NUM = #applyNum#
]]>
</update>
<!-- 대관신청 가능일 조회 (전시관) -->
<select id="ResveManageDAO.resveResSdateList" parameterClass="Resve" resultClass="egovMap" >
<![CDATA[
SELECT
DATE_FORMAT(a.RES_SDATE, '%Y%m%d') as RES_SDATE
FROM TB_RESERVATION a
WHERE 1=1
AND a.RECORD_STATUS != 'D'
AND a.RES_STATE = 'b'
AND a.RES_SDATE BETWEEN #searchDate# and #searchDate1#
AND (1=2
]]>
<isEqual property="exRoom1" compareValue="r">
OR a.EX_ROOM1 = 'r'
</isEqual>
<isEqual property="exRoom2" compareValue="r">
OR a.EX_ROOM2 = 'r'
</isEqual>
<isEqual property="exRoom3" compareValue="r">
OR a.EX_ROOM3 = 'r'
</isEqual>
<![CDATA[
)
ORDER BY a.RES_SDATE
]]>
</select>
<!-- 대관신청 가능일 조회 (교육장) -->
<select id="ResveManageDAO.resveResSdateList1" parameterClass="Resve" resultClass="egovMap" >
<![CDATA[
SELECT
DATE_FORMAT(a.RES_SDATE, '%Y%m%d') as RES_SDATE
,GROUP_CONCAT(EX_HOURS SEPARATOR '|') AS EX_HOURS
FROM TB_RESERVATION a
WHERE 1=1
AND a.RECORD_STATUS != 'D'
AND a.RES_STATE = 'b'
AND a.RES_SDATE BETWEEN #searchDate# and #searchDate1#
AND a.EX_ROOM5 = 'r'
GROUP BY a.RES_SDATE
ORDER BY a.RES_SDATE
]]>
</select>
<!-- 대관신청 대관가능일 가능여부 -->
<select id="ResveManageDAO.resvePosbleDate" parameterClass="Resve" resultClass="java.lang.Integer" >
<![CDATA[
SELECT
COUNT(1)
FROM TB_RESERVATION a
WHERE 1=1
AND a.RECORD_STATUS != 'D'
AND a.RES_STATE = 'b'
AND a.RES_SDATE BETWEEN #resSdate# and #resEdate#
AND (1=2
]]>
<isEqual property="exRoom1" compareValue="r">
OR a.EX_ROOM1 = 'r'
</isEqual>
<isEqual property="exRoom2" compareValue="r">
OR a.EX_ROOM2 = 'r'
</isEqual>
<isEqual property="exRoom3" compareValue="r">
OR a.EX_ROOM3 = 'r'
</isEqual>
<isEqual property="exRoom5" compareValue="r">
OR a.EX_ROOM5 = 'r'
</isEqual>
<![CDATA[
)
]]>
<isEqual property="exRoom5" compareValue="r">
AND a.EX_HOURS = #exHours#
</isEqual>
</select>
<select id="ResveManageDAO.selectResveManageListWeb" parameterClass="ResveVO" resultMap="resveListWeb" >
<![CDATA[
WITH days AS (
WITH RECURSIVE days AS (
SELECT DATE_FORMAT(#searchDate# + INTERVAL 0 DAY, '%Y%m%d') AS strDate
UNION ALL
SELECT DATE_FORMAT(sub_days.strDate + INTERVAL 1 DAY, '%Y%m%d') AS strDate
FROM days AS sub_days
WHERE sub_days.strDate + INTERVAL 1 DAY < #searchDate# + INTERVAL 1 MONTH
)
SELECT strDate
FROM days
)
SELECT
days.strDate
, GROUP_CONCAT(IF(a.EX_ROOM1='r',CONCAT(a.APPLY_NUM, '|', a.EX_NAME, '|', IFNULL(a.AUTHOR_NAME, '')), '')) AS EX_ROOM1
, GROUP_CONCAT(IF(a.EX_ROOM2='r',CONCAT(a.APPLY_NUM, '|', a.EX_NAME, '|', IFNULL(a.AUTHOR_NAME, '')), '')) AS EX_ROOM2
, GROUP_CONCAT(IF(a.EX_ROOM3='r',CONCAT(a.APPLY_NUM, '|', a.EX_NAME, '|', IFNULL(a.AUTHOR_NAME, '')), '')) AS EX_ROOM3
, GROUP_CONCAT(IF(a.EX_ROOM5='r' AND EX_HOURS='am' ,CONCAT(a.APPLY_NUM, '|', a.EX_NAME, '|', IFNULL(a.AUTHOR_NAME, '')), '')) AS EX_ROOM5_AM
, GROUP_CONCAT(IF(a.EX_ROOM5='r' AND EX_HOURS='pm' ,CONCAT(a.APPLY_NUM, '|', a.EX_NAME, '|', IFNULL(a.AUTHOR_NAME, '')), '')) AS EX_ROOM5_PM
FROM TB_RESERVATION a RIGHT OUTER JOIN days
ON days.strDate BETWEEN a.RES_SDATE AND a.RES_EDATE
AND a.RECORD_STATUS != 'D'
AND a.RES_STATE = 'b'
WHERE 1=1
GROUP BY days.strDate
ORDER BY days.strDate
]]>
</select>
</sqlMap>

View File

@ -0,0 +1,317 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="IndvdlSchdulManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="IndvdlSchdulManageVO" type="kcc.let.cop.smt.sim.service.IndvdlSchdulManageVO"/>
<resultMap id="IndvdlSchdulManage" class="kcc.let.cop.smt.sim.service.IndvdlSchdulManageVO">
<result property="schdulId" column="SCHDUL_ID" columnIndex="1"/>
<result property="schdulSe" column="SCHDUL_SE" columnIndex="2"/>
<result property="schdulDeptId" column="SCHDUL_DEPT_ID" columnIndex="3"/>
<result property="schdulDeptName" column="SCHDUL_DEPT_NAME" columnIndex="4"/>
<result property="schdulKindCode" column="SCHDUL_KND_CODE" columnIndex="5"/>
<result property="schdulBgnde" column="SCHDUL_BEGINDE" columnIndex="6"/>
<result property="schdulEndde" column="SCHDUL_ENDDE" columnIndex="7"/>
<result property="schdulNm" column="SCHDUL_NM" columnIndex="8"/>
<result property="schdulCn" column="SCHDUL_CN" columnIndex="9"/>
<result property="schdulPlace" column="SCHDUL_PLACE" columnIndex="10"/>
<result property="schdulIpcrCode" column="SCHDUL_IPCR_CODE" columnIndex="11"/>
<result property="schdulChargerId" column="SCHDUL_CHARGER_ID" columnIndex="12"/>
<result property="schdulChargerName" column="SCHDUL_CHARGER_NAME" columnIndex="13"/>
<result property="atchFileId" column="ATCH_FILE_ID" columnIndex="14"/>
<result property="reptitSeCode" column="REPTIT_SE_CODE" columnIndex="15"/>
<result property="frstRegisterPnttm" column="FRST_REGIST_PNTTM" columnIndex="16" />
<result property="frstRegisterId" column="FRST_REGISTER_ID" columnIndex="17"/>
<result property="lastUpdusrPnttm" column="LAST_UPDT_PNTTM" columnIndex="18"/>
<result property="lastUpdusrId" column="LAST_UPDUSR_ID" columnIndex="19" />
</resultMap>
<!-- 메인페이지/일정관리조회 -->
<select id="IndvdlSchdulManage.selectIndvdlSchdulManageMainList" parameterClass="java.util.Map" resultClass="egovMap">
SELECT
DATE_FORMAT(NOW(),'%Y-%m-%d') TO_DAY,
A.SCHDUL_ID,
A.SCHDUL_SE,
A.SCHDUL_DEPT_ID,
A.SCHDUL_KND_CODE,
DATE_FORMAT(A.SCHDUL_BEGINDE, '%Y%m%d%H%i')SCHDUL_BGNDE,
DATE_FORMAT(A.SCHDUL_ENDDE, '%Y%m%d%H%i')SCHDUL_ENDDE,
A.SCHDUL_NM,
A.SCHDUL_CN,
A.SCHDUL_PLACE,
A.SCHDUL_IPCR_CODE,
A.SCHDUL_CHARGER_ID,
A.ATCH_FILE_ID,
DATE_FORMAT(A.FRST_REGIST_PNTTM,'%Y-%m-%d') FRST_REGIST_PNTTM,
A.FRST_REGISTER_ID,
A.LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID,
A.REPTIT_SE_CODE
FROM LETTNSCHDULINFO A
WHERE 1=1
AND A.SCHDUL_KND_CODE = '2'
AND (A.SCHDUL_CHARGER_ID = #uniqId# OR A.FRST_REGISTER_ID = #uniqId#)
<![CDATA[
AND (
( SUBSTRING(A.SCHDUL_BEGINDE,1,8) > DATE_FORMAT(NOW(),'%Y%m%d') AND SUBSTRING(A.SCHDUL_BEGINDE,1,8) <= DATE_FORMAT(NOW(),'%Y%m%d'))
OR
( SUBSTRING(A.SCHDUL_ENDDE,1,8) >DATE_FORMAT(NOW(),'%Y%m%d') AND SUBSTRING(A.SCHDUL_BEGINDE,1,8) <= DATE_FORMAT(NOW(),'%Y%m%d'))
)
]]>
ORDER BY A.FRST_REGIST_PNTTM DESC
LIMIT 0, 4
</select>
<!-- 개인일정정보::목록조회 -->
<select id="IndvdlSchdulManage.selectIndvdlSchdulManageRetrieve" parameterClass="java.util.Map" resultClass="egovMap">
<![CDATA[
SELECT
A.SCHDUL_ID,
A.SCHDUL_SE,
A.SCHDUL_DEPT_ID,
A.SCHDUL_KND_CODE,
DATE_FORMAT(A.SCHDUL_BEGINDE, '%Y%m%d%H%i')SCHDUL_BGNDE,
DATE_FORMAT(A.SCHDUL_ENDDE, '%Y%m%d%H%i')SCHDUL_ENDDE,
A.SCHDUL_NM,
A.SCHDUL_CN,
A.SCHDUL_PLACE,
A.SCHDUL_IPCR_CODE,
A.SCHDUL_CHARGER_ID,
A.ATCH_FILE_ID,
A.FRST_REGIST_PNTTM,
A.FRST_REGISTER_ID,
A.LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID,
A.REPTIT_SE_CODE
FROM LETTNSCHDULINFO A
WHERE 1=1
AND A.SCHDUL_KND_CODE = '2'
]]>
<isNotEmpty property="searchMode">
<isEqual property="searchMode" compareValue="MONTH">
<isNotEmpty property="searchMonth">
<isNotEqual property="searchMonth" compareValue="">
AND (#searchMonth# BETWEEN SUBSTRING(DATE_FORMAT(A.SCHDUL_BEGINDE,'%Y%m%d'), 1, 6) AND SUBSTRING(DATE_FORMAT(A.SCHDUL_ENDDE,'%Y%m%d'), 1, 6) )
</isNotEqual>
</isNotEmpty>
</isEqual>
<isEqual property="searchMode" compareValue="WEEK">
<![CDATA[
AND (
( SUBSTRING(DATE_FORMAT(A.SCHDUL_BEGINDE,'%Y%m%d'),1,8) > #schdulBgnde# AND SUBSTRING(DATE_FORMAT(A.SCHDUL_BEGINDE,'%Y%m%d'),1,8) <= #schdulEndde#)
OR
( SUBSTRING(DATE_FORMAT(A.SCHDUL_ENDDE,'%Y%m%d'),1,8) > #schdulBgnde# AND SUBSTRING(DATE_FORMAT(A.SCHDUL_BEGINDE,'%Y%m%d'),1,8) <= #schdulEndde#)
)
]]>
</isEqual>
<isEqual property="searchMode" compareValue="DAILY">
<![CDATA[
AND (#searchDay# BETWEEN SUBSTRING(DATE_FORMAT(A.SCHDUL_BEGINDE,'%Y%m%d'), 1, 8) AND SUBSTRING(DATE_FORMAT(A.SCHDUL_ENDDE,'%Y%m%d'), 1, 8) )
]]>
</isEqual>
</isNotEmpty>
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isNotEqual property="searchCondition" compareValue="">
AND SCHDUL_SE LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isNotEqual>
</isNotEqual>
</isNotEmpty>
</select>
<!-- 개인일정정보::상세보기 -->
<select id="IndvdlSchdulManage.selectIndvdlSchdulManageDetailVO" resultMap="IndvdlSchdulManage">
SELECT
A.SCHDUL_ID,
A.SCHDUL_SE,
A.SCHDUL_DEPT_ID,
(SELECT ORGNZT_NM FROM LETTNORGNZTINFO WHERE ORGNZT_ID = A.SCHDUL_DEPT_ID) SCHDUL_DEPT_NAME,
A.SCHDUL_KND_CODE,
DATE_FORMAT(A.SCHDUL_BEGINDE, '%Y%m%d%H%i')SCHDUL_BEGINDE,
DATE_FORMAT(A.SCHDUL_ENDDE, '%Y%m%d%H%i')SCHDUL_ENDDE,
A.SCHDUL_NM,
A.SCHDUL_CN,
A.SCHDUL_PLACE,
A.SCHDUL_IPCR_CODE,
A.SCHDUL_CHARGER_ID,
(SELECT ESNTL_ID FROM LETTNEMPLYRINFO WHERE ESNTL_ID = A.SCHDUL_CHARGER_ID) SCHDUL_CHARGER_NAME,
A.ATCH_FILE_ID,
A.REPTIT_SE_CODE,
A.FRST_REGIST_PNTTM,
A.FRST_REGISTER_ID,
A.LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID
FROM LETTNSCHDULINFO A
WHERE 1=1
AND SCHDUL_ID = #schdulId#
</select>
<!-- 개인일정정보::목록조회_게시물정보 -->
<select id="IndvdlSchdulManage.selectIndvdlSchdulManage" parameterClass="comDefaultVO" resultClass="egovMap">
<![CDATA[
SELECT
A.SCHDUL_ID,
A.SCHDUL_SE,
A.SCHDUL_DEPT_ID,
A.SCHDUL_KND_CODE,
DATE_FORMAT(A.SCHDUL_BEGINDE, '%Y%m%d%H%i')SCHDUL_BGNDE,
DATE_FORMAT(A.SCHDUL_ENDDE, '%Y%m%d%H%i')SCHDUL_ENDDE,
A.SCHDUL_NM,
A.SCHDUL_CN,
A.SCHDUL_PLACE,
A.SCHDUL_IPCR_CODE,
A.SCHDUL_CHARGER_ID,
A.ATCH_FILE_ID,
A.FRST_REGIST_PNTTM,
A.FRST_REGISTER_ID,
A.LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID,
A.REPTIT_SE_CODE
FROM LETTNSCHDULINFO A
WHERE 1=1
]]>
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isNotEqual property="searchCondition" compareValue="">
AND SCHDUL_SE LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isNotEqual>
</isNotEqual>
</isNotEmpty>
<![CDATA[
ORDER BY A.FRST_REGIST_PNTTM DESC
LIMIT #recordCountPerPage# OFFSET #firstIndex#
]]>
</select>
<!-- 개인일정정보::목록조회_게시물 총갯수 -->
<select id="IndvdlSchdulManage.selectIndvdlSchdulManageCnt" parameterClass="comDefaultVO" resultClass="int">
SELECT
COUNT(*) totcnt
FROM LETTNSCHDULINFO
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isNotEqual property="searchCondition" compareValue="">
AND SCHDUL_SE LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isNotEqual>
</isNotEqual>
</isNotEmpty>
</select>
<!-- 개인일정정보::삭제 -->
<delete id="IndvdlSchdulManage.deleteDiaryManage">
DELETE FROM LETTNDIARYINFO WHERE SCHDUL_ID = #schdulId#;
</delete>
<delete id="IndvdlSchdulManage.deleteIndvdlSchdulManage">
<![CDATA[
DELETE FROM LETTNSCHDULINFO WHERE SCHDUL_ID = #schdulId#;
]]>
</delete>
<!-- 개인일정정보::수정 -->
<update id="IndvdlSchdulManage.updateIndvdlSchdulManage">
UPDATE LETTNSCHDULINFO
SET
SCHDUL_SE=#schdulSe#,
SCHDUL_DEPT_ID=#schdulDeptId#,
SCHDUL_KND_CODE=#schdulKindCode#,
SCHDUL_BEGINDE=#schdulBgnde#,
SCHDUL_ENDDE=#schdulEndde#,
SCHDUL_NM=#schdulNm#,
SCHDUL_CN=#schdulCn#,
SCHDUL_IPCR_CODE=#schdulIpcrCode#,
SCHDUL_CHARGER_ID=#schdulChargerId#,
ATCH_FILE_ID=#atchFileId#,
REPTIT_SE_CODE=#reptitSeCode#,
LAST_UPDT_PNTTM = NOW(),
LAST_UPDUSR_ID = #lastUpdusrId#
WHERE SCHDUL_ID = #schdulId#
</update>
<!-- 개인일정정보::상세보기 -->
<select id="IndvdlSchdulManage.selectIndvdlSchdulManageDetail" resultClass="egovMap">
SELECT
A.SCHDUL_ID,
A.SCHDUL_SE,
A.SCHDUL_DEPT_ID,
(SELECT ORGNZT_NM FROM LETTNORGNZTINFO WHERE ORGNZT_ID = A.SCHDUL_DEPT_ID) SCHDUL_DEPT_NAME,
A.SCHDUL_KND_CODE,
DATE_FORMAT(A.SCHDUL_BEGINDE, '%Y%m%d%H%i')SCHDUL_BGNDE,
DATE_FORMAT(A.SCHDUL_ENDDE, '%Y%m%d%H%i')SCHDUL_ENDDE,
A.SCHDUL_NM,
A.SCHDUL_CN,
A.SCHDUL_PLACE,
A.SCHDUL_IPCR_CODE,
A.SCHDUL_CHARGER_ID,
(SELECT USER_NM FROM LETTNEMPLYRINFO WHERE ESNTL_ID = A.SCHDUL_CHARGER_ID) SCHDUL_CHARGER_NAME,
A.ATCH_FILE_ID,
A.FRST_REGIST_PNTTM,
A.FRST_REGISTER_ID,
A.LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID,
A.REPTIT_SE_CODE
FROM LETTNSCHDULINFO A
WHERE 1=1
AND SCHDUL_ID = #schdulId#
</select>
<!-- 개인일정정보::입력 -->
<insert id="IndvdlSchdulManage.insertIndvdlSchdulManage">
<![CDATA[
INSERT INTO LETTNSCHDULINFO (
SCHDUL_ID,
SCHDUL_SE,
SCHDUL_DEPT_ID,
SCHDUL_KND_CODE,
SCHDUL_BEGINDE,
SCHDUL_ENDDE,
SCHDUL_NM,
SCHDUL_CN,
SCHDUL_PLACE,
SCHDUL_IPCR_CODE,
SCHDUL_CHARGER_ID,
ATCH_FILE_ID,
REPTIT_SE_CODE,
FRST_REGIST_PNTTM,
FRST_REGISTER_ID,
LAST_UPDT_PNTTM,
LAST_UPDUSR_ID
)VALUES(
#schdulId#,
#schdulSe#,
#schdulDeptId#,
#schdulKindCode#,
STR_TO_DATE(DATE_FORMAT(#schdulBgnde#,'%Y %m %d %T'), '%Y %m %d %T'),
STR_TO_DATE(DATE_FORMAT(#schdulEndde#,'%Y %m %d %T'), '%Y %m %d %T'),
#schdulNm#,
#schdulCn#,
#schdulPlace#,
#schdulIpcrCode#,
#schdulChargerId#,
#atchFileId#,
#reptitSeCode#,
NOW(),
#frstRegisterId#,
NOW(),
#lastUpdusrId#
)
]]>
</insert>
</sqlMap>

View File

@ -0,0 +1,317 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="IndvdlSchdulManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="IndvdlSchdulManageVO" type="kcc.let.cop.smt.sim.service.IndvdlSchdulManageVO"/>
<resultMap id="IndvdlSchdulManage" class="kcc.let.cop.smt.sim.service.IndvdlSchdulManageVO">
<result property="schdulId" column="SCHDUL_ID" columnIndex="1"/>
<result property="schdulSe" column="SCHDUL_SE" columnIndex="2"/>
<result property="schdulDeptId" column="SCHDUL_DEPT_ID" columnIndex="3"/>
<result property="schdulDeptName" column="SCHDUL_DEPT_NAME" columnIndex="4"/>
<result property="schdulKindCode" column="SCHDUL_KND_CODE" columnIndex="5"/>
<result property="schdulBgnde" column="SCHDUL_BEGINDE" columnIndex="6"/>
<result property="schdulEndde" column="SCHDUL_ENDDE" columnIndex="7"/>
<result property="schdulNm" column="SCHDUL_NM" columnIndex="8"/>
<result property="schdulCn" column="SCHDUL_CN" columnIndex="9"/>
<result property="schdulPlace" column="SCHDUL_PLACE" columnIndex="10"/>
<result property="schdulIpcrCode" column="SCHDUL_IPCR_CODE" columnIndex="11"/>
<result property="schdulChargerId" column="SCHDUL_CHARGER_ID" columnIndex="12"/>
<result property="schdulChargerName" column="SCHDUL_CHARGER_NAME" columnIndex="13"/>
<result property="atchFileId" column="ATCH_FILE_ID" columnIndex="14"/>
<result property="reptitSeCode" column="REPTIT_SE_CODE" columnIndex="15"/>
<result property="frstRegisterPnttm" column="FRST_REGIST_PNTTM" columnIndex="16" />
<result property="frstRegisterId" column="FRST_REGISTER_ID" columnIndex="17"/>
<result property="lastUpdusrPnttm" column="LAST_UPDT_PNTTM" columnIndex="18"/>
<result property="lastUpdusrId" column="LAST_UPDUSR_ID" columnIndex="19" />
</resultMap>
<!-- 메인페이지/일정관리조회 -->
<select id="IndvdlSchdulManage.selectIndvdlSchdulManageMainList" parameterClass="java.util.Map" resultClass="egovMap">
SELECT
DATE_FORMAT(NOW(),'%Y-%m-%d') TO_DAY,
A.SCHDUL_ID,
A.SCHDUL_SE,
A.SCHDUL_DEPT_ID,
A.SCHDUL_KND_CODE,
DATE_FORMAT(A.SCHDUL_BEGINDE, '%Y%m%d%H%i')SCHDUL_BGNDE,
DATE_FORMAT(A.SCHDUL_ENDDE, '%Y%m%d%H%i')SCHDUL_ENDDE,
A.SCHDUL_NM,
A.SCHDUL_CN,
A.SCHDUL_PLACE,
A.SCHDUL_IPCR_CODE,
A.SCHDUL_CHARGER_ID,
A.ATCH_FILE_ID,
DATE_FORMAT(A.FRST_REGIST_PNTTM,'%Y-%m-%d') FRST_REGIST_PNTTM,
A.FRST_REGISTER_ID,
A.LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID,
A.REPTIT_SE_CODE
FROM LETTNSCHDULINFO A
WHERE 1=1
AND A.SCHDUL_KND_CODE = '2'
AND (A.SCHDUL_CHARGER_ID = #uniqId# OR A.FRST_REGISTER_ID = #uniqId#)
<![CDATA[
AND (
( SUBSTRING(A.SCHDUL_BEGINDE,1,8) > DATE_FORMAT(NOW(),'%Y%m%d') AND SUBSTRING(A.SCHDUL_BEGINDE,1,8) <= DATE_FORMAT(NOW(),'%Y%m%d'))
OR
( SUBSTRING(A.SCHDUL_ENDDE,1,8) >DATE_FORMAT(NOW(),'%Y%m%d') AND SUBSTRING(A.SCHDUL_BEGINDE,1,8) <= DATE_FORMAT(NOW(),'%Y%m%d'))
)
]]>
ORDER BY A.FRST_REGIST_PNTTM DESC
LIMIT 0, 4
</select>
<!-- 개인일정정보::목록조회 -->
<select id="IndvdlSchdulManage.selectIndvdlSchdulManageRetrieve" parameterClass="java.util.Map" resultClass="egovMap">
<![CDATA[
SELECT
A.SCHDUL_ID,
A.SCHDUL_SE,
A.SCHDUL_DEPT_ID,
A.SCHDUL_KND_CODE,
DATE_FORMAT(A.SCHDUL_BEGINDE, '%Y%m%d%H%i')SCHDUL_BGNDE,
DATE_FORMAT(A.SCHDUL_ENDDE, '%Y%m%d%H%i')SCHDUL_ENDDE,
A.SCHDUL_NM,
A.SCHDUL_CN,
A.SCHDUL_PLACE,
A.SCHDUL_IPCR_CODE,
A.SCHDUL_CHARGER_ID,
A.ATCH_FILE_ID,
A.FRST_REGIST_PNTTM,
A.FRST_REGISTER_ID,
A.LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID,
A.REPTIT_SE_CODE
FROM LETTNSCHDULINFO A
WHERE 1=1
AND A.SCHDUL_KND_CODE = '2'
]]>
<isNotEmpty property="searchMode">
<isEqual property="searchMode" compareValue="MONTH">
<isNotEmpty property="searchMonth">
<isNotEqual property="searchMonth" compareValue="">
AND (#searchMonth# BETWEEN SUBSTRING(DATE_FORMAT(A.SCHDUL_BEGINDE,'%Y%m%d'), 1, 6) AND SUBSTRING(DATE_FORMAT(A.SCHDUL_ENDDE,'%Y%m%d'), 1, 6) )
</isNotEqual>
</isNotEmpty>
</isEqual>
<isEqual property="searchMode" compareValue="WEEK">
<![CDATA[
AND (
( SUBSTRING(DATE_FORMAT(A.SCHDUL_BEGINDE,'%Y%m%d'),1,8) > #schdulBgnde# AND SUBSTRING(DATE_FORMAT(A.SCHDUL_BEGINDE,'%Y%m%d'),1,8) <= #schdulEndde#)
OR
( SUBSTRING(DATE_FORMAT(A.SCHDUL_ENDDE,'%Y%m%d'),1,8) > #schdulBgnde# AND SUBSTRING(DATE_FORMAT(A.SCHDUL_BEGINDE,'%Y%m%d'),1,8) <= #schdulEndde#)
)
]]>
</isEqual>
<isEqual property="searchMode" compareValue="DAILY">
<![CDATA[
AND (#searchDay# BETWEEN SUBSTRING(DATE_FORMAT(A.SCHDUL_BEGINDE,'%Y%m%d'), 1, 8) AND SUBSTRING(DATE_FORMAT(A.SCHDUL_ENDDE,'%Y%m%d'), 1, 8) )
]]>
</isEqual>
</isNotEmpty>
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isNotEqual property="searchCondition" compareValue="">
AND SCHDUL_SE LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isNotEqual>
</isNotEqual>
</isNotEmpty>
</select>
<!-- 개인일정정보::상세보기 -->
<select id="IndvdlSchdulManage.selectIndvdlSchdulManageDetailVO" resultMap="IndvdlSchdulManage">
SELECT
A.SCHDUL_ID,
A.SCHDUL_SE,
A.SCHDUL_DEPT_ID,
(SELECT ORGNZT_NM FROM LETTNORGNZTINFO WHERE ORGNZT_ID = A.SCHDUL_DEPT_ID) SCHDUL_DEPT_NAME,
A.SCHDUL_KND_CODE,
DATE_FORMAT(A.SCHDUL_BEGINDE, '%Y%m%d%H%i')SCHDUL_BEGINDE,
DATE_FORMAT(A.SCHDUL_ENDDE, '%Y%m%d%H%i')SCHDUL_ENDDE,
A.SCHDUL_NM,
A.SCHDUL_CN,
A.SCHDUL_PLACE,
A.SCHDUL_IPCR_CODE,
A.SCHDUL_CHARGER_ID,
(SELECT ESNTL_ID FROM LETTNEMPLYRINFO WHERE ESNTL_ID = A.SCHDUL_CHARGER_ID) SCHDUL_CHARGER_NAME,
A.ATCH_FILE_ID,
A.REPTIT_SE_CODE,
A.FRST_REGIST_PNTTM,
A.FRST_REGISTER_ID,
A.LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID
FROM LETTNSCHDULINFO A
WHERE 1=1
AND SCHDUL_ID = #schdulId#
</select>
<!-- 개인일정정보::목록조회_게시물정보 -->
<select id="IndvdlSchdulManage.selectIndvdlSchdulManage" parameterClass="comDefaultVO" resultClass="egovMap">
<![CDATA[
SELECT
A.SCHDUL_ID,
A.SCHDUL_SE,
A.SCHDUL_DEPT_ID,
A.SCHDUL_KND_CODE,
DATE_FORMAT(A.SCHDUL_BEGINDE, '%Y%m%d%H%i')SCHDUL_BGNDE,
DATE_FORMAT(A.SCHDUL_ENDDE, '%Y%m%d%H%i')SCHDUL_ENDDE,
A.SCHDUL_NM,
A.SCHDUL_CN,
A.SCHDUL_PLACE,
A.SCHDUL_IPCR_CODE,
A.SCHDUL_CHARGER_ID,
A.ATCH_FILE_ID,
A.FRST_REGIST_PNTTM,
A.FRST_REGISTER_ID,
A.LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID,
A.REPTIT_SE_CODE
FROM LETTNSCHDULINFO A
WHERE 1=1
]]>
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isNotEqual property="searchCondition" compareValue="">
AND SCHDUL_SE LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isNotEqual>
</isNotEqual>
</isNotEmpty>
<![CDATA[
ORDER BY A.FRST_REGIST_PNTTM DESC
LIMIT #recordCountPerPage# OFFSET #firstIndex#
]]>
</select>
<!-- 개인일정정보::목록조회_게시물 총갯수 -->
<select id="IndvdlSchdulManage.selectIndvdlSchdulManageCnt" parameterClass="comDefaultVO" resultClass="int">
SELECT
COUNT(*) totcnt
FROM LETTNSCHDULINFO
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isNotEqual property="searchCondition" compareValue="">
AND SCHDUL_SE LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isNotEqual>
</isNotEqual>
</isNotEmpty>
</select>
<!-- 개인일정정보::삭제 -->
<delete id="IndvdlSchdulManage.deleteDiaryManage">
DELETE FROM LETTNDIARYINFO WHERE SCHDUL_ID = #schdulId#;
</delete>
<delete id="IndvdlSchdulManage.deleteIndvdlSchdulManage">
<![CDATA[
DELETE FROM LETTNSCHDULINFO WHERE SCHDUL_ID = #schdulId#;
]]>
</delete>
<!-- 개인일정정보::수정 -->
<update id="IndvdlSchdulManage.updateIndvdlSchdulManage">
UPDATE LETTNSCHDULINFO
SET
SCHDUL_SE=#schdulSe#,
SCHDUL_DEPT_ID=#schdulDeptId#,
SCHDUL_KND_CODE=#schdulKindCode#,
SCHDUL_BEGINDE=#schdulBgnde#,
SCHDUL_ENDDE=#schdulEndde#,
SCHDUL_NM=#schdulNm#,
SCHDUL_CN=#schdulCn#,
SCHDUL_IPCR_CODE=#schdulIpcrCode#,
SCHDUL_CHARGER_ID=#schdulChargerId#,
ATCH_FILE_ID=#atchFileId#,
REPTIT_SE_CODE=#reptitSeCode#,
LAST_UPDT_PNTTM = NOW(),
LAST_UPDUSR_ID = #lastUpdusrId#
WHERE SCHDUL_ID = #schdulId#
</update>
<!-- 개인일정정보::상세보기 -->
<select id="IndvdlSchdulManage.selectIndvdlSchdulManageDetail" resultClass="egovMap">
SELECT
A.SCHDUL_ID,
A.SCHDUL_SE,
A.SCHDUL_DEPT_ID,
(SELECT ORGNZT_NM FROM LETTNORGNZTINFO WHERE ORGNZT_ID = A.SCHDUL_DEPT_ID) SCHDUL_DEPT_NAME,
A.SCHDUL_KND_CODE,
DATE_FORMAT(A.SCHDUL_BEGINDE, '%Y%m%d%H%i')SCHDUL_BGNDE,
DATE_FORMAT(A.SCHDUL_ENDDE, '%Y%m%d%H%i')SCHDUL_ENDDE,
A.SCHDUL_NM,
A.SCHDUL_CN,
A.SCHDUL_PLACE,
A.SCHDUL_IPCR_CODE,
A.SCHDUL_CHARGER_ID,
(SELECT USER_NM FROM LETTNEMPLYRINFO WHERE ESNTL_ID = A.SCHDUL_CHARGER_ID) SCHDUL_CHARGER_NAME,
A.ATCH_FILE_ID,
A.FRST_REGIST_PNTTM,
A.FRST_REGISTER_ID,
A.LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID,
A.REPTIT_SE_CODE
FROM LETTNSCHDULINFO A
WHERE 1=1
AND SCHDUL_ID = #schdulId#
</select>
<!-- 개인일정정보::입력 -->
<insert id="IndvdlSchdulManage.insertIndvdlSchdulManage">
<![CDATA[
INSERT INTO LETTNSCHDULINFO (
SCHDUL_ID,
SCHDUL_SE,
SCHDUL_DEPT_ID,
SCHDUL_KND_CODE,
SCHDUL_BEGINDE,
SCHDUL_ENDDE,
SCHDUL_NM,
SCHDUL_CN,
SCHDUL_PLACE,
SCHDUL_IPCR_CODE,
SCHDUL_CHARGER_ID,
ATCH_FILE_ID,
REPTIT_SE_CODE,
FRST_REGIST_PNTTM,
FRST_REGISTER_ID,
LAST_UPDT_PNTTM,
LAST_UPDUSR_ID
)VALUES(
#schdulId#,
#schdulSe#,
#schdulDeptId#,
#schdulKindCode#,
STR_TO_DATE(DATE_FORMAT(#schdulBgnde#,'%Y %m %d %T'), '%Y %m %d %T'),
STR_TO_DATE(DATE_FORMAT(#schdulEndde#,'%Y %m %d %T'), '%Y %m %d %T'),
#schdulNm#,
#schdulCn#,
#schdulPlace#,
#schdulIpcrCode#,
#schdulChargerId#,
#atchFileId#,
#reptitSeCode#,
NOW(),
#frstRegisterId#,
NOW(),
#lastUpdusrId#
)
]]>
</insert>
</sqlMap>

View File

@ -0,0 +1,322 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="OrgChartManage">
<typeAlias alias="orgCharVO" type="kcc.let.org.service.OrgCharVO"/>
<typeAlias alias="userManageVO" type="kcc.let.uss.umt.service.UserManageVO"/>
<typeAlias alias="locVO" type="kcc.let.org.service.LocVO"/>
<select id="itsmOrgChartManageDAO.selectOrgChartListAjax" parameterClass="locVO" resultClass="locVO">
SELECT LOC_NO AS id ,
LOC_NM AS text ,
UPPER_LOC_NO AS parent ,
DEPTHS AS depths ,
FRST_REGIST_PNTTM AS frstRegistPnttm ,
LOC_ORDR AS nodeDepth
FROM (
(
SELECT LOC_NO ,
LOC_NM ,
UPPER_LOC_NO ,
1 AS DEPTHS ,
FRST_REGIST_PNTTM ,
LOC_ORDR ,
CAST(LOC_ORDR AS CHAR(50)) AS LOC_LPAD ,
GW_STATUS
FROM ITSM_LOC
WHERE 1 =1
<isNotEmpty property="topLocNo">
AND UPPER_LOC_NO = #topLocNo#
</isNotEmpty>
AND GW_STATUS = 1
UNION ALL
SELECT sub_loc.LOC_NO ,
sub_loc.LOC_NM ,
sub_loc.UPPER_LOC_NO ,
loc.DEPTHS + 1 AS DEPTHS ,
sub_loc.FRST_REGIST_PNTTM ,
sub_loc.LOC_ORDR ,
loc.LOC_LPAD|| ','|| LPAD(sub_loc.LOC_ORDR, 5, 0) AS LOC_LPAD ,
sub_loc.GW_STATUS
FROM ITSM_LOC AS sub_loc
INNER JOIN (
SELECT LOC_NO ,
LOC_NM ,
UPPER_LOC_NO ,
1 AS DEPTHS ,
FRST_REGIST_PNTTM ,
LOC_ORDR ,
CAST(LOC_ORDR AS CHAR(50)) AS LOC_LPAD ,
GW_STATUS
FROM ITSM_LOC
WHERE 1 =1
<isNotEmpty property="topLocNo">
AND UPPER_LOC_NO = #topLocNo#
</isNotEmpty>
AND GW_STATUS = 1
)loc
ON loc.LOC_NO = sub_loc.UPPER_LOC_NO
)
)LOC
WHERE GW_STATUS = '1'
ORDER BY LOC_LPAD
</select>
<select id="itsmOrgChartManageDAO.selectOrgChartDepthListAjax" parameterClass="orgCharVO" resultClass="orgCharVO">
WITH RECURSIVE loc AS
(
SELECT
LOC_NO ,
LOC_NM ,
UPPER_LOC_NO ,
2 AS DEPTH ,
FRST_REGIST_PNTTM ,
LOC_ORDR ,
CAST(LOC_ORDR AS CHAR(50)) AS LOC_LPAD ,
GW_STATUS
FROM
ITSM_LOC
WHERE 1=1
AND UPPER_LOC_NO = '1000000'
AND LOC_NO != '000011110' /**기타 제외 */
AND GW_STATUS = 1
UNION ALL
SELECT
sub_loc.LOC_NO ,
sub_loc.LOC_NM ,
sub_loc.UPPER_LOC_NO ,
loc.DEPTH + 1 AS DEPTH ,
sub_loc.FRST_REGIST_PNTTM ,
sub_loc.LOC_ORDR ,
loc.LOC_LPAD||
","||
LPAD(sub_loc.LOC_ORDR,
5,
0) AS LOC_LPAD ,
sub_loc.GW_STATUS
FROM
ITSM_LOC AS sub_loc
INNER JOIN
loc
ON loc.LOC_NO = sub_loc.UPPER_LOC_NO
)
SELECT
LOC_NO AS id ,
LOC_NM AS text ,
UPPER_LOC_NO AS parent ,
DEPTH AS nodeDepth ,
FRST_REGIST_PNTTM AS frstRegistPnttm ,
LOC_ORDR AS sort ,
GW_STATUS
FROM LOC A
WHERE GW_STATUS = '1'
AND DEPTH = #locDepth#
<isNotEqual property="upperLocNo" compareValue="0">
AND UPPER_LOC_NO = #upperLocNo#
</isNotEqual>
ORDER BY LOC_ORDR
</select>
<!-- <select id="itsmOrgChartManageDAO.selectUserAjax" parameterClass="userManageVO" resultClass="userManageVO">
SELECT
A.ESNTL_ID AS uniqId
, A.EMPLYR_ID AS emplyrId
, A.OFCPS_NM AS ofcpsNm
, A.EMPL_NO AS emplNo
, A.GW_PART_NM AS partNm
, A.PART_IDX AS partIdx
, A.USER_NM AS userNm
, A.EMAIL_ADRES AS emailAdres
, A.OFFM_TELNO AS offmTelno
, A.ESNTL_ID AS esntlId
, A.USER_WORK AS userWork
, IFNULL((SELECT C.AUTHOR_NM FROM LETTNEMPLYRSCRTYESTBS B, LETTNAUTHORINFO C WHERE A.ESNTL_ID = B.SCRTY_DTRMN_TRGET_ID AND B.AUTHOR_CODE = C.AUTHOR_CODE),'') AS authorNm
, C.LOC_NM AS partIdxTxt,
FXNUM AS fxnum
FROM LETTNEMPLYRINFO A LEFT join ITSM_LOC C ON A.PART_IDX = C.LOC_NO
WHERE 1=1
<isNotEmpty property="emplyrNm">
AND A.USER_NM LIKE CONCAT ('%', #emplyrNm#,'%')
</isNotEmpty>
<isNotEmpty property="partIdx">
AND A.PART_IDX = #partIdx#
</isNotEmpty>
<isNotEmpty property="emplyrId">
AND A.EMPLYR_ID = #emplyrId#
</isNotEmpty>
<![CDATA[
ORDER BY ZIP
]]>
</select> -->
<select id="itsmOrgChartManageDAO.selectUserAjax" parameterClass="userManageVO" resultClass="userManageVO">
SELECT
A.LOC_INFO_ID AS locInfoId ,
A.OFCPS_NM AS ofcpsNm ,
A.PART_IDX AS partIdx ,
A.USER_NM AS userNm ,
A.OFFM_TELNO AS offmTelno ,
A.USER_WORK AS userWork ,
B.LOC_NM AS partIdxTxt,
A.SORT AS sort
FROM LOC_INFO A
LEFT JOIN ITSM_LOC B
ON A.PART_IDX = B.LOC_NO
WHERE 1 =1
<isNotEmpty property="partIdx">
AND A.PART_IDX = #partIdx#
</isNotEmpty>
<isNotEmpty property="emplyrId">
AND A.LOC_INFO_ID = #emplyrId#
</isNotEmpty>
ORDER BY A.SORT ASC , LOC_INFO_ID ASC
</select>
<insert id="itsmOrgChartManageDAO.insertUserInfoAjax" parameterClass="userManageVO">
INSERT INTO LETTNEMPLYRINFO
(
EMPLYR_ID
, PART_IDX
, OFCPS_NM
, USER_NM
, OFFM_TELNO
, EMAIL_ADRES
, ESNTL_ID
)
VALUES
(
#emplyrId#
, #partIdx#
, #ofcpsNm#
, #userNm#
, #offmTelno#
, #emailAdres#
, #esntlId#
)
</insert>
<update id="itsmOrgChartManageDAO.updateUserInfoAjax" parameterClass="userManageVO">
UPDATE LETTNEMPLYRINFO SET
PART_IDX = #partIdx#
, OFCPS_NM = #ofcpsNm#
, USER_NM = #emplyrNm#
, EMPL_NO = #emplNo#
, OFFM_TELNO = #offmTelno#
, EMAIL_ADRES = #emailAdres#
, ESNTL_ID = #esntlId#
, USER_WORK = #userWork#
WHERE
EMPLYR_ID = #emplyrId#
</update>
<delete id="itsmOrgChartManageDAO.deleteUserInfoAjax" parameterClass="String">
DELETE FROM LETTNEMPLYRINFO
WHERE EMPLYR_ID = #emplyrId#
</delete>
<select id="itsmOrgChartManageDAO.selectEquiLevelLocList" parameterClass="String" resultClass="locVO">
<![CDATA[
SELECT LOC_NO as locNo
FROM ITSM_LOC
WHERE LOC_NO like #locNo#
]]>
</select>
<insert id="itsmOrgChartManageDAO.insertOrgChart" parameterClass="locVO">
INSERT INTO ITSM_LOC
(
LOC_NM,
LOC_NO,
UPPER_LOC_NO,
LOC_ORDR,
LOC_DEPTH,
USE_YN
)
VALUES
(
#locNm#,
#locNo#,
#upperLocNo#,
#locOrdr#,
#locDepth#,
#useYn#
)
</insert>
<update id="itsmOrgChartManageDAO.updateOrgChartNm" parameterClass="locVO">
UPDATE ITSM_LOC
SET
LOC_NM = #locNm#
WHERE LOC_NO = #locNo#
</update>
<delete id="itsmOrgChartManageDAO.deleteOrgChart" parameterClass="locVO" >
DELETE FROM ITSM_LOC
WHERE LOC_NO = #locNo#
</delete>
<update id="itsmOrgChartManageDAO.updateLocDate" parameterClass="locVO">
UPDATE ITSM_LOC
SET FRST_REGIST_PNTTM = now(),
LOC_ORDR = #locOrdr#,
UPPER_LOC_NO = #upperMenuId#
WHERE LOC_NO = #locNo#
</update>
<update id="itsmOrgChartManageDAO.resortLoc" parameterClass="locVO">
UPDATE ITSM_LOC A ,
(SELECT LOC_NO, ROW_NUMBER() OVER(ORDER BY LOC_ORDR, FRST_REGIST_PNTTM
<isEqual property="sortOver" compareValue="D">
DESC
</isEqual>
) AS SORT1 FROM ITSM_LOC
WHERE UPPER_LOC_NO = #upperLocNo# ORDER BY LOC_ORDR ASC ) B
SET A.LOC_ORDR = B.SORT1
WHERE A.LOC_NO = B.LOC_NO
</update>
<update id="itsmOrgChartManageDAO.updateLocCnSaveAjax" parameterClass="locVO">
UPDATE ITSM_LOC
SET LOC_CN = #locCn#
WHERE LOC_NO = #partIdx#
</update>
<select id="itsmOrgChartManageDAO.selectLocCnVO" parameterClass="locVO" resultClass="locVO">
<![CDATA[
SELECT LOC_CN as locCn
FROM ITSM_LOC
WHERE LOC_NO = #locNo#
]]>
</select>
<select id="itsmOrgChartManageDAO.selectLocPath" parameterClass="locVO" resultClass="locVO">
<![CDATA[
SELECT LOC_NO AS locNo,
LOC_NM AS locNm
FROM ITSM_LOC A
WHERE LOC_NO = (SELECT UPPER_LOC_NO FROM ITSM_LOC A
WHERE LOC_NO = #locNo#)
UNION
SELECT LOC_NO AS locNo,
LOC_NM AS locNm FROM ITSM_LOC A
WHERE LOC_NO = #locNo#
]]>
</select>
<delete id="itsmOrgChartManageDAO.deleteUserInfoLocAjax" parameterClass="String">
DELETE FROM LOC_INFO
WHERE LOC_INFO_ID = #emplyrId#
</delete>
</sqlMap>

View File

@ -0,0 +1,322 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="OrgChartManage">
<typeAlias alias="orgCharVO" type="kcc.let.org.service.OrgCharVO"/>
<typeAlias alias="userManageVO" type="kcc.let.uss.umt.service.UserManageVO"/>
<typeAlias alias="locVO" type="kcc.let.org.service.LocVO"/>
<select id="itsmOrgChartManageDAO.selectOrgChartListAjax" parameterClass="locVO" resultClass="locVO">
SELECT LOC_NO AS id ,
LOC_NM AS text ,
UPPER_LOC_NO AS parent ,
DEPTHS AS depths ,
FRST_REGIST_PNTTM AS frstRegistPnttm ,
LOC_ORDR AS nodeDepth
FROM (
(
SELECT LOC_NO ,
LOC_NM ,
UPPER_LOC_NO ,
1 AS DEPTHS ,
FRST_REGIST_PNTTM ,
LOC_ORDR ,
CAST(LOC_ORDR AS CHAR(50)) AS LOC_LPAD ,
GW_STATUS
FROM ITSM_LOC
WHERE 1 =1
<isNotEmpty property="topLocNo">
AND UPPER_LOC_NO = #topLocNo#
</isNotEmpty>
AND GW_STATUS = 1
UNION ALL
SELECT sub_loc.LOC_NO ,
sub_loc.LOC_NM ,
sub_loc.UPPER_LOC_NO ,
loc.DEPTHS + 1 AS DEPTHS ,
sub_loc.FRST_REGIST_PNTTM ,
sub_loc.LOC_ORDR ,
loc.LOC_LPAD|| ','|| LPAD(sub_loc.LOC_ORDR, 5, 0) AS LOC_LPAD ,
sub_loc.GW_STATUS
FROM ITSM_LOC AS sub_loc
INNER JOIN (
SELECT LOC_NO ,
LOC_NM ,
UPPER_LOC_NO ,
1 AS DEPTHS ,
FRST_REGIST_PNTTM ,
LOC_ORDR ,
CAST(LOC_ORDR AS CHAR(50)) AS LOC_LPAD ,
GW_STATUS
FROM ITSM_LOC
WHERE 1 =1
<isNotEmpty property="topLocNo">
AND UPPER_LOC_NO = #topLocNo#
</isNotEmpty>
AND GW_STATUS = 1
)loc
ON loc.LOC_NO = sub_loc.UPPER_LOC_NO
)
)LOC
WHERE GW_STATUS = '1'
ORDER BY LOC_LPAD
</select>
<select id="itsmOrgChartManageDAO.selectOrgChartDepthListAjax" parameterClass="orgCharVO" resultClass="orgCharVO">
WITH RECURSIVE loc AS
(
SELECT
LOC_NO ,
LOC_NM ,
UPPER_LOC_NO ,
2 AS DEPTH ,
FRST_REGIST_PNTTM ,
LOC_ORDR ,
CAST(LOC_ORDR AS CHAR(50)) AS LOC_LPAD ,
GW_STATUS
FROM
ITSM_LOC
WHERE 1=1
AND UPPER_LOC_NO = '1000000'
AND LOC_NO != '000011110' /**기타 제외 */
AND GW_STATUS = 1
UNION ALL
SELECT
sub_loc.LOC_NO ,
sub_loc.LOC_NM ,
sub_loc.UPPER_LOC_NO ,
loc.DEPTH + 1 AS DEPTH ,
sub_loc.FRST_REGIST_PNTTM ,
sub_loc.LOC_ORDR ,
loc.LOC_LPAD||
","||
LPAD(sub_loc.LOC_ORDR,
5,
0) AS LOC_LPAD ,
sub_loc.GW_STATUS
FROM
ITSM_LOC AS sub_loc
INNER JOIN
loc
ON loc.LOC_NO = sub_loc.UPPER_LOC_NO
)
SELECT
LOC_NO AS id ,
LOC_NM AS text ,
UPPER_LOC_NO AS parent ,
DEPTH AS nodeDepth ,
FRST_REGIST_PNTTM AS frstRegistPnttm ,
LOC_ORDR AS sort ,
GW_STATUS
FROM LOC A
WHERE GW_STATUS = '1'
AND DEPTH = #locDepth#
<isNotEqual property="upperLocNo" compareValue="0">
AND UPPER_LOC_NO = #upperLocNo#
</isNotEqual>
ORDER BY LOC_ORDR
</select>
<!-- <select id="itsmOrgChartManageDAO.selectUserAjax" parameterClass="userManageVO" resultClass="userManageVO">
SELECT
A.ESNTL_ID AS uniqId
, A.EMPLYR_ID AS emplyrId
, A.OFCPS_NM AS ofcpsNm
, A.EMPL_NO AS emplNo
, A.GW_PART_NM AS partNm
, A.PART_IDX AS partIdx
, A.USER_NM AS userNm
, A.EMAIL_ADRES AS emailAdres
, A.OFFM_TELNO AS offmTelno
, A.ESNTL_ID AS esntlId
, A.USER_WORK AS userWork
, IFNULL((SELECT C.AUTHOR_NM FROM LETTNEMPLYRSCRTYESTBS B, LETTNAUTHORINFO C WHERE A.ESNTL_ID = B.SCRTY_DTRMN_TRGET_ID AND B.AUTHOR_CODE = C.AUTHOR_CODE),'') AS authorNm
, C.LOC_NM AS partIdxTxt,
FXNUM AS fxnum
FROM LETTNEMPLYRINFO A LEFT join ITSM_LOC C ON A.PART_IDX = C.LOC_NO
WHERE 1=1
<isNotEmpty property="emplyrNm">
AND A.USER_NM LIKE CONCAT ('%', #emplyrNm#,'%')
</isNotEmpty>
<isNotEmpty property="partIdx">
AND A.PART_IDX = #partIdx#
</isNotEmpty>
<isNotEmpty property="emplyrId">
AND A.EMPLYR_ID = #emplyrId#
</isNotEmpty>
<![CDATA[
ORDER BY ZIP
]]>
</select> -->
<select id="itsmOrgChartManageDAO.selectUserAjax" parameterClass="userManageVO" resultClass="userManageVO">
SELECT
A.LOC_INFO_ID AS locInfoId ,
A.OFCPS_NM AS ofcpsNm ,
A.PART_IDX AS partIdx ,
A.USER_NM AS userNm ,
A.OFFM_TELNO AS offmTelno ,
A.USER_WORK AS userWork ,
B.LOC_NM AS partIdxTxt,
A.SORT AS sort
FROM LOC_INFO A
LEFT JOIN ITSM_LOC B
ON A.PART_IDX = B.LOC_NO
WHERE 1 =1
<isNotEmpty property="partIdx">
AND A.PART_IDX = #partIdx#
</isNotEmpty>
<isNotEmpty property="emplyrId">
AND A.LOC_INFO_ID = #emplyrId#
</isNotEmpty>
ORDER BY A.SORT ASC , LOC_INFO_ID ASC
</select>
<insert id="itsmOrgChartManageDAO.insertUserInfoAjax" parameterClass="userManageVO">
INSERT INTO LETTNEMPLYRINFO
(
EMPLYR_ID
, PART_IDX
, OFCPS_NM
, USER_NM
, OFFM_TELNO
, EMAIL_ADRES
, ESNTL_ID
)
VALUES
(
#emplyrId#
, #partIdx#
, #ofcpsNm#
, #userNm#
, #offmTelno#
, #emailAdres#
, #esntlId#
)
</insert>
<update id="itsmOrgChartManageDAO.updateUserInfoAjax" parameterClass="userManageVO">
UPDATE LETTNEMPLYRINFO SET
PART_IDX = #partIdx#
, OFCPS_NM = #ofcpsNm#
, USER_NM = #emplyrNm#
, EMPL_NO = #emplNo#
, OFFM_TELNO = #offmTelno#
, EMAIL_ADRES = #emailAdres#
, ESNTL_ID = #esntlId#
, USER_WORK = #userWork#
WHERE
EMPLYR_ID = #emplyrId#
</update>
<delete id="itsmOrgChartManageDAO.deleteUserInfoAjax" parameterClass="String">
DELETE FROM LETTNEMPLYRINFO
WHERE EMPLYR_ID = #emplyrId#
</delete>
<select id="itsmOrgChartManageDAO.selectEquiLevelLocList" parameterClass="String" resultClass="locVO">
<![CDATA[
SELECT LOC_NO as locNo
FROM ITSM_LOC
WHERE LOC_NO like #locNo#
]]>
</select>
<insert id="itsmOrgChartManageDAO.insertOrgChart" parameterClass="locVO">
INSERT INTO ITSM_LOC
(
LOC_NM,
LOC_NO,
UPPER_LOC_NO,
LOC_ORDR,
LOC_DEPTH,
USE_YN
)
VALUES
(
#locNm#,
#locNo#,
#upperLocNo#,
#locOrdr#,
#locDepth#,
#useYn#
)
</insert>
<update id="itsmOrgChartManageDAO.updateOrgChartNm" parameterClass="locVO">
UPDATE ITSM_LOC
SET
LOC_NM = #locNm#
WHERE LOC_NO = #locNo#
</update>
<delete id="itsmOrgChartManageDAO.deleteOrgChart" parameterClass="locVO" >
DELETE FROM ITSM_LOC
WHERE LOC_NO = #locNo#
</delete>
<update id="itsmOrgChartManageDAO.updateLocDate" parameterClass="locVO">
UPDATE ITSM_LOC
SET FRST_REGIST_PNTTM = now(),
LOC_ORDR = #locOrdr#,
UPPER_LOC_NO = #upperMenuId#
WHERE LOC_NO = #locNo#
</update>
<update id="itsmOrgChartManageDAO.resortLoc" parameterClass="locVO">
UPDATE ITSM_LOC A ,
(SELECT LOC_NO, ROW_NUMBER() OVER(ORDER BY LOC_ORDR, FRST_REGIST_PNTTM
<isEqual property="sortOver" compareValue="D">
DESC
</isEqual>
) AS SORT1 FROM ITSM_LOC
WHERE UPPER_LOC_NO = #upperLocNo# ORDER BY LOC_ORDR ASC ) B
SET A.LOC_ORDR = B.SORT1
WHERE A.LOC_NO = B.LOC_NO
</update>
<update id="itsmOrgChartManageDAO.updateLocCnSaveAjax" parameterClass="locVO">
UPDATE ITSM_LOC
SET LOC_CN = #locCn#
WHERE LOC_NO = #partIdx#
</update>
<select id="itsmOrgChartManageDAO.selectLocCnVO" parameterClass="locVO" resultClass="locVO">
<![CDATA[
SELECT LOC_CN as locCn
FROM ITSM_LOC
WHERE LOC_NO = #locNo#
]]>
</select>
<select id="itsmOrgChartManageDAO.selectLocPath" parameterClass="locVO" resultClass="locVO">
<![CDATA[
SELECT LOC_NO AS locNo,
LOC_NM AS locNm
FROM ITSM_LOC A
WHERE LOC_NO = (SELECT UPPER_LOC_NO FROM ITSM_LOC A
WHERE LOC_NO = #locNo#)
UNION
SELECT LOC_NO AS locNo,
LOC_NM AS locNm FROM ITSM_LOC A
WHERE LOC_NO = #locNo#
]]>
</select>
<delete id="itsmOrgChartManageDAO.deleteUserInfoLocAjax" parameterClass="String">
DELETE FROM LOC_INFO
WHERE LOC_INFO_ID = #emplyrId#
</delete>
</sqlMap>

View File

@ -0,0 +1,78 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="GroupManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="groupManageVO" type="kcc.let.sec.gmt.service.GroupManageVO"/>
<typeAlias alias="groupManage" type="kcc.let.sec.gmt.service.GroupManage"/>
<resultMap id="group" class="kcc.let.sec.gmt.service.GroupManageVO">
<result property="groupId" column="GROUP_ID" columnIndex="1"/>
<result property="groupNm" column="GROUP_NM" columnIndex="2"/>
<result property="groupDc" column="GROUP_DC" columnIndex="3"/>
<result property="groupCreatDe" column="GROUP_CREAT_DE" columnIndex="4"/>
</resultMap>
<select id="groupManageDAO.selectGroup" parameterClass="groupManageVO" resultMap="group">
<![CDATA[
SELECT GROUP_ID, GROUP_NM, GROUP_DC, GROUP_CREAT_DE
FROM LETTNAUTHORGROUPINFO
WHERE GROUP_ID=#groupId#
]]>
</select>
<select id="groupManageDAO.selectGroupList" parameterClass="groupManageVO" resultMap="group">
SELECT GROUP_ID, GROUP_NM, GROUP_DC, GROUP_CREAT_DE
FROM LETTNAUTHORGROUPINFO
WHERE 1=1
<isEqual prepend="AND" property="searchCondition" compareValue="1">
GROUP_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
ORDER BY GROUP_CREAT_DE DESC
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<insert id="groupManageDAO.insertGroup">
<![CDATA[
INSERT INTO LETTNAUTHORGROUPINFO
( GROUP_ID
, GROUP_NM
, GROUP_DC
, GROUP_CREAT_DE )
VALUES ( #groupId#
, #groupNm#
, #groupDc#
, now())
]]>
</insert>
<update id="groupManageDAO.updateGroup" parameterClass="groupManage">
<![CDATA[
UPDATE LETTNAUTHORGROUPINFO
SET GROUP_NM=#groupNm#
, GROUP_DC=#groupDc#
, GROUP_CREAT_DE=now()
WHERE GROUP_ID=#groupId#
]]>
</update>
<delete id="groupManageDAO.deleteGroup">
<![CDATA[
DELETE FROM LETTNAUTHORGROUPINFO
WHERE GROUP_ID=#groupId#
]]>
</delete>
<select id="groupManageDAO.selectGroupListTotCnt" parameterClass="groupManageVO" resultClass="int">
SELECT COUNT(*) totcnt
FROM LETTNAUTHORGROUPINFO
WHERE 1=1
<isEqual prepend="AND" property="searchCondition" compareValue="1">
GROUP_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
</select>
</sqlMap>

View File

@ -0,0 +1,78 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="GroupManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="groupManageVO" type="kcc.let.sec.gmt.service.GroupManageVO"/>
<typeAlias alias="groupManage" type="kcc.let.sec.gmt.service.GroupManage"/>
<resultMap id="group" class="kcc.let.sec.gmt.service.GroupManageVO">
<result property="groupId" column="GROUP_ID" columnIndex="1"/>
<result property="groupNm" column="GROUP_NM" columnIndex="2"/>
<result property="groupDc" column="GROUP_DC" columnIndex="3"/>
<result property="groupCreatDe" column="GROUP_CREAT_DE" columnIndex="4"/>
</resultMap>
<select id="groupManageDAO.selectGroup" parameterClass="groupManageVO" resultMap="group">
<![CDATA[
SELECT GROUP_ID, GROUP_NM, GROUP_DC, GROUP_CREAT_DE
FROM LETTNAUTHORGROUPINFO
WHERE GROUP_ID=#groupId#
]]>
</select>
<select id="groupManageDAO.selectGroupList" parameterClass="groupManageVO" resultMap="group">
SELECT GROUP_ID, GROUP_NM, GROUP_DC, GROUP_CREAT_DE
FROM LETTNAUTHORGROUPINFO
WHERE 1=1
<isEqual prepend="AND" property="searchCondition" compareValue="1">
GROUP_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
ORDER BY GROUP_CREAT_DE DESC
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<insert id="groupManageDAO.insertGroup">
<![CDATA[
INSERT INTO LETTNAUTHORGROUPINFO
( GROUP_ID
, GROUP_NM
, GROUP_DC
, GROUP_CREAT_DE )
VALUES ( #groupId#
, #groupNm#
, #groupDc#
, now())
]]>
</insert>
<update id="groupManageDAO.updateGroup" parameterClass="groupManage">
<![CDATA[
UPDATE LETTNAUTHORGROUPINFO
SET GROUP_NM=#groupNm#
, GROUP_DC=#groupDc#
, GROUP_CREAT_DE=now()
WHERE GROUP_ID=#groupId#
]]>
</update>
<delete id="groupManageDAO.deleteGroup">
<![CDATA[
DELETE FROM LETTNAUTHORGROUPINFO
WHERE GROUP_ID=#groupId#
]]>
</delete>
<select id="groupManageDAO.selectGroupListTotCnt" parameterClass="groupManageVO" resultClass="int">
SELECT COUNT(*) totcnt
FROM LETTNAUTHORGROUPINFO
WHERE 1=1
<isEqual prepend="AND" property="searchCondition" compareValue="1">
GROUP_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
</select>
</sqlMap>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="AuthorManage">
@ -26,33 +26,33 @@
</resultMap>
<select id="authorManageDAO.selectAuthorList" parameterClass="AuthorManageVO" resultMap="author">
SELECT *
FROM (
/* authorManageDAO.selectAuthorList */
SELECT
AUTHOR_CODE, AUTHOR_NM, AUTHOR_DC,
AUTHOR_CREAT_DE ,
SORT_NUM ,
ROWNUM AS rnum
AUTHOR_CODE, AUTHOR_NM, AUTHOR_DC,
AUTHOR_CREAT_DE,
/*
TO_CHAR(AUTHOR_CREAT_DE , 'YYYY-MM-DD') AUTHOR_CREAT_DE ,
*/
SORT_NUM
FROM LETTNAUTHORINFO
<![CDATA[
WHERE ROWNUM <= (#firstIndex# + #recordCountPerPage#)
]]>
WHERE 1=1
<isNotEmpty property="authorSet">
AND AUTHOR_SET = #authorSet#
</isNotEmpty>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
AUTHOR_NM LIKE CONCAT('%' , #searchKeyword#, '%')
AUTHOR_NM LIKE '%'||#searchKeyword#||'%'
</isEqual>
)
WHERE rnum > #firstIndex#
ORDER BY 1
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<insert id="authorManageDAO.insertAuthor" parameterClass="AuthorManage">
@ -67,7 +67,7 @@
, #authorNm#
, #authorDc#
, (SELECT CAST(MAX(sort_num)+1 AS VARCHAR(2)) FROM LETTNAUTHORINFO)
, DATE_FORMAT(NOW(), '%Y-%m-%d'))
, TO_CHAR(SYSDATE, 'YYYY-MM-DD'))
]]>
</insert>
@ -89,15 +89,16 @@
</delete>
<select id="authorManageDAO.selectAuthor" resultMap="author">
<![CDATA[
/* authorManageDAO.selectAuthor */
SELECT AUTHOR_CODE, AUTHOR_NM, AUTHOR_DC, AUTHOR_CREAT_DE,
DATE_FORMAT(AUTHOR_CREAT_DE , '%Y-%m-%d') SORT_NUM
AUTHOR_CREAT_DE AS SORT_NUM
/* DATE_FORMAT(AUTHOR_CREAT_DE , '%Y-%m-%d') SORT_NUM */
FROM LETTNAUTHORINFO
WHERE AUTHOR_CODE=#authorCode#
]]>
</select>
<select id="authorManageDAO.selectAuthorListTotCnt" parameterClass="AuthorManageVO" resultClass="int">
/* authorManageDAO.selectAuthorListTotCnt */
SELECT COUNT(*) totcnt
FROM LETTNAUTHORINFO
WHERE 1=1
@ -107,6 +108,7 @@
</select>
<select id="authorManageDAO.selectAuthorAllList" parameterClass="AuthorManageVO" resultMap="author">
/* authorManageDAO.selectAuthorAllList */
SELECT
AUTHOR_CODE, AUTHOR_NM, AUTHOR_DC, AUTHOR_CREAT_DE,
SORT_NUM
@ -115,6 +117,7 @@
</select>
<select id="authorManageDAO.selectAuthorHrcList" parameterClass="AuthorManageVO" resultMap="authorHrc">
/* authorManageDAO.selectAuthorHrcList */
SELECT
A.AUTHOR_CODE, A.AUTHOR_NM, A.AUTHOR_DC, A.AUTHOR_CREAT_DE, A.SORT_NUM, B.PARNTS_ROLE, B.CHLDRN_ROLE
FROM LETTNAUTHORINFO A

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="AuthorRoleManage">
@ -42,6 +42,7 @@
</select> -->
<select id="authorRoleManageDAO.selectAuthorRoleList" parameterClass="authorRoleManageVO" resultMap="authorRole">
/* authorRoleManageDAO.selectAuthorRoleList */
SELECT A.ROLE_CODE,
A.ROLE_NM,
A.ROLE_PTTRN,
@ -49,7 +50,7 @@
A.ROLE_TY,
A.ROLE_SORT,
B.AUTHOR_CODE,
DATE_FORMAT(B.CREAT_DT , '%Y-%m-%d') CREAT_DT,
TO_CHAR(B.CREAT_DT , 'YYYY-MM-DD') CREAT_DT,
(CASE WHEN B.ROLE_CODE IS NULL THEN 'N'
ELSE 'Y'
END) AS REG_YN,
@ -59,33 +60,37 @@
WHERE 1=1
<isNotEmpty property="searchKeyword2">
<isNotEqual property="searchKeyword2" compareValue="">
AND ( ROLE_NM LIKE CONCAT('%' , #searchKeyword2#, '%') OR ROLE_DC LIKE CONCAT('%' , #searchKeyword2#, '%')
OR ROLE_PTTRN LIKE CONCAT('%' , #searchKeyword2#, '%')
AND ( ROLE_NM LIKE '%'||#searchKeyword2#||'%' OR ROLE_DC LIKE '%'||#searchKeyword2#||'%'
OR ROLE_PTTRN LIKE '%'||#searchKeyword2#||'%'
)
</isNotEqual>
</isNotEmpty>
) A
LEFT OUTER JOIN (SELECT AUTHOR_CODE , ROLE_CODE, CREAT_DT FROM LETTNAUTHORROLERELATE WHERE AUTHOR_CODE = #searchKeyword#) B
ON A.ROLE_CODE = B.ROLE_CODE
ORDER BY 1=1
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<select id="authorRoleManageDAO.selectAuthorRoleListTotCnt" parameterClass="authorRoleManageVO" resultClass="int">
/* authorRoleManageDAO.selectAuthorRoleListTotCnt */
SELECT COUNT(*) totcnt
FROM (
SELECT * FROM LETTNROLEINFO WHERE 1=1
<isNotEmpty property="searchKeyword2">
<isNotEqual property="searchKeyword2" compareValue="">
AND ( ROLE_NM LIKE CONCAT('%' , #searchKeyword2#, '%') OR ROLE_DC LIKE CONCAT('%' , #searchKeyword2#, '%')
OR ROLE_PTTRN LIKE CONCAT('%' , #searchKeyword2#, '%')
AND ( ROLE_NM LIKE '%'||#searchKeyword2#||'%' OR ROLE_DC LIKE '%'||#searchKeyword2#||'%'
OR ROLE_PTTRN LIKE '%'||#searchKeyword2#||'%'
)
</isNotEqual>
</isNotEmpty>
@ -94,7 +99,8 @@
ON A.ROLE_CODE = B.ROLE_CODE
</select>
<insert id="authorRoleManageDAO.insertAuthorRole" parameterClass="authorRoleManage">
<!--
/*
<![CDATA[
INSERT INTO LETTNAUTHORROLERELATE
( AUTHOR_CODE
@ -102,9 +108,32 @@
, CREAT_DT)
VALUES ( #authorCode#
, #roleCode#
, now())
ON DUPLICATE KEY UPDATE AUTHOR_CODE=#authorCode#, ROLE_CODE= #roleCode# , CREAT_DT = NOW()
, SYSDATE)
ON DUPLICATE KEY UPDATE AUTHOR_CODE=#authorCode#, ROLE_CODE= #roleCode# , CREAT_DT = SYSDATE
]]>
*/
-->
<insert id="authorRoleManageDAO.insertAuthorRole" parameterClass="authorRoleManage">
MERGE INTO LETTNAUTHORROLERELATE
USING DUAL
ON (AUTHOR_CODE=#authorCode# AND ROLE_CODE= #roleCode#)
WHEN MATCHED THEN
UPDATE SET CREAT_DT = SYSDATE
WHEN NOT MATCHED THEN
INSERT(
AUTHOR_CODE
, ROLE_CODE
, CREAT_DT
)
VALUES(
#authorCode#
, #roleCode#
, SYSDATE
)
</insert>
<delete id="authorRoleManageDAO.deleteAuthorRole">

View File

@ -0,0 +1,129 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="AuthorGroup">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="AuthorGroupVO" type="kcc.let.sec.rgm.service.AuthorGroupVO"/>
<typeAlias alias="AuthorGroup" type="kcc.let.sec.rgm.service.AuthorGroup"/>
<resultMap id="authorGroup" class="kcc.let.sec.rgm.service.AuthorGroupVO">
<result property="userId" column="USER_ID" columnIndex="1"/>
<result property="userNm" column="USER_NM" columnIndex="2"/>
<result property="groupId" column="GROUP_ID" columnIndex="3"/>
<result property="mberTyCode" column="MBER_TY_CODE" columnIndex="4"/>
<result property="mberTyNm" column="MBER_TY_NM" columnIndex="5"/>
<result property="authorCode" column="AUTHOR_CODE" columnIndex="6"/>
<result property="regYn" column="REG_YN" columnIndex="8"/>
<result property="uniqId" column="ESNTL_ID" columnIndex="9"/>
</resultMap>
<select id="authorGroupDAO.selectAuthorGroupList" parameterClass="AuthorGroupVO" resultMap="authorGroup">
/* authorGroupDAO.selectAuthorGroupList */
SELECT A.USER_ID,
A.USER_NM,
A.GROUP_ID,
A.MBER_TY_CODE,
(SELECT CODE_NM
FROM LETTCCMMNDETAILCODE
WHERE CODE_ID = 'COM012'
AND CODE = A.MBER_TY_CODE
AND USE_AT = 'Y') AS MBER_TY_NM,
B.AUTHOR_CODE,
(CASE WHEN B.SCRTY_DTRMN_TRGET_ID IS NULL THEN 'N'
ELSE 'Y'
END) AS REG_YN,
ESNTL_ID
FROM (<!-- SELECT MBER_ID USER_ID, MBER_NM USER_NM, GROUP_ID, 'USR01' MBER_TY_CODE, ESNTL_ID
FROM LETTNGNRLMBER
UNION ALL --> <!-- 일반사용자 제외 -->
SELECT EMPLYR_ID USER_ID, USER_NM USER_NM, GROUP_ID, 'USR03' MBER_TY_CODE, ESNTL_ID
FROM LETTNEMPLYRINFO
) A LEFT OUTER JOIN LETTNEMPLYRSCRTYESTBS B
ON A.ESNTL_ID = B.SCRTY_DTRMN_TRGET_ID
WHERE 1 = 1
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="">
( A.USER_ID LIKE '%'||#searchKeyword#||'%' OR
A.USER_NM LIKE '%'||#searchKeyword#||'%' )
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
A.USER_ID LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
A.USER_NM LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="3">
A.GROUP_ID = #searchKeyword#
</isEqual>
</isNotEmpty>
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<insert id="authorGroupDAO.insertAuthorGroup" parameterClass="AuthorGroup">
/* authorGroupDAO.insertAuthorGroup */
<![CDATA[
INSERT INTO LETTNEMPLYRSCRTYESTBS
( SCRTY_DTRMN_TRGET_ID
, MBER_TY_CODE
, AUTHOR_CODE)
VALUES ( #uniqId#
, #mberTyCode#
, #authorCode#)
]]>
</insert>
<update id="authorGroupDAO.updateAuthorGroup" parameterClass="AuthorGroup">
UPDATE LETTNEMPLYRSCRTYESTBS
SET AUTHOR_CODE=#authorCode#
<isNotNull property="mberTyCode">
, MBER_TY_CODE=#mberTyCode#
</isNotNull>
WHERE SCRTY_DTRMN_TRGET_ID=#uniqId#
</update>
<delete id="authorGroupDAO.deleteAuthorGroup">
<![CDATA[
DELETE FROM LETTNEMPLYRSCRTYESTBS
WHERE SCRTY_DTRMN_TRGET_ID=#uniqId#
]]>
</delete>
<select id="authorGroupDAO.selectAuthorGroupListTotCnt" parameterClass="AuthorGroupVO" resultClass="int">
/* authorGroupDAO.selectAuthorGroupListTotCnt */
SELECT COUNT(*) AS totcnt
FROM (<!-- SELECT MBER_ID USER_ID, MBER_NM USER_NM, GROUP_ID, 'USR01' MBER_TY_CODE
FROM LETTNGNRLMBER
UNION ALL --> <!-- 일반사용자 제외 -->
SELECT EMPLYR_ID USER_ID, USER_NM USER_NM, GROUP_ID, 'USR03' MBER_TY_CODE
FROM LETTNEMPLYRINFO ) A LEFT OUTER JOIN LETTNEMPLYRSCRTYESTBS B
ON A.USER_ID = B.SCRTY_DTRMN_TRGET_ID
WHERE 1 = 1
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="">
( A.USER_ID LIKE '%'||#searchKeyword#||'%' OR
A.USER_NM LIKE '%'||#searchKeyword#||'%' )
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
A.USER_ID LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
A.USER_NM LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="3">
A.GROUP_ID = #searchKeyword#
</isEqual>
</isNotEmpty>
</select>
</sqlMap>

View File

@ -0,0 +1,129 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="AuthorGroup">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="AuthorGroupVO" type="kcc.let.sec.rgm.service.AuthorGroupVO"/>
<typeAlias alias="AuthorGroup" type="kcc.let.sec.rgm.service.AuthorGroup"/>
<resultMap id="authorGroup" class="kcc.let.sec.rgm.service.AuthorGroupVO">
<result property="userId" column="USER_ID" columnIndex="1"/>
<result property="userNm" column="USER_NM" columnIndex="2"/>
<result property="groupId" column="GROUP_ID" columnIndex="3"/>
<result property="mberTyCode" column="MBER_TY_CODE" columnIndex="4"/>
<result property="mberTyNm" column="MBER_TY_NM" columnIndex="5"/>
<result property="authorCode" column="AUTHOR_CODE" columnIndex="6"/>
<result property="regYn" column="REG_YN" columnIndex="8"/>
<result property="uniqId" column="ESNTL_ID" columnIndex="9"/>
</resultMap>
<select id="authorGroupDAO.selectAuthorGroupList" parameterClass="AuthorGroupVO" resultMap="authorGroup">
/* authorGroupDAO.selectAuthorGroupList */
SELECT A.USER_ID,
A.USER_NM,
A.GROUP_ID,
A.MBER_TY_CODE,
(SELECT CODE_NM
FROM LETTCCMMNDETAILCODE
WHERE CODE_ID = 'COM012'
AND CODE = A.MBER_TY_CODE
AND USE_AT = 'Y') AS MBER_TY_NM,
B.AUTHOR_CODE,
(CASE WHEN B.SCRTY_DTRMN_TRGET_ID IS NULL THEN 'N'
ELSE 'Y'
END) AS REG_YN,
ESNTL_ID
FROM (<!-- SELECT MBER_ID USER_ID, MBER_NM USER_NM, GROUP_ID, 'USR01' MBER_TY_CODE, ESNTL_ID
FROM LETTNGNRLMBER
UNION ALL --> <!-- 일반사용자 제외 -->
SELECT EMPLYR_ID USER_ID, USER_NM USER_NM, GROUP_ID, 'USR03' MBER_TY_CODE, ESNTL_ID
FROM LETTNEMPLYRINFO
) A LEFT OUTER JOIN LETTNEMPLYRSCRTYESTBS B
ON A.ESNTL_ID = B.SCRTY_DTRMN_TRGET_ID
WHERE 1 = 1
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="">
( A.USER_ID LIKE '%'||#searchKeyword#||'%' OR
A.USER_NM LIKE '%'||#searchKeyword#||'%' )
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
A.USER_ID LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
A.USER_NM LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="3">
A.GROUP_ID = #searchKeyword#
</isEqual>
</isNotEmpty>
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<insert id="authorGroupDAO.insertAuthorGroup" parameterClass="AuthorGroup">
/* authorGroupDAO.insertAuthorGroup */
<![CDATA[
INSERT INTO LETTNEMPLYRSCRTYESTBS
( SCRTY_DTRMN_TRGET_ID
, MBER_TY_CODE
, AUTHOR_CODE)
VALUES ( #uniqId#
, #mberTyCode#
, #authorCode#)
]]>
</insert>
<update id="authorGroupDAO.updateAuthorGroup" parameterClass="AuthorGroup">
UPDATE LETTNEMPLYRSCRTYESTBS
SET AUTHOR_CODE=#authorCode#
<isNotNull property="mberTyCode">
, MBER_TY_CODE=#mberTyCode#
</isNotNull>
WHERE SCRTY_DTRMN_TRGET_ID=#uniqId#
</update>
<delete id="authorGroupDAO.deleteAuthorGroup">
<![CDATA[
DELETE FROM LETTNEMPLYRSCRTYESTBS
WHERE SCRTY_DTRMN_TRGET_ID=#uniqId#
]]>
</delete>
<select id="authorGroupDAO.selectAuthorGroupListTotCnt" parameterClass="AuthorGroupVO" resultClass="int">
/* authorGroupDAO.selectAuthorGroupListTotCnt */
SELECT COUNT(*) AS totcnt
FROM (<!-- SELECT MBER_ID USER_ID, MBER_NM USER_NM, GROUP_ID, 'USR01' MBER_TY_CODE
FROM LETTNGNRLMBER
UNION ALL --> <!-- 일반사용자 제외 -->
SELECT EMPLYR_ID USER_ID, USER_NM USER_NM, GROUP_ID, 'USR03' MBER_TY_CODE
FROM LETTNEMPLYRINFO ) A LEFT OUTER JOIN LETTNEMPLYRSCRTYESTBS B
ON A.USER_ID = B.SCRTY_DTRMN_TRGET_ID
WHERE 1 = 1
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="">
( A.USER_ID LIKE '%'||#searchKeyword#||'%' OR
A.USER_NM LIKE '%'||#searchKeyword#||'%' )
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
A.USER_ID LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
A.USER_NM LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="3">
A.GROUP_ID = #searchKeyword#
</isEqual>
</isNotEmpty>
</select>
</sqlMap>

View File

@ -0,0 +1,154 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="RoleManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="roleManageVO" type="kcc.let.sec.rmt.service.RoleManageVO"/>
<typeAlias alias="roleManage" type="kcc.let.sec.rmt.service.RoleManage"/>
<resultMap id="role" class="kcc.let.sec.rmt.service.RoleManageVO">
<result property="roleCode" column="ROLE_CODE" columnIndex="1"/>
<result property="roleNm" column="ROLE_NM" columnIndex="2"/>
<result property="rolePtn" column="ROLE_PTTRN" columnIndex="3"/>
<result property="roleDc" column="ROLE_DC" columnIndex="4"/>
<result property="roleTyp" column="ROLE_TY" columnIndex="5"/>
<result property="roleSort" column="ROLE_SORT" columnIndex="6"/>
<result property="roleCreatDe" column="ROLE_CREAT_DE" columnIndex="7"/>
<result property="sortTempNo" column="SORT_TEMP_NO" columnIndex="8"/>
</resultMap>
<select id="roleManageDAO.selectRole" resultMap="role">
/* roleManageDAO.selectRole */
<![CDATA[
SELECT ROLE_CODE,
ROLE_NM,
ROLE_PTTRN,
ROLE_DC,
ROLE_TY,
ROLE_SORT,
ROLE_CREAT_DE,
ROLE_CREAT_DE AS SORT_TEMP_NO
FROM LETTNROLEINFO
WHERE ROLE_CODE = #roleCode#
]]>
</select>
<select id="roleManageDAO.selectRoleList" parameterClass="roleManageVO" resultMap="role">
/* roleManageDAO.selectRoleList */
SELECT ROLE_CODE,
ROLE_NM,
ROLE_PTTRN,
ROLE_DC,
(SELECT CODE_NM
FROM LETTCCMMNDETAILCODE
WHERE CODE_ID = 'COM029'
AND CODE = ROLE_TY) AS ROLE_TY,
ROLE_SORT,
TO_CHAR(ROLE_CREAT_DE, 'YYYY-MM-DD' ) ROLE_CREAT_DE,
TO_CHAR(ROLE_CREAT_DE, 'YYYY-MM-DD' ) SORT_TEMP_NO
FROM LETTNROLEINFO
WHERE 1=1
<isEqual prepend="AND" property="searchCondition" compareValue="">
( ROLE_NM LIKE '%'||#searchKeyword#||'%' OR
ROLE_DC LIKE '%'||#searchKeyword#||'%' OR
ROLE_PTTRN LIKE '%'||#searchKeyword#||'%'
)
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
ROLE_NM LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
ROLE_DC LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="3">
ROLE_PTTRN LIKE '%'||#searchKeyword#||'%'
</isEqual>
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<insert id="roleManageDAO.insertRole" parameterClass="roleManage">
<![CDATA[
INSERT INTO LETTNROLEINFO
( ROLE_CODE
, ROLE_NM
, ROLE_PTTRN
, ROLE_DC
, ROLE_TY
, ROLE_SORT
, ROLE_CREAT_DE )
VALUES ( #roleCode#
, #roleNm#
, #rolePtn#
, #roleDc#
, #roleTyp#
, #roleSort#
, TO_CHAR(SYSDATE, 'YYYY-MM-DD HH24:MI:SS')
)
]]>
</insert>
<update id="roleManageDAO.updateRole" parameterClass="roleManage">
/* roleManageDAO.updateRole */
<![CDATA[
UPDATE LETTNROLEINFO
SET ROLE_NM=#roleNm#
, ROLE_PTTRN=#rolePtn#
, ROLE_DC=#roleDc#
, ROLE_TY=#roleTyp#
, ROLE_SORT=#roleSort#
, ROLE_CREAT_DE=TO_CHAR(SYSDATE, 'YYYY-MM-DD HH24')
/* DATE_FORMAT(NOW(), '%Y-%m-%d %T') */
WHERE ROLE_CODE=#roleCode#
]]>
</update>
<delete id="roleManageDAO.deleteRole">
<![CDATA[
DELETE FROM LETTNROLEINFO
WHERE ROLE_CODE=#roleCode#
]]>
</delete>
<select id="roleManageDAO.selectAuthorListTotCnt" parameterClass="roleManageVO" resultClass="int">
/* roleManageDAO.selectAuthorListTotCnt */
SELECT COUNT(*) totcnt
FROM LETTNROLEINFO
WHERE 1=1
<isEqual prepend="AND" property="searchCondition" compareValue="">
( ROLE_NM LIKE '%'||#searchKeyword#||'%' OR
ROLE_DC LIKE '%'||#searchKeyword#||'%' OR
ROLE_PTTRN LIKE '%'||#searchKeyword#||'%'
)
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
ROLE_NM LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
ROLE_DC LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="3">
ROLE_PTTRN LIKE '%'||#searchKeyword#||'%'
</isEqual>
</select>
<select id="roleManageDAO.selectRoleAllList" parameterClass="roleManageVO" resultMap="role">
/* roleManageDAO.selectRoleAllList */
SELECT ROLE_CODE, ROLE_NM, ROLE_PTTRN, ROLE_DC, ROLE_TY, ROLE_SORT, ROLE_CREAT_DE,
ROLE_CREAT_DE AS SORT_TEMP_NO
FROM LETTNROLEINFO
</select>
</sqlMap>

View File

@ -0,0 +1,154 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="RoleManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="roleManageVO" type="kcc.let.sec.rmt.service.RoleManageVO"/>
<typeAlias alias="roleManage" type="kcc.let.sec.rmt.service.RoleManage"/>
<resultMap id="role" class="kcc.let.sec.rmt.service.RoleManageVO">
<result property="roleCode" column="ROLE_CODE" columnIndex="1"/>
<result property="roleNm" column="ROLE_NM" columnIndex="2"/>
<result property="rolePtn" column="ROLE_PTTRN" columnIndex="3"/>
<result property="roleDc" column="ROLE_DC" columnIndex="4"/>
<result property="roleTyp" column="ROLE_TY" columnIndex="5"/>
<result property="roleSort" column="ROLE_SORT" columnIndex="6"/>
<result property="roleCreatDe" column="ROLE_CREAT_DE" columnIndex="7"/>
<result property="sortTempNo" column="SORT_TEMP_NO" columnIndex="8"/>
</resultMap>
<select id="roleManageDAO.selectRole" resultMap="role">
/* roleManageDAO.selectRole */
<![CDATA[
SELECT ROLE_CODE,
ROLE_NM,
ROLE_PTTRN,
ROLE_DC,
ROLE_TY,
ROLE_SORT,
ROLE_CREAT_DE,
ROLE_CREAT_DE AS SORT_TEMP_NO
FROM LETTNROLEINFO
WHERE ROLE_CODE = #roleCode#
]]>
</select>
<select id="roleManageDAO.selectRoleList" parameterClass="roleManageVO" resultMap="role">
/* roleManageDAO.selectRoleList */
SELECT ROLE_CODE,
ROLE_NM,
ROLE_PTTRN,
ROLE_DC,
(SELECT CODE_NM
FROM LETTCCMMNDETAILCODE
WHERE CODE_ID = 'COM029'
AND CODE = ROLE_TY) AS ROLE_TY,
ROLE_SORT,
TO_CHAR(ROLE_CREAT_DE, 'YYYY-MM-DD' ) ROLE_CREAT_DE,
TO_CHAR(ROLE_CREAT_DE, 'YYYY-MM-DD' ) SORT_TEMP_NO
FROM LETTNROLEINFO
WHERE 1=1
<isEqual prepend="AND" property="searchCondition" compareValue="">
( ROLE_NM LIKE '%'||#searchKeyword#||'%' OR
ROLE_DC LIKE '%'||#searchKeyword#||'%' OR
ROLE_PTTRN LIKE '%'||#searchKeyword#||'%'
)
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
ROLE_NM LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
ROLE_DC LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="3">
ROLE_PTTRN LIKE '%'||#searchKeyword#||'%'
</isEqual>
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<insert id="roleManageDAO.insertRole" parameterClass="roleManage">
<![CDATA[
INSERT INTO LETTNROLEINFO
( ROLE_CODE
, ROLE_NM
, ROLE_PTTRN
, ROLE_DC
, ROLE_TY
, ROLE_SORT
, ROLE_CREAT_DE )
VALUES ( #roleCode#
, #roleNm#
, #rolePtn#
, #roleDc#
, #roleTyp#
, #roleSort#
, TO_CHAR(SYSDATE, 'YYYY-MM-DD HH24:MI:SS')
)
]]>
</insert>
<update id="roleManageDAO.updateRole" parameterClass="roleManage">
/* roleManageDAO.updateRole */
<![CDATA[
UPDATE LETTNROLEINFO
SET ROLE_NM=#roleNm#
, ROLE_PTTRN=#rolePtn#
, ROLE_DC=#roleDc#
, ROLE_TY=#roleTyp#
, ROLE_SORT=#roleSort#
, ROLE_CREAT_DE=TO_CHAR(SYSDATE, 'YYYY-MM-DD HH24')
/* DATE_FORMAT(NOW(), '%Y-%m-%d %T') */
WHERE ROLE_CODE=#roleCode#
]]>
</update>
<delete id="roleManageDAO.deleteRole">
<![CDATA[
DELETE FROM LETTNROLEINFO
WHERE ROLE_CODE=#roleCode#
]]>
</delete>
<select id="roleManageDAO.selectAuthorListTotCnt" parameterClass="roleManageVO" resultClass="int">
/* roleManageDAO.selectAuthorListTotCnt */
SELECT COUNT(*) totcnt
FROM LETTNROLEINFO
WHERE 1=1
<isEqual prepend="AND" property="searchCondition" compareValue="">
( ROLE_NM LIKE '%'||#searchKeyword#||'%' OR
ROLE_DC LIKE '%'||#searchKeyword#||'%' OR
ROLE_PTTRN LIKE '%'||#searchKeyword#||'%'
)
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
ROLE_NM LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
ROLE_DC LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="3">
ROLE_PTTRN LIKE '%'||#searchKeyword#||'%'
</isEqual>
</select>
<select id="roleManageDAO.selectRoleAllList" parameterClass="roleManageVO" resultMap="role">
/* roleManageDAO.selectRoleAllList */
SELECT ROLE_CODE, ROLE_NM, ROLE_PTTRN, ROLE_DC, ROLE_TY, ROLE_SORT, ROLE_CREAT_DE,
ROLE_CREAT_DE AS SORT_TEMP_NO
FROM LETTNROLEINFO
</select>
</sqlMap>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="ConectStats">

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="ConectStats">

View File

@ -0,0 +1,195 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="CmmnCodeManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="CmmnCode" type="kcc.let.sym.ccm.cca.service.CmmnCode"/>
<typeAlias alias="CmmnCodeVO" type="kcc.let.sym.ccm.cca.service.CmmnCodeVO"/>
<typeAlias alias="CmmnDetailCodeVO" type="kcc.let.sym.ccm.cde.service.CmmnDetailCodeVO"/>
<select id="CmmnCodeManageDAO.selectCmmnCodeCheck" parameterClass="CmmnCodeVO" resultClass="int">
SELECT
COUNT(*)
FROM
LETTCCMMNCODE
WHERE
CODE_ID = #codeId#
AND
CL_CODE = #clCode#
</select>
<select id="CmmnCodeManageDAO.selectCmmnCodeList" parameterClass="CmmnCodeVO" resultClass="egovMap">
<![CDATA[
SELECT B.CL_CODE_NM
, A.CODE_ID
, A.CODE_ID_NM
, A.USE_AT
, A.FRST_REGIST_PNTTM AS FRST_REGIST_PNTTM
FROM LETTCCMMNCODE A
, LETTCCMMNCLCODE B
WHERE A.CL_CODE = B.CL_CODE
]]>
<isEqual prepend="AND" property="searchCondition" compareValue="">
<![CDATA[
( A.CODE_ID LIKE CONCAT('%', #searchKeyword#, '%') OR A.CODE_ID_NM LIKE CONCAT('%', #searchKeyword#, '%'))
]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
<![CDATA[A.CODE_ID LIKE CONCAT('%', #searchKeyword#, '%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
<![CDATA[A.CODE_ID_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="clCode">
<![CDATA[A.CL_CODE = #searchKeyword#]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="clCode">
<![CDATA[A.USE_AT = 'Y']]>
</isEqual>
ORDER BY 1=1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<select id="CmmnCodeManageDAO.selectCmmnCodeListTotCnt" parameterClass="CmmnCodeVO" resultClass="int">
<![CDATA[
SELECT COUNT(*) totcnt
FROM LETTCCMMNCODE A
, LETTCCMMNCLCODE B
WHERE A.CL_CODE = B.CL_CODE
]]>
<isEqual prepend="AND" property="searchCondition" compareValue="">
<![CDATA[
( CODE_ID LIKE CONCAT('%', #searchKeyword#, '%') OR A.CODE_ID_NM LIKE CONCAT('%', #searchKeyword#, '%'))
]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
<![CDATA[CODE_ID LIKE CONCAT('%', #searchKeyword#, '%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
<![CDATA[CODE_ID_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
</select>
<select id="CmmnCodeManageDAO.selectCmmnCodeDetail" parameterClass="CmmnCode" resultClass="CmmnCode">
<![CDATA[
SELECT B.CL_CODE_NM clCodeNm
, A.CL_CODE clCode
, A.CODE_ID codeId
, A.CODE_ID_NM codeIdNm
, A.CODE_ID_DC codeIdDc
, A.USE_AT useAt
FROM LETTCCMMNCODE A
, LETTCCMMNCLCODE B
WHERE A.CL_CODE = B.CL_CODE
AND A.CODE_ID = #codeId#
]]>
</select>
<insert id="CmmnCodeManageDAO.insertCmmnCode">
<![CDATA[
INSERT
INTO LETTCCMMNCODE
( CODE_ID
, CODE_ID_NM
, CODE_ID_DC
, CL_CODE
, USE_AT
, FRST_REGIST_PNTTM
, FRST_REGISTER_ID
, LAST_UPDT_PNTTM
, LAST_UPDUSR_ID
)
VALUES
( #codeId#
, #codeIdNm#
, #codeIdDc#
, #clCode#
, #useAt#
, SYSDATE
, #frstRegisterId#
, SYSDATE
, #frstRegisterId#
)
]]>
</insert>
<update id="CmmnCodeManageDAO.updateCmmnCode">
<![CDATA[
UPDATE LETTCCMMNCODE
SET CODE_ID_NM = #codeIdNm#
, CODE_ID_DC = #codeIdDc#
, USE_AT = #useAt#
, LAST_UPDT_PNTTM = SYSDATE
, LAST_UPDUSR_ID = #lastUpdusrId#
WHERE CODE_ID = #codeId#
]]>
</update>
<!-- <delete id="CmmnCodeManageDAO.deleteCmmnCode">
<![CDATA[
UPDATE LETTCCMMNCODE
SET USE_AT = 'N'
WHERE CODE_ID = #codeId#
]]>
</delete> -->
<delete id="CmmnCodeManageDAO.deleteCmmnCode">
<![CDATA[
DELETE FROM LETTCCMMNCODE
WHERE CODE_ID = #codeId#
]]>
</delete>
<select id="CmmnCodeManageDAO.isExistCode" parameterClass="CmmnDetailCodeVO" resultClass="int">
<![CDATA[
SELECT SUM(CNT) FROM (
SELECT COUNT(*) CNT FROM LETTCCMMNCLCODE
WHERE CL_CODE = #codeId#
UNION
SELECT COUNT(*) CNT FROM LETTCCMMNCODE
WHERE CODE_ID = #codeId#
) A
]]>
</select>
<select id="CmmnCodeManageDAO.selectExistCmmncodeCnt" parameterClass="CmmnCodeVO" resultClass="int">
<![CDATA[
SELECT COUNT(*) totcnt
FROM LETTCCMMNCODE A
, LETTCCMMNCLCODE B
WHERE A.CL_CODE = B.CL_CODE
AND A.CL_CODE = #clCode#
]]>
</select>
<update id="CmmnCodeManageDAO.updateCmmnCodePk" parameterClass="CmmnCode">
<![CDATA[
UPDATE LETTCCMMNCODE
SET CODE_ID_NM = #codeIdNm#
, CODE_ID_DC = #codeIdDc#
, USE_AT = #useAt#
, LAST_UPDT_PNTTM = SYSDATE
, LAST_UPDUSR_ID = #lastUpdusrId#
, CODE_ID = #codeId#
WHERE CODE_ID = #tempCodeId#
]]>
</update>
<update id="CmmnCodeManageDAO.updateCmmnCodeNm" parameterClass="CmmnCode">
<![CDATA[
UPDATE LETTCCMMNCODE
SET CODE_ID_NM = #codeIdNm#
, LAST_UPDT_PNTTM = SYSDATE
, LAST_UPDUSR_ID = #lastUpdusrId#
WHERE CODE_ID = #codeId#
]]>
</update>
</sqlMap>

View File

@ -0,0 +1,195 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="CmmnCodeManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="CmmnCode" type="kcc.let.sym.ccm.cca.service.CmmnCode"/>
<typeAlias alias="CmmnCodeVO" type="kcc.let.sym.ccm.cca.service.CmmnCodeVO"/>
<typeAlias alias="CmmnDetailCodeVO" type="kcc.let.sym.ccm.cde.service.CmmnDetailCodeVO"/>
<select id="CmmnCodeManageDAO.selectCmmnCodeCheck" parameterClass="CmmnCodeVO" resultClass="int">
SELECT
COUNT(*)
FROM
LETTCCMMNCODE
WHERE
CODE_ID = #codeId#
AND
CL_CODE = #clCode#
</select>
<select id="CmmnCodeManageDAO.selectCmmnCodeList" parameterClass="CmmnCodeVO" resultClass="egovMap">
<![CDATA[
SELECT B.CL_CODE_NM
, A.CODE_ID
, A.CODE_ID_NM
, A.USE_AT
, A.FRST_REGIST_PNTTM AS FRST_REGIST_PNTTM
FROM LETTCCMMNCODE A
, LETTCCMMNCLCODE B
WHERE A.CL_CODE = B.CL_CODE
]]>
<isEqual prepend="AND" property="searchCondition" compareValue="">
<![CDATA[
( A.CODE_ID LIKE CONCAT('%', #searchKeyword#, '%') OR A.CODE_ID_NM LIKE CONCAT('%', #searchKeyword#, '%'))
]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
<![CDATA[A.CODE_ID LIKE CONCAT('%', #searchKeyword#, '%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
<![CDATA[A.CODE_ID_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="clCode">
<![CDATA[A.CL_CODE = #searchKeyword#]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="clCode">
<![CDATA[A.USE_AT = 'Y']]>
</isEqual>
ORDER BY 1=1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<select id="CmmnCodeManageDAO.selectCmmnCodeListTotCnt" parameterClass="CmmnCodeVO" resultClass="int">
<![CDATA[
SELECT COUNT(*) totcnt
FROM LETTCCMMNCODE A
, LETTCCMMNCLCODE B
WHERE A.CL_CODE = B.CL_CODE
]]>
<isEqual prepend="AND" property="searchCondition" compareValue="">
<![CDATA[
( CODE_ID LIKE CONCAT('%', #searchKeyword#, '%') OR A.CODE_ID_NM LIKE CONCAT('%', #searchKeyword#, '%'))
]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
<![CDATA[CODE_ID LIKE CONCAT('%', #searchKeyword#, '%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
<![CDATA[CODE_ID_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
</select>
<select id="CmmnCodeManageDAO.selectCmmnCodeDetail" parameterClass="CmmnCode" resultClass="CmmnCode">
<![CDATA[
SELECT B.CL_CODE_NM clCodeNm
, A.CL_CODE clCode
, A.CODE_ID codeId
, A.CODE_ID_NM codeIdNm
, A.CODE_ID_DC codeIdDc
, A.USE_AT useAt
FROM LETTCCMMNCODE A
, LETTCCMMNCLCODE B
WHERE A.CL_CODE = B.CL_CODE
AND A.CODE_ID = #codeId#
]]>
</select>
<insert id="CmmnCodeManageDAO.insertCmmnCode">
<![CDATA[
INSERT
INTO LETTCCMMNCODE
( CODE_ID
, CODE_ID_NM
, CODE_ID_DC
, CL_CODE
, USE_AT
, FRST_REGIST_PNTTM
, FRST_REGISTER_ID
, LAST_UPDT_PNTTM
, LAST_UPDUSR_ID
)
VALUES
( #codeId#
, #codeIdNm#
, #codeIdDc#
, #clCode#
, #useAt#
, SYSDATE
, #frstRegisterId#
, SYSDATE
, #frstRegisterId#
)
]]>
</insert>
<update id="CmmnCodeManageDAO.updateCmmnCode">
<![CDATA[
UPDATE LETTCCMMNCODE
SET CODE_ID_NM = #codeIdNm#
, CODE_ID_DC = #codeIdDc#
, USE_AT = #useAt#
, LAST_UPDT_PNTTM = SYSDATE
, LAST_UPDUSR_ID = #lastUpdusrId#
WHERE CODE_ID = #codeId#
]]>
</update>
<!-- <delete id="CmmnCodeManageDAO.deleteCmmnCode">
<![CDATA[
UPDATE LETTCCMMNCODE
SET USE_AT = 'N'
WHERE CODE_ID = #codeId#
]]>
</delete> -->
<delete id="CmmnCodeManageDAO.deleteCmmnCode">
<![CDATA[
DELETE FROM LETTCCMMNCODE
WHERE CODE_ID = #codeId#
]]>
</delete>
<select id="CmmnCodeManageDAO.isExistCode" parameterClass="CmmnDetailCodeVO" resultClass="int">
<![CDATA[
SELECT SUM(CNT) FROM (
SELECT COUNT(*) CNT FROM LETTCCMMNCLCODE
WHERE CL_CODE = #codeId#
UNION
SELECT COUNT(*) CNT FROM LETTCCMMNCODE
WHERE CODE_ID = #codeId#
) A
]]>
</select>
<select id="CmmnCodeManageDAO.selectExistCmmncodeCnt" parameterClass="CmmnCodeVO" resultClass="int">
<![CDATA[
SELECT COUNT(*) totcnt
FROM LETTCCMMNCODE A
, LETTCCMMNCLCODE B
WHERE A.CL_CODE = B.CL_CODE
AND A.CL_CODE = #clCode#
]]>
</select>
<update id="CmmnCodeManageDAO.updateCmmnCodePk" parameterClass="CmmnCode">
<![CDATA[
UPDATE LETTCCMMNCODE
SET CODE_ID_NM = #codeIdNm#
, CODE_ID_DC = #codeIdDc#
, USE_AT = #useAt#
, LAST_UPDT_PNTTM = SYSDATE
, LAST_UPDUSR_ID = #lastUpdusrId#
, CODE_ID = #codeId#
WHERE CODE_ID = #tempCodeId#
]]>
</update>
<update id="CmmnCodeManageDAO.updateCmmnCodeNm" parameterClass="CmmnCode">
<![CDATA[
UPDATE LETTCCMMNCODE
SET CODE_ID_NM = #codeIdNm#
, LAST_UPDT_PNTTM = SYSDATE
, LAST_UPDUSR_ID = #lastUpdusrId#
WHERE CODE_ID = #codeId#
]]>
</update>
</sqlMap>

View File

@ -0,0 +1,153 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="CmmnClCodeManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="CmmnClCodeVO" type="kcc.let.sym.ccm.ccc.service.CmmnClCodeVO"/>
<typeAlias alias="CmmnClCode" type="kcc.let.sym.ccm.ccc.service.CmmnClCode"/>
<select id="CmmnClCodeManageDAO.selectCmmnClCodeCheck" parameterClass="CmmnClCodeVO" resultClass="int">
SELECT
COUNT(*)
FROM
LETTCCMMNCLCODE
WHERE
CL_CODE = #clCode#
</select>
<select id="CmmnClCodeManageDAO.selectCmmnClCodeList" parameterClass="CmmnClCodeVO" resultClass="egovMap">
<![CDATA[
SELECT CL_CODE
, CL_CODE_NM
, USE_AT
FROM LETTCCMMNCLCODE
WHERE 1 = 1
]]>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
<![CDATA[CL_CODE = #searchKeyword#]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
<![CDATA[CL_CODE_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="">
<![CDATA[
( CL_CODE_NM LIKE CONCAT('%', #searchKeyword#, '%') OR CL_CODE_NM LIKE CONCAT('%', #searchKeyword#, '%'))
]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="CodeList">
<![CDATA[USE_AT = 'Y']]>
</isEqual>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<select id="CmmnClCodeManageDAO.selectCmmnClCodeListTotCnt" parameterClass="CmmnClCodeVO" resultClass="int">
<![CDATA[
SELECT COUNT(*) totcnt
FROM LETTCCMMNCLCODE
WHERE 1 = 1
]]>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
<![CDATA[CL_CODE = #searchKeyword#]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
<![CDATA[CL_CODE_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="">
<![CDATA[
( CL_CODE_NM LIKE CONCAT('%', #searchKeyword#, '%') OR CL_CODE_NM LIKE CONCAT('%', #searchKeyword#, '%'))
]]>
</isEqual>
</select>
<select id="CmmnClCodeManageDAO.selectCmmnClCodeDetail" parameterClass="CmmnClCode" resultClass="CmmnClCode">
<![CDATA[
SELECT CL_CODE clCode
, CL_CODE_NM clCodeNm
, CL_CODE_DC clCodeDc
, USE_AT useAt
FROM LETTCCMMNCLCODE
WHERE CL_CODE = #clCode#
]]>
</select>
<insert id="CmmnClCodeManageDAO.insertCmmnClCode">
<![CDATA[
INSERT
INTO LETTCCMMNCLCODE
( CL_CODE
, CL_CODE_NM
, CL_CODE_DC
, USE_AT
, FRST_REGIST_PNTTM
, FRST_REGISTER_ID
, LAST_UPDT_PNTTM
, LAST_UPDUSR_ID
)
VALUES
( #clCode#
, #clCodeNm#
, #clCodeDc#
, #useAt#
, SYSDATE
, #frstRegisterId#
, SYSDATE
, #frstRegisterId#
)
]]>
</insert>
<update id="CmmnClCodeManageDAO.updateCmmnClCode">
<![CDATA[
UPDATE LETTCCMMNCLCODE
SET CL_CODE_NM = #clCodeNm#
, CL_CODE_DC = #clCodeDc#
, USE_AT = #useAt#
, LAST_UPDT_PNTTM = SYSDATE
, LAST_UPDUSR_ID = #lastUpdusrId#
WHERE CL_CODE = #clCode#
]]>
</update>
<delete id="CmmnClCodeManageDAO.deleteCmmnClCode">
<![CDATA[
DELETE FROM LETTCCMMNCLCODE
WHERE CL_CODE = #clCode#
]]>
</delete>
<!-- <delete id="CmmnClCodeManageDAO.deleteCmmnClCode">
<![CDATA[
UPDATE LETTCCMMNCLCODE
SET USE_AT = 'N'
WHERE CL_CODE = #clCode#
]]>
</delete> -->
<update id="CmmnClCodeManageDAO.updateCmmnClCodePk" parameterClass="CmmnClCode">
<![CDATA[
UPDATE LETTCCMMNCLCODE
SET CL_CODE_NM = #clCodeNm#
, CL_CODE_DC = #clCodeDc#
, USE_AT = #useAt#
, LAST_UPDT_PNTTM = SYSDATE
, LAST_UPDUSR_ID = #lastUpdusrId#
, CL_CODE = #clCode#
WHERE CL_CODE = #tempClCode#
]]>
</update>
<update id="CmmnClCodeManageDAO.updateCmmnClCodeNm" parameterClass="CmmnClCode">
<![CDATA[
UPDATE LETTCCMMNCLCODE
SET CL_CODE_NM = #clCodeNm#
, LAST_UPDT_PNTTM = SYSDATE
, LAST_UPDUSR_ID = #lastUpdusrId#
WHERE CL_CODE = #clCode#
]]>
</update>
</sqlMap>

View File

@ -0,0 +1,153 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="CmmnClCodeManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="CmmnClCodeVO" type="kcc.let.sym.ccm.ccc.service.CmmnClCodeVO"/>
<typeAlias alias="CmmnClCode" type="kcc.let.sym.ccm.ccc.service.CmmnClCode"/>
<select id="CmmnClCodeManageDAO.selectCmmnClCodeCheck" parameterClass="CmmnClCodeVO" resultClass="int">
SELECT
COUNT(*)
FROM
LETTCCMMNCLCODE
WHERE
CL_CODE = #clCode#
</select>
<select id="CmmnClCodeManageDAO.selectCmmnClCodeList" parameterClass="CmmnClCodeVO" resultClass="egovMap">
<![CDATA[
SELECT CL_CODE
, CL_CODE_NM
, USE_AT
FROM LETTCCMMNCLCODE
WHERE 1 = 1
]]>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
<![CDATA[CL_CODE = #searchKeyword#]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
<![CDATA[CL_CODE_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="">
<![CDATA[
( CL_CODE_NM LIKE CONCAT('%', #searchKeyword#, '%') OR CL_CODE_NM LIKE CONCAT('%', #searchKeyword#, '%'))
]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="CodeList">
<![CDATA[USE_AT = 'Y']]>
</isEqual>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<select id="CmmnClCodeManageDAO.selectCmmnClCodeListTotCnt" parameterClass="CmmnClCodeVO" resultClass="int">
<![CDATA[
SELECT COUNT(*) totcnt
FROM LETTCCMMNCLCODE
WHERE 1 = 1
]]>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
<![CDATA[CL_CODE = #searchKeyword#]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
<![CDATA[CL_CODE_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="">
<![CDATA[
( CL_CODE_NM LIKE CONCAT('%', #searchKeyword#, '%') OR CL_CODE_NM LIKE CONCAT('%', #searchKeyword#, '%'))
]]>
</isEqual>
</select>
<select id="CmmnClCodeManageDAO.selectCmmnClCodeDetail" parameterClass="CmmnClCode" resultClass="CmmnClCode">
<![CDATA[
SELECT CL_CODE clCode
, CL_CODE_NM clCodeNm
, CL_CODE_DC clCodeDc
, USE_AT useAt
FROM LETTCCMMNCLCODE
WHERE CL_CODE = #clCode#
]]>
</select>
<insert id="CmmnClCodeManageDAO.insertCmmnClCode">
<![CDATA[
INSERT
INTO LETTCCMMNCLCODE
( CL_CODE
, CL_CODE_NM
, CL_CODE_DC
, USE_AT
, FRST_REGIST_PNTTM
, FRST_REGISTER_ID
, LAST_UPDT_PNTTM
, LAST_UPDUSR_ID
)
VALUES
( #clCode#
, #clCodeNm#
, #clCodeDc#
, #useAt#
, SYSDATE
, #frstRegisterId#
, SYSDATE
, #frstRegisterId#
)
]]>
</insert>
<update id="CmmnClCodeManageDAO.updateCmmnClCode">
<![CDATA[
UPDATE LETTCCMMNCLCODE
SET CL_CODE_NM = #clCodeNm#
, CL_CODE_DC = #clCodeDc#
, USE_AT = #useAt#
, LAST_UPDT_PNTTM = SYSDATE
, LAST_UPDUSR_ID = #lastUpdusrId#
WHERE CL_CODE = #clCode#
]]>
</update>
<delete id="CmmnClCodeManageDAO.deleteCmmnClCode">
<![CDATA[
DELETE FROM LETTCCMMNCLCODE
WHERE CL_CODE = #clCode#
]]>
</delete>
<!-- <delete id="CmmnClCodeManageDAO.deleteCmmnClCode">
<![CDATA[
UPDATE LETTCCMMNCLCODE
SET USE_AT = 'N'
WHERE CL_CODE = #clCode#
]]>
</delete> -->
<update id="CmmnClCodeManageDAO.updateCmmnClCodePk" parameterClass="CmmnClCode">
<![CDATA[
UPDATE LETTCCMMNCLCODE
SET CL_CODE_NM = #clCodeNm#
, CL_CODE_DC = #clCodeDc#
, USE_AT = #useAt#
, LAST_UPDT_PNTTM = SYSDATE
, LAST_UPDUSR_ID = #lastUpdusrId#
, CL_CODE = #clCode#
WHERE CL_CODE = #tempClCode#
]]>
</update>
<update id="CmmnClCodeManageDAO.updateCmmnClCodeNm" parameterClass="CmmnClCode">
<![CDATA[
UPDATE LETTCCMMNCLCODE
SET CL_CODE_NM = #clCodeNm#
, LAST_UPDT_PNTTM = SYSDATE
, LAST_UPDUSR_ID = #lastUpdusrId#
WHERE CL_CODE = #clCode#
]]>
</update>
</sqlMap>

View File

@ -0,0 +1,231 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="CmmnDetailCodeManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="CmmnDetailCode" type="kcc.com.cmm.service.CmmnDetailCode"/>
<typeAlias alias="CmmnDetailCodeVO" type="kcc.let.sym.ccm.cde.service.CmmnDetailCodeVO"/>
<select id="CmmnDetailCodeManageDAO.selectCmmnDetailCodeList" parameterClass="CmmnDetailCodeVO" resultClass="egovMap">
<![CDATA[
SELECT A.CODE_ID
, A.CODE
, A.CODE_NM
, A.USE_AT
, A.FRST_REGIST_PNTTM
FROM LETTCCMMNDETAILCODE A
, LETTCCMMNCODE B
WHERE B.USE_AT = 'Y'
AND A.CODE_ID = B.CODE_ID
]]>
<isEqual prepend="AND" property="searchCondition" compareValue="">
<![CDATA[
( A.CODE_ID LIKE CONCAT('%', #searchKeyword#, '%') OR A.CODE = #searchKeyword# OR A.CODE_NM LIKE CONCAT('%', #searchKeyword#, '%') )
]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
<![CDATA[A.CODE_ID LIKE CONCAT('%', #searchKeyword#, '%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
<![CDATA[A.CODE LIKE CONCAT('%', #searchKeyword#, '%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="3">
<![CDATA[A.CODE_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
ORDER BY 1=1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<select id="CmmnDetailCodeManageDAO.selectCmmnDetailCodeListTotCnt" parameterClass="CmmnDetailCodeVO" resultClass="int">
<![CDATA[
SELECT COUNT(*) totcnt
FROM LETTCCMMNDETAILCODE A
, LETTCCMMNCODE B
WHERE B.USE_AT = 'Y'
AND A.CODE_ID = B.CODE_ID
]]>
<isEqual prepend="AND" property="searchCondition" compareValue="">
<![CDATA[
( A.CODE_ID LIKE CONCAT('%', #searchKeyword#, '%') OR A.CODE = #searchKeyword# OR A.CODE_NM LIKE CONCAT('%', #searchKeyword#, '%') )
]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
<![CDATA[A.CODE_ID LIKE CONCAT('%', #searchKeyword#, '%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
<![CDATA[A.CODE LIKE CONCAT('%', #searchKeyword#, '%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="3">
<![CDATA[A.CODE_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
</select>
<select id="CmmnDetailCodeManageDAO.selectCmmnDetailCodeDetail" parameterClass="CmmnDetailCode" resultClass="CmmnDetailCode">
/* CmmnDetailCodeManageDAO.selectCmmnDetailCodeDetail */
<![CDATA[
SELECT A.CODE_ID codeId
, B.CODE_ID_NM codeIdNm
, A.SORT sort
, A.CODE code
, A.CODE_NM codeNm
, A.CODE_DC codeDc
, A.USE_AT useAt
FROM LETTCCMMNDETAILCODE A
, LETTCCMMNCODE B
WHERE A.CODE_ID = B.CODE_ID
AND A.CODE_ID = #codeId#
AND A.CODE = #code#
]]>
</select>
<insert id="CmmnDetailCodeManageDAO.insertCmmnDetailCode">
<![CDATA[
INSERT
INTO LETTCCMMNDETAILCODE
( CODE_ID
, CODE
, CODE_NM
, CODE_DC
, USE_AT
, FRST_REGIST_PNTTM
, FRST_REGISTER_ID
, LAST_UPDT_PNTTM
, LAST_UPDUSR_ID
)
VALUES
( #codeId#
, #code#
, #codeNm#
, #codeDc#
, #useAt#
, SYSDATE
, #frstRegisterId#
, SYSDATE
, #frstRegisterId#
)
]]>
</insert>
<update id="CmmnDetailCodeManageDAO.updateCmmnDetailCode">
<![CDATA[
UPDATE LETTCCMMNDETAILCODE
SET CODE_NM = #codeNm#
, CODE_DC = #codeDc#
, USE_AT = #useAt#
, LAST_UPDT_PNTTM = SYSDATE
, LAST_UPDUSR_ID = #lastUpdusrId#
WHERE CODE_ID = #codeId#
AND CODE = #code#
]]>
</update>
<!-- <delete id="CmmnDetailCodeManageDAO.deleteCmmnDetailCode">
<![CDATA[
UPDATE LETTCCMMNDETAILCODE
SET USE_AT = 'N'
WHERE CODE_ID = #codeId#
AND CODE = #code#
]]>
</delete> -->
<delete id="CmmnDetailCodeManageDAO.deleteCmmnDetailCode">
<![CDATA[
DELETE FROM LETTCCMMNDETAILCODE
WHERE CODE_ID = #codeId#
AND CODE = #code#
]]>
</delete>
<select id="CmmnDetailCodeManageDAO.selectCmmnCodeAllList" parameterClass="CmmnDetailCode" resultClass="CmmnDetailCode">
<![CDATA[
SELECT A.CODE_ID codeId
, B.CODE_ID_NM codeIdNm
, A.CODE code
, A.CODE_NM codeNm
, A.CODE_DC codeDc
, A.USE_AT useAt
FROM LETTCCMMNDETAILCODE A
, LETTCCMMNCODE B
, lettccmmnclcode C
WHERE B.USE_AT = 'Y'
AND C.CL_CODE = B.CL_CODE
AND A.CODE_ID = B.CODE_ID
AND C.CL_CODE = #clCode#
]]>
</select>
<select id="CmmnDetailCodeManageDAO.selectCmmnDetailCodeListAll" parameterClass="CmmnDetailCodeVO" resultClass="CmmnDetailCodeVO">
<![CDATA[
SELECT * FROM (
SELECT CL_CODE_NM AS text , CL_CODE AS id , '0' AS parent , USE_AT AS useAt , 0 as sort FROM LETTCCMMNCLCODE
UNION ALL
SELECT CODE_ID_NM AS text , CODE_ID AS id , CL_CODE AS parent, USE_AT AS useAt, 0 as sort FROM LETTCCMMNCODE
UNION ALL
/*
SELECT CODE_NM AS text , CONCAT(CODE_ID,'__',CODE) AS id , CODE_ID AS parent , USE_AT AS useAt, SORT as sort FROM LETTCCMMNDETAILCODE
*/
SELECT CODE_NM AS text , CODE_ID||'__'||CODE AS id , CODE_ID AS parent , USE_AT AS useAt, SORT as sort FROM LETTCCMMNDETAILCODE
) A
ORDER BY A.parent, A.id, A.sort+0
]]>
</select>
<update id="CmmnDetailCodeManageDAO.updateCmmnDetailCodePk" parameterClass="CmmnDetailCode">
/* CmmnDetailCodeManageDAO.updateCmmnDetailCodePk */
UPDATE LETTCCMMNDETAILCODE
SET CODE_NM = #codeNm#
<isNotEmpty property="codeDc">
, CODE_DC = #codeDc#
</isNotEmpty>
<isNotEmpty property="useAt">
, USE_AT = #useAt#
</isNotEmpty>
<isNotEmpty property="sort">
, SORT = #sort#
</isNotEmpty>
, LAST_UPDT_PNTTM = SYSDATE
, LAST_UPDUSR_ID = #lastUpdusrId#
, CODE = #code#
WHERE CODE_ID = #codeId#
AND CODE = #tempCodeId#
</update>
<select id="CmmnDetailCodeManageDAO.selectCmmnDetailCodeDetailListWithCode" parameterClass="CmmnDetailCode" resultClass="CmmnDetailCode">
SELECT A.CODE_ID codeId
, B.CODE_ID_NM codeIdNm
, A.CODE code
, A.CODE_NM codeNm
, A.CODE_DC codeDc
, A.USE_AT useAt
FROM LETTCCMMNDETAILCODE A
, LETTCCMMNCODE B
WHERE A.CODE_ID = B.CODE_ID
<isNotEmpty property="codeId">
AND A.CODE_ID = #codeId#
</isNotEmpty>
<isNotEmpty property="code">
AND A.CODE = #code#
</isNotEmpty>
ORDER BY 1
<isNotEmpty property="orderByQuery">
, $orderByQuery$
</isNotEmpty>
</select>
</sqlMap>

View File

@ -0,0 +1,231 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="CmmnDetailCodeManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="CmmnDetailCode" type="kcc.com.cmm.service.CmmnDetailCode"/>
<typeAlias alias="CmmnDetailCodeVO" type="kcc.let.sym.ccm.cde.service.CmmnDetailCodeVO"/>
<select id="CmmnDetailCodeManageDAO.selectCmmnDetailCodeList" parameterClass="CmmnDetailCodeVO" resultClass="egovMap">
<![CDATA[
SELECT A.CODE_ID
, A.CODE
, A.CODE_NM
, A.USE_AT
, A.FRST_REGIST_PNTTM
FROM LETTCCMMNDETAILCODE A
, LETTCCMMNCODE B
WHERE B.USE_AT = 'Y'
AND A.CODE_ID = B.CODE_ID
]]>
<isEqual prepend="AND" property="searchCondition" compareValue="">
<![CDATA[
( A.CODE_ID LIKE CONCAT('%', #searchKeyword#, '%') OR A.CODE = #searchKeyword# OR A.CODE_NM LIKE CONCAT('%', #searchKeyword#, '%') )
]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
<![CDATA[A.CODE_ID LIKE CONCAT('%', #searchKeyword#, '%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
<![CDATA[A.CODE LIKE CONCAT('%', #searchKeyword#, '%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="3">
<![CDATA[A.CODE_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
ORDER BY 1=1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<select id="CmmnDetailCodeManageDAO.selectCmmnDetailCodeListTotCnt" parameterClass="CmmnDetailCodeVO" resultClass="int">
<![CDATA[
SELECT COUNT(*) totcnt
FROM LETTCCMMNDETAILCODE A
, LETTCCMMNCODE B
WHERE B.USE_AT = 'Y'
AND A.CODE_ID = B.CODE_ID
]]>
<isEqual prepend="AND" property="searchCondition" compareValue="">
<![CDATA[
( A.CODE_ID LIKE CONCAT('%', #searchKeyword#, '%') OR A.CODE = #searchKeyword# OR A.CODE_NM LIKE CONCAT('%', #searchKeyword#, '%') )
]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
<![CDATA[A.CODE_ID LIKE CONCAT('%', #searchKeyword#, '%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
<![CDATA[A.CODE LIKE CONCAT('%', #searchKeyword#, '%') ]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="3">
<![CDATA[A.CODE_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
</select>
<select id="CmmnDetailCodeManageDAO.selectCmmnDetailCodeDetail" parameterClass="CmmnDetailCode" resultClass="CmmnDetailCode">
/* CmmnDetailCodeManageDAO.selectCmmnDetailCodeDetail */
<![CDATA[
SELECT A.CODE_ID codeId
, B.CODE_ID_NM codeIdNm
, A.SORT sort
, A.CODE code
, A.CODE_NM codeNm
, A.CODE_DC codeDc
, A.USE_AT useAt
FROM LETTCCMMNDETAILCODE A
, LETTCCMMNCODE B
WHERE A.CODE_ID = B.CODE_ID
AND A.CODE_ID = #codeId#
AND A.CODE = #code#
]]>
</select>
<insert id="CmmnDetailCodeManageDAO.insertCmmnDetailCode">
<![CDATA[
INSERT
INTO LETTCCMMNDETAILCODE
( CODE_ID
, CODE
, CODE_NM
, CODE_DC
, USE_AT
, FRST_REGIST_PNTTM
, FRST_REGISTER_ID
, LAST_UPDT_PNTTM
, LAST_UPDUSR_ID
)
VALUES
( #codeId#
, #code#
, #codeNm#
, #codeDc#
, #useAt#
, SYSDATE
, #frstRegisterId#
, SYSDATE
, #frstRegisterId#
)
]]>
</insert>
<update id="CmmnDetailCodeManageDAO.updateCmmnDetailCode">
<![CDATA[
UPDATE LETTCCMMNDETAILCODE
SET CODE_NM = #codeNm#
, CODE_DC = #codeDc#
, USE_AT = #useAt#
, LAST_UPDT_PNTTM = SYSDATE
, LAST_UPDUSR_ID = #lastUpdusrId#
WHERE CODE_ID = #codeId#
AND CODE = #code#
]]>
</update>
<!-- <delete id="CmmnDetailCodeManageDAO.deleteCmmnDetailCode">
<![CDATA[
UPDATE LETTCCMMNDETAILCODE
SET USE_AT = 'N'
WHERE CODE_ID = #codeId#
AND CODE = #code#
]]>
</delete> -->
<delete id="CmmnDetailCodeManageDAO.deleteCmmnDetailCode">
<![CDATA[
DELETE FROM LETTCCMMNDETAILCODE
WHERE CODE_ID = #codeId#
AND CODE = #code#
]]>
</delete>
<select id="CmmnDetailCodeManageDAO.selectCmmnCodeAllList" parameterClass="CmmnDetailCode" resultClass="CmmnDetailCode">
<![CDATA[
SELECT A.CODE_ID codeId
, B.CODE_ID_NM codeIdNm
, A.CODE code
, A.CODE_NM codeNm
, A.CODE_DC codeDc
, A.USE_AT useAt
FROM LETTCCMMNDETAILCODE A
, LETTCCMMNCODE B
, lettccmmnclcode C
WHERE B.USE_AT = 'Y'
AND C.CL_CODE = B.CL_CODE
AND A.CODE_ID = B.CODE_ID
AND C.CL_CODE = #clCode#
]]>
</select>
<select id="CmmnDetailCodeManageDAO.selectCmmnDetailCodeListAll" parameterClass="CmmnDetailCodeVO" resultClass="CmmnDetailCodeVO">
<![CDATA[
SELECT * FROM (
SELECT CL_CODE_NM AS text , CL_CODE AS id , '0' AS parent , USE_AT AS useAt , 0 as sort FROM LETTCCMMNCLCODE
UNION ALL
SELECT CODE_ID_NM AS text , CODE_ID AS id , CL_CODE AS parent, USE_AT AS useAt, 0 as sort FROM LETTCCMMNCODE
UNION ALL
/*
SELECT CODE_NM AS text , CONCAT(CODE_ID,'__',CODE) AS id , CODE_ID AS parent , USE_AT AS useAt, SORT as sort FROM LETTCCMMNDETAILCODE
*/
SELECT CODE_NM AS text , CODE_ID||'__'||CODE AS id , CODE_ID AS parent , USE_AT AS useAt, SORT as sort FROM LETTCCMMNDETAILCODE
) A
ORDER BY A.parent, A.id, A.sort+0
]]>
</select>
<update id="CmmnDetailCodeManageDAO.updateCmmnDetailCodePk" parameterClass="CmmnDetailCode">
/* CmmnDetailCodeManageDAO.updateCmmnDetailCodePk */
UPDATE LETTCCMMNDETAILCODE
SET CODE_NM = #codeNm#
<isNotEmpty property="codeDc">
, CODE_DC = #codeDc#
</isNotEmpty>
<isNotEmpty property="useAt">
, USE_AT = #useAt#
</isNotEmpty>
<isNotEmpty property="sort">
, SORT = #sort#
</isNotEmpty>
, LAST_UPDT_PNTTM = SYSDATE
, LAST_UPDUSR_ID = #lastUpdusrId#
, CODE = #code#
WHERE CODE_ID = #codeId#
AND CODE = #tempCodeId#
</update>
<select id="CmmnDetailCodeManageDAO.selectCmmnDetailCodeDetailListWithCode" parameterClass="CmmnDetailCode" resultClass="CmmnDetailCode">
SELECT A.CODE_ID codeId
, B.CODE_ID_NM codeIdNm
, A.CODE code
, A.CODE_NM codeNm
, A.CODE_DC codeDc
, A.USE_AT useAt
FROM LETTCCMMNDETAILCODE A
, LETTCCMMNCODE B
WHERE A.CODE_ID = B.CODE_ID
<isNotEmpty property="codeId">
AND A.CODE_ID = #codeId#
</isNotEmpty>
<isNotEmpty property="code">
AND A.CODE = #code#
</isNotEmpty>
ORDER BY 1
<isNotEmpty property="orderByQuery">
, $orderByQuery$
</isNotEmpty>
</select>
</sqlMap>

View File

@ -0,0 +1,149 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="VEANotify">
<typeAlias alias="notifyManageVO" type="kcc.let.uss.notify.service.NotifyManageVO"/>
<!-- 공통 테이블 명 -->
<sql id="VEANotifyMngDAO.table_name">
VEA_CMM_NOTIFY_MNG
</sql>
<!-- 저장용 공통 컬럼 명 -->
<sql id="VEANotifyMngDAO.column_name">
cmm_notify_mng_ord,
lctr_div_cd,
mng_user_id,
use_yn,
frst_regist_pnttm,
frst_register_id,
last_updt_pnttm,
last_updusr_id
</sql>
<!-- 조회용 공통 컬럼 명 -->
<sql id="VEANotifyMngDAO.select_column_name">
a.cmm_notify_mng_ord as cmmNotifyMngOrd,
a.lctr_div_cd as lctrDivCd,
a.mng_user_id as mngUserId,
a.use_yn as useYn,
a.frst_regist_pnttm as frstRegistPnttm,
a.frst_register_id as frstRegisterId,
a.last_updt_pnttm as lastUpdtPnttm,
a.last_updusr_id as lastUpdusrId
</sql>
<select id="VEANotifyMngDAO.selectMngPagingList" parameterClass="notifyManageVO" resultClass="notifyManageVO">
/* VEANotifyMngDAO.selectMngPagingList */
SELECT
COUNT(1) OVER() AS totCnt ,
<include refid="VEANotifyMngDAO.select_column_name"/>
FROM
<include refid="VEANotifyMngDAO.table_name"/> a
WHERE
USE_YN = 'Y'
<isNotEmpty property="lctrDivCd">
AND a.LCTR_DIV_CD = #lctrDivCd#
</isNotEmpty>
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<select id="VEANotifyMngDAO.selectInstrList" parameterClass="notifyManageVO" resultClass="notifyManageVO">
/* VEANotifyMngDAO.selectInstrList */
SELECT user_id AS mngUserId
FROM vea_prcs_aplct_prd_instr_asgnm
WHERE prcs_aplct_prd_ord=#prcsAplctPrdOrd#
UNION all
SELECT user_id
FROM ve_edu_chasi_instr_asgnm
WHERE edu_aplct_ord=#eduAplctOrd#
AND edu_chasi_ord=#eduChasiOrd#
</select>
<select id="VEANotifyMngDAO.selectAplctList" parameterClass="notifyManageVO" resultClass="notifyManageVO">
/* VEANotifyMngDAO.selectAplctList */
SELECT user_id AS mngUserId
FROM ve_edu_aplct
WHERE prcs_ord=#prcsAplctPrdOrd#
<isEqual prepend="AND" property="aprvlCdType" compareValue="153">
aprvl_cd='60'
</isEqual>
</select>
<select id="VEANotifyMngDAO.findByMngId" parameterClass="notifyManageVO" resultClass="notifyManageVO">
/* VEANotifyMngDAO.findByMngId */
SELECT
<include refid="VEANotifyMngDAO.select_column_name"/>
FROM
<include refid="VEANotifyMngDAO.table_name"/> a
WHERE a.cmm_notify_mng_ord = #cmmNotifyMngOrd#
</select>
<insert id="VEANotifyMngDAO.mngInsert" parameterClass="notifyManageVO">
/* VEANotifyMngDAO.mngInsert */
INSERT INTO <include refid="VEANotifyMngDAO.table_name"/> (
<include refid="VEANotifyMngDAO.column_name"/>
)VALUES(
#cmmNotifyMngOrd#
,#lctrDivCd#
,#mngUserId#
,'Y'
,SYSDATE
,#frstRegisterId#
,''
,''
)
</insert>
<update id="VEANotifyMngDAO.mngUpdate" parameterClass="notifyManageVO">
/* VEANotifyMngDAO.mngUpdate */
UPDATE
<include refid="VEANotifyMngDAO.table_name"/>
SET
lctr_div_cd = #lctrDivCd#
, mng_user_id = #mngUserId#
, last_updt_pnttm = SYSDATE
, last_updusr_id = #lastUpdusrId#
WHERE
cmm_notify_mng_ord = #cmmNotifyMngOrd#
</update>
<update id="VEANotifyMngDAO.mngDel" parameterClass="notifyManageVO">
/* VEANotifyMngDAO.mngDel */
UPDATE
<include refid="VEANotifyMngDAO.table_name"/>
SET
use_yn = 'N'
, last_updt_pnttm = SYSDATE
, last_updusr_id = #lastUpdusrId#
WHERE
cmm_notify_mng_ord = #cmmNotifyMngOrd#
</update>
</sqlMap>

View File

@ -0,0 +1,149 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="VEANotify">
<typeAlias alias="notifyManageVO" type="kcc.let.uss.notify.service.NotifyManageVO"/>
<!-- 공통 테이블 명 -->
<sql id="VEANotifyMngDAO.table_name">
VEA_CMM_NOTIFY_MNG
</sql>
<!-- 저장용 공통 컬럼 명 -->
<sql id="VEANotifyMngDAO.column_name">
cmm_notify_mng_ord,
lctr_div_cd,
mng_user_id,
use_yn,
frst_regist_pnttm,
frst_register_id,
last_updt_pnttm,
last_updusr_id
</sql>
<!-- 조회용 공통 컬럼 명 -->
<sql id="VEANotifyMngDAO.select_column_name">
a.cmm_notify_mng_ord as cmmNotifyMngOrd,
a.lctr_div_cd as lctrDivCd,
a.mng_user_id as mngUserId,
a.use_yn as useYn,
a.frst_regist_pnttm as frstRegistPnttm,
a.frst_register_id as frstRegisterId,
a.last_updt_pnttm as lastUpdtPnttm,
a.last_updusr_id as lastUpdusrId
</sql>
<select id="VEANotifyMngDAO.selectMngPagingList" parameterClass="notifyManageVO" resultClass="notifyManageVO">
/* VEANotifyMngDAO.selectMngPagingList */
SELECT
COUNT(1) OVER() AS totCnt ,
<include refid="VEANotifyMngDAO.select_column_name"/>
FROM
<include refid="VEANotifyMngDAO.table_name"/> a
WHERE
USE_YN = 'Y'
<isNotEmpty property="lctrDivCd">
AND a.LCTR_DIV_CD = #lctrDivCd#
</isNotEmpty>
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<select id="VEANotifyMngDAO.selectInstrList" parameterClass="notifyManageVO" resultClass="notifyManageVO">
/* VEANotifyMngDAO.selectInstrList */
SELECT user_id AS mngUserId
FROM vea_prcs_aplct_prd_instr_asgnm
WHERE prcs_aplct_prd_ord=#prcsAplctPrdOrd#
UNION all
SELECT user_id
FROM ve_edu_chasi_instr_asgnm
WHERE edu_aplct_ord=#eduAplctOrd#
AND edu_chasi_ord=#eduChasiOrd#
</select>
<select id="VEANotifyMngDAO.selectAplctList" parameterClass="notifyManageVO" resultClass="notifyManageVO">
/* VEANotifyMngDAO.selectAplctList */
SELECT user_id AS mngUserId
FROM ve_edu_aplct
WHERE prcs_ord=#prcsAplctPrdOrd#
<isEqual prepend="AND" property="aprvlCdType" compareValue="153">
aprvl_cd='60'
</isEqual>
</select>
<select id="VEANotifyMngDAO.findByMngId" parameterClass="notifyManageVO" resultClass="notifyManageVO">
/* VEANotifyMngDAO.findByMngId */
SELECT
<include refid="VEANotifyMngDAO.select_column_name"/>
FROM
<include refid="VEANotifyMngDAO.table_name"/> a
WHERE a.cmm_notify_mng_ord = #cmmNotifyMngOrd#
</select>
<insert id="VEANotifyMngDAO.mngInsert" parameterClass="notifyManageVO">
/* VEANotifyMngDAO.mngInsert */
INSERT INTO <include refid="VEANotifyMngDAO.table_name"/> (
<include refid="VEANotifyMngDAO.column_name"/>
)VALUES(
#cmmNotifyMngOrd#
,#lctrDivCd#
,#mngUserId#
,'Y'
,SYSDATE
,#frstRegisterId#
,''
,''
)
</insert>
<update id="VEANotifyMngDAO.mngUpdate" parameterClass="notifyManageVO">
/* VEANotifyMngDAO.mngUpdate */
UPDATE
<include refid="VEANotifyMngDAO.table_name"/>
SET
lctr_div_cd = #lctrDivCd#
, mng_user_id = #mngUserId#
, last_updt_pnttm = SYSDATE
, last_updusr_id = #lastUpdusrId#
WHERE
cmm_notify_mng_ord = #cmmNotifyMngOrd#
</update>
<update id="VEANotifyMngDAO.mngDel" parameterClass="notifyManageVO">
/* VEANotifyMngDAO.mngDel */
UPDATE
<include refid="VEANotifyMngDAO.table_name"/>
SET
use_yn = 'N'
, last_updt_pnttm = SYSDATE
, last_updusr_id = #lastUpdusrId#
WHERE
cmm_notify_mng_ord = #cmmNotifyMngOrd#
</update>
</sqlMap>

View File

@ -0,0 +1,227 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="VEANotify">
<typeAlias alias="notifyManageVO" type="kcc.let.uss.notify.service.NotifyManageVO"/>
<!-- 공통 테이블 명 -->
<sql id="VEANotifyDAO.table_name">
VEA_CMM_NOTIFY
</sql>
<!-- 저장용 공통 컬럼 명 -->
<sql id="VEANotifyDAO.column_name">
CMM_NOTIFY_ORD
, TO_USER_ID
, NOTIFY_CN
, NOTIFY_CHK
, LCTR_DIV_CD
, NOTIFY_PATH
, EDU_APLCT_ORD
, EDU_CHASI_ORD
, FRST_REGIST_PNTTM
, FRST_REGISTER_ID
, LAST_UPDT_PNTTM
, LAST_UPDUSR_ID
, USE_YN
, PARAMS
</sql>
<!-- 조회용 공통 컬럼 명 -->
<sql id="VEANotifyDAO.select_column_name">
a.CMM_NOTIFY_ORD as cmmNotifyOrd ,
a.TO_USER_ID as toUserId ,
a.NOTIFY_CN as notifyCn ,
a.NOTIFY_CHK as notifyChk ,
a.LCTR_DIV_CD as lctrDivCd ,
a.NOTIFY_PATH as notifyPath ,
a.EDU_APLCT_ORD as eduAplctOrd ,
a.EDU_CHASI_ORD as eduChasiOrd ,
a.FRST_REGIST_PNTTM as frstRegistPnttm ,
a.FRST_REGISTER_ID as frstRegisterId ,
a.LAST_UPDT_PNTTM as lastUpdtPnttm ,
a.LAST_UPDUSR_ID as lastUpdusrId ,
a.USE_YN as useYn ,
a.PARAMS as params
</sql>
<select id="VEANotifyDAO.selectPagingList" parameterClass="notifyManageVO" resultClass="notifyManageVO">
/* VEANotifyMngDAO.selectPagingList */
SELECT
COUNT(1) OVER() AS totCnt ,
<include refid="VEANotifyDAO.select_column_name"/>
FROM
<include refid="VEANotifyDAO.table_name"/> a
WHERE
a.TO_USER_ID = #toUserId#
and a.USE_YN = 'Y'
ORDER BY
a.NOTIFY_CHK
, a.FRST_REGIST_PNTTM desc
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<insert id="VEANotifyDAO.insertNotifyInfo" parameterClass="notifyManageVO">
/* VEANotifyDAO.insertNotifyInfo */
INSERT INTO <include refid="VEANotifyDAO.table_name"/> (
<include refid="VEANotifyDAO.column_name"/>
)VALUES(
#cmmNotifyOrd#
, #toUserId#
, #notifyCn#
, #notifyChk#
, #lctrDivCd#
, #notifyPath#
, #eduAplctOrd#
, #eduChasiOrd#
, SYSDATE
, #frstRegisterId#
, ''
, ''
, 'Y'
, #params#
)
</insert>
<select id="VEANotifyDAO.findById" parameterClass="notifyManageVO" resultClass="notifyManageVO">
/* VEANotifyMngDAO.findById */
SELECT
<include refid="VEANotifyDAO.select_column_name"/>
FROM
<include refid="VEANotifyDAO.table_name"/> a
WHERE a.cmm_notify_ord = #cmmNotifyOrd#
</select>
<update id="VEANotifyDAO.updateNotifyChkWhereCmmNotifyOrd" parameterClass="String">
/* VEANotifyDAO.updateNotifyChkWhereCmmNotifyOrd */
UPDATE
<include refid="VEANotifyDAO.table_name"/>
SET
notify_chk = 'Y'
, last_updt_pnttm = SYSDATE
, last_updusr_id = #lastUpdusrId#
WHERE
cmm_notify_ord = #cmmNotifyOrd#
</update>
<select id="VEANotifyDAO.findByUserIdFromVE_EDU_APLCT" parameterClass="String" resultClass="String">
/* VEANotifyDAO.findByUserIdFromVE_EDU_APLCT */
SELECT
a.user_id as toUserId
FROM
VE_EDU_APLCT a
WHERE a.EDU_APLCT_ORD = #eduAplctOrd#
</select>
<select id="VEANotifyDAO.findByUserIdFromLETTNBBS" parameterClass="String" resultClass="String">
/* VEANotifyDAO.findByUserIdFromLETTNBBS */
SELECT FRST_REGISTER_ID AS toUserId
FROM LETTNBBS
WHERE ntt_id=#eduAplctOrd#
</select>
<select id="VEANotifyDAO.findByUserIdFromVE_EDU_DOC_REQ" parameterClass="String" resultClass="notifyManageVO">
/* VEANotifyDAO.findByUserIdFromVE_EDU_DOC_REQ */
SELECT a.edu_aplct_ord AS eduAplctOrd
, b.EDU_CHASI_ORD AS eduChasiOrd
, b.USER_ID AS toUserId
FROM VE_EDU_DOC_REQ a
, ve_edu_chasi_instr_asgnm b
WHERE a.edu_doc_req_ord=#eduAplctOrd#
AND a.EDU_APLCT_ORD =b.EDU_APLCT_ORD
AND a.SBMT_ID =b.USER_ID
ORDER BY b.EDU_CHASI_ORD
LIMIT 1
</select>
<select id="VEANotifyDAO.findByUserIdFromVE_EDU_DOC_REQ_2" parameterClass="String" resultClass="notifyManageVO">
/* VEANotifyDAO.findByUserIdFromVE_EDU_DOC_REQ_2 */
SELECT a.edu_aplct_ord AS eduAplctOrd
, b.EDU_CHASI_ORD AS eduChasiOrd
, a.FRST_REGISTER_ID AS toUserId
FROM VE_EDU_DOC_REQ a
, ve_edu_chasi_instr_asgnm b
WHERE a.edu_doc_req_ord=#eduAplctOrd#
AND a.EDU_APLCT_ORD =b.EDU_APLCT_ORD
AND a.SBMT_ID =b.USER_ID
ORDER BY b.EDU_CHASI_ORD
LIMIT 1
</select>
<select id="VEANotifyDAO.findByUserIdFromVE_PRCS_APLCT_PRD" parameterClass="String" resultClass="notifyManageVO">
/* VEANotifyDAO.findByUserIdFromVE_PRCS_APLCT_PRD */
SELECT b.PRCS_NM AS prcsNm
, a.PRCS_APLCT_PRD_ORD AS prcsAplctPrdOrd
, b.PRCS_ORD AS prcsOrd
FROM ve_prcs_aplct_prd a
, ve_prcs b
WHERE a.PRCS_APLCT_PRD_ORD =#prcsAplctPrdOrd#
AND a.PRCS_ORD =b.PRCS_ORD
</select>
<select id="VEANotifyDAO.findByLctrDivCdFromVePrcsAplctPrd" parameterClass="String" resultClass="String">
/* VEANotifyDAO.findByLctrDivCdFromVePrcsAplctPrd */
SELECT
a.LCTR_DIV_CD as lctrDivCd
FROM
VE_PRCS_APLCT_PRD a
WHERE a.PRCS_APLCT_PRD_ORD = #prcsAplctPrdOrd#
</select>
<select id="VEANotifyDAO.selectNotifyInstr" parameterClass="notifyManageVO" resultClass="String">
/* VEANotifyDAO.selectNotifyInstr */
SELECT
USER_ID as toUserId
FROM
ve_edu_chasi_instr_asgnm
WHERE
edu_aplct_ord = #eduAplctOrd#
AND edu_chasi_ord = #eduChasiOrd#
</select>
<select id="VEANotifyDAO.selectNotifyCnt" parameterClass="String" resultClass="int">
/* VEANotifyDAO.selectNotifyCnt */
SELECT count(*)
from VEA_CMM_NOTIFY
WHERE TO_USER_ID = #uniqId#
AND NOTIFY_CHK = 'N'
AND USE_YN = 'Y'
</select>
<update id="VEANotifyDAO.updateM7DaysUseYnN">
UPDATE VEA_CMM_NOTIFY
SET USE_YN = 'N'
WHERE FRST_REGIST_PNTTM <![CDATA[ <= ]]> SYSDATE - 7;
</update>
<delete id="VEANotifyDAO.updateChkedUseYnN" parameterClass="notifyManageVO">
UPDATE VEA_CMM_NOTIFY
SET USE_YN = 'N'
WHERE <iterate open="(" close=")" conjunction="," property="cmmNotifyOrdArr" prepend="cmm_notify_ord IN " > #cmmNotifyOrdArr[]#</iterate>
</delete>
</sqlMap>

View File

@ -0,0 +1,227 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="VEANotify">
<typeAlias alias="notifyManageVO" type="kcc.let.uss.notify.service.NotifyManageVO"/>
<!-- 공통 테이블 명 -->
<sql id="VEANotifyDAO.table_name">
VEA_CMM_NOTIFY
</sql>
<!-- 저장용 공통 컬럼 명 -->
<sql id="VEANotifyDAO.column_name">
CMM_NOTIFY_ORD
, TO_USER_ID
, NOTIFY_CN
, NOTIFY_CHK
, LCTR_DIV_CD
, NOTIFY_PATH
, EDU_APLCT_ORD
, EDU_CHASI_ORD
, FRST_REGIST_PNTTM
, FRST_REGISTER_ID
, LAST_UPDT_PNTTM
, LAST_UPDUSR_ID
, USE_YN
, PARAMS
</sql>
<!-- 조회용 공통 컬럼 명 -->
<sql id="VEANotifyDAO.select_column_name">
a.CMM_NOTIFY_ORD as cmmNotifyOrd ,
a.TO_USER_ID as toUserId ,
a.NOTIFY_CN as notifyCn ,
a.NOTIFY_CHK as notifyChk ,
a.LCTR_DIV_CD as lctrDivCd ,
a.NOTIFY_PATH as notifyPath ,
a.EDU_APLCT_ORD as eduAplctOrd ,
a.EDU_CHASI_ORD as eduChasiOrd ,
a.FRST_REGIST_PNTTM as frstRegistPnttm ,
a.FRST_REGISTER_ID as frstRegisterId ,
a.LAST_UPDT_PNTTM as lastUpdtPnttm ,
a.LAST_UPDUSR_ID as lastUpdusrId ,
a.USE_YN as useYn ,
a.PARAMS as params
</sql>
<select id="VEANotifyDAO.selectPagingList" parameterClass="notifyManageVO" resultClass="notifyManageVO">
/* VEANotifyMngDAO.selectPagingList */
SELECT
COUNT(1) OVER() AS totCnt ,
<include refid="VEANotifyDAO.select_column_name"/>
FROM
<include refid="VEANotifyDAO.table_name"/> a
WHERE
a.TO_USER_ID = #toUserId#
and a.USE_YN = 'Y'
ORDER BY
a.NOTIFY_CHK
, a.FRST_REGIST_PNTTM desc
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<insert id="VEANotifyDAO.insertNotifyInfo" parameterClass="notifyManageVO">
/* VEANotifyDAO.insertNotifyInfo */
INSERT INTO <include refid="VEANotifyDAO.table_name"/> (
<include refid="VEANotifyDAO.column_name"/>
)VALUES(
#cmmNotifyOrd#
, #toUserId#
, #notifyCn#
, #notifyChk#
, #lctrDivCd#
, #notifyPath#
, #eduAplctOrd#
, #eduChasiOrd#
, SYSDATE
, #frstRegisterId#
, ''
, ''
, 'Y'
, #params#
)
</insert>
<select id="VEANotifyDAO.findById" parameterClass="notifyManageVO" resultClass="notifyManageVO">
/* VEANotifyMngDAO.findById */
SELECT
<include refid="VEANotifyDAO.select_column_name"/>
FROM
<include refid="VEANotifyDAO.table_name"/> a
WHERE a.cmm_notify_ord = #cmmNotifyOrd#
</select>
<update id="VEANotifyDAO.updateNotifyChkWhereCmmNotifyOrd" parameterClass="String">
/* VEANotifyDAO.updateNotifyChkWhereCmmNotifyOrd */
UPDATE
<include refid="VEANotifyDAO.table_name"/>
SET
notify_chk = 'Y'
, last_updt_pnttm = SYSDATE
, last_updusr_id = #lastUpdusrId#
WHERE
cmm_notify_ord = #cmmNotifyOrd#
</update>
<select id="VEANotifyDAO.findByUserIdFromVE_EDU_APLCT" parameterClass="String" resultClass="String">
/* VEANotifyDAO.findByUserIdFromVE_EDU_APLCT */
SELECT
a.user_id as toUserId
FROM
VE_EDU_APLCT a
WHERE a.EDU_APLCT_ORD = #eduAplctOrd#
</select>
<select id="VEANotifyDAO.findByUserIdFromLETTNBBS" parameterClass="String" resultClass="String">
/* VEANotifyDAO.findByUserIdFromLETTNBBS */
SELECT FRST_REGISTER_ID AS toUserId
FROM LETTNBBS
WHERE ntt_id=#eduAplctOrd#
</select>
<select id="VEANotifyDAO.findByUserIdFromVE_EDU_DOC_REQ" parameterClass="String" resultClass="notifyManageVO">
/* VEANotifyDAO.findByUserIdFromVE_EDU_DOC_REQ */
SELECT a.edu_aplct_ord AS eduAplctOrd
, b.EDU_CHASI_ORD AS eduChasiOrd
, b.USER_ID AS toUserId
FROM VE_EDU_DOC_REQ a
, ve_edu_chasi_instr_asgnm b
WHERE a.edu_doc_req_ord=#eduAplctOrd#
AND a.EDU_APLCT_ORD =b.EDU_APLCT_ORD
AND a.SBMT_ID =b.USER_ID
ORDER BY b.EDU_CHASI_ORD
LIMIT 1
</select>
<select id="VEANotifyDAO.findByUserIdFromVE_EDU_DOC_REQ_2" parameterClass="String" resultClass="notifyManageVO">
/* VEANotifyDAO.findByUserIdFromVE_EDU_DOC_REQ_2 */
SELECT a.edu_aplct_ord AS eduAplctOrd
, b.EDU_CHASI_ORD AS eduChasiOrd
, a.FRST_REGISTER_ID AS toUserId
FROM VE_EDU_DOC_REQ a
, ve_edu_chasi_instr_asgnm b
WHERE a.edu_doc_req_ord=#eduAplctOrd#
AND a.EDU_APLCT_ORD =b.EDU_APLCT_ORD
AND a.SBMT_ID =b.USER_ID
ORDER BY b.EDU_CHASI_ORD
LIMIT 1
</select>
<select id="VEANotifyDAO.findByUserIdFromVE_PRCS_APLCT_PRD" parameterClass="String" resultClass="notifyManageVO">
/* VEANotifyDAO.findByUserIdFromVE_PRCS_APLCT_PRD */
SELECT b.PRCS_NM AS prcsNm
, a.PRCS_APLCT_PRD_ORD AS prcsAplctPrdOrd
, b.PRCS_ORD AS prcsOrd
FROM ve_prcs_aplct_prd a
, ve_prcs b
WHERE a.PRCS_APLCT_PRD_ORD =#prcsAplctPrdOrd#
AND a.PRCS_ORD =b.PRCS_ORD
</select>
<select id="VEANotifyDAO.findByLctrDivCdFromVePrcsAplctPrd" parameterClass="String" resultClass="String">
/* VEANotifyDAO.findByLctrDivCdFromVePrcsAplctPrd */
SELECT
a.LCTR_DIV_CD as lctrDivCd
FROM
VE_PRCS_APLCT_PRD a
WHERE a.PRCS_APLCT_PRD_ORD = #prcsAplctPrdOrd#
</select>
<select id="VEANotifyDAO.selectNotifyInstr" parameterClass="notifyManageVO" resultClass="String">
/* VEANotifyDAO.selectNotifyInstr */
SELECT
USER_ID as toUserId
FROM
ve_edu_chasi_instr_asgnm
WHERE
edu_aplct_ord = #eduAplctOrd#
AND edu_chasi_ord = #eduChasiOrd#
</select>
<select id="VEANotifyDAO.selectNotifyCnt" parameterClass="String" resultClass="int">
/* VEANotifyDAO.selectNotifyCnt */
SELECT count(*)
from VEA_CMM_NOTIFY
WHERE TO_USER_ID = #uniqId#
AND NOTIFY_CHK = 'N'
AND USE_YN = 'Y'
</select>
<update id="VEANotifyDAO.updateM7DaysUseYnN">
UPDATE VEA_CMM_NOTIFY
SET USE_YN = 'N'
WHERE FRST_REGIST_PNTTM <![CDATA[ <= ]]> SYSDATE - 7;
</update>
<delete id="VEANotifyDAO.updateChkedUseYnN" parameterClass="notifyManageVO">
UPDATE VEA_CMM_NOTIFY
SET USE_YN = 'N'
WHERE <iterate open="(" close=")" conjunction="," property="cmmNotifyOrdArr" prepend="cmm_notify_ord IN " > #cmmNotifyOrdArr[]#</iterate>
</delete>
</sqlMap>

View File

@ -0,0 +1,177 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="ZipManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="Zip" type="kcc.let.sym.ccm.zip.service.Zip"/>
<typeAlias alias="ZipVO" type="kcc.let.sym.ccm.zip.service.ZipVO"/>
<select id="ZipManageDAO.selectZipList" parameterClass="ZipVO" resultClass="egovMap">
<![CDATA[
SELECT ZIP
, SN
, CTPRVN_NM
, SIGNGU_NM
, EMD_NM
, LI_BULD_NM
, LNBR_DONG_HO
FROM LETTCZIP
WHERE 1 = 1
]]>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
<![CDATA[ZIP = #searchKeyword#]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
<![CDATA[CTPRVN_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="3">
<![CDATA[SIGNGU_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="4">
<![CDATA[EMD_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="5">
<![CDATA[LI_BULD_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<select id="ZipManageDAO.selectZipListTotCnt" parameterClass="ZipVO" resultClass="int">
<![CDATA[
SELECT COUNT(*) totcnt
FROM LETTCZIP
WHERE 1 = 1
]]>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
<![CDATA[ZIP = #searchKeyword#]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
<![CDATA[CTPRVN_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="3">
<![CDATA[SIGNGU_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="4">
<![CDATA[EMD_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="5">
<![CDATA[LI_BULD_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
</select>
<select id="ZipManageDAO.selectZipDetail" parameterClass="Zip" resultClass="Zip">
<![CDATA[
SELECT ZIP zip
, SN sn
, CTPRVN_NM ctprvnNm
, SIGNGU_NM signguNm
, EMD_NM emdNm
, LI_BULD_NM liBuldNm
, LNBR_DONG_HO lnbrDongHo
FROM LETTCZIP
WHERE ZIP = #zip#
AND SN = #sn#
]]>
</select>
<insert id="ZipManageDAO.insertZip">
<selectKey resultClass="int" keyProperty="sn">
SELECT IFNULL(MAX(SN)+1, 1) AS sn
FROM LETTCZIP
</selectKey>
<![CDATA[
INSERT
INTO LETTCZIP
( ZIP
, SN
, CTPRVN_NM
, SIGNGU_NM
, EMD_NM
, LI_BULD_NM
, LNBR_DONG_HO
, FRST_REGIST_PNTTM
, FRST_REGISTER_ID
, LAST_UPDT_PNTTM
, LAST_UPDUSR_ID
)
VALUES
( #zip#
, #sn#
, #ctprvnNm#
, #signguNm#
, #emdNm#
, #liBuldNm#
, #lnbrDongHo#
, NOW()
, #frstRegisterId#
, NOW()
, #frstRegisterId#
)
]]>
</insert>
<insert id="ZipManageDAO.insertExcelZip">
<![CDATA[
INSERT
INTO LETTCZIP
( ZIP
, SN
, CTPRVN_NM
, SIGNGU_NM
, EMD_NM
, LI_BULD_NM
, LNBR_DONG_HO
, FRST_REGIST_PNTTM
, FRST_REGISTER_ID
, LAST_UPDT_PNTTM
, LAST_UPDUSR_ID
)
VALUES
( #zip#
, #sn#
, #ctprvnNm#
, #signguNm#
, #emdNm#
, #liBuldNm#
, #lnbrDongHo#
, NOW()
, #frstRegisterId#
, NOW()
, #frstRegisterId#
)
]]>
</insert>
<update id="ZipManageDAO.updateZip">
<![CDATA[
UPDATE LETTCZIP
SET CTPRVN_NM = #ctprvnNm#
, SIGNGU_NM = #signguNm#
, EMD_NM = #emdNm#
, LI_BULD_NM = #liBuldNm#
, LNBR_DONG_HO = #lnbrDongHo#
, LAST_UPDT_PNTTM = NOW()
, LAST_UPDUSR_ID = #lastUpdusrId#
WHERE ZIP = #zip#
AND SN = #sn#
]]>
</update>
<delete id="ZipManageDAO.deleteZip">
<![CDATA[
DELETE
FROM LETTCZIP
WHERE ZIP = #zip#
]]>
</delete>
<delete id="ZipManageDAO.deleteAllZip">
<![CDATA[
DELETE
FROM LETTCZIP
]]>
</delete>
</sqlMap>

View File

@ -0,0 +1,177 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="ZipManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="Zip" type="kcc.let.sym.ccm.zip.service.Zip"/>
<typeAlias alias="ZipVO" type="kcc.let.sym.ccm.zip.service.ZipVO"/>
<select id="ZipManageDAO.selectZipList" parameterClass="ZipVO" resultClass="egovMap">
<![CDATA[
SELECT ZIP
, SN
, CTPRVN_NM
, SIGNGU_NM
, EMD_NM
, LI_BULD_NM
, LNBR_DONG_HO
FROM LETTCZIP
WHERE 1 = 1
]]>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
<![CDATA[ZIP = #searchKeyword#]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
<![CDATA[CTPRVN_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="3">
<![CDATA[SIGNGU_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="4">
<![CDATA[EMD_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="5">
<![CDATA[LI_BULD_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<select id="ZipManageDAO.selectZipListTotCnt" parameterClass="ZipVO" resultClass="int">
<![CDATA[
SELECT COUNT(*) totcnt
FROM LETTCZIP
WHERE 1 = 1
]]>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
<![CDATA[ZIP = #searchKeyword#]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
<![CDATA[CTPRVN_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="3">
<![CDATA[SIGNGU_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="4">
<![CDATA[EMD_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="5">
<![CDATA[LI_BULD_NM LIKE CONCAT('%', #searchKeyword#, '%')]]>
</isEqual>
</select>
<select id="ZipManageDAO.selectZipDetail" parameterClass="Zip" resultClass="Zip">
<![CDATA[
SELECT ZIP zip
, SN sn
, CTPRVN_NM ctprvnNm
, SIGNGU_NM signguNm
, EMD_NM emdNm
, LI_BULD_NM liBuldNm
, LNBR_DONG_HO lnbrDongHo
FROM LETTCZIP
WHERE ZIP = #zip#
AND SN = #sn#
]]>
</select>
<insert id="ZipManageDAO.insertZip">
<selectKey resultClass="int" keyProperty="sn">
SELECT IFNULL(MAX(SN)+1, 1) AS sn
FROM LETTCZIP
</selectKey>
<![CDATA[
INSERT
INTO LETTCZIP
( ZIP
, SN
, CTPRVN_NM
, SIGNGU_NM
, EMD_NM
, LI_BULD_NM
, LNBR_DONG_HO
, FRST_REGIST_PNTTM
, FRST_REGISTER_ID
, LAST_UPDT_PNTTM
, LAST_UPDUSR_ID
)
VALUES
( #zip#
, #sn#
, #ctprvnNm#
, #signguNm#
, #emdNm#
, #liBuldNm#
, #lnbrDongHo#
, NOW()
, #frstRegisterId#
, NOW()
, #frstRegisterId#
)
]]>
</insert>
<insert id="ZipManageDAO.insertExcelZip">
<![CDATA[
INSERT
INTO LETTCZIP
( ZIP
, SN
, CTPRVN_NM
, SIGNGU_NM
, EMD_NM
, LI_BULD_NM
, LNBR_DONG_HO
, FRST_REGIST_PNTTM
, FRST_REGISTER_ID
, LAST_UPDT_PNTTM
, LAST_UPDUSR_ID
)
VALUES
( #zip#
, #sn#
, #ctprvnNm#
, #signguNm#
, #emdNm#
, #liBuldNm#
, #lnbrDongHo#
, NOW()
, #frstRegisterId#
, NOW()
, #frstRegisterId#
)
]]>
</insert>
<update id="ZipManageDAO.updateZip">
<![CDATA[
UPDATE LETTCZIP
SET CTPRVN_NM = #ctprvnNm#
, SIGNGU_NM = #signguNm#
, EMD_NM = #emdNm#
, LI_BULD_NM = #liBuldNm#
, LNBR_DONG_HO = #lnbrDongHo#
, LAST_UPDT_PNTTM = NOW()
, LAST_UPDUSR_ID = #lastUpdusrId#
WHERE ZIP = #zip#
AND SN = #sn#
]]>
</update>
<delete id="ZipManageDAO.deleteZip">
<![CDATA[
DELETE
FROM LETTCZIP
WHERE ZIP = #zip#
]]>
</delete>
<delete id="ZipManageDAO.deleteAllZip">
<![CDATA[
DELETE
FROM LETTCZIP
]]>
</delete>
</sqlMap>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="SysLog">
@ -183,7 +183,7 @@
APPRO_NM ,
#url#
FROM LETTNADMINMETHOD
WHERE LCASE(METHOD_NM) = LCASE(#methodNm#)
WHERE METHOD_NM = #methodNm#
<isNotEmpty prepend="AND" property="param">
PARAM = #param#
</isNotEmpty>
@ -209,9 +209,10 @@
SELECT #requstId# ,
#rqesterId# ,
#rqesterIp# ,
sysdate,
/*
now(),
*/
sysdate,
#methodNm#,
MENU_NM ,
APPRO_NM ,
@ -225,7 +226,7 @@
<isEmpty prepend="AND" property="param">
PARAM = 'N'
</isEmpty>
AND ROWNUM = 1
LIMIT 1
</update>
<!-- 시스템 관리자 로그 등록(LETTNADMINMETHOD 테이블에 등록된 것만 insert) -->
@ -244,9 +245,10 @@
SELECT #requstId# ,
#rqesterId# ,
#rqesterIp# ,
SYSDATE,
/*
now(),
*/
sysdate,
#methodNm#,
'MENU_NM' ,
'APPRO_NM' ,
@ -272,15 +274,47 @@
MAX(REPLACE(admot_id,'ADMOTID_','')*1)+1
, #methodNm#
, 'N'
, SYSDATE
/*
, NOW()
*/
, sysdate
, #trgetMenuNm#
, #url#
, 'N'
, 'A'
FROM LETTNADMINMETHOD
</update>
<!-- 시스템 관리자 로그 등록(LETTNADMINMETHOD 테이블에 등록된 것만 insert) 2023-07-11이후 -->
<update id="SysLogDAO.logInsertAdminSysLogNewStep1_bak" parameterClass="sysLog">
/* SysLogDAO.logInsertAdminSysLogNewStep1_bak */
INSERT INTO LETTNADMINLOG_BAK
( ADMINLOG_ID
, CONECT_ID
, CONECT_IP
, CREAT_DT
, PROGRM_FILE_NM
, MENU_NM
, APPRO_NM
, URL
)
SELECT #requstId# ,
#rqesterId# ,
#rqesterIp# ,
now(),
#methodNm#,
MENU_NM ,
APPRO_NM ,
#url#
FROM LETTNADMINMETHOD
WHERE METHOD_NM = #methodNm#
<isNotEmpty prepend="AND" property="param">
PARAM = #param#
</isNotEmpty>
<isEmpty prepend="AND" property="param">
PARAM = 'N'
</isEmpty>
LIMIT 1
</update>
</sqlMap>

View File

@ -0,0 +1,320 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="SysLog">
<typeAlias alias="egovMap"
type="egovframework.rte.psl.dataaccess.util.EgovMap" />
<!-- 시스템로그 VO -->
<typeAlias alias="sysLog"
type="kcc.let.sym.log.lgm.service.SysLog" />
<!-- 시스템로그 맵 -->
<resultMap id="SysLogVO" class="kcc.let.sym.log.lgm.service.SysLog">
<result property="requstId" column="REQUST_ID" />
<result property="occrrncDe" column="OCCRRNC_DE" />
<result property="srvcNm" column="SVC_NM" />
<result property="methodNm" column="METHOD_NM" />
<result property="processSeCode" column="PROCESS_SE_CODE" />
<result property="processSeCodeNm" column="PROCESS_SE_CODE_NM" />
<result property="processTime" column="PROCESS_TIME" />
<result property="rqesterIp" column="RQESTER_IP" />
<result property="rqesterId" column="RQESTER_ID" />
<result property="rqsterNm" column="RQESTER_NM" />
</resultMap>
<!-- 시스템 로그 등록 -->
<insert id="SysLogDAO.logInsertSysLog" parameterClass="sysLog">
<![CDATA[
INSERT INTO LETTNSYSLOG
( REQUST_ID
, SVC_NM
, METHOD_NM
, PROCESS_SE_CODE
, PROCESS_TIME
, RQESTER_ID
, RQESTER_IP
, OCCRRNC_DE )
VALUES ( #requstId#
, #srvcNm#
, #methodNm#
, #processSeCode#
, #processTime#
, #rqesterId#
, #rqesterIp#
, DATE_FORMAT(NOW(), '%Y%m%d'))
]]>
</insert>
<!-- 시스템 로그 상세 조회 -->
<select id="SysLogDAO.selectSysLog" parameterClass="sysLog"
resultMap="SysLogVO">
<![CDATA[
SELECT
a.REQUST_ID
, a.OCCRRNC_DE
, a.SVC_NM
, a.METHOD_NM
, a.PROCESS_SE_CODE
, c.CODE_NM AS PROCESS_SE_CODE_NM
, a.PROCESS_TIME
, a.RQESTER_IP
, b.USER_ID AS RQESTER_ID
, b.USER_NM AS RQESTER_NM
FROM
LETTNSYSLOG a
LEFT OUTER JOIN COMVNUSERMASTER b
ON a.RQESTER_ID = b.ESNTL_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE c
ON a.PROCESS_SE_CODE = c.CODE
WHERE
c.CODE_ID = 'COM033'
AND a.REQUST_ID = #requstId#
]]>
</select>
<!-- 시스템 로그 목록 조회 -->
<select id="SysLogDAO.selectSysLogInf" parameterClass="sysLog"
resultMap="SysLogVO">
<![CDATA[
SELECT
a.REQUST_ID
, a.OCCRRNC_DE
, a.SVC_NM
, a.METHOD_NM
, a.PROCESS_SE_CODE
, c.CODE_NM AS PROCESS_SE_CODE_NM
, a.PROCESS_TIME
, a.RQESTER_IP
, b.USER_ID AS RQESTER_ID
, b.USER_NM AS RQESTER_NM
FROM
LETTNSYSLOG a
LEFT OUTER JOIN COMVNUSERMASTER b
ON a.RQESTER_ID = b.ESNTL_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE c
ON a.PROCESS_SE_CODE = c.CODE
WHERE
c.CODE_ID = 'COM033'
]]>
<isNotEmpty prepend="AND" property="searchWrd">
<![CDATA[ c.CODE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isNotEmpty>
<isNotEmpty prepend="AND" property="searchBgnDe">
<![CDATA[ a.OCCRRNC_DE BETWEEN #searchBgnDe# AND #searchEndDe# ]]>
</isNotEmpty>
<![CDATA[ ORDER BY a.REQUST_ID DESC ]]>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<!-- 시스템 로그 총건수 -->
<select id="SysLogDAO.selectSysLogInfCnt" parameterClass="sysLog"
resultClass="java.lang.Integer">
<![CDATA[
SELECT COUNT(a.REQUST_ID) as cnt
FROM
LETTNSYSLOG a
LEFT OUTER JOIN COMVNUSERMASTER b
ON a.RQESTER_ID = b.ESNTL_ID
LEFT OUTER JOIN LETTCCMMNDETAILCODE c
ON a.PROCESS_SE_CODE = c.CODE
WHERE
c.CODE_ID = 'COM033'
]]>
<isNotEmpty prepend="AND" property="searchWrd">
<![CDATA[ c.CODE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
</isNotEmpty>
<isNotEmpty prepend="AND" property="searchBgnDe">
<![CDATA[ a.OCCRRNC_DE BETWEEN #searchBgnDe# AND #searchEndDe# ]]>
</isNotEmpty>
</select>
<!-- 시스템 로그 전날 로그 요약 등록 -->
<insert id="SysLogDAO.logInsertSysLogSummary">
<![CDATA[
INSERT INTO LETTSSYSLOGSUMMARY
SELECT DATE_FORMAT(b.CREAT_DT, '%Y%m%d') as OCCRRNC_DE
, 'Member-login' as SVC_NM
, 'actionLogin' as METHOD_NM
, SUM(CASE WHEN b.CONECT_MTHD = 'I' THEN 1 ELSE 0 END) AS CREAT_CO
, SUM(CASE WHEN b.CONECT_MTHD = 'U' THEN 1 ELSE 0 END) AS UPDT_CO
, SUM(CASE WHEN b.CONECT_MTHD = 'R' THEN 1 ELSE 0 END) AS RDCNT
, SUM(CASE WHEN b.CONECT_MTHD = 'O' THEN 1 ELSE 0 END) AS DELETE_CO
, 0 AS OUTPT_CO
, 0 AS ERROR_CO
FROM LETTNLOGINLOG b
WHERE NOT EXISTS (SELECT c.OCCRRNC_DE
FROM LETTSSYSLOGSUMMARY c
WHERE c.OCCRRNC_DE = DATE_FORMAT(ADDDATE(NOW(), -1), '%Y%m%d')
)
AND DATE_FORMAT(b.CREAT_DT, '%Y%m%d') = DATE_FORMAT(ADDDATE(NOW(), -1), '%Y%m%d')
GROUP BY OCCRRNC_DE
, b.CONECT_MTHD
]]>
</insert>
<!-- 시스템 로그 6개월전 로그 삭제 -->
<delete id="SysLogDAO.logDeleteSysLogSummary">
<![CDATA[
DELETE FROM LETTNLOGINLOG
WHERE DATE_FORMAT(CREAT_DT, '%Y%m%d') < DATE_FORMAT(ADDDATE(NOW(), -210), '%Y%m%d')
]]>
</delete>
<!-- 시스템 관리자 로그 등록(LETTNADMINMETHOD 테이블에 등록된 것만 insert) -->
<insert id="SysLogDAO.logInsertAdminSysLog" parameterClass="sysLog">
INSERT INTO LETTNADMINLOG
( ADMINLOG_ID
, CONECT_ID
, CONECT_IP
, CREAT_DT
, PROGRM_FILE_NM
, MENU_NM
, APPRO_NM
, URL
)
SELECT #requstId# ,
#rqesterId# ,
#rqesterIp# ,
now(),
#methodNm#,
MENU_NM ,
APPRO_NM ,
#url#
FROM LETTNADMINMETHOD
WHERE METHOD_NM = #methodNm#
<isNotEmpty prepend="AND" property="param">
PARAM = #param#
</isNotEmpty>
<isEmpty prepend="AND" property="param">
PARAM = 'N'
</isEmpty>
LIMIT 1
</insert>
<!-- 시스템 관리자 로그 등록(LETTNADMINMETHOD 테이블에 등록된 것만 insert) -->
<update id="SysLogDAO.logInsertAdminSysLogNewStep1" parameterClass="sysLog">
/* SysLogDAO.logInsertAdminSysLogNewStep1 */
INSERT INTO LETTNADMINLOG
( ADMINLOG_ID
, CONECT_ID
, CONECT_IP
, CREAT_DT
, PROGRM_FILE_NM
, MENU_NM
, APPRO_NM
, URL
)
SELECT #requstId# ,
#rqesterId# ,
#rqesterIp# ,
/*
now(),
*/
sysdate,
#methodNm#,
MENU_NM ,
APPRO_NM ,
#url#
FROM LETTNADMINMETHOD
WHERE METHOD_NM = #methodNm#
AND method_cd='A'
<isNotEmpty prepend="AND" property="param">
PARAM = #param#
</isNotEmpty>
<isEmpty prepend="AND" property="param">
PARAM = 'N'
</isEmpty>
LIMIT 1
</update>
<!-- 시스템 관리자 로그 등록(LETTNADMINMETHOD 테이블에 등록된 것만 insert) -->
<update id="SysLogDAO.logInsertAdminSysLogNewStep2" parameterClass="sysLog">
/* SysLogDAO.logInsertAdminSysLogNewStep2 */
INSERT INTO LETTNADMINLOG
( ADMINLOG_ID
, CONECT_ID
, CONECT_IP
, CREAT_DT
, PROGRM_FILE_NM
, MENU_NM
, APPRO_NM
, URL
)
SELECT #requstId# ,
#rqesterId# ,
#rqesterIp# ,
/*
now(),
*/
sysdate,
#methodNm#,
'MENU_NM' ,
'APPRO_NM' ,
#url#
</update>
<!-- 시스템 관리자 로그 등록(LETTNADMINMETHOD 테이블에 등록하기) -->
<update id="SysLogDAO.logInsertAdminSysLogNewStep3" parameterClass="sysLog">
/* SysLogDAO.logInsertAdminSysLogNewStep3 */
INSERT INTO lettnadminmethod (
admot_id,
method_nm,
param,
creat_dt,
menu_nm,
appro_nm,
privacy,
method_cd /* A or U */
)
SELECT
MAX(REPLACE(admot_id,'ADMOTID_','')*1)+1
, #methodNm#
, 'N'
/*
, NOW()
*/
, sysdate
, #trgetMenuNm#
, #url#
, 'N'
, 'A'
FROM LETTNADMINMETHOD
</update>
<!-- 시스템 관리자 로그 등록(LETTNADMINMETHOD 테이블에 등록된 것만 insert) 2023-07-11이후 -->
<update id="SysLogDAO.logInsertAdminSysLogNewStep1_bak" parameterClass="sysLog">
/* SysLogDAO.logInsertAdminSysLogNewStep1_bak */
INSERT INTO LETTNADMINLOG_BAK
( ADMINLOG_ID
, CONECT_ID
, CONECT_IP
, CREAT_DT
, PROGRM_FILE_NM
, MENU_NM
, APPRO_NM
, URL
)
SELECT #requstId# ,
#rqesterId# ,
#rqesterIp# ,
now(),
#methodNm#,
MENU_NM ,
APPRO_NM ,
#url#
FROM LETTNADMINMETHOD
WHERE METHOD_NM = #methodNm#
<isNotEmpty prepend="AND" property="param">
PARAM = #param#
</isNotEmpty>
<isEmpty prepend="AND" property="param">
PARAM = 'N'
</isEmpty>
LIMIT 1
</update>
</sqlMap>

View File

@ -0,0 +1,147 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="UserLog">
<typeAlias alias="UserLogVO" type="kcc.com.sym.log.ulg.service.UserLog"/>
<!-- 사용자로그 맵 -->
<resultMap id="UserLogVO" class="kcc.com.sym.log.ulg.service.UserLog">
<result property="occrrncDe" column="OCCRRNC_DE"/>
<result property="rqesterId" column="RQESTER_ID"/>
<result property="rqsterNm" column="RQESTER_NM"/>
<result property="srvcNm" column="SVC_NM"/>
<result property="methodNm" column="METHOD_NM"/>
<result property="creatCo" column="CREAT_CO"/>
<result property="updtCo" column="UPDT_CO"/>
<result property="rdCnt" column="RDCNT"/>
<result property="deleteCo" column="DELETE_CO"/>
<result property="outptCo" column="OUTPT_CO"/>
<result property="errorCo" column="ERROR_CO"/>
</resultMap>
<!-- 사용자 로그 등록 -->
<insert id="UserLog.logInsertUserLog">
<![CDATA[
INSERT INTO COMTNUSERLOG
SELECT DATE_FORMAT(b.OCCRRNC_DE, '%Y%m%d' )
, b.RQESTER_ID
, b.SVC_NM
, b.METHOD_NM
, SUM(CASE WHEN b.PROCESS_SE_CODE = 'C' THEN 1 ELSE 0 END) AS CREAT_CO
, SUM(CASE WHEN b.PROCESS_SE_CODE = 'U' THEN 1 ELSE 0 END) AS UPDT_CO
, SUM(CASE WHEN b.PROCESS_SE_CODE = 'R' THEN 1 ELSE 0 END) AS RDCNT
, SUM(CASE WHEN b.PROCESS_SE_CODE = 'D' THEN 1 ELSE 0 END) AS DELETE_CO
, 0 AS OUTPT_CO
, 0 AS ERROR_CO
FROM LETTNSYSLOG b
WHERE NOT EXISTS (SELECT DATE_FORMAT(c.OCCRRNC_DE, '%Y%m%d' )
FROM COMTNUSERLOG c
WHERE DATE_FORMAT(c.OCCRRNC_DE, '%Y%m%d' ) = DATE_FORMAT(ADDDATE(NOW(), -1), '%Y%m%d')
)
AND DATE_FORMAT(b.OCCRRNC_DE, '%Y%m%d' ) = DATE_FORMAT(ADDDATE(NOW(), -1), '%Y%m%d')
AND b.RQESTER_ID IS NOT NULL
GROUP BY DATE_FORMAT(b.OCCRRNC_DE, '%Y%m%d' )
, b.RQESTER_ID
, b.SVC_NM
, b.METHOD_NM
]]>
</insert>
<!-- 사용자 로그 상세 조회 -->
<select id="UserLog.selectUserLog" parameterClass="UserLogVO" resultClass="UserLogVO">
<![CDATA[
SELECT
a.OCCRRNC_DE
, a.RQESTER_ID
, b.USER_NM AS RQESTER_NM
, a.SVC_NM
, a.METHOD_NM
, a.CREAT_CO
, a.UPDT_CO
, a.RDCNT
, a.DELETE_CO
, a.OUTPT_CO
, a.ERROR_CO
FROM
LETTNSYSLOG a
LEFT OUTER JOIN COMVNUSERMASTER b
ON a.RQESTER_ID = b.ESNTL_ID
WHERE
DATE_FORMAT(a.OCCRRNC_DE, '%Y%m%d') = #occrrncDe#
AND a.RQESTER_ID = #rqesterId#
AND a.SVC_NM = #srvcNm#
AND a.METHOD_NM = #methodNm#
]]>
</select>
<!-- 사용자 로그 목록 조회 -->
<select id="UserLog.selectUserLogInf" parameterClass="UserLogVO" resultClass="UserLogVO">
<![CDATA[
SELECT
a.REQUST_ID requstId,
a.JOB_SE_CODE jobSeCode,
a.INSTT_CODE insttCode,
a.OCCRRNC_DE occrrncDe,
a.RQESTER_IP rqesterIp,
a.RQESTER_ID rqesterId,
a.TRGET_MENU_NM trgetMenuNm,
a.SVC_NM svcNm,
a.METHOD_NM methodNm,
a.PROCESS_SE_CODE processSeCode,
a.PROCESS_CO processCo,
a.PROCESS_TIME processTime,
a.RSPNS_CODE rspnsCode,
a.ERROR_SE errorSe,
a.ERROR_CO errorCo,
a.ERROR_CODE errorCode,
b.USER_NM AS rqesterNm
FROM
LETTNSYSLOG a
LEFT OUTER JOIN COMVNUSERMASTER b
ON a.RQESTER_ID = b.ESNTL_ID
WHERE
1 = 1
]]>
<isNotEmpty property="searchWrd">
<![CDATA[ AND
b.USER_NM LIKE CONCAT ('%', #searchWrd#,'%')
]]>
</isNotEmpty>
<isNotEmpty property="searchBgnDe">
<isNotEmpty property="searchEndDe" >
AND
a.OCCRRNC_DE BETWEEN REPLACE(#searchBgnDe#,'-','') AND REPLACE(#searchEndDe#,'-','')
</isNotEmpty>
</isNotEmpty>
ORDER BY a.OCCRRNC_DE DESC
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<!-- 사용자 로그 총건수 -->
<select id="UserLog.selectUserLogInfCnt" parameterClass="UserLogVO" resultClass="int">
<![CDATA[
SELECT COUNT(a.OCCRRNC_DE) as cnt
FROM
LETTNSYSLOG a
LEFT OUTER JOIN COMVNUSERMASTER b
ON a.RQESTER_ID = b.ESNTL_ID
WHERE
1 = 1
]]>
<isNotEmpty property="searchBgnDe">
<![CDATA[ AND
b.USER_NM LIKE CONCAT ('%', #searchWrd#,'%')
]]>
</isNotEmpty>
<isNotEmpty property="searchBgnDe">
<![CDATA[ AND
a.OCCRRNC_DE BETWEEN REPLACE(#searchBgnDe#,'-','') AND REPLACE(#searchEndDe#,'-','')
]]>
</isNotEmpty>
</select>
</sqlMap>

View File

@ -0,0 +1,147 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="UserLog">
<typeAlias alias="UserLogVO" type="kcc.com.sym.log.ulg.service.UserLog"/>
<!-- 사용자로그 맵 -->
<resultMap id="UserLogVO" class="kcc.com.sym.log.ulg.service.UserLog">
<result property="occrrncDe" column="OCCRRNC_DE"/>
<result property="rqesterId" column="RQESTER_ID"/>
<result property="rqsterNm" column="RQESTER_NM"/>
<result property="srvcNm" column="SVC_NM"/>
<result property="methodNm" column="METHOD_NM"/>
<result property="creatCo" column="CREAT_CO"/>
<result property="updtCo" column="UPDT_CO"/>
<result property="rdCnt" column="RDCNT"/>
<result property="deleteCo" column="DELETE_CO"/>
<result property="outptCo" column="OUTPT_CO"/>
<result property="errorCo" column="ERROR_CO"/>
</resultMap>
<!-- 사용자 로그 등록 -->
<insert id="UserLog.logInsertUserLog">
<![CDATA[
INSERT INTO COMTNUSERLOG
SELECT DATE_FORMAT(b.OCCRRNC_DE, '%Y%m%d' )
, b.RQESTER_ID
, b.SVC_NM
, b.METHOD_NM
, SUM(CASE WHEN b.PROCESS_SE_CODE = 'C' THEN 1 ELSE 0 END) AS CREAT_CO
, SUM(CASE WHEN b.PROCESS_SE_CODE = 'U' THEN 1 ELSE 0 END) AS UPDT_CO
, SUM(CASE WHEN b.PROCESS_SE_CODE = 'R' THEN 1 ELSE 0 END) AS RDCNT
, SUM(CASE WHEN b.PROCESS_SE_CODE = 'D' THEN 1 ELSE 0 END) AS DELETE_CO
, 0 AS OUTPT_CO
, 0 AS ERROR_CO
FROM LETTNSYSLOG b
WHERE NOT EXISTS (SELECT DATE_FORMAT(c.OCCRRNC_DE, '%Y%m%d' )
FROM COMTNUSERLOG c
WHERE DATE_FORMAT(c.OCCRRNC_DE, '%Y%m%d' ) = DATE_FORMAT(ADDDATE(NOW(), -1), '%Y%m%d')
)
AND DATE_FORMAT(b.OCCRRNC_DE, '%Y%m%d' ) = DATE_FORMAT(ADDDATE(NOW(), -1), '%Y%m%d')
AND b.RQESTER_ID IS NOT NULL
GROUP BY DATE_FORMAT(b.OCCRRNC_DE, '%Y%m%d' )
, b.RQESTER_ID
, b.SVC_NM
, b.METHOD_NM
]]>
</insert>
<!-- 사용자 로그 상세 조회 -->
<select id="UserLog.selectUserLog" parameterClass="UserLogVO" resultClass="UserLogVO">
<![CDATA[
SELECT
a.OCCRRNC_DE
, a.RQESTER_ID
, b.USER_NM AS RQESTER_NM
, a.SVC_NM
, a.METHOD_NM
, a.CREAT_CO
, a.UPDT_CO
, a.RDCNT
, a.DELETE_CO
, a.OUTPT_CO
, a.ERROR_CO
FROM
LETTNSYSLOG a
LEFT OUTER JOIN COMVNUSERMASTER b
ON a.RQESTER_ID = b.ESNTL_ID
WHERE
DATE_FORMAT(a.OCCRRNC_DE, '%Y%m%d') = #occrrncDe#
AND a.RQESTER_ID = #rqesterId#
AND a.SVC_NM = #srvcNm#
AND a.METHOD_NM = #methodNm#
]]>
</select>
<!-- 사용자 로그 목록 조회 -->
<select id="UserLog.selectUserLogInf" parameterClass="UserLogVO" resultClass="UserLogVO">
<![CDATA[
SELECT
a.REQUST_ID requstId,
a.JOB_SE_CODE jobSeCode,
a.INSTT_CODE insttCode,
a.OCCRRNC_DE occrrncDe,
a.RQESTER_IP rqesterIp,
a.RQESTER_ID rqesterId,
a.TRGET_MENU_NM trgetMenuNm,
a.SVC_NM svcNm,
a.METHOD_NM methodNm,
a.PROCESS_SE_CODE processSeCode,
a.PROCESS_CO processCo,
a.PROCESS_TIME processTime,
a.RSPNS_CODE rspnsCode,
a.ERROR_SE errorSe,
a.ERROR_CO errorCo,
a.ERROR_CODE errorCode,
b.USER_NM AS rqesterNm
FROM
LETTNSYSLOG a
LEFT OUTER JOIN COMVNUSERMASTER b
ON a.RQESTER_ID = b.ESNTL_ID
WHERE
1 = 1
]]>
<isNotEmpty property="searchWrd">
<![CDATA[ AND
b.USER_NM LIKE CONCAT ('%', #searchWrd#,'%')
]]>
</isNotEmpty>
<isNotEmpty property="searchBgnDe">
<isNotEmpty property="searchEndDe" >
AND
a.OCCRRNC_DE BETWEEN REPLACE(#searchBgnDe#,'-','') AND REPLACE(#searchEndDe#,'-','')
</isNotEmpty>
</isNotEmpty>
ORDER BY a.OCCRRNC_DE DESC
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<!-- 사용자 로그 총건수 -->
<select id="UserLog.selectUserLogInfCnt" parameterClass="UserLogVO" resultClass="int">
<![CDATA[
SELECT COUNT(a.OCCRRNC_DE) as cnt
FROM
LETTNSYSLOG a
LEFT OUTER JOIN COMVNUSERMASTER b
ON a.RQESTER_ID = b.ESNTL_ID
WHERE
1 = 1
]]>
<isNotEmpty property="searchBgnDe">
<![CDATA[ AND
b.USER_NM LIKE CONCAT ('%', #searchWrd#,'%')
]]>
</isNotEmpty>
<isNotEmpty property="searchBgnDe">
<![CDATA[ AND
a.OCCRRNC_DE BETWEEN REPLACE(#searchBgnDe#,'-','') AND REPLACE(#searchEndDe#,'-','')
]]>
</isNotEmpty>
</select>
</sqlMap>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="MenuCreat">
@ -19,49 +19,60 @@
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="menuManageJTreeVO" type="kcc.let.sym.mnu.mpm.service.MenuManageJTreeVO"/>
<typeAlias alias="menuManageVO" type="kcc.let.sym.mnu.mpm.service.MenuManageVO"/>
<!-- <typeAlias alias="deptUsrInfoVO" type="kcc.kccadr.advcDept.service.DeptUsrInfoVO"/> -->
<select id="menuManageDAO.selectMenuCreatManageList_D" parameterClass="comDefaultVO" resultClass="egovMap">
SELECT AUTHOR_CODE AS authorCode,
AUTHOR_NM AS authorNm,
AUTHOR_DC AS authorDc,
AUTHOR_CREAT_DE AS authorCreatDe,
/* menuManageDAO.selectMenuCreatManageList_D */
SELECT AUTHOR_CODE AS "authorCode",
AUTHOR_NM AS "authorNm",
AUTHOR_DC AS "authorDc",
AUTHOR_CREAT_DE AS "authorCreatDe",
(SELECT COUNT(B.AUTHOR_CODE)
FROM LETTNMENUCREATDTLS B
WHERE B.AUTHOR_CODE = A.AUTHOR_CODE ) AS chkYeoBu,
WHERE B.AUTHOR_CODE = A.AUTHOR_CODE ) AS "chkYeoBu",
SORT_NUM AS tempSortNum
FROM LETTNAUTHORINFO A
WHERE A.AUTHOR_CODE like CONCAT('%', #searchKeyword#, '%')
ORDER BY 1=1
/*
WHERE A.AUTHOR_CODE like CONCAT('%', searchKeyword, '%')
*/
WHERE A.AUTHOR_CODE like '%'||#searchKeyword#||'%'
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<select id="menuManageDAO.selectMenuCreatManageTotCnt_S" parameterClass="comDefaultVO" resultClass="int">
/* menuManageDAO.selectMenuCreatManageTotCnt_S */
<![CDATA[
SELECT COUNT(AUTHOR_CODE) AS totcnt
FROM LETTNAUTHORINFO
WHERE AUTHOR_CODE like CONCAT('%', #searchKeyword#, '%')
/*
WHERE AUTHOR_CODE like CONCAT('%', searchKeyword, '%')
*/
WHERE AUTHOR_CODE like '%'||#searchKeyword#||'%'
AND AUTHOR_CODE NOT IN ('ROLE_ANONYMOUS', 'ROLE_GNRL_USER')
]]>
</select>
<select id="menuManageDAO.selectMenuCreatList_D" parameterClass="MenuCreatVO" resultClass="egovMap">
/* menuManageDAO.selectMenuCreatList_D */
SELECT
A.MENU_NO AS menuNo
, A.MENU_ORDR AS menuOrdr
, A.MENU_NM AS menuNm
, A.UPPER_MENU_NO AS upperMenuId
A.MENU_NO AS "menuNo"
, A.MENU_ORDR AS "menuOrdr"
, A.MENU_NM AS "menuNm"
, A.UPPER_MENU_NO AS "upperMenuId"
, (SELECT count(B.MENU_NO)
FROM LETTNMENUCREATDTLS B
WHERE B.MENU_NO = A.MENU_NO
AND B.AUTHOR_CODE = #authorCode#
) AS chkYeoBu
) AS "chkYeoBu"
FROM LETTNMENUINFO A
WHERE A.MENU_NO > 0
<isNotEmpty property="underMenuNo">
@ -80,6 +91,7 @@
</insert>
<select id="menuManageDAO.selectMenuCreatCnt_S" parameterClass="MenuCreatVO" resultClass="int">
/* menuManageDAO.selectMenuCreatCnt_S */
<![CDATA[
SELECT COUNT(AUTHOR_CODE) AS totcnt
FROM LETTNAUTHORINFO
@ -117,6 +129,7 @@
</delete>
<select id="menuManageDAO.selectAuthorByUsr" parameterClass="comDefaultVO" resultClass="MenuCreatVO">
/* menuManageDAO.selectAuthorByUsr */
<![CDATA[
select AUTHOR_CODE AS authorCode from LETTNEMPLYRSCRTYESTBS
where SCRTY_DTRMN_TRGET_ID =
@ -126,6 +139,7 @@
</select>
<select id="menuManageDAO.selectUsrByPk" parameterClass="comDefaultVO" resultClass="int">
/* menuManageDAO.selectUsrByPk */
<![CDATA[
select count(AUTHOR_CODE) from LETTNEMPLYRSCRTYESTBS
where SCRTY_DTRMN_TRGET_ID =
@ -193,7 +207,7 @@
<select id="menuManageDAO.selectMenuListJtree" parameterClass="menuManageJTreeVO" resultClass="menuManageJTreeVO">
/* 임시.*NOT_SQL_LOG.* */
/* 임시.*NOT_SQL_LOG.* menuManageDAO.selectMenuListJtree */
<![CDATA[
SELECT
MENU_NM menuNm ,
@ -210,8 +224,46 @@
LETTNMENUINFO A INNER JOIN LETTNMENUCREATDTLS B on A.MENU_NO = B.MENU_NO
WHERE
A.MENU_NO > 0
AND B.AUTHOR_CODE = #authorCode#
]]>
<isEqual property="authorCode" compareValue="ROLE_ANONYMOUS">
AND B.AUTHOR_CODE IN ('ROLE_ANONYMOUS', 'ROLE_USER_MEMBER', 'ROLE_USER_MANAGER')
/*
GROUP BY A.MENU_NO
*/
GROUP BY
MENU_NM ,
PROGRM_FILE_NM ,
A.MENU_NO ,
UPPER_MENU_NO ,
MENU_ORDR ,
MENU_DC ,
RELATE_IMAGE_PATH ,
RELATE_IMAGE_NM ,
MENU_USER_TYPE ,
B.USE_YN
</isEqual>
<isNotEqual property="authorCode" compareValue="ROLE_ANONYMOUS">
AND B.AUTHOR_CODE IN ('ROLE_ADMIN', 'ROLE_ADR_ADMIN', 'ROLE_VISIT')
/*
GROUP BY A.MENU_NO
*/
GROUP BY
MENU_NM ,
PROGRM_FILE_NM ,
A.MENU_NO ,
UPPER_MENU_NO ,
MENU_ORDR ,
MENU_DC ,
RELATE_IMAGE_PATH ,
RELATE_IMAGE_NM ,
MENU_USER_TYPE ,
B.USE_YN
</isNotEqual>
ORDER BY
A.UPPER_MENU_NO,
A.MENU_ORDR,
@ -219,126 +271,6 @@
</select>
<!-- 메뉴별 권한 관리 >> 메뉴권한 리스트 -->
<!-- <select id="menuManageDAO.selectMenuList4Pstn" parameterClass="deptUsrInfoVO" resultClass="deptUsrInfoVO">
SELECT
d.menu_nm AS upperMenuNm ,
A.MENU_NM AS menuNm ,
A.PROGRM_FILE_NM AS progrmFileNm ,
A.MENU_NO AS menuNo ,
A.UPPER_MENU_NO AS upperMenuId ,
c.url ,
IFNULL(e.all_is , f.all_is) AS allIs ,
IFNULL(e.r_is , f.r_is) AS rIs ,
IFNULL(e.cud_is , f.cud_is) AS cudIs ,
IFNULL(e.p_is , f.p_is) AS pIs
FROM
LETTNMENUINFO A
LEFT OUTER JOIN pstn_menu_info e
ON(
e.pstn_ty = #pstnTy#
AND e.mngr_id = #mngrId#
AND a.progrm_file_nm=e.progrm_File_Nm
)
LEFT OUTER JOIN pstn_menu_info f
ON(
f.pstn_ty = #pstnTy#
AND f.mngr_id = '0'
AND a.progrm_file_nm=f.progrm_File_Nm
)
, LETTNMENUCREATDTLS B
, lettnprogrmlist C
, LETTNMENUINFO D
WHERE
A.MENU_NO > 0
AND b.author_code='ROLE_ADR_ADMIN' /* 특정 권한 그룹에 대한 메뉴만 가져온다. */
AND A.MENU_NO = B.MENU_NO
AND A.progrm_file_nm=C.progrm_file_nm
AND B.USE_YN='Y'
AND (
A.UPPER_MENU_NO IN (9999000, 9993000, 99919000, 99914000, 99927000)
OR
A.MENU_NO IN (9999000, 9993000, 99919000, 99910000, 99914000, 99927000)
)
AND a.UPPER_MENU_NO=d.menu_no
ORDER BY
CONCAT(
IF(LENGTH(IF(A.UPPER_MENU_NO=0, a.MENU_ORDR, d.MENU_ORDR))=1,'0',''),
IF(A.UPPER_MENU_NO=0, a.MENU_ORDR, d.MENU_ORDR),
IF(A.UPPER_MENU_NO=0,a.menu_nm, d.menu_nm)
),
A.UPPER_MENU_NO,
D.MENU_ORDR,
A.MENU_ORDR,
A.MENU_NO
</select> -->
<!-- 해당 사용자의 해당 페이지 접속 정보 가져오기 -->
<!-- <select id="menuManageDAO.selectMenu4Pstn" parameterClass="deptUsrInfoVO" resultClass="deptUsrInfoVO">
SELECT
d.menu_nm AS upperMenuNm ,
A.MENU_NM AS menuNm ,
A.PROGRM_FILE_NM AS progrmFileNm ,
A.MENU_NO AS menuNo ,
A.UPPER_MENU_NO AS upperMenuId ,
c.url ,
IFNULL(e.all_is , f.all_is) AS allIs ,
IFNULL(e.r_is , f.r_is) AS rIs ,
IFNULL(e.cud_is , f.cud_is) AS cudIs ,
IFNULL(e.p_is , f.p_is) AS pIs ,
g.ofcps_nm AS ofcpsNm
FROM
LETTNMENUINFO A
LEFT OUTER JOIN lettnemplyrinfo g
ON(
g.esntl_id = #mngrId#
)
LEFT OUTER JOIN pstn_menu_info e
ON(
e.pstn_ty = g.ofcps_nm
AND e.mngr_id = #mngrId#
AND a.progrm_file_nm=e.progrm_File_Nm
)
LEFT OUTER JOIN pstn_menu_info f
ON(
f.pstn_ty = g.ofcps_nm
AND f.mngr_id = '0'
AND a.progrm_file_nm=f.progrm_File_Nm
)
, LETTNMENUCREATDTLS B
, lettnprogrmlist C
, LETTNMENUINFO D
WHERE
A.MENU_NO > 0
AND b.author_code='ROLE_ADMIN'
AND A.MENU_NO = B.MENU_NO
AND A.progrm_file_nm=C.progrm_file_nm
AND B.USE_YN='Y'
AND (
A.UPPER_MENU_NO IN (9999000, 9993000, 99919000, 99910000)
OR
A.MENU_NO IN (9999000, 9993000, 99919000, 99910000)
)
AND a.UPPER_MENU_NO=d.menu_no
AND (c.url LIKE CONCAT('%',#url#,'%')
OR c.progrm_dc LIKE CONCAT('%',#url#,'%')
)
LIMIT 1
</select> -->
<delete id="menuManageDAO.deleteMenuCreatByNo">
<![CDATA[
DELETE FROM LETTNMENUCREATDTLS
@ -348,12 +280,208 @@
<delete id="menuManageDAO.deleteMenuCreatAuthNo" parameterClass="menuCreatVO" >
DELETE FROM LETTNMENUCREATDTLS
WHERE AUTHOR_CODE=#authorCode#
AND MENU_NO= #menuNo#
WHERE MENU_NO= #menuNo#
</delete>
<select id="menuManageDAO.selectMenuListJtreeWeb" parameterClass="menuManageJTreeVO" resultClass="menuManageJTreeVO" cacheModel="cache-webMainMenu">
/* 임시.*NOT_SQL_LOG.* */
/* 임시.*NOT_SQL_LOG.* menuManageDAO.selectMenuListJtreeWeb */
<![CDATA[
SELECT *
FROM (
SELECT A.MENU_NM AS menuNm ,
A.PROGRM_FILE_NM AS progrmFileNm ,
A.MENU_NO AS menuNo ,
A.UPPER_MENU_NO AS upperMenuId ,
A.MENU_ORDR AS menuOrdr ,
A.MENU_DC AS menuDc ,
A.RELATE_IMAGE_PATH AS relateImagePath ,
A.RELATE_IMAGE_NM AS relateImageNm ,
A.MENU_USER_TYPE AS menuUserType ,
A.USE_YN AS useYn ,
C.url ,
A.MENU_TYPE AS menuType ,
1 AS depths
FROM LETTNMENUINFO A
INNER JOIN LETTNMENUCREATDTLS B
ON A.MENU_NO = B.MENU_NO
INNER JOIN LETTNPROGRMLIST C
ON A.PROGRM_FILE_NM = C.PROGRM_FILE_NM
WHERE A.UPPER_MENU_NO = 0
AND A.MENU_NO !=0
]]>
<isEmpty property="addMenu">
AND B.AUTHOR_CODE = #authorCode#
</isEmpty>
<isNotEmpty property="addMenu">
AND (B.AUTHOR_CODE = #authorCode# OR A.MENU_NO = #addMenu#)
</isNotEmpty>
<![CDATA[
/*
AND A.MENU_NO != '9050001' 사용자 메인페이지 */
/*
AND A.MENU_NO != '9600000' 홈페이지 소개 */
AND B.USE_YN = 'Y'
UNION ALL
SELECT bb.MENU_NM AS menuNm ,
bb.PROGRM_FILE_NM AS progrmFileNm ,
bb.MENU_NO AS menuNo ,
bb.UPPER_MENU_NO AS upperMenuId ,
bb.MENU_ORDR AS menuOrdr ,
bb.MENU_DC AS menuDc ,
bb.RELATE_IMAGE_PATH AS relateImagePath ,
bb.RELATE_IMAGE_NM AS relateImageNm ,
bb.MENU_USER_TYPE AS menuUserType ,
bb.USE_YN AS useYn ,
dd.url ,
bb.MENU_TYPE AS menuType ,
2 AS depths
FROM (
SELECT A.MENU_NM ,
A.PROGRM_FILE_NM ,
A.MENU_NO ,
A.UPPER_MENU_NO ,
A.MENU_ORDR ,
A.MENU_DC ,
A.RELATE_IMAGE_PATH ,
A.RELATE_IMAGE_NM ,
A.MENU_USER_TYPE ,
A.USE_YN ,
C.URL ,
A.MENU_TYPE,
1 AS DEPTHS
FROM LETTNMENUINFO A
INNER JOIN LETTNMENUCREATDTLS B
ON A.MENU_NO = B.MENU_NO
INNER JOIN LETTNPROGRMLIST C
ON A.PROGRM_FILE_NM = C.PROGRM_FILE_NM
WHERE A.UPPER_MENU_NO = 0
AND A.MENU_NO !=0
]]>
<isEmpty property="addMenu">
AND B.AUTHOR_CODE = #authorCode#
</isEmpty>
<isNotEmpty property="addMenu">
AND (B.AUTHOR_CODE = #authorCode# OR A.MENU_NO = #addMenu#)
</isNotEmpty>
<![CDATA[
/*
AND A.MENU_NO != '9050001' 사용자 메인페이지 */
/*
AND A.MENU_NO != '9600000' 홈페이지 소개 */
AND B.USE_YN = 'Y'
)aa
, LETTNMENUINFO bb
, LETTNMENUCREATDTLS cc
, LETTNPROGRMLIST dd
WHERE aa.MENU_NO=bb.upper_menu_no
AND bb.menu_no=cc.menu_no
]]>
<isEmpty property="addMenu">
AND cc.AUTHOR_CODE = #authorCode#
</isEmpty>
<isNotEmpty property="addMenu">
AND (cc.AUTHOR_CODE = #authorCode# OR aa.MENU_NO = #addMenu#)
</isNotEmpty>
AND (cc.AUTHOR_CODE = #authorCode# OR aa.MENU_NO = '9600000')
<![CDATA[
AND cc.use_yn='Y'
AND bb.PROGRM_FILE_NM = dd.PROGRM_FILE_NM
UNION ALL
SELECT bbb.MENU_NM AS menuNm ,
bbb.PROGRM_FILE_NM AS progrmFileNm ,
bbb.MENU_NO AS menuNo ,
bbb.UPPER_MENU_NO AS upperMenuId ,
bbb.MENU_ORDR AS menuOrdr ,
bbb.MENU_DC AS menuDc ,
bbb.RELATE_IMAGE_PATH AS relateImagePath ,
bbb.RELATE_IMAGE_NM AS relateImageNm ,
bbb.MENU_USER_TYPE AS menuUserType ,
bbb.USE_YN AS useYn ,
ddd.url ,
bbb.MENU_TYPE AS menuType ,
3 AS depths
FROM (
SELECT bb.MENU_NM ,
bb.PROGRM_FILE_NM ,
bb.MENU_NO ,
bb.UPPER_MENU_NO ,
bb.MENU_ORDR ,
bb.MENU_DC ,
bb.RELATE_IMAGE_PATH ,
bb.RELATE_IMAGE_NM ,
bb.MENU_USER_TYPE ,
bb.USE_YN ,
bb.MENU_TYPE ,
2 AS depths
FROM (
SELECT A.MENU_NM ,
A.PROGRM_FILE_NM ,
A.MENU_NO ,
A.UPPER_MENU_NO ,
A.MENU_ORDR ,
A.MENU_DC ,
A.RELATE_IMAGE_PATH ,
A.RELATE_IMAGE_NM ,
A.MENU_USER_TYPE ,
A.USE_YN ,
C.URL ,
A.MENU_TYPE,
1 AS DEPTHS
FROM LETTNMENUINFO A
INNER JOIN LETTNMENUCREATDTLS B
ON A.MENU_NO = B.MENU_NO
INNER JOIN LETTNPROGRMLIST C
ON A.PROGRM_FILE_NM = C.PROGRM_FILE_NM
WHERE A.UPPER_MENU_NO = 0
AND A.MENU_NO !=0
AND B.AUTHOR_CODE = #authorCode#
/*
AND A.MENU_NO != '9050001' 사용자 메인페이지 */
/*
AND A.MENU_NO != '9600000' 홈페이지 소개 */
AND B.USE_YN = 'Y'
)aa
, LETTNMENUINFO bb
, LETTNMENUCREATDTLS cc
WHERE aa.MENU_NO=bb.upper_menu_no
AND bb.menu_no=cc.menu_no
AND cc.AUTHOR_CODE = #authorCode#
AND cc.use_yn='Y'
)aaa
, LETTNMENUINFO bbb
, LETTNMENUCREATDTLS ccc
, LETTNPROGRMLIST ddd
WHERE aaa.MENU_NO=bbb.upper_menu_no
AND bbb.menu_no=ccc.menu_no
AND ccc.AUTHOR_CODE = #authorCode#
AND ccc.use_yn='Y'
AND bbb.PROGRM_FILE_NM = ddd.PROGRM_FILE_NM
)aaaa
ORDER BY aaaa.depths, aaaa.menuOrdr, aaaa.menuNo*1
]]>
</select>
<select id="menuManageDAO.selectMenuListJtreeWeb_bak_2022_0215" parameterClass="menuManageJTreeVO" resultClass="menuManageJTreeVO" cacheModel="cache-webMainMenu">
/* 임시.*NOT_SQL_LOG.* menuManageDAO.selectMenuListJtreeWeb_bak_2022_0215 */
<![CDATA[
WITH RECURSIVE CTE AS (
SELECT
@ -425,8 +553,8 @@
MENU_ORDR ASC
]]>
</select>
<select id="menuManageDAO.selectMenuCreatAuthCnt" parameterClass="menuCreatVO" resultClass="int" >
/* menuManageDAO.selectMenuCreatAuthCnt */
<![CDATA[
SELECT COUNT(*) FROM LETTNMENUCREATDTLS WHERE MENU_NO = #menuNo#
AND USE_YN = 'Y'
@ -435,7 +563,66 @@
<!-- <select id="menuManageDAO.selectMenuListCurrentJtreeWeb" parameterClass="menuManageJTreeVO" resultClass="menuManageJTreeVO" cacheModel="cache-webMainMenu"> -->
<select id="menuManageDAO.selectMenuListCurrentJtreeWeb" parameterClass="menuManageJTreeVO" resultClass="menuManageJTreeVO" >
/* 임시.*NOT_SQL_LOG.* */
/* 임시.*NOT_SQL_LOG.* menuManageDAO.selectMenuListCurrentJtreeWeb */
<![CDATA[
SELECT CTE.MENU_NO menuNo,
CTE.MENU_NM menuNm,
CTE.URL url ,
RANK
FROM (
( SELECT A.MENU_NO ,
A.UPPER_MENU_NO ,
C.URL ,
A.MENU_NM,
ROW_NUMBER() OVER (ORDER BY A.MENU_NO) AS RANK
FROM LETTNMENUINFO A
INNER JOIN LETTNMENUCREATDTLS B
ON A.MENU_NO = B.MENU_NO
INNER JOIN LETTNPROGRMLIST C
ON A.PROGRM_FILE_NM = C.PROGRM_FILE_NM
WHERE B.AUTHOR_CODE = #authorCode#
AND A.MENU_NO = #menuNo#
UNION ALL
SELECT A.MENU_NO ,
A.UPPER_MENU_NO ,
C.URL ,
A.MENU_NM,
ROW_NUMBER() OVER (ORDER BY A.MENU_NO) AS RANK
FROM LETTNMENUINFO A
INNER JOIN LETTNMENUCREATDTLS B
ON A.MENU_NO = B.MENU_NO
INNER JOIN LETTNPROGRMLIST C
ON A.PROGRM_FILE_NM = C.PROGRM_FILE_NM
INNER JOIN (
SELECT A.MENU_NO ,
A.UPPER_MENU_NO ,
C.URL ,
A.MENU_NM,
ROW_NUMBER() OVER (ORDER BY A.MENU_NO) AS RANK
FROM LETTNMENUINFO A
INNER JOIN LETTNMENUCREATDTLS B
ON A.MENU_NO = B.MENU_NO
INNER JOIN LETTNPROGRMLIST C
ON A.PROGRM_FILE_NM = C.PROGRM_FILE_NM
WHERE B.AUTHOR_CODE = #authorCode#
AND A.MENU_NO = #menuNo#
) CTE
ON CTE.UPPER_MENU_NO = A.MENU_NO
WHERE B.AUTHOR_CODE = #authorCode#
)
) CTE
ORDER BY RANK DESC
]]>
</select>
<select id="menuManageDAO.selectMenuListCurrentJtreeWeb_bak" parameterClass="menuManageJTreeVO" resultClass="menuManageJTreeVO" >
/* 임시.*NOT_SQL_LOG.* menuManageDAO.selectMenuListCurrentJtreeWeb_bak */
<![CDATA[
WITH RECURSIVE CTE AS ( SELECT
A.MENU_NO ,
@ -483,6 +670,7 @@
</select>
<select id="menuManageDAO.selectMenuUnderListJtreeWeb" parameterClass="menuManageJTreeVO" resultClass="menuManageJTreeVO" cacheModel="cache-webMainMenu">
/* menuManageDAO.selectMenuUnderListJtreeWeb */
<![CDATA[
SELECT
A.MENU_NO menuNo ,
@ -506,7 +694,120 @@
<!-- <select id="menuManageDAO.selectMenuLeftListJtreeWeb" parameterClass="menuManageJTreeVO" resultClass="menuManageJTreeVO" cacheModel="cache-webMainMenu"> -->
<select id="menuManageDAO.selectMenuLeftListJtreeWeb" parameterClass="menuManageJTreeVO" resultClass="menuManageJTreeVO">
/* 임시.*NOT_SQL_LOG.* */
/* 임시.*NOT_SQL_LOG.* menuManageDAO.selectMenuLeftListJtreeWeb */
<![CDATA[
SELECT MENU_NM menuNm ,
PROGRM_FILE_NM progrmFileNm ,
MENU_NO menuNo ,
UPPER_MENU_NO upperMenuId ,
MENU_ORDR menuOrdr ,
MENU_DC menuDc ,
RELATE_IMAGE_PATH relateImagePath ,
RELATE_IMAGE_NM relateImageNm ,
MENU_USER_TYPE menuUserType ,
USE_YN useYn ,
MENU_TYPE menuType,
DEPTHS depths,
URL
FROM (
SELECT A.MENU_NM ,
A.PROGRM_FILE_NM ,
A.MENU_NO ,
A.UPPER_MENU_NO ,
A.MENU_ORDR ,
A.MENU_DC ,
A.RELATE_IMAGE_PATH ,
A.RELATE_IMAGE_NM ,
A.MENU_USER_TYPE ,
A.USE_YN ,
C.URL ,
A.MENU_TYPE ,
1 AS DEPTHS
FROM LETTNMENUINFO A
INNER JOIN LETTNMENUCREATDTLS B
ON A.MENU_NO = B.MENU_NO
INNER JOIN LETTNPROGRMLIST C
ON A.PROGRM_FILE_NM = C.PROGRM_FILE_NM
WHERE A.UPPER_MENU_NO = 0
AND A.MENU_NO !=0
AND B.AUTHOR_CODE = #authorCode#
AND A.MENU_NO =
( SELECT UPPER_MENU_NO
FROM LETTNMENUINFO
WHERE MENU_NO = #menuNo#
)
UNION ALL
SELECT A.MENU_NM ,
A.PROGRM_FILE_NM ,
A.MENU_NO ,
A.UPPER_MENU_NO ,
A.MENU_ORDR ,
A.MENU_DC ,
A.RELATE_IMAGE_PATH ,
A.RELATE_IMAGE_NM ,
A.MENU_USER_TYPE ,
A.USE_YN ,
C.URL ,
A.MENU_TYPE,
CTE.DEPTHS + 1 AS DEPTHS
FROM LETTNMENUINFO A
INNER JOIN LETTNMENUCREATDTLS B
ON A.MENU_NO = B.MENU_NO
INNER JOIN LETTNPROGRMLIST C
ON A.PROGRM_FILE_NM = C.PROGRM_FILE_NM
INNER JOIN (
SELECT A.MENU_NM ,
A.PROGRM_FILE_NM ,
A.MENU_NO ,
A.UPPER_MENU_NO ,
A.MENU_ORDR ,
A.MENU_DC ,
A.RELATE_IMAGE_PATH ,
A.RELATE_IMAGE_NM ,
A.MENU_USER_TYPE ,
A.USE_YN ,
C.URL ,
A.MENU_TYPE ,
1 AS DEPTHS
FROM LETTNMENUINFO A
INNER JOIN LETTNMENUCREATDTLS B
ON A.MENU_NO = B.MENU_NO
INNER JOIN LETTNPROGRMLIST C
ON A.PROGRM_FILE_NM = C.PROGRM_FILE_NM
WHERE A.UPPER_MENU_NO = 0
AND A.MENU_NO !=0
AND B.AUTHOR_CODE = #authorCode#
AND A.MENU_NO =
( SELECT UPPER_MENU_NO
FROM LETTNMENUINFO
WHERE MENU_NO = #menuNo#
)
)CTE
ON CTE.MENU_NO = A.UPPER_MENU_NO
WHERE B.AUTHOR_CODE = #authorCode#
AND B.USE_YN = 'Y'
) CTE
ORDER BY DEPTHS ASC ,
MENU_ORDR ASC
]]>
</select>
<select id="menuManageDAO.selectMenuLeftListJtreeWeb_bak" parameterClass="menuManageJTreeVO" resultClass="menuManageJTreeVO">
/* 임시.*NOT_SQL_LOG.* menuManageDAO.selectMenuLeftListJtreeWeb_bak */
<![CDATA[
WITH RECURSIVE CTE AS (
SELECT
@ -627,9 +928,9 @@
MENU_ORDR ASC
]]>
</select>
<select id="menuManageDAO.selectQuickListJtree" parameterClass="menuManageJTreeVO" resultClass="menuManageJTreeVO">
/* 임시.*NOT_SQL_LOG.* */
/* 임시.*NOT_SQL_LOG.* menuManageDAO.selectQuickListJtree */
<![CDATA[
SELECT
MENU_NM menuNm ,
@ -662,7 +963,7 @@
<select id="menuManageDAO.selectQuickListIncTop" parameterClass="menuManageJTreeVO" resultClass="menuManageJTreeVO">
/* 임시.*NOT_SQL_LOG.* */
/* 임시.*NOT_SQL_LOG.* menuManageDAO.selectQuickListIncTop */
<![CDATA[
SELECT
MENU_NM menuNm ,
@ -704,6 +1005,7 @@
</insert>
<select id="menuManageDAO.selectMenuManageUrl" parameterClass="MenuManageVO" resultClass="menuManageVO">
/* menuManageDAO.selectMenuManageUrl */
SELECT
A.MENU_NM AS menuNm,
A.PROGRM_FILE_NM,

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="MainMenu">
@ -23,19 +23,19 @@
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<!-- <select id="menuManageDAO.selectMainMenuHead" parameterClass="MenuManageVO" resultClass="egovMap" > -->
<!-- <select id="menuManageDAO.selectMainMenuHead" parameterClass="MenuManageVO" resultClass="egovMap" cacheModel="cache-mainMenu" > -->
<select id="menuManageDAO.selectMainMenuHead" parameterClass="menuManageVO" resultClass="menuManageVO" >
/* 임시.*NOT_SQL_LOG.* */
<select id="menuManageDAO.selectMainMenuHead" parameterClass="MenuManageVO" resultClass="egovMap" >
/* 임시.*NOT_SQL_LOG.* menuManageDAO.selectMainMenuHead */
<![CDATA[
SELECT
B.MENU_NO AS menuNo
, B.MENU_ORDR AS menuOrdr
, B.MENU_NM AS menuNm
, B.UPPER_MENU_NO AS upperMenuId
, B.MENU_DC AS menuDc
, B.RELATE_IMAGE_PATH AS relateImagePath
, B.RELATE_IMAGE_NM AS relateImageNm
, B.PROGRM_FILE_NM AS progrmFileNm
, (SELECT C.URL FROM LETTNPROGRMLIST C WHERE B.PROGRM_FILE_NM = C.PROGRM_FILE_NM) AS chkURL
B.MENU_NO AS "menuNo"
, B.MENU_ORDR AS "menuOrdr"
, B.MENU_NM AS "menuNm"
, B.UPPER_MENU_NO AS "upperMenuId"
, B.MENU_DC AS "menuDc"
, B.RELATE_IMAGE_PATH AS "relateImagePath"
, B.RELATE_IMAGE_NM AS "relateImageNm"
, B.PROGRM_FILE_NM AS "progrmFileNm"
, (SELECT C.URL FROM LETTNPROGRMLIST C WHERE B.PROGRM_FILE_NM = C.PROGRM_FILE_NM) AS "chkURL"
FROM LETTNMENUCREATDTLS A, LETTNMENUINFO B
WHERE B.Menu_NO > 0
AND B.UPPER_MENU_NO = 0
@ -53,17 +53,17 @@
<!-- <select id="menuManageDAO.selectMainMenuLeft" parameterClass="MenuManageVO" resultClass="egovMap" > -->
<!-- <select id="menuManageDAO.selectMainMenuLeft" parameterClass="MenuManageVO" resultClass="egovMap" cacheModel="cache-mainMenu"> -->
<select id="menuManageDAO.selectMainMenuLeft" parameterClass="menuManageVO" resultClass="menuManageVO" >
/* 임시.*NOT_SQL_LOG.* */
<select id="menuManageDAO.selectMainMenuLeft" parameterClass="MenuManageVO" resultClass="egovMap" >
/* 임시.*NOT_SQL_LOG.* menuManageDAO.selectMainMenuLeft */
<![CDATA[
SELECT
B.MENU_NO AS menuNo
, B.MENU_ORDR AS menuOrdr
, B.MENU_NM AS menuNm
, B.UPPER_MENU_NO AS upperMenuId
, B.RELATE_IMAGE_PATH AS relateImagePath
, B.RELATE_IMAGE_NM AS relateImageNm
, (SELECT C.URL FROM LETTNPROGRMLIST C WHERE B.PROGRM_FILE_NM = C.PROGRM_FILE_NM) AS chkURL
B.MENU_NO AS "menuNo"
, B.MENU_ORDR AS "menuOrdr"
, B.MENU_NM AS "menuNm"
, B.UPPER_MENU_NO AS "upperMenuId"
, B.RELATE_IMAGE_PATH AS "relateImagePath"
, B.RELATE_IMAGE_NM AS "relateImageNm"
, (SELECT C.URL FROM LETTNPROGRMLIST C WHERE B.PROGRM_FILE_NM = C.PROGRM_FILE_NM) AS "chkURL"
FROM LETTNMENUCREATDTLS A, LETTNMENUINFO B
WHERE A.MENU_NO = B.MENU_NO
AND A.AUTHOR_CODE = (SELECT AUTHOR_CODE from LETTNEMPLYRSCRTYESTBS
@ -130,7 +130,7 @@
'' AS menuCours
/*getMenuCours(MENU_NO) AS menuCours*/
FROM LETTNMENUINFO
WHERE UPPER_MENU_NO = #menuNo#
WHERE UPPER_MENU_NO = #menuNo#;
]]>
</select>
</sqlMap>

View File

@ -0,0 +1,136 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="MainMenu">
<cacheModel id="cache-mainMenu" type="LRU">
<flushInterval seconds="10" />
<!-- <flushInterval hours="12" />
<flushOnExecute statement="menuManageDAO.insertMenuManage_S"/>
<flushOnExecute statement="menuManageDAO.updateMenuManage_S"/>
<flushOnExecute statement="menuManageDAO.deleteMenuManage_S"/>
<flushOnExecute statement="menuManageDAO.deleteAllMenuList"/>
<flushOnExecute statement="menuManageDAO.updateMenuManageJtree"/>
<flushOnExecute statement="menuManageDAO.updateMenuNmManage"/>
<flushOnExecute statement="menuManageDAO.updateMenuManageJtreeLevelNo"/>
<flushOnExecute statement="menuManageDAO.updateMenuManageJtreeMove"/>
<flushOnExecute statement="menuManageDAO.updateMenuManageJtreeNo"/> -->
<property name="size" value="300"/>
</cacheModel>
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="menuManageVO" type="kcc.let.sym.mnu.mpm.service.MenuManageVO"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<!-- <select id="menuManageDAO.selectMainMenuHead" parameterClass="MenuManageVO" resultClass="egovMap" > -->
<!-- <select id="menuManageDAO.selectMainMenuHead" parameterClass="MenuManageVO" resultClass="egovMap" cacheModel="cache-mainMenu" > -->
<select id="menuManageDAO.selectMainMenuHead" parameterClass="MenuManageVO" resultClass="egovMap" >
/* 임시.*NOT_SQL_LOG.* menuManageDAO.selectMainMenuHead */
<![CDATA[
SELECT
B.MENU_NO AS "menuNo"
, B.MENU_ORDR AS "menuOrdr"
, B.MENU_NM AS "menuNm"
, B.UPPER_MENU_NO AS "upperMenuId"
, B.MENU_DC AS "menuDc"
, B.RELATE_IMAGE_PATH AS "relateImagePath"
, B.RELATE_IMAGE_NM AS "relateImageNm"
, B.PROGRM_FILE_NM AS "progrmFileNm"
, (SELECT C.URL FROM LETTNPROGRMLIST C WHERE B.PROGRM_FILE_NM = C.PROGRM_FILE_NM) AS "chkURL"
FROM LETTNMENUCREATDTLS A, LETTNMENUINFO B
WHERE B.Menu_NO > 0
AND B.UPPER_MENU_NO = 0
AND A.MENU_NO = B.MENU_NO
AND A.AUTHOR_CODE = (SELECT C.AUTHOR_CODE from LETTNEMPLYRSCRTYESTBS C
WHERE C.SCRTY_DTRMN_TRGET_ID = #tmp_UniqId#)
AND A.USE_YN !='N'
]]>
<isNotEmpty property="menuUserType">
AND B.MENU_USER_TYPE = #menuUserType#
</isNotEmpty>
ORDER BY MENU_ORDR
</select>
<!-- <select id="menuManageDAO.selectMainMenuLeft" parameterClass="MenuManageVO" resultClass="egovMap" > -->
<!-- <select id="menuManageDAO.selectMainMenuLeft" parameterClass="MenuManageVO" resultClass="egovMap" cacheModel="cache-mainMenu"> -->
<select id="menuManageDAO.selectMainMenuLeft" parameterClass="MenuManageVO" resultClass="egovMap" >
/* 임시.*NOT_SQL_LOG.* menuManageDAO.selectMainMenuLeft */
<![CDATA[
SELECT
B.MENU_NO AS "menuNo"
, B.MENU_ORDR AS "menuOrdr"
, B.MENU_NM AS "menuNm"
, B.UPPER_MENU_NO AS "upperMenuId"
, B.RELATE_IMAGE_PATH AS "relateImagePath"
, B.RELATE_IMAGE_NM AS "relateImageNm"
, (SELECT C.URL FROM LETTNPROGRMLIST C WHERE B.PROGRM_FILE_NM = C.PROGRM_FILE_NM) AS "chkURL"
FROM LETTNMENUCREATDTLS A, LETTNMENUINFO B
WHERE A.MENU_NO = B.MENU_NO
AND A.AUTHOR_CODE = (SELECT AUTHOR_CODE from LETTNEMPLYRSCRTYESTBS
WHERE SCRTY_DTRMN_TRGET_ID = #tmp_UniqId#)
AND A.USE_YN !='N'
]]>
<isNotEmpty property="menuUserType">
AND B.MENU_USER_TYPE = #menuUserType#
</isNotEmpty>
ORDER BY B.MENU_ORDR
</select>
<select id="menuManageDAO.selectLastMenuURL" parameterClass="MenuManageVO" resultClass="String">
<![CDATA[
SELECT URL
FROM LETTNPROGRMLIST
WHERE PROGRM_FILE_NM =
(SELECT PROGRM_FILE_NM FROM LETTNMENUINFO
WHERE MENU_NO = #menuNo#)
]]>
</select>
<select id="menuManageDAO.selectLastMenuNo" parameterClass="MenuManageVO" resultClass="int">
<![CDATA[
select MIN(MENU_NO)
from LETTNMENUINFO
where UPPER_MENU_NO = #menuNo#
and MENU_ORDR =
(select MIN(MENU_ORDR)
from LETTNMENUCREATDTLS A, LETTNMENUINFO B
where A.MENU_NO = B.MENU_NO
AND A.AUTHOR_CODE = (SELECT AUTHOR_CODE from LETTNEMPLYRSCRTYESTBS
WHERE SCRTY_DTRMN_TRGET_ID = #tempValue#)
AND B.UPPER_MENU_NO = #menuNo#)
]]>
</select>
<select id="menuManageDAO.selectLastMenuNoCnt" parameterClass="MenuManageVO" resultClass="int">
<![CDATA[
select count(MENU_NO)
from LETTNMENUINFO
where UPPER_MENU_NO = #menuNo#
and MENU_ORDR =
(select MIN(MENU_ORDR)
from LETTNMENUCREATDTLS A, LETTNMENUINFO B
where A.MENU_NO = B.MENU_NO
AND A.AUTHOR_CODE = (SELECT AUTHOR_CODE from LETTNEMPLYRSCRTYESTBS
WHERE SCRTY_DTRMN_TRGET_ID = #tempValue#)
AND B.UPPER_MENU_NO = #menuNo#)
]]>
</select>
<select id="menuManageDAO.selectEquiLevelList" parameterClass="String" resultClass="menuManageVO">
<![CDATA[
SELECT MENU_NO as menuNo
FROM LETTNMENUINFO
WHERE MENU_NO like #equiLevel#
]]>
</select>
<select id="menuManageDAO.selectUpperMenuNoByPkList" parameterClass="menuManageVO" resultClass="menuManageVO">
<![CDATA[
SELECT
'' AS menuCours
/*getMenuCours(MENU_NO) AS menuCours*/
FROM LETTNMENUINFO
WHERE UPPER_MENU_NO = #menuNo#;
]]>
</select>
</sqlMap>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="MenuManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
@ -65,7 +65,7 @@
</select>
<select id="menuManageDAO.selectMenuManage_D" parameterClass="menuManageVO" resultClass="menuManageVO">
/* 임시.*NOT_SQL_LOG.* */
/* 임시.*NOT_SQL_LOG.* menuManageDAO.selectMenuManage_D */
SELECT
A.MENU_NO AS menuNo
, MENU_ORDR AS menuOrdr
@ -83,12 +83,11 @@
, B.USE_YN AS useYn
, B.SATIS_YN AS satisYn,
A.EMPLYR_ID AS emplyrId ,
C.USER_NM AS emplyrIdTxt
<!-- ,D.LOC_NM AS locNmTxt -->
C.USER_NM AS emplyrIdTxt ,
(SELECT LOC_NM FROM ITSM_LOC WHERE LOC_NO = C.PART_IDX) AS locNmTxt
FROM LETTNMENUINFO A
LEFT JOIN LETTNMENUCREATDTLS B ON A.MENU_NO= B.MENU_NO
LEFT JOIN LETTNEMPLYRINFO C ON A.EMPLYR_ID = C.EMPLYR_ID
<!-- LEFT JOIN ITSM_LOC D ON D.LOC_NO = C.PART_IDX -->
WHERE 1=1
<isEmpty property="searchCondition"> /* 이전 원래 쿼리 */
AND A.MENU_NO = #searchKeyword#
@ -98,9 +97,15 @@
</isNotEmpty>
<isNotEmpty property="authorCode" > /* 매뉴사용여부 조회 */
AND B.AUTHOR_CODE = #authorCode#
<isEqual property="authorCode" compareValue="ROLE_ANONYMOUS">
AND B.AUTHOR_CODE IN ('ROLE_ANONYMOUS', 'ROLE_USER_MEMBER', 'ROLE_USER_MANAGER')
</isEqual>
<isNotEqual property="authorCode" compareValue="ROLE_ANONYMOUS">
AND B.AUTHOR_CODE IN ('ROLE_ADMIN', 'ROLE_ADR_ADMIN', 'ROLE_VISIT')
</isNotEqual>
</isNotEmpty>
<!-- LIMIT 1 -->
LIMIT 1
</select>
<!-- 만족도 관리를 위한 조회 -->

View File

@ -0,0 +1,329 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="MenuManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="menuManageVO" type="kcc.let.sym.mnu.mpm.service.MenuManageVO"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<select id="menuManageDAO.selectMenuManageList_D" parameterClass="comDefaultVO" resultClass="egovMap">
SELECT
MENU_NO AS menuNo
, MENU_ORDR AS menuOrdr
, MENU_NM AS menuNm
, UPPER_MENU_NO AS upperMenuId
, MENU_DC AS menuDc
, RELATE_IMAGE_PATH AS relateImagePath
, RELATE_IMAGE_NM AS relateImageNm
, PROGRM_FILE_NM AS progrmFileNm
, MENU_USER_TYPE AS menuUserType
, MENU_TYPE AS menuType,
<![CDATA[
IF(MENU_NO < 9900000, "", "") AS MENU_TYPE_NM
]]>
FROM LETTNMENUINFO
WHERE 1=1
<isEqual prepend="AND" property="searchCondition" compareValue="">
( binary(MENU_NM) like CONCAT('%', #searchKeyword#, '%')
OR MENU_NO like CONCAT('%', #searchKeyword#, '%') )
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="A">
binary(MENU_NM) like CONCAT('%', #searchKeyword#, '%')
AND <![CDATA[ MENU_NO < 9900000 ]]>
</isEqual >
<isEqual prepend="AND" property="searchCondition" compareValue="U">
binary(MENU_NM) like CONCAT('%', #searchKeyword#, '%')
AND <![CDATA[ MENU_NO > 9900000 ]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="C">
MENU_NO like CONCAT('%', #searchKeyword#, '%')
</isEqual>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<!-- 총건수 조회 -->
<select id="menuManageDAO.selectMenuManageListTotCnt_S" parameterClass="comDefaultVO" resultClass="int">
SELECT COUNT(MENU_NO) AS totcnt
FROM LETTNMENUINFO
WHERE 1=1
<isEqual prepend="AND" property="searchCondition" compareValue="">
( binary(MENU_NM) like CONCAT('%', #searchKeyword#, '%')
OR MENU_NO like CONCAT('%', #searchKeyword#, '%') )
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="A">
binary(MENU_NM) like CONCAT('%', #searchKeyword#, '%')
AND <![CDATA[ MENU_NO < 9900000 ]]>
</isEqual >
<isEqual prepend="AND" property="searchCondition" compareValue="U">
binary(MENU_NM) like CONCAT('%', #searchKeyword#, '%')
AND <![CDATA[ MENU_NO > 9900000 ]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="C">
MENU_NO like CONCAT('%', #searchKeyword#, '%')
</isEqual>
</select>
<select id="menuManageDAO.selectMenuManage_D" parameterClass="menuManageVO" resultClass="menuManageVO">
/* 임시.*NOT_SQL_LOG.* menuManageDAO.selectMenuManage_D */
SELECT
A.MENU_NO AS menuNo
, MENU_ORDR AS menuOrdr
, MENU_NM AS menuNm
, UPPER_MENU_NO AS upperMenuId
, MENU_DC AS menuDc
, RELATE_IMAGE_PATH AS relateImagePath
, RELATE_IMAGE_NM AS relateImageNm
, PROGRM_FILE_NM AS progrmFileNm
, MENU_USER_TYPE AS menuUserType
, MENU_TYPE AS menuType
, '' AS menuCours
/*, getMenuCours(A.MENU_NO) AS menuCours*/
, B.AUTHOR_CODE AS authorCode
, B.USE_YN AS useYn
, B.SATIS_YN AS satisYn,
A.EMPLYR_ID AS emplyrId ,
C.USER_NM AS emplyrIdTxt ,
(SELECT LOC_NM FROM ITSM_LOC WHERE LOC_NO = C.PART_IDX) AS locNmTxt
FROM LETTNMENUINFO A
LEFT JOIN LETTNMENUCREATDTLS B ON A.MENU_NO= B.MENU_NO
LEFT JOIN LETTNEMPLYRINFO C ON A.EMPLYR_ID = C.EMPLYR_ID
WHERE 1=1
<isEmpty property="searchCondition"> /* 이전 원래 쿼리 */
AND A.MENU_NO = #searchKeyword#
</isEmpty>
<isNotEmpty property="searchCondition"> /* 접속 통계를 위한 추가 쿼리 */
AND A.PROGRM_FILE_NM = #searchKeyword#
</isNotEmpty>
<isNotEmpty property="authorCode" > /* 매뉴사용여부 조회 */
<isEqual property="authorCode" compareValue="ROLE_ANONYMOUS">
AND B.AUTHOR_CODE IN ('ROLE_ANONYMOUS', 'ROLE_USER_MEMBER', 'ROLE_USER_MANAGER')
</isEqual>
<isNotEqual property="authorCode" compareValue="ROLE_ANONYMOUS">
AND B.AUTHOR_CODE IN ('ROLE_ADMIN', 'ROLE_ADR_ADMIN', 'ROLE_VISIT')
</isNotEqual>
</isNotEmpty>
LIMIT 1
</select>
<!-- 만족도 관리를 위한 조회 -->
<select id="menuManageDAO.selectMenuManage_Satis" parameterClass="menuManageVO" resultClass="menuManageVO">
/* 임시.*NOT_SQL_LOG.* */
SELECT
A.MENU_NO AS menuNo
, MENU_ORDR AS menuOrdr
, MENU_NM AS menuNm
, UPPER_MENU_NO AS upperMenuId
, MENU_DC AS menuDc
, RELATE_IMAGE_PATH AS relateImagePath
, RELATE_IMAGE_NM AS relateImageNm
, PROGRM_FILE_NM AS progrmFileNm
, MENU_USER_TYPE AS menuUserType
, MENU_TYPE AS menuType
, '' AS menuCours
/*, getMenuCours(A.MENU_NO) AS menuCours*/
, B.AUTHOR_CODE AS authorCode
, B.USE_YN AS useYn
, B.SATIS_YN AS satisYn
, C.USER_NM AS emplyrIdTxt
, C.EMPLYR_ID AS emplyrId
, (SELECT LOC_NM
FROM ITSM_LOC
WHERE LOC_NO = C.PART_IDX
) AS locNmTxt
, C.OFFM_TELNO as offmTelno
FROM LETTNMENUINFO A LEFT JOIN LETTNMENUCREATDTLS B ON A.MENU_NO= B.MENU_NO
LEFT JOIN LETTNEMPLYRINFO C ON A.EMPLYR_ID = C.EMPLYR_ID
WHERE 1=1
<isEmpty property="searchCondition"> /* 이전 원래 쿼리 */
AND A.MENU_NO = #searchKeyword#
</isEmpty>
<isNotEmpty property="searchCondition"> /* 접속 통계를 위한 추가 쿼리 */
AND A.PROGRM_FILE_NM = #searchKeyword#
</isNotEmpty>
<isNotEmpty property="authorCode" > /* 매뉴사용여부 조회 */
AND B.AUTHOR_CODE = #authorCode#
</isNotEmpty>
LIMIT 1
</select>
<insert id="menuManageDAO.insertMenuManage_S">
<![CDATA[
INSERT INTO LETTNMENUINFO
( MENU_NO
, MENU_ORDR
, MENU_NM
, UPPER_MENU_NO
, MENU_DC
, RELATE_IMAGE_PATH
, RELATE_IMAGE_NM
, PROGRM_FILE_NM
, MENU_TYPE
, MENU_USER_TYPE )
VALUES ( #menuNo#
, #menuOrdr#
, #menuNm#
, #upperMenuId#
, #menuDc#
, #relateImagePath#
, #relateImageNm#
, #progrmFileNm#
, #menuType#
, #menuUserType# )
]]>
</insert>
<update id="menuManageDAO.updateMenuManage_S">
<![CDATA[
UPDATE LETTNMENUINFO
SET MENU_ORDR = #menuOrdr#
, MENU_NM = #menuNm#
, UPPER_MENU_NO = #upperMenuId#
, MENU_DC = #menuDc#
, RELATE_IMAGE_PATH = #relateImagePath#
, RELATE_IMAGE_NM = #relateImageNm#
, PROGRM_FILE_NM = #progrmFileNm#
, MENU_USER_TYPE = #menuUserType#
]]>
WHERE MENU_NO=#menuNo#
</update>
<delete id="menuManageDAO.deleteMenuManage_S">
<![CDATA[
DELETE FROM LETTNMENUINFO
WHERE MENU_NO=#menuNo#
]]>
</delete>
<delete id="menuManageDAO.deleteMenuManageBef" parameterClass="menuManageVO">
DELETE FROM LETTNMENUINFO
WHERE MENU_NO=#tmp_Id#
</delete>
<!-- 메뉴번호 존재여부 조회 -->
<select id="menuManageDAO.selectMenuNoByPk" parameterClass="menuManageVO" resultClass="int">
<![CDATA[
SELECT COUNT(MENU_NO) AS totcnt
FROM LETTNMENUINFO
WHERE MENU_NO = #menuNo#
]]>
</select>
<!-- 상위 메뉴번호 존재여부 조회 -->
<select id="menuManageDAO.selectUpperMenuNoByPk" parameterClass="menuManageVO" resultClass="int">
<![CDATA[
SELECT COUNT(MENU_NO) AS totcnt
FROM LETTNMENUINFO
WHERE UPPER_MENU_NO = #menuNo#
]]>
</select>
<select id="menuManageDAO.selectMenuListT_D" parameterClass="comDefaultVO" resultClass="egovMap">
<![CDATA[
SELECT
MENU_NO AS menuNo
, MENU_ORDR AS menuOrdr
, MENU_NM AS menuNm
, UPPER_MENU_NO AS upperMenuId
, MENU_DC AS menuDc
, RELATE_IMAGE_PATH AS relateImagePath
, RELATE_IMAGE_NM AS relateImageNm
, PROGRM_FILE_NM AS progrmFileNm
FROM LETTNMENUINFO
WHERE Menu_NO > 0
ORDER BY MENU_ORDR
]]>
</select>
<delete id="menuManageDAO.deleteAllMenuList" >
<![CDATA[
DELETE FROM LETTNMENUINFO WHERE MENU_NO <> UPPER_MENU_NO
]]>
</delete>
<!-- 메뉴정보 총건수 조회 -->
<select id="menuManageDAO.selectMenuListTotCnt" parameterClass="menuManageVO" resultClass="int">
<![CDATA[
SELECT COUNT(MENU_NO) AS totcnt
FROM LETTNMENUINFO
]]>
</select>
<update id="menuManageDAO.updateMenuNmManage">
<![CDATA[
UPDATE LETTNMENUINFO
SET MENU_NM = #menuNm#
WHERE MENU_NO=#menuNo#
]]>
</update>
<update id="menuManageDAO.updateMenuManageJtree" parameterClass="menuManageVO" >
UPDATE LETTNMENUINFO
SET MENU_ORDR = #menuOrdr#
, MENU_NM = #menuNm#
, UPPER_MENU_NO = #upperMenuId#
, MENU_DC = #menuDc#
, RELATE_IMAGE_PATH = #relateImagePath#
, RELATE_IMAGE_NM = #relateImageNm#
, PROGRM_FILE_NM = #progrmFileNm#
, MENU_USER_TYPE = #menuUserType#
, MENU_TYPE = #menuType#
<isNotEmpty property="emplyrId">
, EMPLYR_ID = #emplyrId#
</isNotEmpty>
, MENU_NO = #menuNo#
WHERE MENU_NO=#tmp_Id#
</update>
<update id="menuManageDAO.updateMenuManageJtreeNo" parameterClass="menuManageVO" >
<![CDATA[
UPDATE LETTNMENUINFO
SET MENU_ORDR = #menuOrdr#
, UPPER_MENU_NO = #upperMenuId#
, LAST_UPDT_PNTTM = now()
WHERE MENU_NO=#menuNo#
]]>
</update>
<update id="menuManageDAO.resortMenuManage" parameterClass="menuManageVO" >
UPDATE LETTNMENUINFO A ,
( SELECT ROW_NUMBER() OVER(ORDER BY MENU_ORDR, LAST_UPDT_PNTTM
<isEqual property="sortOver" compareValue="D">
DESC
</isEqual>
) AS SORT1 , A.MENU_NO FROM LETTNMENUINFO A LEFT JOIN LETTNMENUCREATDTLS B
ON A.MENU_NO= B.MENU_NO
WHERE A.UPPER_MENU_NO = #upperMenuId#
AND B.AUTHOR_CODE = #authorCode#
ORDER BY MENU_ORDR ASC ) B
SET A.MENU_ORDR = B.SORT1
WHERE A.MENU_NO = B.MENU_NO
</update>
<update id="menuManageDAO.updateMenuManageJtreeLevelNo" parameterClass="menuManageVO" >
<![CDATA[
UPDATE LETTNMENUINFO
SET MENU_ORDR = #menuOrdr#
, UPPER_MENU_NO = #upperMenuId#
, MENU_NO = #menuNo#
, LAST_UPDT_PNTTM = now()
WHERE MENU_NO= #tmp_Id#
]]>
</update>
<update id="menuManageDAO.updateMenuManageJtreeMove" parameterClass="menuManageVO" >
<![CDATA[
UPDATE LETTNMENUINFO
SET MENU_ORDR = #menuOrdr#
, UPPER_MENU_NO = #upperMenuId#
, LAST_UPDT_PNTTM = now()
WHERE MENU_NO= #menuNo#
]]>
</update>
</sqlMap>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="ProgrmManageDtl">

View File

@ -0,0 +1,203 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="ProgrmManageDtl">
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="progrmManageVO" type="kcc.let.sym.prm.service.ProgrmManageVO"/>
<typeAlias alias="progrmManageDtlVO" type="kcc.let.sym.prm.service.ProgrmManageDtlVO"/>
<typeAlias alias="menuManageVO" type="kcc.let.sym.mnu.mpm.service.MenuManageVO"/>
<!-- 프로그램 변경요청 -->
<resultMap id="progrmManageDtlVO" class="kcc.let.sym.prm.service.ProgrmManageDtlVO">
<result property="progrmFileNm" column="PROGRM_FILE_NM" columnIndex="1"/>
<result property="rqesterNo" column="REQUST_NO" columnIndex="2"/>
<result property="rqesterPersonId" column="RQESTER_ID" columnIndex="3"/>
<result property="changerqesterCn" column="CHANGE_REQUST_CN" columnIndex="4"/>
<result property="rqesterProcessCn" column="REQUST_PROCESS_CN" columnIndex="5"/>
<result property="opetrId" column="OPETR_ID" columnIndex="6"/>
<result property="processSttus" column="PROCESS_STTUS_CODE" columnIndex="7"/>
<result property="processDe" column="PROCESS_DE" columnIndex="8"/>
<result property="rqesterDe" column="REQUST_DE" columnIndex="9"/>
<result property="rqesterSj" column="REQUST_SJ" columnIndex="10"/>
</resultMap>
<!-- 프로그램 변경요청 TMP -->
<resultMap id="progrmManageDtl_Temp" class="kcc.let.sym.prm.service.ProgrmManageDtlVO">
<result property="rqesterNo" column="REQUST_NO" columnIndex="1"/>
</resultMap>
<select id="progrmManageDAO.selectProgrmChangeRequstList_D" parameterClass="comDefaultVO" resultClass="egovMap">
<![CDATA[
SELECT
PROGRM_FILE_NM AS progrmFileNm
, REQUST_NO AS rqesterNo
, RQESTER_ID AS rqesterPersonId
, CHANGE_REQUST_CN AS changerqesterCn
, REQUST_PROCESS_CN AS rqesterProcessCn
, OPETR_ID AS opetrId
, PROCESS_STTUS_CODE AS processSttus
, PROCESS_DE AS processDe
, REQUST_DE AS rqesterDe
, REQUST_SJ AS rqesterSj
FROM LETTHPROGRMCHANGEDTLS
WHERE binary(PROGRM_FILE_NM) like CONCAT('%', #searchKeyword#, '%')
LIMIT #recordCountPerPage# OFFSET #firstIndex#
]]>
</select>
<!-- 총건수 조회 -->
<select id="progrmManageDAO.selectProgrmChangeRequstListTotCnt_S" parameterClass="comDefaultVO" resultClass="int">
<![CDATA[
SELECT COUNT(*) AS totcnt
FROM LETTHPROGRMCHANGEDTLS
WHERE binary(PROGRM_FILE_NM) like CONCAT('%', #searchKeyword#, '%')
]]>
</select>
<select id="progrmManageDAO.selectProgrmChangeRequstNo_D" parameterClass="progrmManageDtlVO" resultClass="progrmManageDtlVO">
<![CDATA[
select IFNULL(max(REQUST_NO),0)+1 AS rqesterNo
from LETTHPROGRMCHANGEDTLS
]]>
</select>
<select id="progrmManageDAO.selectProgrmChangeRequst_D" parameterClass="progrmManageDtlVO" resultClass="progrmManageDtlVO">
<![CDATA[
SELECT
PROGRM_FILE_NM AS progrmFileNm
, REQUST_NO AS rqesterNo
, RQESTER_ID AS rqesterPersonId
, CHANGE_REQUST_CN AS changerqesterCn
, REQUST_PROCESS_CN AS rqesterProcessCn
, OPETR_ID AS opetrId
, PROCESS_STTUS_CODE AS processSttus
, PROCESS_DE AS processDe
, REQUST_DE AS rqesterDe
, REQUST_SJ AS rqesterSj
FROM LETTHPROGRMCHANGEDTLS
WHERE PROGRM_FILE_NM=#progrmFileNm#
AND REQUST_NO =#rqesterNo#
]]>
</select>
<insert id="progrmManageDAO.insertProgrmChangeRequst_S">
<![CDATA[
INSERT INTO LETTHPROGRMCHANGEDTLS
( PROGRM_FILE_NM
, REQUST_NO
, RQESTER_ID
, CHANGE_REQUST_CN
, REQUST_DE
, REQUST_SJ
,PROCESS_STTUS_CODE)
VALUES ( #progrmFileNm#
, #rqesterNo#
, #rqesterPersonId#
, #changerqesterCn#
, #rqesterDe#
, #rqesterSj#
, 'A')
]]>
</insert>
<update id="progrmManageDAO.updateProgrmChangeRequst_S">
<![CDATA[
UPDATE LETTHPROGRMCHANGEDTLS
SET RQESTER_ID = #rqesterPersonId#
, CHANGE_REQUST_CN = #changerqesterCn#
, REQUST_DE = #rqesterDe#
, REQUST_SJ = #rqesterSj#
WHERE PROGRM_FILE_NM=#progrmFileNm#
AND REQUST_NO =#rqesterNo#
]]>
</update>
<delete id="progrmManageDAO.deleteProgrmChangeRequst_S">
<![CDATA[
DELETE FROM LETTHPROGRMCHANGEDTLS
WHERE PROGRM_FILE_NM=#progrmFileNm#
AND REQUST_NO =#rqesterNo#
]]>
</delete>
<update id="progrmManageDAO.updateProgrmChangeRequstProcess_S">
<![CDATA[
UPDATE LETTHPROGRMCHANGEDTLS
SET REQUST_PROCESS_CN = #rqesterProcessCn#
, OPETR_ID = #opetrId#
, PROCESS_STTUS_CODE = #processSttus#
, PROCESS_DE = #processDe#
WHERE PROGRM_FILE_NM=#progrmFileNm#
AND REQUST_NO =#rqesterNo#
]]>
</update>
<select id="progrmManageDAO.selectChangeRequstProcessList_D" parameterClass="comDefaultVO" resultClass="egovMap">
<![CDATA[
SELECT
PROGRM_FILE_NM AS progrmFileNm
, REQUST_NO AS rqesterNo
, RQESTER_ID AS rqesterPersonId
, CHANGE_REQUST_CN AS changerqesterCn
, REQUST_PROCESS_CN AS rqesterProcessCn
, OPETR_ID AS opetrId
, PROCESS_STTUS_CODE AS processSttus
, PROCESS_DE AS processDe
, REQUST_DE AS rqesterDe
, REQUST_SJ AS rqesterSj
FROM LETTHPROGRMCHANGEDTLS
WHERE 1=1
]]>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
<![CDATA[ binary(PROCESS_STTUS_CODE) like #searchKeyword# ]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
<![CDATA[ binary(PROCESS_STTUS_CODE) = #searchKeyword# ]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="3">
<![CDATA[ REQUST_DE between #searchKeywordFrom# and #searchKeywordTo# ]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="4">
<![CDATA[ binary(RQESTER_ID) like CONCAT('%', #searchKeyword#, '%') ]]>
</isEqual>
<![CDATA[ ORDER BY REQUST_NO ASC
LIMIT #recordCountPerPage# OFFSET #firstIndex# ]]>
</select>
<!-- 총건수 조회 binary(PROCESS_DE) >= #searchKeywordFrom# and binary(PROCESS_DE) =< #searchKeywordTo# -->
<select id="progrmManageDAO.selectChangeRequstProcessListTotCnt_S" parameterClass="comDefaultVO" resultClass="int">
<![CDATA[
SELECT COUNT(*) AS totcnt
FROM LETTHPROGRMCHANGEDTLS
WHERE 1=1
]]>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
<![CDATA[ binary(PROCESS_STTUS_CODE) like #searchKeyword# ]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
<![CDATA[ binary(PROCESS_STTUS_CODE) = #searchKeyword# ]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="3">
<![CDATA[ REQUST_DE between #searchKeywordFrom# and #searchKeywordTo# ]]>
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="4">
<![CDATA[ binary(RQESTER_ID) like CONCAT('%', #searchKeyword#, '%') ]]>
</isEqual>
</select>
<delete id="progrmManageDAO.deleteAllProgrmDtls">
<![CDATA[
DELETE FROM LETTHPROGRMCHANGEDTLS
]]>
</delete>
<select id="progrmManageDAO.selectRqesterEmail" parameterClass="progrmManageDtlVO" resultClass="progrmManageDtlVO">
<![CDATA[
select user_email AS tmp_Email from COMVNUSERMASTER
where user_id = #rqesterPersonId#
]]>
</select>
</sqlMap>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="ProgrmManage">
@ -118,7 +118,7 @@
</select>
<select id="progrmManageDAO.selectProgrmUrl" parameterClass="comDefaultVO" resultClass="progrmManageVO">
/* 임시.*NOT_SQL_LOG.* */
/* 임시.*NOT_SQL_LOG.* progrmManageDAO.selectProgrmUrl */
SELECT
PROGRM_FILE_NM AS progrmFileNm
, PROGRM_STRE_PATH AS progrmStrePath
@ -131,6 +131,20 @@
WHERE URL = #searchKeyword#
</select>
<select id="progrmManageDAO.selectProgrmUrl4JSP" parameterClass="comDefaultVO" resultClass="progrmManageVO">
/* 임시.*NOT_SQL_LOG.* progrmManageDAO.selectProgrmUrl4JSP */
SELECT
PROGRM_FILE_NM AS progrmFileNm
, PROGRM_STRE_PATH AS progrmStrePath
, PROGRM_KOREAN_NM AS progrmKoreanNm
, PROGRM_DC AS progrmDc
, PROGRM_BBS_ID AS progrmBbsId
, PROGRM_HTML_FILE_ID AS progrmHtmlFileId
, URL AS URL
FROM LETTNPROGRMLIST
WHERE URL like CONCAT(#searchKeyword#,'%')
</select>
<select id="progrmManageDAO.getBbsUrlByNttId" resultClass="string">
<![CDATA[
SELECT

View File

@ -0,0 +1,165 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="ProgrmManage">
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="progrmManageVO" type="kcc.let.sym.prm.service.ProgrmManageVO"/>
<!-- 프로그램목록 관리 -->
<resultMap id="progrmManage" class="kcc.let.sym.prm.service.ProgrmManageVO">
<result property="progrmFileNm" column="progrmFileNm" columnIndex="1"/>
<result property="progrmStrePath" column="progrmStrePath" columnIndex="2"/>
<result property="progrmKoreanNm" column="progrmKoreanNm" columnIndex="3"/>
<result property="progrmDc" column="progrmDc" columnIndex="4"/>
<result property="URL" column="URL" columnIndex="5"/>
</resultMap>
<select id="progrmManageDAO.selectProgrmList_D" parameterClass="comDefaultVO" resultMap="progrmManage">
<![CDATA[
SELECT
PROGRM_FILE_NM AS "progrmFileNm"
, PROGRM_STRE_PATH AS "progrmStrePath"
, PROGRM_KOREAN_NM AS "progrmKoreanNm"
, PROGRM_DC AS "progrmDc"
, URL AS "URL"
FROM LETTNPROGRMLIST
WHERE binary(PROGRM_KOREAN_NM) like CONCAT('%', #searchKeyword#, '%')
LIMIT #recordCountPerPage# OFFSET #firstIndex#
]]>
</select>
<!-- 총건수 조회 -->
<select id="progrmManageDAO.selectProgrmListTotCnt_S" parameterClass="comDefaultVO" resultClass="int">
<![CDATA[
SELECT COUNT(*) AS totcnt
FROM LETTNPROGRMLIST
WHERE binary(PROGRM_KOREAN_NM) like CONCAT('%', #searchKeyword#, '%')
]]>
</select>
<!-- 파일명존재여부 조회 -->
<select id="progrmManageDAO.selectProgrmNMTotCnt" parameterClass="comDefaultVO" resultClass="int">
<![CDATA[
SELECT COUNT(*) AS totcnt
FROM LETTNPROGRMLIST
WHERE PROGRM_FILE_NM = #searchKeyword#
]]>
</select>
<select id="progrmManageDAO.selectProgrm_D" parameterClass="comDefaultVO" resultClass="progrmManageVO">
/* 임시.*NOT_SQL_LOG.* */
<![CDATA[
SELECT
PROGRM_FILE_NM AS progrmFileNm
, PROGRM_STRE_PATH AS progrmStrePath
, PROGRM_KOREAN_NM AS progrmKoreanNm
, PROGRM_DC AS progrmDc
, PROGRM_BBS_ID AS progrmBbsId
, PROGRM_HTML_FILE_ID AS progrmHtmlFileId
, URL AS URL
FROM LETTNPROGRMLIST
WHERE PROGRM_FILE_NM = #searchKeyword#
]]>
</select>
<insert id="progrmManageDAO.insertProgrm_S">
<![CDATA[
INSERT INTO LETTNPROGRMLIST
( PROGRM_FILE_NM
, PROGRM_STRE_PATH
, PROGRM_KOREAN_NM
, PROGRM_DC
, PROGRM_BBS_ID
, PROGRM_HTML_FILE_ID
, URL )
VALUES ( #progrmFileNm#
, #progrmStrePath#
, #progrmKoreanNm#
, #progrmDc#
, #progrmBbsId#
, #progrmHtmlFileId#
, #URL# )
]]>
</insert>
<update id="progrmManageDAO.updateProgrm_S">
<![CDATA[
UPDATE LETTNPROGRMLIST
SET PROGRM_STRE_PATH=#progrmStrePath#
, PROGRM_KOREAN_NM=#progrmKoreanNm#
, PROGRM_DC =#progrmDc#
, PROGRM_BBS_ID =#progrmBbsId#
, PROGRM_HTML_FILE_ID =#progrmHtmlFileId#
, URL =#URL#
WHERE PROGRM_FILE_NM=#progrmFileNm#
]]>
</update>
<delete id="progrmManageDAO.deleteProgrm_S">
<![CDATA[
DELETE FROM LETTNPROGRMLIST
WHERE PROGRM_FILE_NM=#progrmFileNm#
]]>
</delete>
<delete id="progrmManageDAO.deleteAllProgrm">
<![CDATA[
DELETE FROM LETTNPROGRMLIST WHERE PROGRM_FILE_NM <> 'dir'
]]>
</delete>
<!-- 메뉴정보 총건수 조회 -->
<select id="progrmManageDAO.selectProgrmListTotCnt" parameterClass="progrmManageVO" resultClass="int">
<![CDATA[
SELECT COUNT(*) AS totcnt FROM LETTNPROGRMLIST
]]>
</select>
<select id="progrmManageDAO.selectProgrmUrl" parameterClass="comDefaultVO" resultClass="progrmManageVO">
/* 임시.*NOT_SQL_LOG.* progrmManageDAO.selectProgrmUrl */
SELECT
PROGRM_FILE_NM AS progrmFileNm
, PROGRM_STRE_PATH AS progrmStrePath
, PROGRM_KOREAN_NM AS progrmKoreanNm
, PROGRM_DC AS progrmDc
, PROGRM_BBS_ID AS progrmBbsId
, PROGRM_HTML_FILE_ID AS progrmHtmlFileId
, URL AS URL
FROM LETTNPROGRMLIST
WHERE URL = #searchKeyword#
</select>
<select id="progrmManageDAO.selectProgrmUrl4JSP" parameterClass="comDefaultVO" resultClass="progrmManageVO">
/* 임시.*NOT_SQL_LOG.* progrmManageDAO.selectProgrmUrl4JSP */
SELECT
PROGRM_FILE_NM AS progrmFileNm
, PROGRM_STRE_PATH AS progrmStrePath
, PROGRM_KOREAN_NM AS progrmKoreanNm
, PROGRM_DC AS progrmDc
, PROGRM_BBS_ID AS progrmBbsId
, PROGRM_HTML_FILE_ID AS progrmHtmlFileId
, URL AS URL
FROM LETTNPROGRMLIST
WHERE URL like CONCAT(#searchKeyword#,'%')
</select>
<select id="progrmManageDAO.getBbsUrlByNttId" resultClass="string">
<![CDATA[
SELECT
C.URL
FROM LETTNBBSMASTER B
INNER JOIN (
SELECT A.PROGRM_BBS_ID, B.MENU_NO, B.MENU_NM, B.MENU_USER_TYPE, A.URL
FROM LETTNPROGRMLIST A INNER JOIN LETTNMENUINFO B ON A.PROGRM_FILE_NM = B.PROGRM_FILE_NM
AND A.URL != ''
INNER JOIN LETTNMENUCREATDTLS C ON B.MENU_NO = C.MENU_NO
AND C.AUTHOR_CODE = 'ROLE_ANONYMOUS'
AND C.USE_YN = 'Y'
) C ON B.MENU_NO = C.MENU_NO
AND B.BBS_ID = #bbsId#
]]>
</select>
</sqlMap>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="SiteManager">
<cacheModel id="cache-siteManager" type="LRU">
@ -26,12 +26,12 @@
<typeAlias alias="siteIpManagerVO" type = "kcc.let.sym.site.service.SiteIpManagerVO"/>
<select id="siteManagerDAO.selectSiteManagerVO" resultClass="siteManagerVO" cacheModel="cache-siteManager">
/* 임시.*NOT_SQL_LOG.* */
/* 임시.*NOT_SQL_LOG.* siteManagerDAO.selectSiteManagerVO */
SELECT SITE_NM AS siteNm,
FRST_REGISTER_ID AS frstRegisterId,
DATE_FORMAT(FRST_REGIST_PNTTM,'%Y-%m-%d %T') frstRegistPnttm,
TO_CHAR(FRST_REGIST_PNTTM,'YYYY-MM-DD HH24:MI:SS') frstRegistPnttm,
LAST_UPDUSR_ID AS lastUpdusrId,
DATE_FORMAT(LAST_UPDT_PNTTM,'%Y-%m-%d %T') lastUpdtPnttm,
TO_CHAR(LAST_UPDT_PNTTM,'YYYY-MM-DD HH24:MI:SS') lastUpdtPnttm,
A.THEME as theme ,
A.INSP_FLAG as inspFlag ,
A.THEME_SMPL_USE AS themeSmplUse,
@ -82,12 +82,13 @@
</insert>
<select id="siteManagerDAO.selectSiteManagerList" parameterClass="siteManagerVO" resultClass="siteManagerVO">
/* siteManagerDAO.selectSiteManagerList */
SELECT
COUNT(*) OVER() AS sTotCnt,
DATE_FORMAT(A.FRST_REGIST_PNTTM, '%Y-%m-%d') frstRegistPnttm ,
TO_CHAR(A.FRST_REGIST_PNTTM, 'YYYY-MM-DD') frstRegistPnttm ,
A.FRST_REGIST_PNTTM AS sortTempNo,
A.LAST_UPDUSR_ID AS lastUpdusrId,
DATE_FORMAT(A.LAST_UPDT_PNTTM, '%Y-%m-%d') lastUpdtPnttm ,
TO_CHAR(A.LAST_UPDT_PNTTM, 'YYYY-MM-DD') lastUpdtPnttm ,
A.THEME AS theme,
B.CODE_NM AS themeTxt,
A.THEME_SMPL_USE AS themeSmplUse,
@ -157,17 +158,24 @@
SITE_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
</isNotEmpty>
/*
ORDER BY 1=1
*/
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<select id="siteManagerDAO.selectSiteManagerListTotCnt" parameterClass="siteManagerVO" resultClass="int">
/* siteManagerDAO.selectSiteManagerListTotCnt */
SELECT COUNT(*) AS totcnt
FROM SITEMANAGER
WHERE 1 = 1
@ -197,6 +205,7 @@
</update>
<select id="siteManagerDAO.selectSiteIpList" parameterClass="siteIpManagerVO" resultClass="siteIpManagerVO">
/* siteManagerDAO.selectSiteIpList */
SELECT
COM_ID AS comId,
COM_SUBNETMASK AS comSubnetmask,
@ -206,7 +215,7 @@
COM_DESC AS comDesc,
USE_YN AS useYn,
A.FRST_REGISTER_ID AS frstRegisterId,
DATE_FORMAT(A.FRST_REGIST_PNTTM, '%Y-%m-%d %h:%m:%s') frstRegistPnttm ,
TO_CHAR(A.FRST_REGIST_PNTTM, '%Y-%m-%d %h:%m:%s') frstRegistPnttm ,
A.LAST_UPDUSR_ID AS lastUpdusrId,
A.LAST_UPDT_PNTTM AS lastUpdtPnttm,
TEAM AS team,
@ -217,8 +226,8 @@
LAN_NUM AS lanNum,
NTCE_BGNDE AS ntceBgnde,
NTCE_ENDDE AS ntceEndde,
DATE_FORMAT( STR_TO_DATE(A.NTCE_BGNDE, '%Y%m%d %H%i') , '%Y-%m-%d %h:%i' ) ntceBgndeTxt,
DATE_FORMAT( STR_TO_DATE(A.NTCE_ENDDE, '%Y%m%d %H%i') , '%Y-%m-%d %h:%i' ) ntceEnddeTxt
TO_CHAR( STR_TO_DATE(A.NTCE_BGNDE, '%Y%m%d %H%i') , '%Y-%m-%d %h:%i' ) ntceBgndeTxt,
TO_CHAR( STR_TO_DATE(A.NTCE_ENDDE, '%Y%m%d %H%i') , '%Y-%m-%d %h:%i' ) ntceEnddeTxt
FROM SITE_IP_MANAGER A
LEFT JOIN
(SELECT A.CODE_ID , A.CODE_ID_NM FROM LETTCCMMNCODE A, LETTCCMMNCLCODE B
@ -263,6 +272,7 @@
</select>
<select id="siteManagerDAO.selectSiteIpListTotCnt" parameterClass="siteIpManagerVO" resultClass="int">
/* siteManagerDAO.selectSiteIpListTotCnt */
SELECT COUNT(*) AS totcnt
FROM SITE_IP_MANAGER
WHERE 1 = 1
@ -391,6 +401,7 @@
</insert>
<select id="siteManagerDAO.selectSiteIpVO" resultClass="siteIpManagerVO">
/* siteManagerDAO.selectSiteIpVO */
SELECT
COM_ID AS comId,
COM_SUBNETMASK AS comSubnetmask,
@ -421,6 +432,7 @@
</delete>
<select id="siteManagerDAO.selectSiteUseSumCnt" parameterClass="siteIpManagerVO" resultClass="siteIpManagerVO" remapResults="true">
/* siteManagerDAO.selectSiteUseSumCnt */
SELECT
<isEqual property="totalUseSumFlag" compareValue="N">
TEAM ,
@ -439,6 +451,7 @@
</select>
<select id="siteManagerDAO.selectTeamListUseCnt" parameterClass="siteIpManagerVO" resultClass="siteIpManagerVO">
/* siteManagerDAO.selectTeamListUseCnt */
SELECT
B.team as team ,
B.department as department,
@ -481,6 +494,7 @@
</update>
<select id="siteManagerDAO.selectFaviconFileVO" parameterClass="siteManagerVO" resultClass="siteManagerVO">
/* siteManagerDAO.selectFaviconFileVO */
SELECT
A.FRST_REGISTER_ID AS frstRegisterId,
A.FRST_REGIST_PNTTM AS frstRegistPnttm,

View File

@ -0,0 +1,586 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="SiteManager">
<cacheModel id="cache-siteManager" type="LRU">
<flushInterval seconds="10" />
<!-- <flushInterval hours="12" />
<flushOnExecute statement="siteManagerDAO.siteManagerUpdate"/>
<flushOnExecute statement="siteManagerDAO.updateInsp"/>
<flushOnExecute statement="siteManagerDAO.updateFaviconFile"/>
<flushOnExecute statement="siteManagerDAO.updateFaviconYnAjax"/>
<flushOnExecute statement="siteManagerDAO.updateTabTitle"/>
<flushOnExecute statement="siteManagerDAO.updateTabTitleYnAjax"/>
<flushOnExecute statement="siteManagerDAO.updateTabTitleYn"/>
<flushOnExecute statement="siteManagerDAO.insertSiteManager"/>
<flushOnExecute statement="siteManagerDAO.updateJoinAutoAjax"/>
<flushOnExecute statement="siteManagerDAO.updateInfoProtectPassAjax"/>
<flushOnExecute statement="siteManagerDAO.updateInfoProtectMark"/>
<flushOnExecute statement="siteManagerDAO.updateAdminLogKpCd"/>
<flushOnExecute statement="siteManagerDAO.termsYnUpdateAjax"/>
-->
</cacheModel>
<typeAlias alias="egovMap" type = "egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="siteManagerVO" type = "kcc.let.sym.site.service.SiteManagerVO"/>
<typeAlias alias="siteIpManagerVO" type = "kcc.let.sym.site.service.SiteIpManagerVO"/>
<select id="siteManagerDAO.selectSiteManagerVO" resultClass="siteManagerVO" cacheModel="cache-siteManager">
/* 임시.*NOT_SQL_LOG.* siteManagerDAO.selectSiteManagerVO */
SELECT SITE_NM AS siteNm,
FRST_REGISTER_ID AS frstRegisterId,
TO_CHAR(FRST_REGIST_PNTTM,'YYYY-MM-DD HH24:MI:SS') frstRegistPnttm,
LAST_UPDUSR_ID AS lastUpdusrId,
TO_CHAR(LAST_UPDT_PNTTM,'YYYY-MM-DD HH24:MI:SS') lastUpdtPnttm,
A.THEME as theme ,
A.INSP_FLAG as inspFlag ,
A.THEME_SMPL_USE AS themeSmplUse,
A.FAVICON_YN AS faviconYn,
A.FAVICON_FILE_ID AS faviconFileId,
A.TAB_TITLE AS tabTitle,
A.TAB_TITLE_YN AS tabTitleYn,
A.JOIN_AUTO_YN AS joinAutoYn,
A.INFO_PROTECT_PASS AS infoProtectPass,
A.INFO_PROTECT_MARK AS infoProtectMark,
A.TERMS_YN AS termsYn,
A.TERMS_CN AS termsCn,
C.CODE_DC AS sessionTimeCdText
FROM SITEMANAGER A
LEFT JOIN LETTNFILEDETAIL B ON A.FAVICON_FILE_ID = B.ATCH_FILE_ID
LEFT JOIN (
SELECT CODE_NM , CODE , CODE_DC
FROM LETTCCMMNDETAILCODE
WHERE USE_AT = 'Y'
AND CODE_ID = 'ITN014'
) C ON A.SESSION_TIME_CD = C.CODE
</select>
<insert id="siteManagerDAO.insertSiteManager" parameterClass="siteManagerVO" >
INSERT INTO SITEMANAGER(
,SITE_NM
,FRST_REGISTER_ID
,LAST_UPDUSR_ID
<isNotEmpty property="theme">
,THEME
</isNotEmpty>
,FRST_REGIST_PNTTM
<isNotEmpty property="themeSmplUse">
,THEME_SMPL_USE
</isNotEmpty>
)VALUES(
, #siteNm#
, #frstRegisterId#
, #lastUpdusrId#
<isNotEmpty property="theme">
,#theme#
</isNotEmpty>
, now()
<isNotEmpty property="themeSmplUse">
, #themeSmplUse#
</isNotEmpty>
)
</insert>
<select id="siteManagerDAO.selectSiteManagerList" parameterClass="siteManagerVO" resultClass="siteManagerVO">
/* siteManagerDAO.selectSiteManagerList */
SELECT
COUNT(*) OVER() AS sTotCnt,
TO_CHAR(A.FRST_REGIST_PNTTM, 'YYYY-MM-DD') frstRegistPnttm ,
A.FRST_REGIST_PNTTM AS sortTempNo,
A.LAST_UPDUSR_ID AS lastUpdusrId,
TO_CHAR(A.LAST_UPDT_PNTTM, 'YYYY-MM-DD') lastUpdtPnttm ,
A.THEME AS theme,
B.CODE_NM AS themeTxt,
A.THEME_SMPL_USE AS themeSmplUse,
A.INSP_FLAG AS inspFlag,
C.CODE_NM AS themeSmplUseTxt ,
A.FAVICON_YN AS faviconYn,
A.FAVICON_YN AS faviconYnSort,
A.FAVICON_FILE_ID AS faviconFileId,
A.TAB_TITLE AS tabTitle,
A.TAB_TITLE_YN AS tabTitleYn ,
A.TAB_TITLE_YN AS tabTitleYnSort ,
A.INFO_PROTECT_PASS AS infoProtectPass ,
A.INFO_PROTECT_MARK AS infoProtectMark,
A.ID_WITHDRAW_CD AS idWithdrawCd,
E.CODE_NM AS idWithdrawCdTxt ,
A.ADMINLOG_KP_CD as adminlogKpCd,
F.CODE_NM as adminlogKpCdTxt,
A.RECENT_SEARCH_CD as recentSearchCd,
G.CODE_NM as recentSearchCdTxt,
A.TERMS_YN AS termsYn,
A.TERMS_CN AS termsCn,
A.SESSION_TIME_CD AS sessionTimeCd,
H.CODE_NM AS sessionTimeCdText
FROM SITEMANAGER A LEFT JOIN (
SELECT CODE_NM , CODE FROM LETTCCMMNDETAILCODE WHERE USE_AT = 'Y'
AND CODE_ID = 'UNI002' /**테마코드 */
) B ON A.THEME = B.CODE
LEFT JOIN (
SELECT CODE_NM , CODE FROM LETTCCMMNDETAILCODE WHERE USE_AT = 'Y'
AND CODE_ID = 'ITN010' /**사용코드 */
) C ON A.THEME = C.CODE
LEFT JOIN LETTNFILE D ON A.FAVICON_FILE_ID = D.ATCH_FILE_ID
LEFT JOIN (
SELECT CODE_NM , CODE
FROM LETTCCMMNDETAILCODE
WHERE USE_AT = 'Y'
AND CODE_ID = 'ITN011'
)
E ON A.ID_WITHDRAW_CD = E.CODE
LEFT JOIN (
SELECT CODE_NM , CODE
FROM LETTCCMMNDETAILCODE
WHERE USE_AT = 'Y'
AND CODE_ID = 'ITN012'
) F ON A.ADMINLOG_KP_CD = F.CODE
LEFT JOIN (
SELECT CODE_NM , CODE
FROM LETTCCMMNDETAILCODE
WHERE USE_AT = 'Y'
AND CODE_ID = 'ITN013'
) G ON A.RECENT_SEARCH_CD = G.CODE
LEFT JOIN (
SELECT CODE_NM , CODE
FROM LETTCCMMNDETAILCODE
WHERE USE_AT = 'Y'
AND CODE_ID = 'ITN014'
) H ON A.SESSION_TIME_CD = H.CODE
WHERE 1 = 1
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="">
( SITE_ID LIKE CONCAT('%' , #searchKeyword#, '%') OR SITE_NM LIKE CONCAT('%' , #searchKeyword#, '%') )
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
SITE_ID LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
SITE_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
</isNotEmpty>
/*
ORDER BY 1=1
*/
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<select id="siteManagerDAO.selectSiteManagerListTotCnt" parameterClass="siteManagerVO" resultClass="int">
/* siteManagerDAO.selectSiteManagerListTotCnt */
SELECT COUNT(*) AS totcnt
FROM SITEMANAGER
WHERE 1 = 1
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="">
( SITE_ID LIKE CONCAT('%' , #searchKeyword#, '%') OR SITE_NM LIKE CONCAT('%' , #searchKeyword#, '%') )
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
SITE_ID LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
SITE_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
</isNotEmpty>
</select>
<delete id="siteManagerDAO.deleteSiteManager" parameterClass="String" >
DELETE FROM SITEMANAGER WHERE SITE_ID= #id#
</delete>
<update id="siteManagerDAO.siteManagerUpdate" parameterClass="siteManagerVO">
UPDATE SITEMANAGER
SET THEME = #theme#,
LAST_UPDUSR_ID = #frstRegisterId#,
LAST_UPDT_PNTTM = now(),
THEME_SMPL_USE = #themeSmplUse#
</update>
<select id="siteManagerDAO.selectSiteIpList" parameterClass="siteIpManagerVO" resultClass="siteIpManagerVO">
/* siteManagerDAO.selectSiteIpList */
SELECT
COM_ID AS comId,
COM_SUBNETMASK AS comSubnetmask,
COM_GATEWAY AS comGateway,
COM_IP AS comIp,
COM_NAME AS comName,
COM_DESC AS comDesc,
USE_YN AS useYn,
A.FRST_REGISTER_ID AS frstRegisterId,
TO_CHAR(A.FRST_REGIST_PNTTM, '%Y-%m-%d %h:%m:%s') frstRegistPnttm ,
A.LAST_UPDUSR_ID AS lastUpdusrId,
A.LAST_UPDT_PNTTM AS lastUpdtPnttm,
TEAM AS team,
C.CODE_ID_NM AS teamTxt,
DEPARTMENT AS department,
D.CODE_NM AS departmentTxt,
GRADE AS grade,
LAN_NUM AS lanNum,
NTCE_BGNDE AS ntceBgnde,
NTCE_ENDDE AS ntceEndde,
TO_CHAR( STR_TO_DATE(A.NTCE_BGNDE, '%Y%m%d %H%i') , '%Y-%m-%d %h:%i' ) ntceBgndeTxt,
TO_CHAR( STR_TO_DATE(A.NTCE_ENDDE, '%Y%m%d %H%i') , '%Y-%m-%d %h:%i' ) ntceEnddeTxt
FROM SITE_IP_MANAGER A
LEFT JOIN
(SELECT A.CODE_ID , A.CODE_ID_NM FROM LETTCCMMNCODE A, LETTCCMMNCLCODE B
WHERE A.CL_CODE = B.CL_CODE
AND A.CL_CODE = 'CMS'
AND A.USE_AT = 'Y'
) C ON A.TEAM = C.CODE_ID
LEFT JOIN
(SELECT CODE, CODE_NM FROM LETTCCMMNDETAILCODE
WHERE USE_AT = 'Y'
AND CODE_ID = 'ITN009'
) D ON A.GRADE = D.CODE
WHERE 1 = 1
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="">
( COM_NAME LIKE CONCAT('%' , #searchKeyword#, '%') OR COM_IP LIKE CONCAT('%' , #searchKeyword#, '%') )
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
COM_NAME LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
COM_IP LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
</isNotEmpty>
<isNotEmpty property="searchConditionUse">
AND A.USE_YN = #searchConditionUse#
</isNotEmpty>
<isNotEmpty property="chgFlag"> <!-- 히스토리 데이터 제외 -->
AND CHG_FLAG= #chgFlag#
</isNotEmpty>
<isNotEmpty property="comId">
AND COM_ID= #comId#
</isNotEmpty>
ORDER BY 1=1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<select id="siteManagerDAO.selectSiteIpListTotCnt" parameterClass="siteIpManagerVO" resultClass="int">
/* siteManagerDAO.selectSiteIpListTotCnt */
SELECT COUNT(*) AS totcnt
FROM SITE_IP_MANAGER
WHERE 1 = 1
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="">
( COM_NAME LIKE CONCAT('%' , #searchKeyword#, '%') OR COM_IP LIKE CONCAT('%' , #searchKeyword#, '%') )
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
COM_NAME LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
COM_IP LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
</isNotEmpty>
<isNotEmpty property="searchConditionSite">
AND SITE_ID = #searchConditionSite#
</isNotEmpty>
<isNotEmpty property="searchConditionUse">
AND USE_YN = #searchConditionUse#
</isNotEmpty>
<isNotEmpty property="chgFlag"> <!-- 히스토리 데이터 제외 -->
AND CHG_FLAG= #chgFlag#
</isNotEmpty>
<isNotEmpty property="comId">
AND COM_ID= #comId#
</isNotEmpty>
</select>
<update id="siteManagerDAO.updateSiteIp" parameterClass="siteIpManagerVO">
UPDATE SITE_IP_MANAGER
SET COM_SUBNETMASK = #comSubnetmask#,
COM_GATEWAY = #comGateway#,
COM_IP = #comIp#,
COM_NAME = #comName#,
COM_DESC = #comDesc#,
USE_YN = #useYn#,
LAST_UPDUSR_ID = #lastUpdusrId#,
TEAM = #team#,
DEPARTMENT = #department#,
GRADE = #grade#,
LAN_NUM = #lanNum#,
NTCE_BGNDE = #ntceBgnde#,
NTCE_ENDDE = #ntceEndde#,
LAST_UPDT_PNTTM = now()
WHERE COM_ID = #comId#
AND CHG_FLAG = 'N'
</update>
<insert id="siteManagerDAO.insertSiteIpChg" parameterClass="siteIpManagerVO" >
INSERT INTO SITE_IP_MANAGER
(COM_ID,
COM_SUBNETMASK,
COM_GATEWAY,
COM_IP,
COM_NAME,
COM_DESC,
USE_YN,
FRST_REGISTER_ID,
FRST_REGIST_PNTTM,
LAST_UPDUSR_ID,
LAST_UPDT_PNTTM,
TEAM,
DEPARTMENT,
GRADE,
LAN_NUM,
NTCE_BGNDE,
NTCE_ENDDE,
CHG_FLAG
)
SELECT
COM_ID,
COM_SUBNETMASK,
COM_GATEWAY,
COM_IP,
COM_NAME,
COM_DESC,
USE_YN,
FRST_REGISTER_ID,
now(),
LAST_UPDUSR_ID,
LAST_UPDT_PNTTM,
TEAM,
DEPARTMENT,
GRADE,
LAN_NUM,
NTCE_BGNDE,
NTCE_ENDDE,
'Y'
FROM SITE_IP_MANAGER WHERE COM_ID = #comId#
AND CHG_FLAG = 'N'
</insert>
<insert id="siteManagerDAO.insertSiteIp" parameterClass="siteIpManagerVO" >
INSERT INTO SITE_IP_MANAGER(
COM_ID,
COM_SUBNETMASK,
COM_GATEWAY,
COM_IP,
COM_NAME,
COM_DESC,
USE_YN,
FRST_REGISTER_ID,
TEAM,
DEPARTMENT,
GRADE,
LAN_NUM,
NTCE_BGNDE,
NTCE_ENDDE
)VALUES(
#comId#,
#comSubnetmask#,
#comGateway#,
#comIp#,
#comName#,
#comDesc#,
#useYn#,
#frstRegisterId#,
#team#,
#department#,
#grade#,
#lanNum#,
#ntceBgnde#,
#ntceEndde#
)
</insert>
<select id="siteManagerDAO.selectSiteIpVO" resultClass="siteIpManagerVO">
/* siteManagerDAO.selectSiteIpVO */
SELECT
COM_ID AS comId,
COM_SUBNETMASK AS comSubnetmask,
COM_GATEWAY AS comGateway,
COM_IP AS comIp,
COM_NAME AS comName,
COM_DESC AS comDesc,
USE_YN AS useYn,
FRST_REGISTER_ID AS frstRegisterId,
FRST_REGIST_PNTTM AS frstRegistPnttm,
LAST_UPDUSR_ID AS lastUpdusrId,
LAST_UPDT_PNTTM AS lastUpdtPnttm,
TEAM AS team,
DEPARTMENT AS department,
GRADE AS grade,
LAN_NUM AS lanNum,
NTCE_BGNDE AS ntceBgnde,
NTCE_ENDDE AS ntceEndde,
CHG_FLAG AS chgFlag
FROM SITE_IP_MANAGER
WHERE 1 = 1
AND COM_ID= #comId#
AND CHG_FLAG = 'N'
</select>
<delete id="siteManagerDAO.deleteSiteIp" parameterClass="String" >
DELETE FROM SITE_IP_MANAGER WHERE COM_ID= #comId#
</delete>
<select id="siteManagerDAO.selectSiteUseSumCnt" parameterClass="siteIpManagerVO" resultClass="siteIpManagerVO" remapResults="true">
/* siteManagerDAO.selectSiteUseSumCnt */
SELECT
<isEqual property="totalUseSumFlag" compareValue="N">
TEAM ,
DEPARTMENT ,
</isEqual>
USE_YN as useYn,
COUNT(USE_YN) as useSumCnt
FROM SITE_IP_MANAGER
WHERE CHG_FLAG = 'N'
GROUP BY
<isEqual property="totalUseSumFlag" compareValue="N">
TEAM, DEPARTMENT,
</isEqual>
USE_YN
ORDER BY USE_YN DESC
</select>
<select id="siteManagerDAO.selectTeamListUseCnt" parameterClass="siteIpManagerVO" resultClass="siteIpManagerVO">
/* siteManagerDAO.selectTeamListUseCnt */
SELECT
B.team as team ,
B.department as department,
USE_YN as useYn,
USESUMCNT as useSumCnt
FROM
(
SELECT
USE_YN,
TEAM,
DEPARTMENT,
COUNT(USE_YN) as USESUMCNT
FROM SITE_IP_MANAGER
WHERE CHG_FLAG = 'N'
GROUP BY USE_YN , TEAM , DEPARTMENT
) A
RIGHT JOIN
(
SELECT
A.CODE_ID TEAM ,
A.CODE DEPARTMENT
FROM
LETTCCMMNDETAILCODE A ,
LETTCCMMNCODE B ,
LETTCCMMNCLCODE C
WHERE
B.USE_AT = 'Y'
AND C.CL_CODE = B.CL_CODE
AND A.CODE_ID = B.CODE_ID
AND C.CL_CODE = 'CMS'
) B
ON A.TEAM = B.TEAM
AND A.DEPARTMENT = B.DEPARTMENT
</select>
<update id="siteManagerDAO.updateInsp" parameterClass="siteManagerVO">
UPDATE SITEMANAGER
SET INSP_FLAG = #inspFlag#
</update>
<select id="siteManagerDAO.selectFaviconFileVO" parameterClass="siteManagerVO" resultClass="siteManagerVO">
/* siteManagerDAO.selectFaviconFileVO */
SELECT
A.FRST_REGISTER_ID AS frstRegisterId,
A.FRST_REGIST_PNTTM AS frstRegistPnttm,
A.LAST_UPDUSR_ID AS lastUpdusrId,
A.LAST_UPDT_PNTTM AS lastUpdtPnttm,
FAVICON_YN AS faviconYn,
FAVICON_FILE_ID AS faviconFileId,
CONCAT( B.FILE_STRE_COURS, B.STRE_FILE_NM) as whFile
/**
LOWER(B.FILE_EXTSN) AS fileExtsn,
B.ORIGNL_FILE_NM AS orignlFileNm */
FROM SITEMANAGER A LEFT JOIN LETTNFILEDETAIL B
ON A.FAVICON_FILE_ID = B.ATCH_FILE_ID
</select>
<update id="siteManagerDAO.updateFaviconFile" parameterClass="siteManagerVO">
UPDATE SITEMANAGER
SET FAVICON_FILE_ID = #faviconFileId#,
FAVICON_YN = #faviconYn#
</update>
<update id="siteManagerDAO.updateFaviconYnAjax" parameterClass="siteManagerVO">
UPDATE SITEMANAGER
SET FAVICON_YN = #faviconYn#
</update>
<update id="siteManagerDAO.updateTabTitle" parameterClass="siteManagerVO">
UPDATE SITEMANAGER
SET TAB_TITLE = #tabTitle#
</update>
<update id="siteManagerDAO.updateTabTitleYnAjax" parameterClass="siteManagerVO">
UPDATE SITEMANAGER
SET TAB_TITLE_YN = #tabTitleYn#
</update>
<update id="siteManagerDAO.updateTabTitleYn" parameterClass="siteManagerVO">
UPDATE SITEMANAGER
SET TAB_TITLE_YN = #tabTitleYn#,
TAB_TITLE = #tabTitle#
</update>
<update id="siteManagerDAO.updateJoinAutoAjax" parameterClass="siteManagerVO">
UPDATE SITEMANAGER
SET JOIN_AUTO_YN = #joinAutoYn#
</update>
<update id="siteManagerDAO.updateInfoProtectPassAjax" parameterClass="siteManagerVO">
UPDATE SITEMANAGER
SET INFO_PROTECT_PASS = #infoProtectPass#
</update>
<update id="siteManagerDAO.updateInfoProtectMark" parameterClass="siteManagerVO">
UPDATE SITEMANAGER
SET INFO_PROTECT_MARK = #infoProtectMark#
</update>
<update id="siteManagerDAO.updateWithdrawCd" parameterClass="siteManagerVO">
UPDATE SITEMANAGER
SET ID_WITHDRAW_CD = #idWithdrawCd#
</update>
<update id="siteManagerDAO.updateAdminLogKpCd" parameterClass="siteManagerVO">
UPDATE SITEMANAGER
SET ADMINLOG_KP_CD = #adminlogKpCd#
</update>
<update id="siteManagerDAO.updateRecentSearchCd" parameterClass="siteManagerVO">
UPDATE SITEMANAGER
SET RECENT_SEARCH_CD = #recentSearchCd#
</update>
<update id="siteManagerDAO.updateTermsYnAjax" parameterClass="siteManagerVO">
UPDATE SITEMANAGER
SET TERMS_YN = #termsYn#
</update>
<update id="siteManagerDAO.updateTerms" parameterClass="siteManagerVO">
UPDATE SITEMANAGER
SET TERMS_CN = #termsCn#
</update>
<update id="siteManagerDAO.updateSessionTimeCd" parameterClass="siteManagerVO">
UPDATE SITEMANAGER
SET SESSION_TIME_CD = #sessionTimeCd#
</update>
</sqlMap>

View File

@ -0,0 +1,310 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="LoginPolicy">
<typeAlias alias="LoginPolicy" type="kcc.let.uat.uap.service.LoginPolicy"/>
<typeAlias alias="LoginPolicyVO" type="kcc.let.uat.uap.service.LoginPolicyVO"/>
<resultMap id="loginPolicy" class="kcc.let.uat.uap.service.LoginPolicyVO">
<result property="emplyrId" column="USER_ID" columnIndex="1"/>
<result property="emplyrNm" column="USER_NM" columnIndex="2"/>
<result property="emplyrSe" column="USER_SE" columnIndex="3"/>
<result property="ipInfo" column="IP_INFO" columnIndex="4"/>
<result property="dplctPermAt" column="DPLCT_PERM_AT" columnIndex="5"/>
<result property="lmttAt" column="LMTT_AT" columnIndex="6"/>
<result property="userId" column="LAST_UPDUSR_ID" columnIndex="7"/>
<result property="regDate" column="LAST_UPDT_PNTTM" columnIndex="8"/>
<result property="regYn" column="REG_YN" columnIndex="9"/>
</resultMap>
<!-- <select id="loginPolicyDAO.selectLoginPolicyList" parameterClass="LoginPolicyVO" resultMap="loginPolicy">
SELECT A.USER_ID,
A.USER_NM,
A.USER_SE,
B.IP_INFO,
B.DPLCT_PERM_AT,
B.LMTT_AT,
B.LAST_UPDUSR_ID,
B.LAST_UPDT_PNTTM,
IF(B.EMPLYR_ID IS NULL, 'N', 'Y') AS REG_YN
FROM COMVNUSERMASTER A LEFT OUTER JOIN LETTNLOGINPOLICY B
ON A.USER_ID = B.EMPLYR_ID
WHERE 1 = 1
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="1">
A.USER_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
</isNotEmpty>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select> -->
<!-- 관리자만 조회 -->
<select id="loginPolicyDAO.selectLoginPolicyList" parameterClass="LoginPolicyVO" resultMap="loginPolicy">
SELECT A.EMPLYR_ID AS USER_ID,
A.USER_NM,
'GNR' AS USER_SE,
B.IP_INFO,
B.DPLCT_PERM_AT,
B.LMTT_AT,
B.LAST_UPDUSR_ID,
B.LAST_UPDT_PNTTM,
IF(B.EMPLYR_ID IS NULL, 'N', 'Y') AS REG_YN
FROM lettnemplyrinfo A LEFT OUTER JOIN LETTNLOGINPOLICY B
ON A.EMPLYR_ID = B.EMPLYR_ID
WHERE 1 = 1
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="1">
A.USER_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
</isNotEmpty>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<select id="loginPolicyDAO.selectLoginPolicyListTotCnt" parameterClass="LoginPolicyVO" resultClass="int">
SELECT COUNT(*) AS totcnt
FROM lettnemplyrinfo A LEFT OUTER JOIN LETTNLOGINPOLICY B
ON A.EMPLYR_ID = B.EMPLYR_ID
WHERE 1 = 1
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="1">
A.USER_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
</isNotEmpty>
</select>
<select id="loginPolicyDAO.selectLoginPolicy" resultMap="loginPolicy">
SELECT A.USER_ID,
A.USER_NM,
A.USER_SE,
B.IP_INFO,
B.DPLCT_PERM_AT,
IF(B.LMTT_AT IS NULL, 'N', B.LMTT_AT) AS LMTT_AT,
B.LAST_UPDUSR_ID,
B.LAST_UPDT_PNTTM,
IF(B.EMPLYR_ID IS NULL, 'N', 'Y') AS REG_YN
FROM COMVNUSERMASTER A LEFT OUTER JOIN LETTNLOGINPOLICY B
ON A.USER_ID = B.EMPLYR_ID
WHERE 1 = 1
AND A.USER_ID = #emplyrId#
</select>
<select id="loginPolicyDAO.selectLoginIPPolicy" parameterClass="String" resultClass="int">
SELECT COUNT(IP_INFO)
FROM LETTNLOGINGROUPPOLICY
WHERE IP_INFO LIKE CONCAT('%' , #checkIp#, '%')
</select>
<insert id="loginPolicyDAO.insertLoginPolicy" parameterClass="LoginPolicy">
<![CDATA[
INSERT INTO LETTNLOGINPOLICY
(EMPLYR_ID
,IP_INFO
,DPLCT_PERM_AT
,LMTT_AT
,FRST_REGISTER_ID
,FRST_REGIST_PNTTM
,LAST_UPDUSR_ID
,LAST_UPDT_PNTTM)
VALUES (#emplyrId#
,#ipInfo#
,#dplctPermAt#
,#lmttAt#
,#userId#
,SYSDATE
,#userId#
,SYSDATE)
]]>
</insert>
<update id="loginPolicyDAO.updateLoginPolicy" parameterClass="LoginPolicy">
<![CDATA[
UPDATE LETTNLOGINPOLICY
SET IP_INFO = #ipInfo#
,DPLCT_PERM_AT = #dplctPermAt#
,LMTT_AT = #lmttAt#
,LAST_UPDUSR_ID = #userId#
,LAST_UPDT_PNTTM = SYSDATE
WHERE EMPLYR_ID = #emplyrId#
]]>
</update>
<delete id="loginPolicyDAO.deleteLoginPolicy">
<![CDATA[
DELETE FROM LETTNLOGINPOLICY
WHERE EMPLYR_ID = #emplyrId#
]]>
</delete>
<insert id="loginPolicyDAO.insertAdminLoginIp" parameterClass="LoginPolicy" >
<![CDATA[
INSERT INTO ADMIN_ACCESS_IP
(ACCESS_IP
,EMPLYR_ID)
VALUES (#ipInfo#
,#emplyrId# )
ON DUPLICATE KEY UPDATE ACCESS_IP = #ipInfo#,
EMPLYR_ID = #emplyrId#
]]>
</insert>
<select id="loginPolicyDAO.selectAdminLoginIpList" parameterClass="LoginPolicyVO" resultClass="LoginPolicyVO">
/* loginPolicyDAO.selectAdminLoginIpList */
SELECT ACCESS_IP ipInfo , EMPLYR_ID emplyrId
/*
, DATE_FORMAT(REGDT , '%Y-%m-%d') regDate
*/
, TO_CHAR(REGDT , 'YYYY-MM-DD') regDate
FROM ADMIN_ACCESS_IP A ORDER BY ACCESS_IP ASC
</select>
<select id="loginPolicyDAO.selectLoginGroupPolicy" parameterClass="LoginPolicyVO" resultClass="LoginPolicyVO">
/* loginPolicyDAO.selectLoginGroupPolicy */
SELECT
IP_GROUP_ID ipGroupId,
IP_INFO ipInfo,
IP_DC ipDc,
FRST_REGISTER_ID frstRegisterId,
/*
DATE_FORMAT(FRST_REGIST_PNTTM, '%Y-%m-%d %H:%i:%S') frstRegistPnttm,
*/
TO_CHAR(FRST_REGIST_PNTTM, 'YYYY-MM-DD HH24:MI:SS') frstRegistPnttm,
LAST_UPDUSR_ID lastUpdusrId,
/*
DATE_FORMAT(LAST_UPDT_PNTTM, '%Y-%m-%d %H:%i:%S') lastUpdtPnttm
*/
TO_CHAR(LAST_UPDT_PNTTM, 'YYYY-MM-DD HH24:MI:SS') lastUpdtPnttm
FROM LETTNLOGINGROUPPOLICY
WHERE 1 = 1
<isNotEmpty property="ipGroupId">
AND IP_GROUP_ID = #ipGroupId#
</isNotEmpty>
<isNotEmpty property="ipInfo">
AND IP_INFO = #ipInfo#
</isNotEmpty>
LIMIT 1
</select>
<select id="loginPolicyDAO.selectLoginGroupPolicyList" parameterClass="LoginPolicyVO" resultClass="LoginPolicyVO" >
/* loginPolicyDAO.selectLoginGroupPolicyList */
SELECT
IP_GROUP_ID ipGroupId,
IP_INFO ipInfo,
IP_DC ipDc,
A.FRST_REGISTER_ID frstRegisterId,
/*
DATE_FORMAT(A.FRST_REGIST_PNTTM, '%Y-%m-%d %H:%i:%S') frstRegistPnttm,
*/
TO_CHAR(A.FRST_REGIST_PNTTM, 'YYYY-MM-DD HH24:MI:SS') frstRegistPnttm,
A.LAST_UPDUSR_ID lastUpdusrId,
/*
DATE_FORMAT(A.LAST_UPDT_PNTTM, '%Y-%m-%d %H:%i:%S') lastUpdtPnttm
*/
TO_CHAR(A.LAST_UPDT_PNTTM, 'YYYY-MM-DD HH24:MI:SS') lastUpdtPnttm
FROM LETTNLOGINGROUPPOLICY A
WHERE 1 = 1
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="">
( IP_INFO LIKE CONCAT('%' , #searchKeyword#, '%') OR IP_DC LIKE CONCAT('%' , #searchKeyword#, '%') )
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
IP_DC LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
IP_INFO LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
</isNotEmpty>
/*
ORDER BY 1=1
*/
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<select id="loginPolicyDAO.selectLoginGroupPolicyAll" parameterClass="LoginPolicyVO" resultClass="LoginPolicyVO" >
SELECT
IP_GROUP_ID ipGroupId,
IP_INFO ipInfo,
IP_DC ipDc,
FRST_REGISTER_ID frstRegisterId,
/*
DATE_FORMAT(FRST_REGIST_PNTTM, '%Y-%m-%d %H:%i:%S') frstRegistPnttm,
*/
TO_CHAR(FRST_REGIST_PNTTM, 'YYYY-MM-DD HH24:MI:SS') frstRegistPnttm,
LAST_UPDUSR_ID lastUpdusrId,
/*
DATE_FORMAT(LAST_UPDT_PNTTM, '%Y-%m-%d %H:%i:%S') lastUpdtPnttm
*/
TO_CHAR(LAST_UPDT_PNTTM, 'YYYY-MM-DD HH24:MI:SS') lastUpdtPnttm
FROM LETTNLOGINGROUPPOLICY
WHERE 1 = 1
</select>
<select id="loginPolicyDAO.selectLoginGroupPolicyListTotCnt" parameterClass="LoginPolicyVO" resultClass="int">
SELECT COUNT(*) AS totcnt
FROM LETTNLOGINGROUPPOLICY
WHERE 1 = 1
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="">
( IP_INFO LIKE CONCAT('%' , #searchKeyword#, '%') OR IP_DC LIKE CONCAT('%' , #searchKeyword#, '%') )
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
IP_DC LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
IP_INFO LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
</isNotEmpty>
<isNotEmpty property="searchConditionSite">
AND SITE_ID = #searchConditionSite#
</isNotEmpty>
</select>
<insert id="loginPolicyDAO.insertLoginGroupPolicy" parameterClass="LoginPolicyVO" >
INSERT INTO LETTNLOGINGROUPPOLICY(
IP_GROUP_ID
,IP_INFO
,IP_DC
,FRST_REGISTER_ID
,FRST_REGIST_PNTTM
)VALUES(
#ipGroupId#
,#ipInfo#
, #ipDc#
, #frstRegisterId#
, SYSDATE
)
</insert>
<delete id="loginPolicyDAO.deleteGroupPolicy" parameterClass="String">
<![CDATA[
DELETE FROM LETTNLOGINGROUPPOLICY
WHERE IP_GROUP_ID = #ipGroupId#
]]>
</delete>
<update id="loginPolicyDAO.updateLoginGroupPolicy" parameterClass="LoginPolicyVO">
UPDATE LETTNLOGINGROUPPOLICY
SET IP_INFO = #ipInfo#
,IP_DC = #ipDc#
,LAST_UPDUSR_ID = #lastUpdusrId#
,LAST_UPDT_PNTTM = SYSDATE
WHERE IP_GROUP_ID = #ipGroupId#
</update>
<select id="loginPolicyDAO.selectLoginGroupPolicyAllIP" parameterClass="LoginPolicyVO" resultClass="LoginPolicyVO">
SELECT IP_INFO ipInfo FROM LETTNLOGINGROUPPOLICY
WHERE IP_INFO IS NOT NULL AND trim(IP_INFO) != ''
</select>
</sqlMap>

View File

@ -0,0 +1,310 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="LoginPolicy">
<typeAlias alias="LoginPolicy" type="kcc.let.uat.uap.service.LoginPolicy"/>
<typeAlias alias="LoginPolicyVO" type="kcc.let.uat.uap.service.LoginPolicyVO"/>
<resultMap id="loginPolicy" class="kcc.let.uat.uap.service.LoginPolicyVO">
<result property="emplyrId" column="USER_ID" columnIndex="1"/>
<result property="emplyrNm" column="USER_NM" columnIndex="2"/>
<result property="emplyrSe" column="USER_SE" columnIndex="3"/>
<result property="ipInfo" column="IP_INFO" columnIndex="4"/>
<result property="dplctPermAt" column="DPLCT_PERM_AT" columnIndex="5"/>
<result property="lmttAt" column="LMTT_AT" columnIndex="6"/>
<result property="userId" column="LAST_UPDUSR_ID" columnIndex="7"/>
<result property="regDate" column="LAST_UPDT_PNTTM" columnIndex="8"/>
<result property="regYn" column="REG_YN" columnIndex="9"/>
</resultMap>
<!-- <select id="loginPolicyDAO.selectLoginPolicyList" parameterClass="LoginPolicyVO" resultMap="loginPolicy">
SELECT A.USER_ID,
A.USER_NM,
A.USER_SE,
B.IP_INFO,
B.DPLCT_PERM_AT,
B.LMTT_AT,
B.LAST_UPDUSR_ID,
B.LAST_UPDT_PNTTM,
IF(B.EMPLYR_ID IS NULL, 'N', 'Y') AS REG_YN
FROM COMVNUSERMASTER A LEFT OUTER JOIN LETTNLOGINPOLICY B
ON A.USER_ID = B.EMPLYR_ID
WHERE 1 = 1
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="1">
A.USER_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
</isNotEmpty>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select> -->
<!-- 관리자만 조회 -->
<select id="loginPolicyDAO.selectLoginPolicyList" parameterClass="LoginPolicyVO" resultMap="loginPolicy">
SELECT A.EMPLYR_ID AS USER_ID,
A.USER_NM,
'GNR' AS USER_SE,
B.IP_INFO,
B.DPLCT_PERM_AT,
B.LMTT_AT,
B.LAST_UPDUSR_ID,
B.LAST_UPDT_PNTTM,
IF(B.EMPLYR_ID IS NULL, 'N', 'Y') AS REG_YN
FROM lettnemplyrinfo A LEFT OUTER JOIN LETTNLOGINPOLICY B
ON A.EMPLYR_ID = B.EMPLYR_ID
WHERE 1 = 1
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="1">
A.USER_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
</isNotEmpty>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<select id="loginPolicyDAO.selectLoginPolicyListTotCnt" parameterClass="LoginPolicyVO" resultClass="int">
SELECT COUNT(*) AS totcnt
FROM lettnemplyrinfo A LEFT OUTER JOIN LETTNLOGINPOLICY B
ON A.EMPLYR_ID = B.EMPLYR_ID
WHERE 1 = 1
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="1">
A.USER_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
</isNotEmpty>
</select>
<select id="loginPolicyDAO.selectLoginPolicy" resultMap="loginPolicy">
SELECT A.USER_ID,
A.USER_NM,
A.USER_SE,
B.IP_INFO,
B.DPLCT_PERM_AT,
IF(B.LMTT_AT IS NULL, 'N', B.LMTT_AT) AS LMTT_AT,
B.LAST_UPDUSR_ID,
B.LAST_UPDT_PNTTM,
IF(B.EMPLYR_ID IS NULL, 'N', 'Y') AS REG_YN
FROM COMVNUSERMASTER A LEFT OUTER JOIN LETTNLOGINPOLICY B
ON A.USER_ID = B.EMPLYR_ID
WHERE 1 = 1
AND A.USER_ID = #emplyrId#
</select>
<select id="loginPolicyDAO.selectLoginIPPolicy" parameterClass="String" resultClass="int">
SELECT COUNT(IP_INFO)
FROM LETTNLOGINGROUPPOLICY
WHERE IP_INFO LIKE CONCAT('%' , #checkIp#, '%')
</select>
<insert id="loginPolicyDAO.insertLoginPolicy" parameterClass="LoginPolicy">
<![CDATA[
INSERT INTO LETTNLOGINPOLICY
(EMPLYR_ID
,IP_INFO
,DPLCT_PERM_AT
,LMTT_AT
,FRST_REGISTER_ID
,FRST_REGIST_PNTTM
,LAST_UPDUSR_ID
,LAST_UPDT_PNTTM)
VALUES (#emplyrId#
,#ipInfo#
,#dplctPermAt#
,#lmttAt#
,#userId#
,SYSDATE
,#userId#
,SYSDATE)
]]>
</insert>
<update id="loginPolicyDAO.updateLoginPolicy" parameterClass="LoginPolicy">
<![CDATA[
UPDATE LETTNLOGINPOLICY
SET IP_INFO = #ipInfo#
,DPLCT_PERM_AT = #dplctPermAt#
,LMTT_AT = #lmttAt#
,LAST_UPDUSR_ID = #userId#
,LAST_UPDT_PNTTM = SYSDATE
WHERE EMPLYR_ID = #emplyrId#
]]>
</update>
<delete id="loginPolicyDAO.deleteLoginPolicy">
<![CDATA[
DELETE FROM LETTNLOGINPOLICY
WHERE EMPLYR_ID = #emplyrId#
]]>
</delete>
<insert id="loginPolicyDAO.insertAdminLoginIp" parameterClass="LoginPolicy" >
<![CDATA[
INSERT INTO ADMIN_ACCESS_IP
(ACCESS_IP
,EMPLYR_ID)
VALUES (#ipInfo#
,#emplyrId# )
ON DUPLICATE KEY UPDATE ACCESS_IP = #ipInfo#,
EMPLYR_ID = #emplyrId#
]]>
</insert>
<select id="loginPolicyDAO.selectAdminLoginIpList" parameterClass="LoginPolicyVO" resultClass="LoginPolicyVO">
/* loginPolicyDAO.selectAdminLoginIpList */
SELECT ACCESS_IP ipInfo , EMPLYR_ID emplyrId
/*
, DATE_FORMAT(REGDT , '%Y-%m-%d') regDate
*/
, TO_CHAR(REGDT , 'YYYY-MM-DD') regDate
FROM ADMIN_ACCESS_IP A ORDER BY ACCESS_IP ASC
</select>
<select id="loginPolicyDAO.selectLoginGroupPolicy" parameterClass="LoginPolicyVO" resultClass="LoginPolicyVO">
/* loginPolicyDAO.selectLoginGroupPolicy */
SELECT
IP_GROUP_ID ipGroupId,
IP_INFO ipInfo,
IP_DC ipDc,
FRST_REGISTER_ID frstRegisterId,
/*
DATE_FORMAT(FRST_REGIST_PNTTM, '%Y-%m-%d %H:%i:%S') frstRegistPnttm,
*/
TO_CHAR(FRST_REGIST_PNTTM, 'YYYY-MM-DD HH24:MI:SS') frstRegistPnttm,
LAST_UPDUSR_ID lastUpdusrId,
/*
DATE_FORMAT(LAST_UPDT_PNTTM, '%Y-%m-%d %H:%i:%S') lastUpdtPnttm
*/
TO_CHAR(LAST_UPDT_PNTTM, 'YYYY-MM-DD HH24:MI:SS') lastUpdtPnttm
FROM LETTNLOGINGROUPPOLICY
WHERE 1 = 1
<isNotEmpty property="ipGroupId">
AND IP_GROUP_ID = #ipGroupId#
</isNotEmpty>
<isNotEmpty property="ipInfo">
AND IP_INFO = #ipInfo#
</isNotEmpty>
LIMIT 1
</select>
<select id="loginPolicyDAO.selectLoginGroupPolicyList" parameterClass="LoginPolicyVO" resultClass="LoginPolicyVO" >
/* loginPolicyDAO.selectLoginGroupPolicyList */
SELECT
IP_GROUP_ID ipGroupId,
IP_INFO ipInfo,
IP_DC ipDc,
A.FRST_REGISTER_ID frstRegisterId,
/*
DATE_FORMAT(A.FRST_REGIST_PNTTM, '%Y-%m-%d %H:%i:%S') frstRegistPnttm,
*/
TO_CHAR(A.FRST_REGIST_PNTTM, 'YYYY-MM-DD HH24:MI:SS') frstRegistPnttm,
A.LAST_UPDUSR_ID lastUpdusrId,
/*
DATE_FORMAT(A.LAST_UPDT_PNTTM, '%Y-%m-%d %H:%i:%S') lastUpdtPnttm
*/
TO_CHAR(A.LAST_UPDT_PNTTM, 'YYYY-MM-DD HH24:MI:SS') lastUpdtPnttm
FROM LETTNLOGINGROUPPOLICY A
WHERE 1 = 1
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="">
( IP_INFO LIKE CONCAT('%' , #searchKeyword#, '%') OR IP_DC LIKE CONCAT('%' , #searchKeyword#, '%') )
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
IP_DC LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
IP_INFO LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
</isNotEmpty>
/*
ORDER BY 1=1
*/
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<select id="loginPolicyDAO.selectLoginGroupPolicyAll" parameterClass="LoginPolicyVO" resultClass="LoginPolicyVO" >
SELECT
IP_GROUP_ID ipGroupId,
IP_INFO ipInfo,
IP_DC ipDc,
FRST_REGISTER_ID frstRegisterId,
/*
DATE_FORMAT(FRST_REGIST_PNTTM, '%Y-%m-%d %H:%i:%S') frstRegistPnttm,
*/
TO_CHAR(FRST_REGIST_PNTTM, 'YYYY-MM-DD HH24:MI:SS') frstRegistPnttm,
LAST_UPDUSR_ID lastUpdusrId,
/*
DATE_FORMAT(LAST_UPDT_PNTTM, '%Y-%m-%d %H:%i:%S') lastUpdtPnttm
*/
TO_CHAR(LAST_UPDT_PNTTM, 'YYYY-MM-DD HH24:MI:SS') lastUpdtPnttm
FROM LETTNLOGINGROUPPOLICY
WHERE 1 = 1
</select>
<select id="loginPolicyDAO.selectLoginGroupPolicyListTotCnt" parameterClass="LoginPolicyVO" resultClass="int">
SELECT COUNT(*) AS totcnt
FROM LETTNLOGINGROUPPOLICY
WHERE 1 = 1
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="">
( IP_INFO LIKE CONCAT('%' , #searchKeyword#, '%') OR IP_DC LIKE CONCAT('%' , #searchKeyword#, '%') )
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
IP_DC LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
IP_INFO LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
</isNotEmpty>
<isNotEmpty property="searchConditionSite">
AND SITE_ID = #searchConditionSite#
</isNotEmpty>
</select>
<insert id="loginPolicyDAO.insertLoginGroupPolicy" parameterClass="LoginPolicyVO" >
INSERT INTO LETTNLOGINGROUPPOLICY(
IP_GROUP_ID
,IP_INFO
,IP_DC
,FRST_REGISTER_ID
,FRST_REGIST_PNTTM
)VALUES(
#ipGroupId#
,#ipInfo#
, #ipDc#
, #frstRegisterId#
, SYSDATE
)
</insert>
<delete id="loginPolicyDAO.deleteGroupPolicy" parameterClass="String">
<![CDATA[
DELETE FROM LETTNLOGINGROUPPOLICY
WHERE IP_GROUP_ID = #ipGroupId#
]]>
</delete>
<update id="loginPolicyDAO.updateLoginGroupPolicy" parameterClass="LoginPolicyVO">
UPDATE LETTNLOGINGROUPPOLICY
SET IP_INFO = #ipInfo#
,IP_DC = #ipDc#
,LAST_UPDUSR_ID = #lastUpdusrId#
,LAST_UPDT_PNTTM = SYSDATE
WHERE IP_GROUP_ID = #ipGroupId#
</update>
<select id="loginPolicyDAO.selectLoginGroupPolicyAllIP" parameterClass="LoginPolicyVO" resultClass="LoginPolicyVO">
SELECT IP_INFO ipInfo FROM LETTNLOGINGROUPPOLICY
WHERE IP_INFO IS NOT NULL AND trim(IP_INFO) != ''
</select>
</sqlMap>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="LoginUsr">
@ -20,71 +20,13 @@
<result property="emplyrSttusCode" column="emplyrSttusCode" columnIndex="10"/>
<result property="membCelnum" column="membCelnum" columnIndex="11"/>
<result property="membBirth" column="membBirth" columnIndex="12"/>
<result property="userWork" column="userWork" columnIndex="13"/>
</resultMap>
<select id="loginDAO.actionLogin" resultClass="loginVO">
SELECT MEMBER_IDX AS memberIdx
, MEMBER_NAME AS memberName
, MEMBER_ID AS memberId
, MEMBER_PW AS memberPw
, 'USR' AS userSe
FROM T_MEMBER a
WHERE MEMBER_ID = #id#
AND MEMBER_PW = #password#
AND MEMBER_STATUS = 'U'
</select>
<!-- <select id="loginDAO.actionLogin" resultMap="login">
일반회원
<isNotNull property="userSe">
<isEqual property="userSe" compareValue="GNR">
SELECT mber_id AS id
, mber_nm AS name
, password AS password
, ihidNum AS ihidNum
, mber_email_adres AS email
, 'GNR' AS userSe
, '-' AS orgnztId
, ESNTL_ID AS uniqId
, 0 AS passMiss
, mber_sttus AS emplyrSttusCode
, mbtlnum AS membCelnum
, birth_day AS membBirth
FROM lettngnrlmber a
WHERE mber_id = #id#
AND PASSWORD = #password#
<isEmpty property="statusAll">
AND emplyr_sttus_code = 'P'
</isEmpty>
</isEqual>
업무사용자
<isEqual property="userSe" compareValue="USR">
SELECT EMPLYR_ID AS id
, USER_NM AS name
, PASSWORD AS password
, IHIDNUM AS ihidNum
, EMAIL_ADRES AS email
, 'USR' AS userSe
, ORGNZT_ID AS orgnztId
, ESNTL_ID AS uniqId
, PASS_MISS AS passMiss
, EMPLYR_STTUS_CODE AS emplyrSttusCode
, mbtlnum AS membCelnum
, '' AS membBirth
FROM LETTNEMPLYRINFO a
WHERE EMPLYR_ID = #id#
AND PASSWORD = #password#
<isEmpty property="statusAll">
AND emplyr_sttus_code = 'P'
</isEmpty>
</isEqual>
</isNotNull>
</select> -->
<!-- 개발자 아이디 선택용 -->
<select id="loginDAO.actionLoginDev" resultMap="login">
<!-- SSO용 ESNTL_ID를 이용한 로그인처리 (210818 이준호) GNR -> 일반회원, USR -> 업무담당자 -->
<select id="loginDAO.actionLogin" resultMap="login">
/*loginDAO.actionLogin*/
<!-- 일반회원 -->
<isNotNull property="userSe">
<isEqual property="userSe" compareValue="GNR">
@ -100,7 +42,58 @@
, mber_sttus AS emplyrSttusCode
, mbtlnum AS membCelnum
, birth_day AS membBirth
, '' AS userWork
FROM lettngnrlmber a
WHERE mber_id = #id#
AND PASSWORD = #password#
<isEmpty property="statusAll">
AND emplyr_sttus_code = 'P'
</isEmpty>
</isEqual>
<!-- 업무사용자 -->
<isEqual property="userSe" compareValue="USR">
SELECT EMPLYR_ID AS id
, USER_NM AS name
, PASSWORD AS password
, IHIDNUM AS ihidNum
, EMAIL_ADRES AS email
, 'USR' AS userSe
, ORGNZT_ID AS orgnztId
, ESNTL_ID AS uniqId
, PASS_MISS AS passMiss
, EMPLYR_STTUS_CODE AS emplyrSttusCode
, mbtlnum AS membCelnum
, '' AS membBirth
, user_work AS userWork
FROM LETTNEMPLYRINFO a
WHERE EMPLYR_ID = #id#
AND PASSWORD = #password#
<isEmpty property="statusAll">
AND emplyr_sttus_code = 'P'
</isEmpty>
</isEqual>
</isNotNull>
</select>
<!-- 개발자 아이디 선택용 -->
<select id="loginDAO.actionLoginDev" resultMap="login">
/*loginDAO.actionLoginDev*/
<!-- 일반회원 loginDAO.actionLoginDev -->
<isNotNull property="userSe">
<isEqual property="userSe" compareValue="GNR">
SELECT mber_id AS id
, mber_nm AS name
, password AS password
, ihidNum AS ihidNum
, mber_email_adres AS email
, 'GNR' AS userSe
, '-' AS orgnztId
, ESNTL_ID AS uniqId
, 0 AS passMiss
, mber_sttus AS emplyrSttusCode
, mbtlnum AS membCelnum
, birth_day AS membBirth
, '' AS userWork
FROM lettngnrlmber a
WHERE mber_seq = #id#
<isEmpty property="statusAll">
@ -121,6 +114,56 @@
, EMPLYR_STTUS_CODE AS emplyrSttusCode
, mbtlnum AS membCelnum
, '' AS membBirth
, user_work AS userWork
FROM LETTNEMPLYRINFO a
WHERE EMPLYR_ID = #id#
<isEmpty property="statusAll">
AND emplyr_sttus_code = 'P'
</isEmpty>
</isEqual>
</isNotNull>
</select>
<!-- e배움터 연동 후 mber_seq가 아닌 mber_id로 로그인 -->
<select id="loginDAO.actionLoginMberId" resultMap="login">
/*loginDAO.actionLoginMberId*/
<!-- 일반회원 loginDAO.actionLoginDev -->
<isNotNull property="userSe">
<isEqual property="userSe" compareValue="GNR">
SELECT mber_id AS id
, mber_nm AS name
, password AS password
, ihidNum AS ihidNum
, mber_email_adres AS email
, 'GNR' AS userSe
, '-' AS orgnztId
, ESNTL_ID AS uniqId
, 0 AS passMiss
, mber_sttus AS emplyrSttusCode
, mbtlnum AS membCelnum
, birth_day AS membBirth
, '' AS userWork
FROM lettngnrlmber a
WHERE mber_id = #id#
<isEmpty property="statusAll">
AND emplyr_sttus_code = 'P'
</isEmpty>
</isEqual>
<!-- 업무사용자 -->
<isEqual property="userSe" compareValue="USR">
SELECT EMPLYR_ID AS id
, USER_NM AS name
, PASSWORD AS password
, IHIDNUM AS ihidNum
, EMAIL_ADRES AS email
, 'USR' AS userSe
, ORGNZT_ID AS orgnztId
, ESNTL_ID AS uniqId
, PASS_MISS AS passMiss
, EMPLYR_STTUS_CODE AS emplyrSttusCode
, mbtlnum AS membCelnum
, '' AS membBirth
, user_work AS userWork
FROM LETTNEMPLYRINFO a
WHERE EMPLYR_ID = #id#
<isEmpty property="statusAll">
@ -368,6 +411,7 @@
<!-- 유저 권한 목록 조회 by USER_ID -->
<select id="loginDAO.selectAuthorities" resultClass="EgovMap">
/* loginDAO.selectAuthorities */
<![CDATA[
/* WITH AA AS ( */
SELECT AUTHOR_CODE FROM LETTNEMPLYRSCRTYESTBS
@ -410,21 +454,48 @@
</isNotEqual>
WHERE EMPLYR_ID = #id#
</update>
<select id="loginDAO.selectLoginType" parameterClass="String" resultClass="String">
SELECT LOGIN_TYPE_CD AS loginTypeCd
FROM LETTNEMPLYRINFO
WHERE EMPLYR_ID = #id#
<select id="loginDAO.APIActionLogin" resultMap="login">
/* 임시.*NOT_SQL_LOG.* loginDAO.APIActionLogin */
SELECT mber_id AS id
, mber_nm AS name
, password AS password
, ihidNum AS ihidNum
, mber_email_adres AS email
, 'GNR' AS userSe
, '-' AS orgnztId
, ESNTL_ID AS uniqId
, 0 AS passMiss
, mber_sttus AS emplyrSttusCode
, mbtlnum AS membCelnum
, birth_day AS membBirth
, '' AS userWork
FROM lettngnrlmber a
WHERE mber_id = #id#
AND PASSWORD = #password#
<isEmpty property="statusAll">
AND mber_sttus = 'P'
</isEmpty>
</select>
<select id="loginDAO.selectOffeduMberChk" resultClass="loginVO">
/* 임시.*NOT_SQL_LOG.* loginDAO.selectOffeduMberChk */
SELECT mber_id AS user_id
, mber_seq AS key
FROM lettngnrlmber a
WHERE mber_id = #user_id#
AND mber_seq = #key#
</select>
<select id="loginDAO.selectUniqueId" parameterClass="String" resultClass="String">
SELECT esntl_id as esntlId
FROM LETTNEMPLYRINFO
WHERE EMPLYR_ID = #id#
</select>
<update id="loginDAO.updateMberSeqKeyAjax" parameterClass="loginVO">
/* 임시.*NOT_SQL_LOG.* loginDAO.updateMberSeqKeyAjax*/
UPDATE LETTNGNRLMBER
SET mber_seq = #mberSeq#
WHERE mber_id = #id#
</update>
<update id="loginDAO.updateMberSeqKeyNull" parameterClass="loginVO">
/* 임시.*NOT_SQL_LOG.* loginDAO.updateMberSeqKeyNull*/
UPDATE LETTNGNRLMBER
SET mber_seq = ''
WHERE mber_id = #user_id#
</update>
</sqlMap>

View File

@ -0,0 +1,501 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="LoginUsr">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="loginVO" type="kcc.com.cmm.LoginVO"/>
<!-- 로그인 처리를 위한 resultMap -->
<resultMap id="login" class="kcc.com.cmm.LoginVO">
<result property="id" column="id" columnIndex="1"/>
<result property="name" column="name" columnIndex="2"/>
<result property="ihidNum" column="ihidNum" columnIndex="3"/>
<result property="email" column="email" columnIndex="4"/>
<result property="password" column="password" columnIndex="5"/>
<result property="userSe" column="userSe" columnIndex="6"/>
<result property="orgnztId" column="orgnztId" columnIndex="7"/>
<result property="uniqId" column="uniqId" columnIndex="8"/>
<result property="passMiss" column="passMiss" columnIndex="9"/>
<result property="emplyrSttusCode" column="emplyrSttusCode" columnIndex="10"/>
<result property="membCelnum" column="membCelnum" columnIndex="11"/>
<result property="membBirth" column="membBirth" columnIndex="12"/>
<result property="userWork" column="userWork" columnIndex="13"/>
</resultMap>
<!-- SSO용 ESNTL_ID를 이용한 로그인처리 (210818 이준호) GNR -> 일반회원, USR -> 업무담당자 -->
<select id="loginDAO.actionLogin" resultMap="login">
/*loginDAO.actionLogin*/
<!-- 일반회원 -->
<isNotNull property="userSe">
<isEqual property="userSe" compareValue="GNR">
SELECT mber_id AS id
, mber_nm AS name
, password AS password
, ihidNum AS ihidNum
, mber_email_adres AS email
, 'GNR' AS userSe
, '-' AS orgnztId
, ESNTL_ID AS uniqId
, 0 AS passMiss
, mber_sttus AS emplyrSttusCode
, mbtlnum AS membCelnum
, birth_day AS membBirth
, '' AS userWork
FROM lettngnrlmber a
WHERE mber_id = #id#
AND PASSWORD = #password#
<isEmpty property="statusAll">
AND emplyr_sttus_code = 'P'
</isEmpty>
</isEqual>
<!-- 업무사용자 -->
<isEqual property="userSe" compareValue="USR">
SELECT EMPLYR_ID AS id
, USER_NM AS name
, PASSWORD AS password
, IHIDNUM AS ihidNum
, EMAIL_ADRES AS email
, 'USR' AS userSe
, ORGNZT_ID AS orgnztId
, ESNTL_ID AS uniqId
, PASS_MISS AS passMiss
, EMPLYR_STTUS_CODE AS emplyrSttusCode
, mbtlnum AS membCelnum
, '' AS membBirth
, user_work AS userWork
FROM LETTNEMPLYRINFO a
WHERE EMPLYR_ID = #id#
AND PASSWORD = #password#
<isEmpty property="statusAll">
AND emplyr_sttus_code = 'P'
</isEmpty>
</isEqual>
</isNotNull>
</select>
<!-- 개발자 아이디 선택용 -->
<select id="loginDAO.actionLoginDev" resultMap="login">
/*loginDAO.actionLoginDev*/
<!-- 일반회원 loginDAO.actionLoginDev -->
<isNotNull property="userSe">
<isEqual property="userSe" compareValue="GNR">
SELECT mber_id AS id
, mber_nm AS name
, password AS password
, ihidNum AS ihidNum
, mber_email_adres AS email
, 'GNR' AS userSe
, '-' AS orgnztId
, ESNTL_ID AS uniqId
, 0 AS passMiss
, mber_sttus AS emplyrSttusCode
, mbtlnum AS membCelnum
, birth_day AS membBirth
, '' AS userWork
FROM lettngnrlmber a
WHERE mber_seq = #id#
<isEmpty property="statusAll">
AND emplyr_sttus_code = 'P'
</isEmpty>
</isEqual>
<!-- 업무사용자 -->
<isEqual property="userSe" compareValue="USR">
SELECT EMPLYR_ID AS id
, USER_NM AS name
, PASSWORD AS password
, IHIDNUM AS ihidNum
, EMAIL_ADRES AS email
, 'USR' AS userSe
, ORGNZT_ID AS orgnztId
, ESNTL_ID AS uniqId
, PASS_MISS AS passMiss
, EMPLYR_STTUS_CODE AS emplyrSttusCode
, mbtlnum AS membCelnum
, '' AS membBirth
, user_work AS userWork
FROM LETTNEMPLYRINFO a
WHERE EMPLYR_ID = #id#
<isEmpty property="statusAll">
AND emplyr_sttus_code = 'P'
</isEmpty>
</isEqual>
</isNotNull>
</select>
<!-- e배움터 연동 후 mber_seq가 아닌 mber_id로 로그인 -->
<select id="loginDAO.actionLoginMberId" resultMap="login">
/*loginDAO.actionLoginMberId*/
<!-- 일반회원 loginDAO.actionLoginDev -->
<isNotNull property="userSe">
<isEqual property="userSe" compareValue="GNR">
SELECT mber_id AS id
, mber_nm AS name
, password AS password
, ihidNum AS ihidNum
, mber_email_adres AS email
, 'GNR' AS userSe
, '-' AS orgnztId
, ESNTL_ID AS uniqId
, 0 AS passMiss
, mber_sttus AS emplyrSttusCode
, mbtlnum AS membCelnum
, birth_day AS membBirth
, '' AS userWork
FROM lettngnrlmber a
WHERE mber_id = #id#
<isEmpty property="statusAll">
AND emplyr_sttus_code = 'P'
</isEmpty>
</isEqual>
<!-- 업무사용자 -->
<isEqual property="userSe" compareValue="USR">
SELECT EMPLYR_ID AS id
, USER_NM AS name
, PASSWORD AS password
, IHIDNUM AS ihidNum
, EMAIL_ADRES AS email
, 'USR' AS userSe
, ORGNZT_ID AS orgnztId
, ESNTL_ID AS uniqId
, PASS_MISS AS passMiss
, EMPLYR_STTUS_CODE AS emplyrSttusCode
, mbtlnum AS membCelnum
, '' AS membBirth
, user_work AS userWork
FROM LETTNEMPLYRINFO a
WHERE EMPLYR_ID = #id#
<isEmpty property="statusAll">
AND emplyr_sttus_code = 'P'
</isEmpty>
</isEqual>
</isNotNull>
</select>
<!-- 일반 로그인 -->
<!-- <select id="loginDAO.actionLogin" resultMap="login">
<isEqual property="userSe" compareValue="USR">
<![CDATA[
SELECT EMPLYR_ID AS id
, USER_NM AS name
, PASSWORD AS password
, IHIDNUM AS ihidNum
, EMAIL_ADRES AS email
, 'USR' AS userSe
, ORGNZT_ID AS orgnztId
, ESNTL_ID AS uniqId
, PASS_MISS AS passMiss
, EMPLYR_STTUS_CODE AS emplyrSttusCode
FROM LETTNEMPLYRINFO a
WHERE EMPLYR_ID = #id#
AND PASSWORD = #password#
]]>
<isEmpty property="statusAll">
AND EMPLYR_STTUS_CODE = 'P'
</isEmpty>
</isEqual>
</select> -->
<!-- 등록된 sns 수량 조회 -->
<select id="loginDAO.selectSnsIdCount" parameterClass="loginVO" resultClass="int" >
<![CDATA[
SELECT
COUNT(*) AS snsIdCnt
FROM
LETTNEMPLYRINFO
WHERE
1=1
]]>
<isEqual property="snsSite" compareValue="kakao">
<![CDATA[
AND KAKAO_ID =#snsId#
]]>
</isEqual>
<isEqual property="snsSite" compareValue="naver">
<![CDATA[
AND NAVER_ID =#snsId#
]]>
</isEqual>
</select>
<!-- 등록된 sns 수량 조회 -->
<select id="loginDAO.selectSnsId" parameterClass="loginVO" resultClass="loginVO" >
<![CDATA[
SELECT
EMPLYR_ID AS id ,
USER_NM AS name ,
PASSWORD AS password ,
IHIDNUM AS ihidNum ,
EMAIL_ADRES AS email
FROM
LETTNEMPLYRINFO
WHERE
1=1
]]>
<isEqual property="snsSite" compareValue="kakao">
<![CDATA[
AND KAKAO_EMAIL = #snsEmail#
]]>
</isEqual>
<isEqual property="snsSite" compareValue="naver">
<![CDATA[
AND NAVER_EMAIL = #snsEmail#
]]>
</isEqual>
</select>
<update id="loginDAO.updateSnsLink" parameterClass="loginVO">
UPDATE
LETTNEMPLYRINFO
SET
<isEqual property="snsSite" compareValue="kakao">
KAKAO_ID = #snsId#
, KAKAO_EMAIL = #snsId#
</isEqual>
<isEqual property="snsSite" compareValue="kakao">
KAKAO_ID = #snsId#
, KAKAO_EMAIL = #snsId#
</isEqual>
WHERE
EMPLYR_ID = #id#
</update>
<!-- 인증서 로그인
<select id="loginDAO.actionCrtfctLogin" resultMap="login">
<![CDATA[
SELECT emplyr_id AS id
, USER_NM AS name
, password AS password
, ihidnum AS ihidNum
, email_adres AS email
, 'USR' AS userSe
, orgnzt_id AS orgnztId
, ESNTL_ID AS uniqId
FROM LETTNEMPLYRINFO
WHERE sub_dn = #dn#
]]>
</select>
-->
<!-- 아이디 찾기
<select id="loginDAO.searchId" resultMap="id">
<isEqual property="userSe" compareValue="GNR">
<![CDATA[
SELECT mber_id AS id
FROM LETTNGNRLMBER
WHERE mber_nm = #name#
AND mber_email_adres = #email#
AND mber_sttus = 'P'
]]>
</isEqual>
<isEqual property="userSe" compareValue="ENT">
<![CDATA[
SELECT entrprsmber_id AS id
FROM LETTNENTRPRSMBER
WHERE cmpny_nm = #name#
AND applcnt_email_adres = #email#
AND entrprs_mber_sttus = 'P'
]]>
</isEqual>
<isEqual property="userSe" compareValue="USR">
<![CDATA[
SELECT emplyr_id AS id
FROM LETTNEMPLYRINFO
WHERE USER_NM = #name#
AND email_adres = #email#
AND emplyr_sttus_code = 'P'
]]>
</isEqual>
</select>
-->
<!-- 비밀번호 찾기
<select id="loginDAO.searchPassword" resultMap="password">
<isEqual property="userSe" compareValue="GNR">
<![CDATA[
SELECT password AS password
FROM LETTNGNRLMBER
WHERE mber_id = #id#
AND mber_nm = #name#
AND mber_email_adres = #email#
AND password_hint = #passwordHint#
AND password_cnsr = #passwordCnsr#
AND mber_sttus = 'P'
]]>
</isEqual>
<isEqual property="userSe" compareValue="ENT">
<![CDATA[
SELECT entrprs_mber_password AS password
FROM LETTNENTRPRSMBER
WHERE entrprsmber_id = #id#
AND cmpny_nm = #name#
AND applcnt_email_adres = #email#
AND entrprs_mber_password_hint = #passwordHint#
AND entrprs_mber_password_cnsr = #passwordCnsr#
AND entrprs_mber_sttus = 'P'
]]>
</isEqual>
<isEqual property="userSe" compareValue="USR">
<![CDATA[
SELECT password AS password
FROM LETTNEMPLYRINFO
WHERE emplyr_id = #id#
AND USER_NM = #name#
AND email_adres = #email#
AND password_hint = #passwordHint#
AND password_cnsr = #passwordCnsr#
AND emplyr_sttus_code = 'P'
]]>
</isEqual>
</select>
-->
<!-- 변경된 비밀번호를 저장
<update id="loginDAO.updatePassword">
<isEqual property="userSe" compareValue="GNR">
<![CDATA[
UPDATE LETTNGNRLMBER
SET password = #password#
WHERE mber_id = #id#
]]>
</isEqual>
<isEqual property="userSe" compareValue="ENT">
<![CDATA[
UPDATE LETTNENTRPRSMBER
SET entrprs_mber_password = #password#
WHERE entrprsmber_id = #id#
]]>
</isEqual>
<isEqual property="userSe" compareValue="USR">
<![CDATA[
UPDATE LETTNEMPLYRINFO
SET password = #password#
WHERE emplyr_id = #id#
]]>
</isEqual>
</update>
-->
<!-- 사용자 권한 조회 -->
<select id="loginDAO.getUserAuth" parameterClass="loginVO" resultClass="loginVO" >
<![CDATA[
SELECT A.SCRTY_DTRMN_TRGET_ID id, A.AUTHOR_CODE AUTHORITY
FROM LETTNEMPLYRSCRTYESTBS A, COMVNUSERMASTER B
WHERE A.SCRTY_DTRMN_TRGET_ID = B.ESNTL_ID
AND B.USER_ID = #id#
]]>
</select>
<!-- 일반 로그인 사이트별-->
<select id="loginDAO.siteActionLogin" resultMap="login">
<isEqual property="userSe" compareValue="USR">
<![CDATA[
SELECT EMPLYR_ID AS id
, USER_NM AS name
, PASSWORD AS password
, IHIDNUM AS ihidNum
, EMAIL_ADRES AS email
, 'USR' AS userSe
, ORGNZT_ID AS orgnztId
, ESNTL_ID AS uniqId
, PASS_MISS AS passMiss
, EMPLYR_STTUS_CODE AS emplyrSttusCode
FROM LETTNEMPLYRINFO a
WHERE EMPLYR_ID = #id#
AND PASSWORD = #password#
AND EMPLYR_STTUS_CODE = 'P'
]]>
<isEmpty property="statusAll">
AND EMPLYR_STTUS_CODE = 'P'
</isEmpty>
</isEqual>
</select>
<!-- 유저 권한 목록 조회 by USER_ID -->
<select id="loginDAO.selectAuthorities" resultClass="EgovMap">
/* loginDAO.selectAuthorities */
<![CDATA[
/* WITH AA AS ( */
SELECT AUTHOR_CODE FROM LETTNEMPLYRSCRTYESTBS
WHERE SCRTY_DTRMN_TRGET_ID =
(SELECT ESNTL_ID FROM COMVNUSERMASTER WHERE USER_ID = (
SELECT EMPLYR_ID FROM LETTNEMPLYRINFO WHERE EMPLYR_ID = #id# /* AND EMPLYR_CONDITION = 1 */
)
)
/*
)
SELECT AUTHOR_CODE AS "authorCode" FROM AA
UNION ALL
SELECT PARNTS_ROLE AS "authorCode" FROM LETTNROLES_HIERARCHY
CONNECT BY PRIOR PARNTS_ROLE = CHLDRN_ROLE
START WITH CHLDRN_ROLE = (SELECT AUTHOR_CODE FROM AA)
*/
]]>
</select>
<update id="loginDAO.updatePassMissPlus" parameterClass="loginVO">
UPDATE LETTNEMPLYRINFO
SET PASS_MISS = PASS_MISS+1
WHERE EMPLYR_ID = #id#
</update>
<update id="loginDAO.updatePassMissReset" parameterClass="loginVO">
UPDATE LETTNEMPLYRINFO
SET PASS_MISS = 0
WHERE EMPLYR_ID = #id#
</update>
<update id="loginDAO.updateEmplyrSttusCode" parameterClass="loginVO">
UPDATE LETTNEMPLYRINFO
SET EMPLYR_STTUS_CODE = #emplyrSttusCode#
<isEqual property="emplyrSttusCode" compareValue="D"> /**삭제의 경우 삭제 일시 넣어줌 */
, WITHDRAW_DE = now()
</isEqual>
<isNotEqual property="emplyrSttusCode" compareValue="D"> /**삭제 아닌경우 삭제 일시 없애줌 */
, WITHDRAW_DE = null
</isNotEqual>
WHERE EMPLYR_ID = #id#
</update>
<select id="loginDAO.APIActionLogin" resultMap="login">
/* 임시.*NOT_SQL_LOG.* loginDAO.APIActionLogin */
SELECT mber_id AS id
, mber_nm AS name
, password AS password
, ihidNum AS ihidNum
, mber_email_adres AS email
, 'GNR' AS userSe
, '-' AS orgnztId
, ESNTL_ID AS uniqId
, 0 AS passMiss
, mber_sttus AS emplyrSttusCode
, mbtlnum AS membCelnum
, birth_day AS membBirth
, '' AS userWork
FROM lettngnrlmber a
WHERE mber_id = #id#
AND PASSWORD = #password#
<isEmpty property="statusAll">
AND mber_sttus = 'P'
</isEmpty>
</select>
<select id="loginDAO.selectOffeduMberChk" resultClass="loginVO">
/* 임시.*NOT_SQL_LOG.* loginDAO.selectOffeduMberChk */
SELECT mber_id AS user_id
, mber_seq AS key
FROM lettngnrlmber a
WHERE mber_id = #user_id#
AND mber_seq = #key#
</select>
<update id="loginDAO.updateMberSeqKeyAjax" parameterClass="loginVO">
/* 임시.*NOT_SQL_LOG.* loginDAO.updateMberSeqKeyAjax*/
UPDATE LETTNGNRLMBER
SET mber_seq = #mberSeq#
WHERE mber_id = #id#
</update>
<update id="loginDAO.updateMberSeqKeyNull" parameterClass="loginVO">
/* 임시.*NOT_SQL_LOG.* loginDAO.updateMberSeqKeyNull*/
UPDATE LETTNGNRLMBER
SET mber_seq = ''
WHERE mber_id = #user_id#
</update>
</sqlMap>

View File

@ -0,0 +1,654 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!--
수정일 수정자 수정내용
=========== ======== =================================================
2011.10.06 이기하 보안 취약점 점검사항 반영 $->#변경
-->
<sqlMap namespace="UnityLink">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="metaTagManageVO" type="kcc.com.uss.ion.cnf.service.MetaTagManageVO" />
<typeAlias alias="wordFilterVO" type="kcc.com.uss.ion.cnf.service.WordFilterVO" />
<typeAlias alias="scriptMngVO" type="kcc.com.uss.ion.cnf.service.ScriptMngVO" />
<typeAlias alias="captchaMngVO" type="kcc.com.uss.ion.cnf.service.CaptchaMngVO" />
<typeAlias alias="prohibitVO" type="kcc.com.uss.ion.cnf.service.ProhibitVO" />
<!-- 매타테그 :: 리스트 검색 -->
<select id="metaTagManageDAO.selectMetaTagList" parameterClass="metaTagManageVO" resultClass="metaTagManageVO">
/* metaTagManageDAO.selectMetaTagList */
SELECT
A.META_CN as metaCn ,
A.META_SJ as metaSj ,
A.REGISTER_ID as registerId ,
DATE_FORMAT(A.REGIST_PNTTM, '%Y-%m-%d') as registPnttm,
DATE_FORMAT(A.UPDT_PNTTM, '%Y-%m-%d') as updtPnttm,
DATE_FORMAT(A.REGIST_PNTTM, '%Y-%m-%d') as tempSortNum
FROM TB_META_MNG A
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND A.META_SJ LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND A.META_SJ LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
</isNotEmpty>
ORDER BY 1=1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<!-- 매타테그 :: 리스트 cnt -->
<select id="metaTagManageDAO.selectMetaTagCnt" parameterClass="metaTagManageVO" resultClass="int">
/* metaTagManageDAO.selectMetaTagCnt */
SELECT COUNT(*)
FROM TB_META_MNG
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND META_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND META_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
</select>
<!-- 매타테그 :: 리스트 상세검색 -->
<select id="metaTagManageDAO.selectMetaTagVO" parameterClass="metaTagManageVO" resultClass="metaTagManageVO">
/* metaTagManageDAO.selectMetaTagVO */
SELECT A.META_CN as metaCn ,
A.META_SJ as metaSj ,
A.REGISTER_ID as registerId ,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm,
TO_CHAR(A.UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm
FROM TB_META_MNG A
WHERE 1=1
</select>
<!-- 매타테그 :: 리스트 입력 -->
<insert id="metaTagManageDAO.insertMetaTag">
INSERT
INTO TB_META_MNG(
META_SJ,
META_CN,
REGISTER_ID,
REGIST_PNTTM
)
VALUES(
#metaSj#,
#metaCn#,
#registerId#,
now()
)
</insert>
<!-- 매타테그 :: 리스트 삭제 -->
<delete id="metaTagManageDAO.deleteMetaTag" parameterClass="metaTagManageVO">
DELETE FROM TB_META_MNG
</delete>
<!-- 매타테그 :: 리스트 수정 -->
<update id="metaTagManageDAO.updateMetaTag" parameterClass="metaTagManageVO">
UPDATE TB_META_MNG
SET META_CN = #metaCn#,
META_SJ = #metaSj#,
REGISTER_ID = #registerId#,
UPDT_PNTTM = now()
</update>
<!-- 단어필터링 :: 리스트 검색 -->
<select id="wordFilterDAO.selectWordFilterList" parameterClass="wordFilterVO" resultClass="wordFilterVO">
/* wordFilterDAO.selectWordFilterList */
SELECT A.FILTER_SJ as filterSj ,
A.FILTER_CN as filterCn ,
A.REGISTER_ID as registerId ,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm,
TO_CHAR(A.UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as tempSortNum
FROM TB_WORDFILTER A
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND A.FILTER_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND A.FILTER_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<!-- 단어필터링 :: 리스트 cnt -->
<select id="wordFilterDAO.selectWordFilterCnt" parameterClass="wordFilterVO" resultClass="int">
/* wordFilterDAO.selectWordFilterCnt */
SELECT COUNT(*)
FROM TB_WORDFILTER A
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND A.FILTER_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND A.FILTER_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
</select>
<!-- 단어필터링 :: 리스트 상세검색 -->
<select id="wordFilterDAO.selectWordFilterVO" parameterClass="wordFilterVO" resultClass="wordFilterVO">
/* wordFilterDAO.selectWordFilterVO */
SELECT A.SITE_ID as siteId ,
A.FILTER_SJ as filterSj ,
A.FILTER_CN as filterCn ,
A.REGISTER_ID as registerId ,
TO_CHAR(REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm ,
TO_CHAR(UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm
FROM TB_WORDFILTER A
WHERE 1=1
</select>
<!-- 단어필터링 :: 입력 -->
<insert id="wordFilterDAO.insertWordFilter">
INSERT
INTO TB_WORDFILTER(
FILTER_SJ,
FILTER_CN,
REGISTER_ID,
REGIST_PNTTM
)
VALUES(
#filterSj#,
#filterCn#,
#registerId#,
now()
)
</insert>
<!-- 단어필터링 :: 수정 -->
<update id="wordFilterDAO.updateWordFilter" parameterClass="wordFilterVO">
UPDATE TB_WORDFILTER
SET FILTER_SJ = #filterSj#,
FILTER_CN = #filterCn#,
REGISTER_ID = #registerId#,
UPDT_PNTTM = now()
</update>
<!-- 단어필터링 :: 삭제 -->
<delete id="wordFilterDAO.deleteWordFilter" parameterClass="wordFilterVO">
DELETE FROM TB_WORDFILTER
</delete>
<!-- 방문자스크립트 :: 리스트 검색 -->
<select id="scriptMngDAO.selectScriptMngList" parameterClass="scriptMngVO" resultClass="scriptMngVO">
/* scriptMngDAO.selectScriptMngList */
SELECT
A.SCRIPT_SJ as scriptSj ,
A.SCRIPT_CN as scriptCn ,
A.REGISTER_ID as registerId ,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm,
TO_CHAR(A.UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as tempSortNum
FROM TB_SCRIPT_MNG A
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND A.SCRIPT_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND A.SCRIPT_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<!-- 방문자스크립트 :: 리스트 cnt -->
<select id="scriptMngDAO.selectScriptMngCnt" parameterClass="scriptMngVO" resultClass="int">
/* scriptMngDAO.selectScriptMngCnt */
SELECT COUNT(*)
FROM TB_SCRIPT_MNG A
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND A.SCRIPT_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND A.SCRIPT_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
</select>
<!-- 방문자스크립트 :: 상세검색 -->
<select id="scriptMngDAO.selectScriptMngVO" parameterClass="scriptMngVO" resultClass="scriptMngVO">
/* scriptMngDAO.selectScriptMngVO */
SELECT A.SCRIPT_SJ as scriptSj ,
A.SCRIPT_CN as scriptCn ,
A.REGISTER_ID as registerId ,
TO_CHAR(REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm ,
TO_CHAR(UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm
FROM TB_SCRIPT_MNG A
WHERE 1=1
</select>
<!-- 방문자스크립트 :: 입력 -->
<insert id="scriptMngDAO.insertScriptMng">
INSERT
INTO TB_SCRIPT_MNG(
SCRIPT_SJ,
SCRIPT_CN,
REGISTER_ID,
REGIST_PNTTM
)
VALUES(
#scriptSj#,
#scriptCn#,
#registerId#,
now()
)
</insert>
<!-- 방문자스크립트 :: 수정 -->
<update id="scriptMngDAO.updateScriptMng" parameterClass="scriptMngVO">
UPDATE TB_SCRIPT_MNG
SET SCRIPT_SJ = #scriptSj#,
SCRIPT_CN = #scriptCn#,
REGISTER_ID = #registerId#,
UPDT_PNTTM = now()
</update>
<!-- 방문자스크립트 :: 삭제 -->
<delete id="scriptMngDAO.deleteScriptMng" parameterClass="scriptMngVO">
DELETE FROM TB_SCRIPT_MNG
</delete>
<!-- 캡차 :: 리스트 검색 -->
<select id="captchaMngDAO.selectCaptchaMngList" parameterClass="captchaMngVO" resultClass="captchaMngVO">
/* captchaMngDAO.selectCaptchaMngList */
SELECT A.CAPTCHA_CODE as captchaCode ,
A.CAPTCHA_KEY as captchaKey ,
A.CAPTCHA_SJ as captchaSj ,
A.CAPTCHA_CN as captchaCn ,
A.REGISTER_ID as registerId ,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm,
TO_CHAR(A.UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm
FROM TB_CAPTCHA_MNG A
WHERE 1=1
<isNotEmpty property="captchaCode">
AND A.CAPTCHA_CODE = #captchaCode#
</isNotEmpty>
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND A.CAPTCHA_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND A.CAPTCHA_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
</select>
<!-- 캡차 :: 리스트 cnt -->
<select id="captchaMngDAO.selectCaptchaMngCnt" parameterClass="captchaMngVO" resultClass="int">
/* captchaMngDAO.selectCaptchaMngCnt */
SELECT COUNT(A.CAPTCHA_CODE)
FROM TB_CAPTCHA_MNG A
WHERE 1=1
<isNotEmpty property="captchaCode">
AND A.CAPTCHA_CODE = #captchaCode#
</isNotEmpty>
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND A.CAPTCHA_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND A.CAPTCHA_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
</select>
<!-- 캡차 :: 입력 -->
<insert id="captchaMngDAO.insertCaptchaMng">
INSERT
INTO TB_CAPTCHA_MNG(
CAPTCHA_CODE,
<isNotEmpty property="captchaKey">
CAPTCHA_KEY,
</isNotEmpty>
CAPTCHA_SJ,
CAPTCHA_CN,
REGISTER_ID,
REGIST_PNTTM
)
VALUES(
#captchaCode#,
<isNotEmpty property="captchaKey">
#captchaKey#,
</isNotEmpty>
#captchaSj#,
#captchaCn#,
#registerId#,
now()
)
</insert>
<!-- 캡차 :: 상세검색 -->
<select id="captchaMngDAO.selectCaptchaMngVO" parameterClass="captchaMngVO" resultClass="captchaMngVO">
/* captchaMngDAO.selectCaptchaMngVO */
SELECT A.CAPTCHA_CODE as captchaCode ,
A.CAPTCHA_KEY as captchaKey ,
A.CAPTCHA_SJ as captchaSj ,
A.CAPTCHA_CN as captchaCn ,
A.REGISTER_ID as registerId ,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm,
TO_CHAR(A.UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm
FROM TB_CAPTCHA_MNG A
WHERE 1=1
AND A.CAPTCHA_CODE = #captchaCode#
</select>
<!-- 캡차 :: 수정 -->
<update id="captchaMngDAO.updateCaptchaMng" parameterClass="captchaMngVO">
UPDATE TB_CAPTCHA_MNG
SET CAPTCHA_KEY = #captchaKey#,
CAPTCHA_SJ = #captchaSj#,
CAPTCHA_CN = #captchaCn#,
REGISTER_ID = #registerId#,
UPDT_PNTTM = now()
WHERE CAPTCHA_CODE = #captchaCode#
</update>
<!-- 캡차 :: 삭제 -->
<delete id="captchaMngDAO.deleteCaptchaMng" parameterClass="captchaMngVO">
DELETE FROM TB_CAPTCHA_MNG
WHERE CAPTCHA_CODE = #captchaCode#
</delete>
<!-- 캡차 사이트 :: 리스트 검색 -->
<select id="captchaMngDAO.selectCaptchaSiteList" parameterClass="captchaMngVO" resultClass="captchaMngVO">
/* captchaMngDAO.selectCaptchaSiteList */
SELECT
A.CAPTCHA_CODE as captchaCode ,
A.CAPTCHA_KEY as captchaKey ,
A.CAPTCHA_SJ as captchaSj ,
A.REGISTER_ID as registerId ,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm,
TO_CHAR(A.UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as tempSortNum
FROM TB_CAPTCHA_SITE A
WHERE 1=1
<isNotEmpty property="captchaCode">
AND A.CAPTCHA_CODE = #captchaCode#
</isNotEmpty>
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND A.CAPTCHA_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND A.CAPTCHA_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<!-- 캡차 :: 리스트 cnt -->
<select id="captchaMngDAO.selectCaptchaSiteCnt" parameterClass="captchaMngVO" resultClass="int">
/* captchaMngDAO.selectCaptchaSiteCnt */
SELECT COUNT(A.CAPTCHA_CODE)
FROM TB_CAPTCHA_SITE A
WHERE 1=1
<isNotEmpty property="captchaCode">
AND A.CAPTCHA_CODE = #captchaCode#
</isNotEmpty>
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND A.CAPTCHA_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND A.CAPTCHA_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
</select>
<!-- 캡차 사이트 :: 상세검색 -->
<select id="captchaMngDAO.selectCaptchaSiteVO" parameterClass="captchaMngVO" resultClass="captchaMngVO">
/* captchaMngDAO.selectCaptchaSiteVO */
SELECT A.SITE_ID as siteId ,
A.CAPTCHA_CODE as captchaCode ,
A.CAPTCHA_SJ as captchaSj ,
A.CAPTCHA_KEY as captchaKey ,
A.REGISTER_ID as registerId ,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm,
TO_CHAR(A.UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm
FROM TB_CAPTCHA_SITE A
WHERE 1=1
</select>
<!-- 캡차 사이트 :: 입력 -->
<insert id="captchaMngDAO.insertCaptchaSite">
INSERT
INTO TB_CAPTCHA_SITE(
CAPTCHA_CODE,
CAPTCHA_SJ,
CAPTCHA_KEY,
REGISTER_ID,
REGIST_PNTTM
)
VALUES(
#captchaCode#,
#captchaSj#,
#captchaKey#,
#registerId#,
now()
)
</insert>
<!-- 캡차사이트 :: 수정 -->
<update id="captchaMngDAO.updateCaptchaSite" parameterClass="captchaMngVO">
UPDATE TB_CAPTCHA_SITE
SET CAPTCHA_CODE = #captchaCode#,
CAPTCHA_SJ = #captchaSj#,
CAPTCHA_KEY = #captchaKey#,
REGISTER_ID = #registerId#,
UPDT_PNTTM = now()
</update>
<!-- 캡차사이트 :: 삭제 -->
<delete id="captchaMngDAO.deleteCaptchaSite" parameterClass="captchaMngVO">
DELETE FROM TB_CAPTCHA_SITE
</delete>
<!-- 금지어 :: 리스트 검색 -->
<select id="prohibitMngDAO.selectProhibitMngList" parameterClass="prohibitVO" resultClass="prohibitVO">
/* prohibitMngDAO.selectProhibitMngList */
SELECT COUNT(A.SITE_ID) OVER() AS totCnt,
A.PROHIBIT_SJ as prohibitSj ,
A.PROHIBIT_CN as prohibitCn ,
A.REGISTER_ID as registerId ,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm,
TO_CHAR(A.UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm
FROM TB_PROHIBIT_MNG A
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND A.PROHIBIT_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND A.PROHIBIT_CN LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
</select>
<!-- 금지어 :: 리스트 검색 -->
<select id="prohibitMngDAO.selectProhiList" parameterClass="prohibitVO" resultClass="prohibitVO">
/* prohibitMngDAO.selectProhiList */
SELECT COUNT(*) OVER() AS totCnt,
A.PROHIBIT_ID as prohibitId,
A.PROHIBIT_CN as prohibitCn ,
A.REGISTER_ID as registerId ,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm,
TO_CHAR(A.UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm,
A.USE_YN as useYn
FROM TB_PROHIBITION A
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND A.PROHIBIT_CN LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND A.PROHIBIT_CN LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
<isEmpty property="searchSortCnd">
ORDER BY A.PROHIBIT_ID DESC
</isEmpty>
<isNotEmpty property="searchSortCnd">
ORDER BY $searchSortCnd$ $searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<!-- 금지어 체크 :: 모두 검색 -->
<select id="prohibitMngDAO.selectProhiAllList" parameterClass="prohibitVO" resultClass="prohibitVO">
/* prohibitMngDAO.selectProhiAllList */
SELECT
A.PROHIBIT_ID as prohibitId,
A.PROHIBIT_CN as prohibitCn ,
A.USE_YN as useYn
FROM TB_PROHIBITION A
WHERE 1=1
AND A.USE_YN = 'Y'
</select>
<!-- 금지어 :: 상세검색 -->
<select id="prohibitMngDAO.selectProhibitVO" parameterClass="prohibitVO" resultClass="prohibitVO">
/* prohibitMngDAO.selectProhibitVO */
SELECT
A.PROHIBIT_SJ as prohibitSj ,
A.PROHIBIT_CN as prohibitCn ,
A.REGISTER_ID as registerId ,
TO_CHAR(REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm ,
TO_CHAR(UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm
FROM TB_PROHIBIT_MNG A
WHERE 1=1
</select>
<!-- 금지어 :: 상세검색 -->
<select id="prohibitMngDAO.selectProhiVO" parameterClass="prohibitVO" resultClass="prohibitVO">
/* prohibitMngDAO.selectProhiVO */
SELECT A.PROHIBIT_ID as prohibitId,
A.PROHIBIT_CN as prohibitCn ,
A.REGISTER_ID as registerId ,
TO_CHAR(REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm ,
TO_CHAR(UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm,
A.USE_YN as useYn
FROM TB_PROHIBITION A
WHERE 1=1
AND A.PROHIBIT_ID = #prohibitId#
</select>
<!-- 금지어 :: 입력 -->
<insert id="prohibitMngDAO.insertProhibit">
INSERT
INTO TB_PROHIBIT_MNG(
PROHIBIT_SJ,
PROHIBIT_CN,
REGISTER_ID,
REGIST_PNTTM
)
VALUES(
#prohibitSj#,
#prohibitCn#,
#registerId#,
now()
)
</insert>
<!-- 금지어 :: 입력 -->
<insert id="prohibitMngDAO.insertProhi">
INSERT
INTO TB_PROHIBITION(
PROHIBIT_ID,
PROHIBIT_CN,
REGISTER_ID,
REGIST_PNTTM,
USE_YN
)
VALUES(
#prohibitId#,
#prohibitCn#,
#registerId#,
now(),
#useYn#
)
</insert>
<!-- 금지어 :: 삭제 -->
<delete id="prohibitMngDAO.deleteProhibit" parameterClass="prohibitVO">
DELETE FROM TB_PROHIBIT_MNG
</delete>
<!-- 금지어 :: 삭제 -->
<delete id="prohibitMngDAO.deleteProhi" parameterClass="prohibitVO">
DELETE FROM TB_PROHIBITION
WHERE PROHIBIT_ID = #prohibitId#
</delete>
<!-- 금지어 :: 수정 -->
<update id="prohibitMngDAO.updateProhibit" parameterClass="prohibitVO">
UPDATE TB_PROHIBIT_MNG
SET PROHIBIT_CN = #prohibitCn#,
REGISTER_ID = #registerId#,
UPDT_PNTTM = now()
</update>
<!-- 금지어 :: 수정 -->
<update id="prohibitMngDAO.updateProhi" parameterClass="prohibitVO">
UPDATE TB_PROHIBITION
SET PROHIBIT_CN = #prohibitCn#,
REGISTER_ID = #registerId#,
UPDT_PNTTM = now(),
USE_YN = #useYn#
WHERE PROHIBIT_ID = #prohibitId#
</update>
</sqlMap>

View File

@ -0,0 +1,654 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!--
수정일 수정자 수정내용
=========== ======== =================================================
2011.10.06 이기하 보안 취약점 점검사항 반영 $->#변경
-->
<sqlMap namespace="UnityLink">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="metaTagManageVO" type="kcc.com.uss.ion.cnf.service.MetaTagManageVO" />
<typeAlias alias="wordFilterVO" type="kcc.com.uss.ion.cnf.service.WordFilterVO" />
<typeAlias alias="scriptMngVO" type="kcc.com.uss.ion.cnf.service.ScriptMngVO" />
<typeAlias alias="captchaMngVO" type="kcc.com.uss.ion.cnf.service.CaptchaMngVO" />
<typeAlias alias="prohibitVO" type="kcc.com.uss.ion.cnf.service.ProhibitVO" />
<!-- 매타테그 :: 리스트 검색 -->
<select id="metaTagManageDAO.selectMetaTagList" parameterClass="metaTagManageVO" resultClass="metaTagManageVO">
/* metaTagManageDAO.selectMetaTagList */
SELECT
A.META_CN as metaCn ,
A.META_SJ as metaSj ,
A.REGISTER_ID as registerId ,
DATE_FORMAT(A.REGIST_PNTTM, '%Y-%m-%d') as registPnttm,
DATE_FORMAT(A.UPDT_PNTTM, '%Y-%m-%d') as updtPnttm,
DATE_FORMAT(A.REGIST_PNTTM, '%Y-%m-%d') as tempSortNum
FROM TB_META_MNG A
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND A.META_SJ LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND A.META_SJ LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
</isNotEmpty>
ORDER BY 1=1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<!-- 매타테그 :: 리스트 cnt -->
<select id="metaTagManageDAO.selectMetaTagCnt" parameterClass="metaTagManageVO" resultClass="int">
/* metaTagManageDAO.selectMetaTagCnt */
SELECT COUNT(*)
FROM TB_META_MNG
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND META_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND META_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
</select>
<!-- 매타테그 :: 리스트 상세검색 -->
<select id="metaTagManageDAO.selectMetaTagVO" parameterClass="metaTagManageVO" resultClass="metaTagManageVO">
/* metaTagManageDAO.selectMetaTagVO */
SELECT A.META_CN as metaCn ,
A.META_SJ as metaSj ,
A.REGISTER_ID as registerId ,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm,
TO_CHAR(A.UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm
FROM TB_META_MNG A
WHERE 1=1
</select>
<!-- 매타테그 :: 리스트 입력 -->
<insert id="metaTagManageDAO.insertMetaTag">
INSERT
INTO TB_META_MNG(
META_SJ,
META_CN,
REGISTER_ID,
REGIST_PNTTM
)
VALUES(
#metaSj#,
#metaCn#,
#registerId#,
now()
)
</insert>
<!-- 매타테그 :: 리스트 삭제 -->
<delete id="metaTagManageDAO.deleteMetaTag" parameterClass="metaTagManageVO">
DELETE FROM TB_META_MNG
</delete>
<!-- 매타테그 :: 리스트 수정 -->
<update id="metaTagManageDAO.updateMetaTag" parameterClass="metaTagManageVO">
UPDATE TB_META_MNG
SET META_CN = #metaCn#,
META_SJ = #metaSj#,
REGISTER_ID = #registerId#,
UPDT_PNTTM = now()
</update>
<!-- 단어필터링 :: 리스트 검색 -->
<select id="wordFilterDAO.selectWordFilterList" parameterClass="wordFilterVO" resultClass="wordFilterVO">
/* wordFilterDAO.selectWordFilterList */
SELECT A.FILTER_SJ as filterSj ,
A.FILTER_CN as filterCn ,
A.REGISTER_ID as registerId ,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm,
TO_CHAR(A.UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as tempSortNum
FROM TB_WORDFILTER A
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND A.FILTER_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND A.FILTER_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<!-- 단어필터링 :: 리스트 cnt -->
<select id="wordFilterDAO.selectWordFilterCnt" parameterClass="wordFilterVO" resultClass="int">
/* wordFilterDAO.selectWordFilterCnt */
SELECT COUNT(*)
FROM TB_WORDFILTER A
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND A.FILTER_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND A.FILTER_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
</select>
<!-- 단어필터링 :: 리스트 상세검색 -->
<select id="wordFilterDAO.selectWordFilterVO" parameterClass="wordFilterVO" resultClass="wordFilterVO">
/* wordFilterDAO.selectWordFilterVO */
SELECT A.SITE_ID as siteId ,
A.FILTER_SJ as filterSj ,
A.FILTER_CN as filterCn ,
A.REGISTER_ID as registerId ,
TO_CHAR(REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm ,
TO_CHAR(UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm
FROM TB_WORDFILTER A
WHERE 1=1
</select>
<!-- 단어필터링 :: 입력 -->
<insert id="wordFilterDAO.insertWordFilter">
INSERT
INTO TB_WORDFILTER(
FILTER_SJ,
FILTER_CN,
REGISTER_ID,
REGIST_PNTTM
)
VALUES(
#filterSj#,
#filterCn#,
#registerId#,
now()
)
</insert>
<!-- 단어필터링 :: 수정 -->
<update id="wordFilterDAO.updateWordFilter" parameterClass="wordFilterVO">
UPDATE TB_WORDFILTER
SET FILTER_SJ = #filterSj#,
FILTER_CN = #filterCn#,
REGISTER_ID = #registerId#,
UPDT_PNTTM = now()
</update>
<!-- 단어필터링 :: 삭제 -->
<delete id="wordFilterDAO.deleteWordFilter" parameterClass="wordFilterVO">
DELETE FROM TB_WORDFILTER
</delete>
<!-- 방문자스크립트 :: 리스트 검색 -->
<select id="scriptMngDAO.selectScriptMngList" parameterClass="scriptMngVO" resultClass="scriptMngVO">
/* scriptMngDAO.selectScriptMngList */
SELECT
A.SCRIPT_SJ as scriptSj ,
A.SCRIPT_CN as scriptCn ,
A.REGISTER_ID as registerId ,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm,
TO_CHAR(A.UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as tempSortNum
FROM TB_SCRIPT_MNG A
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND A.SCRIPT_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND A.SCRIPT_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<!-- 방문자스크립트 :: 리스트 cnt -->
<select id="scriptMngDAO.selectScriptMngCnt" parameterClass="scriptMngVO" resultClass="int">
/* scriptMngDAO.selectScriptMngCnt */
SELECT COUNT(*)
FROM TB_SCRIPT_MNG A
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND A.SCRIPT_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND A.SCRIPT_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
</select>
<!-- 방문자스크립트 :: 상세검색 -->
<select id="scriptMngDAO.selectScriptMngVO" parameterClass="scriptMngVO" resultClass="scriptMngVO">
/* scriptMngDAO.selectScriptMngVO */
SELECT A.SCRIPT_SJ as scriptSj ,
A.SCRIPT_CN as scriptCn ,
A.REGISTER_ID as registerId ,
TO_CHAR(REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm ,
TO_CHAR(UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm
FROM TB_SCRIPT_MNG A
WHERE 1=1
</select>
<!-- 방문자스크립트 :: 입력 -->
<insert id="scriptMngDAO.insertScriptMng">
INSERT
INTO TB_SCRIPT_MNG(
SCRIPT_SJ,
SCRIPT_CN,
REGISTER_ID,
REGIST_PNTTM
)
VALUES(
#scriptSj#,
#scriptCn#,
#registerId#,
now()
)
</insert>
<!-- 방문자스크립트 :: 수정 -->
<update id="scriptMngDAO.updateScriptMng" parameterClass="scriptMngVO">
UPDATE TB_SCRIPT_MNG
SET SCRIPT_SJ = #scriptSj#,
SCRIPT_CN = #scriptCn#,
REGISTER_ID = #registerId#,
UPDT_PNTTM = now()
</update>
<!-- 방문자스크립트 :: 삭제 -->
<delete id="scriptMngDAO.deleteScriptMng" parameterClass="scriptMngVO">
DELETE FROM TB_SCRIPT_MNG
</delete>
<!-- 캡차 :: 리스트 검색 -->
<select id="captchaMngDAO.selectCaptchaMngList" parameterClass="captchaMngVO" resultClass="captchaMngVO">
/* captchaMngDAO.selectCaptchaMngList */
SELECT A.CAPTCHA_CODE as captchaCode ,
A.CAPTCHA_KEY as captchaKey ,
A.CAPTCHA_SJ as captchaSj ,
A.CAPTCHA_CN as captchaCn ,
A.REGISTER_ID as registerId ,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm,
TO_CHAR(A.UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm
FROM TB_CAPTCHA_MNG A
WHERE 1=1
<isNotEmpty property="captchaCode">
AND A.CAPTCHA_CODE = #captchaCode#
</isNotEmpty>
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND A.CAPTCHA_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND A.CAPTCHA_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
</select>
<!-- 캡차 :: 리스트 cnt -->
<select id="captchaMngDAO.selectCaptchaMngCnt" parameterClass="captchaMngVO" resultClass="int">
/* captchaMngDAO.selectCaptchaMngCnt */
SELECT COUNT(A.CAPTCHA_CODE)
FROM TB_CAPTCHA_MNG A
WHERE 1=1
<isNotEmpty property="captchaCode">
AND A.CAPTCHA_CODE = #captchaCode#
</isNotEmpty>
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND A.CAPTCHA_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND A.CAPTCHA_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
</select>
<!-- 캡차 :: 입력 -->
<insert id="captchaMngDAO.insertCaptchaMng">
INSERT
INTO TB_CAPTCHA_MNG(
CAPTCHA_CODE,
<isNotEmpty property="captchaKey">
CAPTCHA_KEY,
</isNotEmpty>
CAPTCHA_SJ,
CAPTCHA_CN,
REGISTER_ID,
REGIST_PNTTM
)
VALUES(
#captchaCode#,
<isNotEmpty property="captchaKey">
#captchaKey#,
</isNotEmpty>
#captchaSj#,
#captchaCn#,
#registerId#,
now()
)
</insert>
<!-- 캡차 :: 상세검색 -->
<select id="captchaMngDAO.selectCaptchaMngVO" parameterClass="captchaMngVO" resultClass="captchaMngVO">
/* captchaMngDAO.selectCaptchaMngVO */
SELECT A.CAPTCHA_CODE as captchaCode ,
A.CAPTCHA_KEY as captchaKey ,
A.CAPTCHA_SJ as captchaSj ,
A.CAPTCHA_CN as captchaCn ,
A.REGISTER_ID as registerId ,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm,
TO_CHAR(A.UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm
FROM TB_CAPTCHA_MNG A
WHERE 1=1
AND A.CAPTCHA_CODE = #captchaCode#
</select>
<!-- 캡차 :: 수정 -->
<update id="captchaMngDAO.updateCaptchaMng" parameterClass="captchaMngVO">
UPDATE TB_CAPTCHA_MNG
SET CAPTCHA_KEY = #captchaKey#,
CAPTCHA_SJ = #captchaSj#,
CAPTCHA_CN = #captchaCn#,
REGISTER_ID = #registerId#,
UPDT_PNTTM = now()
WHERE CAPTCHA_CODE = #captchaCode#
</update>
<!-- 캡차 :: 삭제 -->
<delete id="captchaMngDAO.deleteCaptchaMng" parameterClass="captchaMngVO">
DELETE FROM TB_CAPTCHA_MNG
WHERE CAPTCHA_CODE = #captchaCode#
</delete>
<!-- 캡차 사이트 :: 리스트 검색 -->
<select id="captchaMngDAO.selectCaptchaSiteList" parameterClass="captchaMngVO" resultClass="captchaMngVO">
/* captchaMngDAO.selectCaptchaSiteList */
SELECT
A.CAPTCHA_CODE as captchaCode ,
A.CAPTCHA_KEY as captchaKey ,
A.CAPTCHA_SJ as captchaSj ,
A.REGISTER_ID as registerId ,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm,
TO_CHAR(A.UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as tempSortNum
FROM TB_CAPTCHA_SITE A
WHERE 1=1
<isNotEmpty property="captchaCode">
AND A.CAPTCHA_CODE = #captchaCode#
</isNotEmpty>
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND A.CAPTCHA_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND A.CAPTCHA_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<!-- 캡차 :: 리스트 cnt -->
<select id="captchaMngDAO.selectCaptchaSiteCnt" parameterClass="captchaMngVO" resultClass="int">
/* captchaMngDAO.selectCaptchaSiteCnt */
SELECT COUNT(A.CAPTCHA_CODE)
FROM TB_CAPTCHA_SITE A
WHERE 1=1
<isNotEmpty property="captchaCode">
AND A.CAPTCHA_CODE = #captchaCode#
</isNotEmpty>
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND A.CAPTCHA_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND A.CAPTCHA_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
</select>
<!-- 캡차 사이트 :: 상세검색 -->
<select id="captchaMngDAO.selectCaptchaSiteVO" parameterClass="captchaMngVO" resultClass="captchaMngVO">
/* captchaMngDAO.selectCaptchaSiteVO */
SELECT A.SITE_ID as siteId ,
A.CAPTCHA_CODE as captchaCode ,
A.CAPTCHA_SJ as captchaSj ,
A.CAPTCHA_KEY as captchaKey ,
A.REGISTER_ID as registerId ,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm,
TO_CHAR(A.UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm
FROM TB_CAPTCHA_SITE A
WHERE 1=1
</select>
<!-- 캡차 사이트 :: 입력 -->
<insert id="captchaMngDAO.insertCaptchaSite">
INSERT
INTO TB_CAPTCHA_SITE(
CAPTCHA_CODE,
CAPTCHA_SJ,
CAPTCHA_KEY,
REGISTER_ID,
REGIST_PNTTM
)
VALUES(
#captchaCode#,
#captchaSj#,
#captchaKey#,
#registerId#,
now()
)
</insert>
<!-- 캡차사이트 :: 수정 -->
<update id="captchaMngDAO.updateCaptchaSite" parameterClass="captchaMngVO">
UPDATE TB_CAPTCHA_SITE
SET CAPTCHA_CODE = #captchaCode#,
CAPTCHA_SJ = #captchaSj#,
CAPTCHA_KEY = #captchaKey#,
REGISTER_ID = #registerId#,
UPDT_PNTTM = now()
</update>
<!-- 캡차사이트 :: 삭제 -->
<delete id="captchaMngDAO.deleteCaptchaSite" parameterClass="captchaMngVO">
DELETE FROM TB_CAPTCHA_SITE
</delete>
<!-- 금지어 :: 리스트 검색 -->
<select id="prohibitMngDAO.selectProhibitMngList" parameterClass="prohibitVO" resultClass="prohibitVO">
/* prohibitMngDAO.selectProhibitMngList */
SELECT COUNT(A.SITE_ID) OVER() AS totCnt,
A.PROHIBIT_SJ as prohibitSj ,
A.PROHIBIT_CN as prohibitCn ,
A.REGISTER_ID as registerId ,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm,
TO_CHAR(A.UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm
FROM TB_PROHIBIT_MNG A
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND A.PROHIBIT_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND A.PROHIBIT_CN LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
</select>
<!-- 금지어 :: 리스트 검색 -->
<select id="prohibitMngDAO.selectProhiList" parameterClass="prohibitVO" resultClass="prohibitVO">
/* prohibitMngDAO.selectProhiList */
SELECT COUNT(*) OVER() AS totCnt,
A.PROHIBIT_ID as prohibitId,
A.PROHIBIT_CN as prohibitCn ,
A.REGISTER_ID as registerId ,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm,
TO_CHAR(A.UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm,
A.USE_YN as useYn
FROM TB_PROHIBITION A
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND A.PROHIBIT_CN LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND A.PROHIBIT_CN LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
<isEmpty property="searchSortCnd">
ORDER BY A.PROHIBIT_ID DESC
</isEmpty>
<isNotEmpty property="searchSortCnd">
ORDER BY $searchSortCnd$ $searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<!-- 금지어 체크 :: 모두 검색 -->
<select id="prohibitMngDAO.selectProhiAllList" parameterClass="prohibitVO" resultClass="prohibitVO">
/* prohibitMngDAO.selectProhiAllList */
SELECT
A.PROHIBIT_ID as prohibitId,
A.PROHIBIT_CN as prohibitCn ,
A.USE_YN as useYn
FROM TB_PROHIBITION A
WHERE 1=1
AND A.USE_YN = 'Y'
</select>
<!-- 금지어 :: 상세검색 -->
<select id="prohibitMngDAO.selectProhibitVO" parameterClass="prohibitVO" resultClass="prohibitVO">
/* prohibitMngDAO.selectProhibitVO */
SELECT
A.PROHIBIT_SJ as prohibitSj ,
A.PROHIBIT_CN as prohibitCn ,
A.REGISTER_ID as registerId ,
TO_CHAR(REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm ,
TO_CHAR(UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm
FROM TB_PROHIBIT_MNG A
WHERE 1=1
</select>
<!-- 금지어 :: 상세검색 -->
<select id="prohibitMngDAO.selectProhiVO" parameterClass="prohibitVO" resultClass="prohibitVO">
/* prohibitMngDAO.selectProhiVO */
SELECT A.PROHIBIT_ID as prohibitId,
A.PROHIBIT_CN as prohibitCn ,
A.REGISTER_ID as registerId ,
TO_CHAR(REGIST_PNTTM, 'YYYY-MM-DD') as registPnttm ,
TO_CHAR(UPDT_PNTTM, 'YYYY-MM-DD') as updtPnttm,
A.USE_YN as useYn
FROM TB_PROHIBITION A
WHERE 1=1
AND A.PROHIBIT_ID = #prohibitId#
</select>
<!-- 금지어 :: 입력 -->
<insert id="prohibitMngDAO.insertProhibit">
INSERT
INTO TB_PROHIBIT_MNG(
PROHIBIT_SJ,
PROHIBIT_CN,
REGISTER_ID,
REGIST_PNTTM
)
VALUES(
#prohibitSj#,
#prohibitCn#,
#registerId#,
now()
)
</insert>
<!-- 금지어 :: 입력 -->
<insert id="prohibitMngDAO.insertProhi">
INSERT
INTO TB_PROHIBITION(
PROHIBIT_ID,
PROHIBIT_CN,
REGISTER_ID,
REGIST_PNTTM,
USE_YN
)
VALUES(
#prohibitId#,
#prohibitCn#,
#registerId#,
now(),
#useYn#
)
</insert>
<!-- 금지어 :: 삭제 -->
<delete id="prohibitMngDAO.deleteProhibit" parameterClass="prohibitVO">
DELETE FROM TB_PROHIBIT_MNG
</delete>
<!-- 금지어 :: 삭제 -->
<delete id="prohibitMngDAO.deleteProhi" parameterClass="prohibitVO">
DELETE FROM TB_PROHIBITION
WHERE PROHIBIT_ID = #prohibitId#
</delete>
<!-- 금지어 :: 수정 -->
<update id="prohibitMngDAO.updateProhibit" parameterClass="prohibitVO">
UPDATE TB_PROHIBIT_MNG
SET PROHIBIT_CN = #prohibitCn#,
REGISTER_ID = #registerId#,
UPDT_PNTTM = now()
</update>
<!-- 금지어 :: 수정 -->
<update id="prohibitMngDAO.updateProhi" parameterClass="prohibitVO">
UPDATE TB_PROHIBITION
SET PROHIBIT_CN = #prohibitCn#,
REGISTER_ID = #registerId#,
UPDT_PNTTM = now(),
USE_YN = #useYn#
WHERE PROHIBIT_ID = #prohibitId#
</update>
</sqlMap>

View File

@ -0,0 +1,286 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!--
수정일 수정자 수정내용
=========== ======== =================================================
2011.10.06 이기하 보안 취약점 점검사항 반영 $->#변경
-->
<sqlMap namespace="UnityLink">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="cntManageVO" type="kcc.let.uss.ion.cnt.service.CntManageVO" />
<!-- 컨텐츠 리스트 -->
<select id="cntManageDAO.selectCntList" parameterClass="cntManageVO" resultClass="cntManageVO">
/* cntManageDAO.selectCntList */
SELECT A.CNT_ID AS cntId,
A.CNTDT_ID AS cntDtId,
A.CNT_NAME AS cntName,
B.EMPLYR_ID AS registerId,
A.MENU_NO AS menuNo ,
/*
IF(C.MENU_NM='root' , '', C.MENU_NM) AS menuNm,
*/
CASE WHEN C.MENU_NM='root' THEN '' ELSE C.MENU_NM END AS menuNm,
TO_CHAR(A.REGIST_PNTTM , 'YYYY-MM-DD HH24') registPnttm
FROM CNT_MANAGE A LEFT JOIN LETTNEMPLYRINFO B
ON A.REGISTER_ID = B.ESNTL_ID
LEFT OUTER JOIN LETTNMENUINFO C
ON A.MENU_NO = C.MENU_NO
WHERE 1=1
<isNotEmpty property="searchKeyword">
AND CNT_NAME LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isNotEmpty>
<isNotEmpty property="searchConditionSite">
AND A.SITE_ID = #searchConditionSite#
</isNotEmpty>
AND A.USE_AT = 'Y'
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<!-- 컨텐츠 리스트 카운트 -->
<select id="cntManageDAO.selectCntListTotCnt" parameterClass="cntManageVO" resultClass="int">
/* cntManageDAO.selectCntListTotCnt */
SELECT COUNT( A.CNT_ID ) totcnt
FROM CNT_MANAGE A
WHERE 1=1
<isNotEmpty property="searchKeyword">
AND CNT_NAME LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isNotEmpty>
<isNotEmpty property="searchConditionSite">
AND A.SITE_ID = #searchConditionSite#
</isNotEmpty>
AND A.USE_AT = 'Y'
</select>
<!-- 컨텐츠 insert -->
<insert id="cntManageDAO.insertCntManage" parameterClass="cntManageVO">
INSERT INTO CNT_MANAGE
(
CNT_ID,
CNTDT_ID,
CNT_NAME,
CNT_FILE_FOLDER,
CNT_CN,
REGISTER_ID,
REGIST_PNTTM,
USE_AT,
MENU_NO
)VALUES(
#cntId#,
#cntDtId#,
#cntName#,
#cntFileFolder#,
#cntCn#,
#registerId#,
SYSDATE,
'Y',
(SELECT MENU_NO FROM CNT_MANAGE A
WHERE A.CNT_ID = #cntId#
LIMIT 1
)
)
</insert>
<!-- 컨텐츠 상세정보 -->
<select id="cntManageDAO.selectCntDtDetail" parameterClass="cntManageVO" resultClass="cntManageVO">
/* cntManageDAO.selectCntDtDetail */
SELECT A.CNT_ID cntId,
A.CNTDT_ID cntDtId,
A.CNT_CN cntCn ,
A.CNT_NAME cntName,
B.EMPLYR_ID registerId,
TO_CHAR(A.REGIST_PNTTM , 'YYYY-MM-DD HH24') registPnttm
FROM CNT_MANAGE A LEFT JOIN LETTNEMPLYRINFO B
ON A.REGISTER_ID = B.ESNTL_ID
WHERE 1=1
AND CNTDT_ID = #cntDtId#
/* AND A.USE_AT = 'Y' */
LIMIT 1
</select>
<!-- 수정시 이전 컨텐츠 정보 모두 사용안함'N' 으로 -->
<update id="cntManageDAO.updateCntManageBeforeN" parameterClass="cntManageVO">
<![CDATA[
UPDATE CNT_MANAGE
SET USE_AT = 'N'
WHERE CNT_ID = #cntId#
]]>
</update>
<!-- 모든 컨텐츠 정보 삭제 -->
<delete id="cntManageDAO.deleteCntManage" parameterClass="cntManageVO">
<![CDATA[
DELETE FROM CNT_MANAGE
WHERE CNT_ID = #cntId#
]]>
</delete>
<!-- 모든 cnt_id 에 등록된 cntDt_id 가져오기(파일 삭제를 위해) -->
<select id="cntManageDAO.selectCntDtDetailAll" parameterClass="cntManageVO" resultClass="cntManageVO">
/* cntManageDAO.selectCntDtDetailAll */
SELECT
A.CNTDT_ID cntDtId,
A.CNT_NAME cntName,
B.EMPLYR_ID registerId,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD HH24:MI:SS') AS registPnttm
FROM CNT_MANAGE A INNER JOIN LETTNEMPLYRINFO B
ON A.REGISTER_ID = B.ESNTL_ID
WHERE 1=1
AND CNT_ID = #cntId#
<isNotEmpty property="useAt">
AND USE_AT = #useAt#
</isNotEmpty>
ORDER BY CNTDT_ID DESC
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<select id="cntManageDAO.selectCntDetailListTotCnt" parameterClass="cntManageVO" resultClass="int">
/* cntManageDAO.selectCntDetailListTotCnt */
SELECT
count(A.CNTDT_ID) totCnt
FROM CNT_MANAGE A
WHERE 1=1
AND CNT_ID = #cntId#
<isNotEmpty property="useAt">
AND USE_AT = #useAt#
</isNotEmpty>
</select>
<!-- 개별 컨텐츠 정보 삭제 -->
<delete id="cntManageDAO.deleteCntDtManage" parameterClass="cntManageVO">
<![CDATA[
DELETE FROM CNT_MANAGE
WHERE CNTDT_ID = #cntDtId#
]]>
</delete>
<!-- 컨텐츠 상세정보 -->
<select id="cntManageDAO.selectContentVo" parameterClass="cntManageVO" resultClass="cntManageVO">
/* cntManageDAO.selectContentVo */
SELECT CNTDT_ID cntDtId,
CNT_ID cntId,
CNT_NAME cntName,
(SELECT MENU_NM||'>'||C.MENU_NM FROM LETTNMENUINFO
WHERE MENU_NO = C.UPPER_MENU_NO ) menu_fullNm,
'' as menuCours
/*getMenuCours(C.MENU_NO) as menuCours*/
FROM LETTNPROGRMLIST A INNER JOIN CNT_MANAGE B
ON A.PROGRM_HTML_FILE_ID = B.CNT_ID
INNER JOIN LETTNMENUINFO C
ON A.PROGRM_FILE_NM = C.PROGRM_FILE_NM
WHERE A.PROGRM_FILE_NM = #progrmFileNm#
AND C.PROGRM_FILE_NM = #progrmFileNm#
AND B.USE_AT = 'Y'
LIMIT 1
</select>
<!-- 컨텐츠 상세정보 -->
<select id="cntManageDAO.selectContentByCntDtId" parameterClass="cntManageVO" resultClass="cntManageVO">
/* cntManageDAO.selectContentByCntDtId */
SELECT A.CNT_ID as cntId,
A.CNTDT_ID as cntDtId,
B.PROGRM_FILE_NM as progrmFileNm,
'' AS menuCours
/*GETMENUCOURS(C.MENU_NO) menuCours*/
FROM CNT_MANAGE A INNER JOIN LETTNPROGRMLIST B
ON A.CNT_ID = B.PROGRM_HTML_FILE_ID
INNER JOIN LETTNMENUINFO C ON B.PROGRM_FILE_NM = C.PROGRM_FILE_NM
WHERE CNTDT_ID = #cntDtId#
LIMIT 1
</select>
<!-- 컨텐츠 상세정보 -->
<select id="cntManageDAO.selectContentByProFn" parameterClass="cntManageVO" resultClass="cntManageVO">
/* cntManageDAO.selectContentByProFn */
SELECT A.CNT_ID as cntId,
A.CNTDT_ID as cntDtId
FROM CNT_MANAGE A
WHERE CNT_NAME = #progrmFileNm#
AND USE_AT = 'Y'
LIMIT 1
</select>
<!-- 메뉴관리에서 등록시 메뉴번호 입력 -->
<update id="cntManageDAO.updateMenuContent" parameterClass="cntManageVO">
<![CDATA[
UPDATE CNT_MANAGE
SET MENU_NO = #menuNo#
WHERE CNT_ID = #cntId#
]]>
</update>
<!-- 메뉴관리에서 등록시 메뉴번호 입력 -->
<update id="cntManageDAO.deleteMenuNo" parameterClass="cntManageVO">
<![CDATA[
UPDATE CNT_MANAGE
SET MENU_NO = null
WHERE MENU_NO = #menuNo#
]]>
</update>
<!-- 컨텐츠 상세정보 -->
<select id="cntManageDAO.selectContentUseVo" parameterClass="cntManageVO" resultClass="cntManageVO">
/* cntManageDAO.selectContentUseVo */
SELECT A.CNT_ID cntId,
A.CNTDT_ID cntDtId,
A.CNT_NAME cntName,
B.EMPLYR_ID registerId,
DATE_FORMAT(A.REGIST_PNTTM , '%Y-%m-%d %T') registPnttm
FROM CNT_MANAGE A LEFT JOIN LETTNEMPLYRINFO B
ON A.REGISTER_ID = B.ESNTL_ID
WHERE 1=1
AND CNT_ID = #cntId#
AND A.USE_AT = 'Y'
LIMIT 1
</select>
<!-- 찾교 청소년 메일 본문 수정 -->
<update id="cntManageDAO.updateCntMail" parameterClass="cntManageVO">
/* cntManageDAO.updateCntMail */
MERGE INTO CNT_MANAGE
USING DUAL
ON(
CNT_ID = #cntId#
AND CNTDT_ID = #cntDtId#
)
WHEN NOT MATCHED THEN
INSERT
(
CNT_ID
, CNTDT_ID
, CNT_CN
, REGISTER_ID
, REGIST_PNTTM
)
VALUES(
#cntId#,
#cntDtId#,
#cntCn#,
#registerId#,
SYSDATE
)
WHEN MATCHED THEN
UPDATE
SET CNT_CN = #cntCn#
</update>
</sqlMap>

View File

@ -0,0 +1,286 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!--
수정일 수정자 수정내용
=========== ======== =================================================
2011.10.06 이기하 보안 취약점 점검사항 반영 $->#변경
-->
<sqlMap namespace="UnityLink">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="cntManageVO" type="kcc.let.uss.ion.cnt.service.CntManageVO" />
<!-- 컨텐츠 리스트 -->
<select id="cntManageDAO.selectCntList" parameterClass="cntManageVO" resultClass="cntManageVO">
/* cntManageDAO.selectCntList */
SELECT A.CNT_ID AS cntId,
A.CNTDT_ID AS cntDtId,
A.CNT_NAME AS cntName,
B.EMPLYR_ID AS registerId,
A.MENU_NO AS menuNo ,
/*
IF(C.MENU_NM='root' , '', C.MENU_NM) AS menuNm,
*/
CASE WHEN C.MENU_NM='root' THEN '' ELSE C.MENU_NM END AS menuNm,
TO_CHAR(A.REGIST_PNTTM , 'YYYY-MM-DD HH24') registPnttm
FROM CNT_MANAGE A LEFT JOIN LETTNEMPLYRINFO B
ON A.REGISTER_ID = B.ESNTL_ID
LEFT OUTER JOIN LETTNMENUINFO C
ON A.MENU_NO = C.MENU_NO
WHERE 1=1
<isNotEmpty property="searchKeyword">
AND CNT_NAME LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isNotEmpty>
<isNotEmpty property="searchConditionSite">
AND A.SITE_ID = #searchConditionSite#
</isNotEmpty>
AND A.USE_AT = 'Y'
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<!-- 컨텐츠 리스트 카운트 -->
<select id="cntManageDAO.selectCntListTotCnt" parameterClass="cntManageVO" resultClass="int">
/* cntManageDAO.selectCntListTotCnt */
SELECT COUNT( A.CNT_ID ) totcnt
FROM CNT_MANAGE A
WHERE 1=1
<isNotEmpty property="searchKeyword">
AND CNT_NAME LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isNotEmpty>
<isNotEmpty property="searchConditionSite">
AND A.SITE_ID = #searchConditionSite#
</isNotEmpty>
AND A.USE_AT = 'Y'
</select>
<!-- 컨텐츠 insert -->
<insert id="cntManageDAO.insertCntManage" parameterClass="cntManageVO">
INSERT INTO CNT_MANAGE
(
CNT_ID,
CNTDT_ID,
CNT_NAME,
CNT_FILE_FOLDER,
CNT_CN,
REGISTER_ID,
REGIST_PNTTM,
USE_AT,
MENU_NO
)VALUES(
#cntId#,
#cntDtId#,
#cntName#,
#cntFileFolder#,
#cntCn#,
#registerId#,
SYSDATE,
'Y',
(SELECT MENU_NO FROM CNT_MANAGE A
WHERE A.CNT_ID = #cntId#
LIMIT 1
)
)
</insert>
<!-- 컨텐츠 상세정보 -->
<select id="cntManageDAO.selectCntDtDetail" parameterClass="cntManageVO" resultClass="cntManageVO">
/* cntManageDAO.selectCntDtDetail */
SELECT A.CNT_ID cntId,
A.CNTDT_ID cntDtId,
A.CNT_CN cntCn ,
A.CNT_NAME cntName,
B.EMPLYR_ID registerId,
TO_CHAR(A.REGIST_PNTTM , 'YYYY-MM-DD HH24') registPnttm
FROM CNT_MANAGE A LEFT JOIN LETTNEMPLYRINFO B
ON A.REGISTER_ID = B.ESNTL_ID
WHERE 1=1
AND CNTDT_ID = #cntDtId#
/* AND A.USE_AT = 'Y' */
LIMIT 1
</select>
<!-- 수정시 이전 컨텐츠 정보 모두 사용안함'N' 으로 -->
<update id="cntManageDAO.updateCntManageBeforeN" parameterClass="cntManageVO">
<![CDATA[
UPDATE CNT_MANAGE
SET USE_AT = 'N'
WHERE CNT_ID = #cntId#
]]>
</update>
<!-- 모든 컨텐츠 정보 삭제 -->
<delete id="cntManageDAO.deleteCntManage" parameterClass="cntManageVO">
<![CDATA[
DELETE FROM CNT_MANAGE
WHERE CNT_ID = #cntId#
]]>
</delete>
<!-- 모든 cnt_id 에 등록된 cntDt_id 가져오기(파일 삭제를 위해) -->
<select id="cntManageDAO.selectCntDtDetailAll" parameterClass="cntManageVO" resultClass="cntManageVO">
/* cntManageDAO.selectCntDtDetailAll */
SELECT
A.CNTDT_ID cntDtId,
A.CNT_NAME cntName,
B.EMPLYR_ID registerId,
TO_CHAR(A.REGIST_PNTTM, 'YYYY-MM-DD HH24:MI:SS') AS registPnttm
FROM CNT_MANAGE A INNER JOIN LETTNEMPLYRINFO B
ON A.REGISTER_ID = B.ESNTL_ID
WHERE 1=1
AND CNT_ID = #cntId#
<isNotEmpty property="useAt">
AND USE_AT = #useAt#
</isNotEmpty>
ORDER BY CNTDT_ID DESC
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<select id="cntManageDAO.selectCntDetailListTotCnt" parameterClass="cntManageVO" resultClass="int">
/* cntManageDAO.selectCntDetailListTotCnt */
SELECT
count(A.CNTDT_ID) totCnt
FROM CNT_MANAGE A
WHERE 1=1
AND CNT_ID = #cntId#
<isNotEmpty property="useAt">
AND USE_AT = #useAt#
</isNotEmpty>
</select>
<!-- 개별 컨텐츠 정보 삭제 -->
<delete id="cntManageDAO.deleteCntDtManage" parameterClass="cntManageVO">
<![CDATA[
DELETE FROM CNT_MANAGE
WHERE CNTDT_ID = #cntDtId#
]]>
</delete>
<!-- 컨텐츠 상세정보 -->
<select id="cntManageDAO.selectContentVo" parameterClass="cntManageVO" resultClass="cntManageVO">
/* cntManageDAO.selectContentVo */
SELECT CNTDT_ID cntDtId,
CNT_ID cntId,
CNT_NAME cntName,
(SELECT MENU_NM||'>'||C.MENU_NM FROM LETTNMENUINFO
WHERE MENU_NO = C.UPPER_MENU_NO ) menu_fullNm,
'' as menuCours
/*getMenuCours(C.MENU_NO) as menuCours*/
FROM LETTNPROGRMLIST A INNER JOIN CNT_MANAGE B
ON A.PROGRM_HTML_FILE_ID = B.CNT_ID
INNER JOIN LETTNMENUINFO C
ON A.PROGRM_FILE_NM = C.PROGRM_FILE_NM
WHERE A.PROGRM_FILE_NM = #progrmFileNm#
AND C.PROGRM_FILE_NM = #progrmFileNm#
AND B.USE_AT = 'Y'
LIMIT 1
</select>
<!-- 컨텐츠 상세정보 -->
<select id="cntManageDAO.selectContentByCntDtId" parameterClass="cntManageVO" resultClass="cntManageVO">
/* cntManageDAO.selectContentByCntDtId */
SELECT A.CNT_ID as cntId,
A.CNTDT_ID as cntDtId,
B.PROGRM_FILE_NM as progrmFileNm,
'' AS menuCours
/*GETMENUCOURS(C.MENU_NO) menuCours*/
FROM CNT_MANAGE A INNER JOIN LETTNPROGRMLIST B
ON A.CNT_ID = B.PROGRM_HTML_FILE_ID
INNER JOIN LETTNMENUINFO C ON B.PROGRM_FILE_NM = C.PROGRM_FILE_NM
WHERE CNTDT_ID = #cntDtId#
LIMIT 1
</select>
<!-- 컨텐츠 상세정보 -->
<select id="cntManageDAO.selectContentByProFn" parameterClass="cntManageVO" resultClass="cntManageVO">
/* cntManageDAO.selectContentByProFn */
SELECT A.CNT_ID as cntId,
A.CNTDT_ID as cntDtId
FROM CNT_MANAGE A
WHERE CNT_NAME = #progrmFileNm#
AND USE_AT = 'Y'
LIMIT 1
</select>
<!-- 메뉴관리에서 등록시 메뉴번호 입력 -->
<update id="cntManageDAO.updateMenuContent" parameterClass="cntManageVO">
<![CDATA[
UPDATE CNT_MANAGE
SET MENU_NO = #menuNo#
WHERE CNT_ID = #cntId#
]]>
</update>
<!-- 메뉴관리에서 등록시 메뉴번호 입력 -->
<update id="cntManageDAO.deleteMenuNo" parameterClass="cntManageVO">
<![CDATA[
UPDATE CNT_MANAGE
SET MENU_NO = null
WHERE MENU_NO = #menuNo#
]]>
</update>
<!-- 컨텐츠 상세정보 -->
<select id="cntManageDAO.selectContentUseVo" parameterClass="cntManageVO" resultClass="cntManageVO">
/* cntManageDAO.selectContentUseVo */
SELECT A.CNT_ID cntId,
A.CNTDT_ID cntDtId,
A.CNT_NAME cntName,
B.EMPLYR_ID registerId,
DATE_FORMAT(A.REGIST_PNTTM , '%Y-%m-%d %T') registPnttm
FROM CNT_MANAGE A LEFT JOIN LETTNEMPLYRINFO B
ON A.REGISTER_ID = B.ESNTL_ID
WHERE 1=1
AND CNT_ID = #cntId#
AND A.USE_AT = 'Y'
LIMIT 1
</select>
<!-- 찾교 청소년 메일 본문 수정 -->
<update id="cntManageDAO.updateCntMail" parameterClass="cntManageVO">
/* cntManageDAO.updateCntMail */
MERGE INTO CNT_MANAGE
USING DUAL
ON(
CNT_ID = #cntId#
AND CNTDT_ID = #cntDtId#
)
WHEN NOT MATCHED THEN
INSERT
(
CNT_ID
, CNTDT_ID
, CNT_CN
, REGISTER_ID
, REGIST_PNTTM
)
VALUES(
#cntId#,
#cntDtId#,
#cntCn#,
#registerId#,
SYSDATE
)
WHEN MATCHED THEN
UPDATE
SET CNT_CN = #cntCn#
</update>
</sqlMap>

View File

@ -0,0 +1,46 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!--
수정일 수정자 수정내용
=========== ======== =================================================
2011.10.06 이기하 보안 취약점 점검사항 반영 $->#변경
-->
<sqlMap namespace="UnityLink">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="cyberAlertManageVO" type="kcc.com.uss.ion.cyb.service.CyberAlertManageVO" />
<select id="CyberAlertManage.selectCyberAlertMap" parameterClass="cyberAlertManageVO" resultClass="egovMap">
SELECT A.CA_ID,
A.CA_LEVEL,
A.REGISTER_ID,
DATE_FORMAT(A.REGIST_PNTTM, '%Y-%m-%d') REGIST_PNTTM,
A.LAST_UPDUSR_ID,
DATE_FORMAT(A.LAST_UPDT_PNTTM, '%Y-%m-%d') LAST_UPDT_PNTTM
FROM CYBER_ALERT A
</select>
<update id="CyberAlertManage.updateCyberAlert" parameterClass="cyberAlertManageVO" >
<![CDATA[
INSERT INTO CYBER_ALERT(
CA_ID, CA_LEVEL, REGISTER_ID)
VALUES(
#caId#, #caLevel#, #registerId# )
ON DUPLICATE KEY UPDATE
CA_ID = #caId#,
CA_LEVEL = #caLevel#,
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = now()
]]>
</update>
<delete id="CyberAlertManage.deleteCyberAlert" parameterClass="cyberAlertManageVO">
<![CDATA[
DELETE FROM CYBER_ALERT
WHERE
CA_ID = #caId#
]]>
</delete>
</sqlMap>

View File

@ -0,0 +1,46 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!--
수정일 수정자 수정내용
=========== ======== =================================================
2011.10.06 이기하 보안 취약점 점검사항 반영 $->#변경
-->
<sqlMap namespace="UnityLink">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="cyberAlertManageVO" type="kcc.com.uss.ion.cyb.service.CyberAlertManageVO" />
<select id="CyberAlertManage.selectCyberAlertMap" parameterClass="cyberAlertManageVO" resultClass="egovMap">
SELECT A.CA_ID,
A.CA_LEVEL,
A.REGISTER_ID,
DATE_FORMAT(A.REGIST_PNTTM, '%Y-%m-%d') REGIST_PNTTM,
A.LAST_UPDUSR_ID,
DATE_FORMAT(A.LAST_UPDT_PNTTM, '%Y-%m-%d') LAST_UPDT_PNTTM
FROM CYBER_ALERT A
</select>
<update id="CyberAlertManage.updateCyberAlert" parameterClass="cyberAlertManageVO" >
<![CDATA[
INSERT INTO CYBER_ALERT(
CA_ID, CA_LEVEL, REGISTER_ID)
VALUES(
#caId#, #caLevel#, #registerId# )
ON DUPLICATE KEY UPDATE
CA_ID = #caId#,
CA_LEVEL = #caLevel#,
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = now()
]]>
</update>
<delete id="CyberAlertManage.deleteCyberAlert" parameterClass="cyberAlertManageVO">
<![CDATA[
DELETE FROM CYBER_ALERT
WHERE
CA_ID = #caId#
]]>
</delete>
</sqlMap>

View File

@ -0,0 +1,259 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!--
수정일 수정자 수정내용
=========== ======== =================================================
2011.10.06 이기하 보안 취약점 점검사항 반영 $->#변경
-->
<sqlMap namespace="UnityLink">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="fmsFileVO" type="kcc.com.uss.ion.fms.service.FmsFileVO" />
<!-- 첨부파일 관리::입력 -->
<insert id="fmsFileDAO.insertFmsFile">
INSERT
INTO LETFMSFILE
(
FMS_ID,
FMS_NM,
CONTENT,
FMS_LINK,
FMS_DOWN_LINK,
REGDT,
MODDT,
REGISTER_ID,
FMS_IMAGE_FILE,
FMS_IMAGE
)
VALUES
(
#fmsId#,
#fmsNm#,
#content#,
#fmsLink#,
#fmsDownLink#,
SYSDATE,
SYSDATE,
#registerId#,
#fmsImageFile#,
#fmsImage#
)
</insert>
<!-- 첨부파일관리 리스트 -->
<select id="fmsFileDAO.selectfmsFileList" parameterClass="fmsFileVO" resultClass="fmsFileVO">
/* fmsFileDAO.selectfmsFileList */
SELECT FMS_ID AS fmsId,
FMS_NM AS fmsNm,
CONTENT AS content,
FMS_LINK AS fmsLink,
FMS_DOWN_LINK AS fmsDownLink,
/*
DATE_FORMAT(REGDT, '%Y-%m-%d %h:%m:%s') regdt ,
DATE_FORMAT(MODDT, '%Y-%m-%d %h:%m:%s') moddt ,
*/
TO_CHAR(REGDT, 'YYYY-MM-DD HH24:MI:SS') regdt ,
TO_CHAR(MODDT, 'YYYY-MM-DD HH24:MI:SS') moddt ,
REGISTER_ID AS registerId,
FMS_IMAGE_FILE AS fmsImageFile,
FMS_IMAGE AS fmsImage,
(
SELECT
ATCH_FILE_ID
FROM
LETTNFILEDETAIL
WHERE
ATCH_FILE_ID = FMS_IMAGE_FILE
limit 1
) AS atchFileId
FROM LETFMSFILE A
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND ( FMS_NM LIKE CONCAT ('%', #searchKeyword#,'%')
OR CONTENT LIKE CONCAT ('%', #searchKeyword#,'%')
)
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND FMS_NM LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
<isEqual property="searchCondition" compareValue="2">
AND CONTENT LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
</isNotEmpty>
/*
ORDER BY 1=1
*/
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<!-- 첨부파일 관리::리스트 count -->
<select id="fmsFileDAO.selectfmsFileCount" resultClass="int">
/* fmsFileDAO.selectfmsFileCount */
SELECT
COUNT(*) totcnt
FROM LETFMSFILE
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND ( FMS_NM LIKE '%'||#searchKeyword#||'%'
OR CONTENT LIKE '%'||#searchKeyword#||'%'
)
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND FMS_NM LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="2">
AND CONTENT LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
<isNotEmpty property="searchConditionSite">
AND SITE_ID = #searchConditionSite#
</isNotEmpty>
</select>
<!-- 첨부파일 관리::상세조회 -->
<select id="fmsFileDAO.selectfmsFileVO" parameterClass="fmsFileVO" resultClass="fmsFileVO" >
/* fmsFileDAO.selectfmsFileVO */
SELECT FMS_ID AS fmsId,
FMS_NM AS fmsNm,
CONTENT AS content,
FMS_LINK AS fmsLink,
FMS_DOWN_LINK AS fmsDownLink,
TO_CHAR(REGDT, 'YYYY-MM-DD HH24:MI:SS') regdt ,
TO_CHAR(MODDT, 'YYYY-MM-DD HH24:MI:SS') moddt ,
REGISTER_ID AS registerId,
FMS_IMAGE_FILE AS fmsImageFile,
FMS_IMAGE AS fmsImage
FROM LETFMSFILE
WHERE 1=1
AND FMS_ID = #fmsId#
LIMIT 1
</select>
<!-- 첨부파일 관리::상세조회(파일위치까지 조회: 파일까지 삭제하기 위해 -->
<select id="fmsFileDAO.selectfmsFileDirVO" parameterClass="fmsFileVO" resultClass="fmsFileVO" >
/* fmsFileDAO.selectfmsFileDirVO */
SELECT A.FMS_ID AS fmsId,
A.FMS_NM AS fmsNm,
A.CONTENT AS content,
A.FMS_LINK AS fmsLink,
A.FMS_DOWN_LINK AS fmsDownLink,
TO_CHAR(REGDT, 'YYYY-MM-DD HH24:MI:SS') regdt ,
TO_CHAR(MODDT, 'YYYY-MM-DD HH24:MI:SS') moddt ,
A.REGISTER_ID AS registerId,
A.FMS_IMAGE_FILE AS fmsImageFile,
A.FMS_IMAGE AS fmsImage,
CONCAT( B.FILE_STRE_COURS, B.STRE_FILE_NM) as whFile
FROM LETFMSFILE A INNER JOIN LETTNFILEDETAIL B
ON A.FMS_IMAGE_FILE = B.ATCH_FILE_ID
AND A.FMS_ID = #fmsId#
LIMIT 1
</select>
<delete id="fmsFileDAO.deleteFmsFile">
<![CDATA[
DELETE FROM LETFMSFILE
WHERE FMS_ID = #fmsId#
]]>
</delete>
<!-- 첨부파일관리 리스트 -->
<select id="fmsFileDAO.selectfmsFileVoList" parameterClass="fmsFileVO" resultClass="fmsFileVO">
/* fmsFileDAO.selectfmsFileVoList */
<![CDATA[
SELECT A.FMS_ID AS fmsId,
A.FMS_NM AS fmsNm,
A.CONTENT AS content,
CONCAT(A.FMS_LINK,B.FILE_SN) AS fmsLink,
CONCAT(A.FMS_DOWN_LINK,B.FILE_SN) AS fmsDownLink ,
TO_CHAR(A.REGDT, 'YYYY-MM-DD HH24:MI:SS') regdt ,
TO_CHAR(A.MODDT, 'YYYY-MM-DD HH24:MI:SS') moddt ,
A.REGISTER_ID AS registerId,
A.FMS_IMAGE_FILE AS fmsImageFile,
A.FMS_IMAGE AS fmsImage,
CONCAT( B.FILE_STRE_COURS, B.STRE_FILE_NM) as whFile,
LOWER(B.FILE_EXTSN) AS fileExtsn,
B.ORIGNL_FILE_NM AS orignlFileNm ,
B.FILE_SN AS fileSn ,
B.FILE_STRE_COURS AS fileStreCours,
B.STRE_FILE_NM AS streFileNm,
B.FILE_SIZE AS fileSize
FROM LETFMSFILE A LEFT JOIN LETTNFILEDETAIL B
ON A.FMS_IMAGE_FILE = B.ATCH_FILE_ID
WHERE 1=1
AND A.FMS_ID = #fmsId#
]]>
</select>
<update id="fmsFileDAO.updateFmsFile">
UPDATE LETFMSFILE
SET
FMS_NM= #fmsNm#,
CONTENT= #content#,
MODDT= SYSDATE,
<isNotEmpty property="fmsLink">
FMS_LINK = #fmsLink# ,
</isNotEmpty>
<isNotEmpty property="fmsDownLink">
FMS_DOWN_LINK = #fmsDownLink# ,
</isNotEmpty>
<isNotEmpty property="fmsImageFile">
FMS_IMAGE_FILE = #fmsImageFile# ,
</isNotEmpty>
REGISTER_ID= #registerId#
WHERE FMS_ID=#fmsId#
</update>
<!-- 첨부파일 임시테이블 ::입력 -->
<insert id="fmsFileDAO.insertTempFileTable">
INSERT
INTO LETTNFILETEMPDETAIL
(
USER_ID,
URL,
FILE_SN,
FILE_STRE_COURS,
STRE_FILE_NM,
ORIGNL_FILE_NM,
FILE_EXTSN,
FILE_SIZE
)
VALUES
(
#userId#,
#url#,
#fileSn#,
#fileStreCours#,
#streFileNm#,
#orignlFileNm#,
#fileExtsn#,
#fileSize#
)
</insert>
<delete id="fmsFileDAO.deleteTempFileTable">
<![CDATA[
DELETE FROM LETTNFILETEMPDETAIL
WHERE USER_ID = #userId#
AND URL = #url#
]]>
</delete>
</sqlMap>

View File

@ -0,0 +1,259 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!--
수정일 수정자 수정내용
=========== ======== =================================================
2011.10.06 이기하 보안 취약점 점검사항 반영 $->#변경
-->
<sqlMap namespace="UnityLink">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="fmsFileVO" type="kcc.com.uss.ion.fms.service.FmsFileVO" />
<!-- 첨부파일 관리::입력 -->
<insert id="fmsFileDAO.insertFmsFile">
INSERT
INTO LETFMSFILE
(
FMS_ID,
FMS_NM,
CONTENT,
FMS_LINK,
FMS_DOWN_LINK,
REGDT,
MODDT,
REGISTER_ID,
FMS_IMAGE_FILE,
FMS_IMAGE
)
VALUES
(
#fmsId#,
#fmsNm#,
#content#,
#fmsLink#,
#fmsDownLink#,
SYSDATE,
SYSDATE,
#registerId#,
#fmsImageFile#,
#fmsImage#
)
</insert>
<!-- 첨부파일관리 리스트 -->
<select id="fmsFileDAO.selectfmsFileList" parameterClass="fmsFileVO" resultClass="fmsFileVO">
/* fmsFileDAO.selectfmsFileList */
SELECT FMS_ID AS fmsId,
FMS_NM AS fmsNm,
CONTENT AS content,
FMS_LINK AS fmsLink,
FMS_DOWN_LINK AS fmsDownLink,
/*
DATE_FORMAT(REGDT, '%Y-%m-%d %h:%m:%s') regdt ,
DATE_FORMAT(MODDT, '%Y-%m-%d %h:%m:%s') moddt ,
*/
TO_CHAR(REGDT, 'YYYY-MM-DD HH24:MI:SS') regdt ,
TO_CHAR(MODDT, 'YYYY-MM-DD HH24:MI:SS') moddt ,
REGISTER_ID AS registerId,
FMS_IMAGE_FILE AS fmsImageFile,
FMS_IMAGE AS fmsImage,
(
SELECT
ATCH_FILE_ID
FROM
LETTNFILEDETAIL
WHERE
ATCH_FILE_ID = FMS_IMAGE_FILE
limit 1
) AS atchFileId
FROM LETFMSFILE A
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND ( FMS_NM LIKE CONCAT ('%', #searchKeyword#,'%')
OR CONTENT LIKE CONCAT ('%', #searchKeyword#,'%')
)
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND FMS_NM LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
<isEqual property="searchCondition" compareValue="2">
AND CONTENT LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
</isNotEmpty>
/*
ORDER BY 1=1
*/
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<!-- 첨부파일 관리::리스트 count -->
<select id="fmsFileDAO.selectfmsFileCount" resultClass="int">
/* fmsFileDAO.selectfmsFileCount */
SELECT
COUNT(*) totcnt
FROM LETFMSFILE
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND ( FMS_NM LIKE '%'||#searchKeyword#||'%'
OR CONTENT LIKE '%'||#searchKeyword#||'%'
)
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND FMS_NM LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="2">
AND CONTENT LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
<isNotEmpty property="searchConditionSite">
AND SITE_ID = #searchConditionSite#
</isNotEmpty>
</select>
<!-- 첨부파일 관리::상세조회 -->
<select id="fmsFileDAO.selectfmsFileVO" parameterClass="fmsFileVO" resultClass="fmsFileVO" >
/* fmsFileDAO.selectfmsFileVO */
SELECT FMS_ID AS fmsId,
FMS_NM AS fmsNm,
CONTENT AS content,
FMS_LINK AS fmsLink,
FMS_DOWN_LINK AS fmsDownLink,
TO_CHAR(REGDT, 'YYYY-MM-DD HH24:MI:SS') regdt ,
TO_CHAR(MODDT, 'YYYY-MM-DD HH24:MI:SS') moddt ,
REGISTER_ID AS registerId,
FMS_IMAGE_FILE AS fmsImageFile,
FMS_IMAGE AS fmsImage
FROM LETFMSFILE
WHERE 1=1
AND FMS_ID = #fmsId#
LIMIT 1
</select>
<!-- 첨부파일 관리::상세조회(파일위치까지 조회: 파일까지 삭제하기 위해 -->
<select id="fmsFileDAO.selectfmsFileDirVO" parameterClass="fmsFileVO" resultClass="fmsFileVO" >
/* fmsFileDAO.selectfmsFileDirVO */
SELECT A.FMS_ID AS fmsId,
A.FMS_NM AS fmsNm,
A.CONTENT AS content,
A.FMS_LINK AS fmsLink,
A.FMS_DOWN_LINK AS fmsDownLink,
TO_CHAR(REGDT, 'YYYY-MM-DD HH24:MI:SS') regdt ,
TO_CHAR(MODDT, 'YYYY-MM-DD HH24:MI:SS') moddt ,
A.REGISTER_ID AS registerId,
A.FMS_IMAGE_FILE AS fmsImageFile,
A.FMS_IMAGE AS fmsImage,
CONCAT( B.FILE_STRE_COURS, B.STRE_FILE_NM) as whFile
FROM LETFMSFILE A INNER JOIN LETTNFILEDETAIL B
ON A.FMS_IMAGE_FILE = B.ATCH_FILE_ID
AND A.FMS_ID = #fmsId#
LIMIT 1
</select>
<delete id="fmsFileDAO.deleteFmsFile">
<![CDATA[
DELETE FROM LETFMSFILE
WHERE FMS_ID = #fmsId#
]]>
</delete>
<!-- 첨부파일관리 리스트 -->
<select id="fmsFileDAO.selectfmsFileVoList" parameterClass="fmsFileVO" resultClass="fmsFileVO">
/* fmsFileDAO.selectfmsFileVoList */
<![CDATA[
SELECT A.FMS_ID AS fmsId,
A.FMS_NM AS fmsNm,
A.CONTENT AS content,
CONCAT(A.FMS_LINK,B.FILE_SN) AS fmsLink,
CONCAT(A.FMS_DOWN_LINK,B.FILE_SN) AS fmsDownLink ,
TO_CHAR(A.REGDT, 'YYYY-MM-DD HH24:MI:SS') regdt ,
TO_CHAR(A.MODDT, 'YYYY-MM-DD HH24:MI:SS') moddt ,
A.REGISTER_ID AS registerId,
A.FMS_IMAGE_FILE AS fmsImageFile,
A.FMS_IMAGE AS fmsImage,
CONCAT( B.FILE_STRE_COURS, B.STRE_FILE_NM) as whFile,
LOWER(B.FILE_EXTSN) AS fileExtsn,
B.ORIGNL_FILE_NM AS orignlFileNm ,
B.FILE_SN AS fileSn ,
B.FILE_STRE_COURS AS fileStreCours,
B.STRE_FILE_NM AS streFileNm,
B.FILE_SIZE AS fileSize
FROM LETFMSFILE A LEFT JOIN LETTNFILEDETAIL B
ON A.FMS_IMAGE_FILE = B.ATCH_FILE_ID
WHERE 1=1
AND A.FMS_ID = #fmsId#
]]>
</select>
<update id="fmsFileDAO.updateFmsFile">
UPDATE LETFMSFILE
SET
FMS_NM= #fmsNm#,
CONTENT= #content#,
MODDT= SYSDATE,
<isNotEmpty property="fmsLink">
FMS_LINK = #fmsLink# ,
</isNotEmpty>
<isNotEmpty property="fmsDownLink">
FMS_DOWN_LINK = #fmsDownLink# ,
</isNotEmpty>
<isNotEmpty property="fmsImageFile">
FMS_IMAGE_FILE = #fmsImageFile# ,
</isNotEmpty>
REGISTER_ID= #registerId#
WHERE FMS_ID=#fmsId#
</update>
<!-- 첨부파일 임시테이블 ::입력 -->
<insert id="fmsFileDAO.insertTempFileTable">
INSERT
INTO LETTNFILETEMPDETAIL
(
USER_ID,
URL,
FILE_SN,
FILE_STRE_COURS,
STRE_FILE_NM,
ORIGNL_FILE_NM,
FILE_EXTSN,
FILE_SIZE
)
VALUES
(
#userId#,
#url#,
#fileSn#,
#fileStreCours#,
#streFileNm#,
#orignlFileNm#,
#fileExtsn#,
#fileSize#
)
</insert>
<delete id="fmsFileDAO.deleteTempFileTable">
<![CDATA[
DELETE FROM LETTNFILETEMPDETAIL
WHERE USER_ID = #userId#
AND URL = #url#
]]>
</delete>
</sqlMap>

View File

@ -0,0 +1,202 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!--
수정일 수정자 수정내용
=========== ======== =================================================
2011.10.06 이기하 보안 취약점 점검사항 반영 $->#변경
-->
<sqlMap namespace="SatManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="cntManageVO" type="kcc.let.uss.ion.cnt.service.CntManageVO" />
<typeAlias alias="siteManagerVO" type="kcc.let.sym.site.service.SiteManagerVO" />
<typeAlias alias="menuManageVO" type="kcc.let.sym.mnu.mpm.service.MenuManageVO" />
<typeAlias alias="researchVO" type="kcc.let.solr.sys.service.ResearchVO" />
<!-- 만족도 관리 사이트 리스트 -->
<select id="satManageDAO.selectSatSiteList" parameterClass="siteManagerVO" resultClass="siteManagerVO">
SELECT
FRST_REGISTER_ID AS frstRegisterId,
FRST_REGIST_PNTTM AS frstRegistPnttm,
FRST_REGIST_PNTTM AS sortTempNo
FROM SITEMANAGER
WHERE 1=1
<isNotEmpty property="searchKeyword">
</isNotEmpty>
ORDER BY 1=1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<!-- 만족도 관리 사이트 리스트 카운트 -->
<select id="satManageDAO.selectSatSiteTotCnt" parameterClass="siteManagerVO" resultClass="int">
SELECT COUNT(*) AS totcnt
FROM SITEMANAGER
WHERE 1=1
<isNotEmpty property="searchKeyword">
</isNotEmpty>
</select>
<!-- 만족도 관리 메뉴 리스트 -->
<select id="satManageDAO.selectSatMenuList" parameterClass="menuManageVO" resultClass="menuManageVO">
SELECT
B.MENU_NM AS menuNm,
B.MENU_DC AS menuDc,
A.MENU_NO AS menuNo,
(SELECT COUNT(*)
FROM SATISFACTION
WHERE MENU_NO = A.MENU_NO) AS satisCnt
FROM LETTNMENUCREATDTLS A
INNER JOIN LETTNMENUINFO B
ON A.MENU_NO = B.MENU_NO
WHERE 1=1
AND A.SATIS_YN = 'Y'
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="">
( MENU_NM LIKE CONCAT('%' , #searchKeyword#, '%') OR MENU_DC LIKE CONCAT('%' , #searchKeyword#, '%') )
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
MENU_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
MENU_DC LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
</isNotEmpty>
ORDER BY 1=1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<!-- 만족도 관리 메뉴 리스트 카운트 -->
<select id="satManageDAO.selectSatMenuTotCnt" parameterClass="menuManageVO" resultClass="int">
SELECT COUNT(*) AS totcnt
FROM LETTNMENUCREATDTLS A
INNER JOIN LETTNMENUINFO B
ON A.MENU_NO = B.MENU_NO
WHERE 1=1
AND SATIS_YN = 'Y'
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="">
( MENU_NM LIKE CONCAT('%' , #searchKeyword#, '%') OR MENU_DC LIKE CONCAT('%' , #searchKeyword#, '%') )
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
MENU_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
MENU_DC LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
</isNotEmpty>
</select>
<!-- 만족도 관리 결과 수 -->
<select id="satManageDAO.selectSatisResultCnt" parameterClass="researchVO" resultClass="researchVO">
SELECT NVL(COUNT(*),0) AS sfCnt FROM SATISFACTION
WHERE 1=1
<isNotEqual prepend="AND" property="menuNo" compareValue="0">
MENU_NO = #menuNo#
</isNotEqual>
<isNotEqual prepend="AND" property="yearSearch" compareValue="0">
DATE_FORMAT(sf_writeday,'%Y') = #yearSearch#
</isNotEqual >
</select>
<!-- 만족도 관리 결과 -->
<select id="satManageDAO.selectSatisResult" parameterClass="researchVO" resultClass="egovMap">
select A.sf_cnt, ROUND(( 100/
(select count(sf_research)
from SATISFACTION
where 1=1
<isNotEqual prepend="AND" property="siteId" compareValue="0">
</isNotEqual>
<isNotEqual prepend="AND" property="menuNo" compareValue="0">
MENU_NO= #menuNo#
</isNotEqual>
<isNotEqual prepend="AND" property="yearSearch" compareValue="0">
DATE_FORMAT(sf_writeday,'%Y') = #yearSearch#
</isNotEqual >
)) * sf_cnt) as sf_rat
from
(
select
count(sf_research) as sf_cnt
from SATISFACTION
where sf_research = 1
<isNotEqual prepend="AND" property="menuNo" compareValue="0">
MENU_NO= #menuNo#
</isNotEqual>
<isNotEqual prepend="AND" property="yearSearch" compareValue="0">
DATE_FORMAT(sf_writeday,'%Y') = #yearSearch#
</isNotEqual >
UNION ALL
select
count(sf_research) as sf_cnt
from SATISFACTION
where sf_research = 2
<isNotEqual prepend="AND" property="menuNo" compareValue="0">
MENU_NO= #menuNo#
</isNotEqual>
<isNotEqual prepend="AND" property="yearSearch" compareValue="0">
DATE_FORMAT(sf_writeday,'%Y') = #yearSearch#
</isNotEqual >
UNION ALL
select
count(sf_research) as sf_cnt
from SATISFACTION
where sf_research = 3
<isNotEqual prepend="AND" property="menuNo" compareValue="0">
MENU_NO= #menuNo#
</isNotEqual>
<isNotEqual prepend="AND" property="yearSearch" compareValue="0">
DATE_FORMAT(sf_writeday,'%Y') = #yearSearch#
</isNotEqual >
UNION ALL
select
count(sf_research) as sf_cnt
from SATISFACTION
where sf_research = 4
<isNotEqual prepend="AND" property="menuNo" compareValue="0">
MENU_NO= #menuNo#
</isNotEqual>
<isNotEqual prepend="AND" property="yearSearch" compareValue="0">
DATE_FORMAT(sf_writeday,'%Y') = #yearSearch#
</isNotEqual >
UNION ALL
select
count(sf_research) as sf_cnt
from SATISFACTION
where sf_research = 5
<isNotEqual prepend="AND" property="menuNo" compareValue="0">
MENU_NO= #menuNo#
</isNotEqual>
<isNotEqual prepend="AND" property="yearSearch" compareValue="0">
DATE_FORMAT(sf_writeday,'%Y') = #yearSearch#
</isNotEqual >
) A
</select>
<insert id="satManageDAO.insertSatis">
<![CDATA[
INSERT INTO SATISFACTION (
SF_RESEARCH , SF_URL, SF_IP, SF_WRITEDAY, SF_TITLE, MENU_NO
) VALUES (
#sfResearch# , #sfUrl# , #sfIp# , now(), #mcTitle#, #menuNo# )
]]>
</insert>
</sqlMap>

View File

@ -0,0 +1,202 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!--
수정일 수정자 수정내용
=========== ======== =================================================
2011.10.06 이기하 보안 취약점 점검사항 반영 $->#변경
-->
<sqlMap namespace="SatManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="cntManageVO" type="kcc.let.uss.ion.cnt.service.CntManageVO" />
<typeAlias alias="siteManagerVO" type="kcc.let.sym.site.service.SiteManagerVO" />
<typeAlias alias="menuManageVO" type="kcc.let.sym.mnu.mpm.service.MenuManageVO" />
<typeAlias alias="researchVO" type="kcc.let.solr.sys.service.ResearchVO" />
<!-- 만족도 관리 사이트 리스트 -->
<select id="satManageDAO.selectSatSiteList" parameterClass="siteManagerVO" resultClass="siteManagerVO">
SELECT
FRST_REGISTER_ID AS frstRegisterId,
FRST_REGIST_PNTTM AS frstRegistPnttm,
FRST_REGIST_PNTTM AS sortTempNo
FROM SITEMANAGER
WHERE 1=1
<isNotEmpty property="searchKeyword">
</isNotEmpty>
ORDER BY 1=1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<!-- 만족도 관리 사이트 리스트 카운트 -->
<select id="satManageDAO.selectSatSiteTotCnt" parameterClass="siteManagerVO" resultClass="int">
SELECT COUNT(*) AS totcnt
FROM SITEMANAGER
WHERE 1=1
<isNotEmpty property="searchKeyword">
</isNotEmpty>
</select>
<!-- 만족도 관리 메뉴 리스트 -->
<select id="satManageDAO.selectSatMenuList" parameterClass="menuManageVO" resultClass="menuManageVO">
SELECT
B.MENU_NM AS menuNm,
B.MENU_DC AS menuDc,
A.MENU_NO AS menuNo,
(SELECT COUNT(*)
FROM SATISFACTION
WHERE MENU_NO = A.MENU_NO) AS satisCnt
FROM LETTNMENUCREATDTLS A
INNER JOIN LETTNMENUINFO B
ON A.MENU_NO = B.MENU_NO
WHERE 1=1
AND A.SATIS_YN = 'Y'
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="">
( MENU_NM LIKE CONCAT('%' , #searchKeyword#, '%') OR MENU_DC LIKE CONCAT('%' , #searchKeyword#, '%') )
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
MENU_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
MENU_DC LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
</isNotEmpty>
ORDER BY 1=1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<!-- 만족도 관리 메뉴 리스트 카운트 -->
<select id="satManageDAO.selectSatMenuTotCnt" parameterClass="menuManageVO" resultClass="int">
SELECT COUNT(*) AS totcnt
FROM LETTNMENUCREATDTLS A
INNER JOIN LETTNMENUINFO B
ON A.MENU_NO = B.MENU_NO
WHERE 1=1
AND SATIS_YN = 'Y'
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="">
( MENU_NM LIKE CONCAT('%' , #searchKeyword#, '%') OR MENU_DC LIKE CONCAT('%' , #searchKeyword#, '%') )
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
MENU_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
MENU_DC LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
</isNotEmpty>
</select>
<!-- 만족도 관리 결과 수 -->
<select id="satManageDAO.selectSatisResultCnt" parameterClass="researchVO" resultClass="researchVO">
SELECT NVL(COUNT(*),0) AS sfCnt FROM SATISFACTION
WHERE 1=1
<isNotEqual prepend="AND" property="menuNo" compareValue="0">
MENU_NO = #menuNo#
</isNotEqual>
<isNotEqual prepend="AND" property="yearSearch" compareValue="0">
DATE_FORMAT(sf_writeday,'%Y') = #yearSearch#
</isNotEqual >
</select>
<!-- 만족도 관리 결과 -->
<select id="satManageDAO.selectSatisResult" parameterClass="researchVO" resultClass="egovMap">
select A.sf_cnt, ROUND(( 100/
(select count(sf_research)
from SATISFACTION
where 1=1
<isNotEqual prepend="AND" property="siteId" compareValue="0">
</isNotEqual>
<isNotEqual prepend="AND" property="menuNo" compareValue="0">
MENU_NO= #menuNo#
</isNotEqual>
<isNotEqual prepend="AND" property="yearSearch" compareValue="0">
DATE_FORMAT(sf_writeday,'%Y') = #yearSearch#
</isNotEqual >
)) * sf_cnt) as sf_rat
from
(
select
count(sf_research) as sf_cnt
from SATISFACTION
where sf_research = 1
<isNotEqual prepend="AND" property="menuNo" compareValue="0">
MENU_NO= #menuNo#
</isNotEqual>
<isNotEqual prepend="AND" property="yearSearch" compareValue="0">
DATE_FORMAT(sf_writeday,'%Y') = #yearSearch#
</isNotEqual >
UNION ALL
select
count(sf_research) as sf_cnt
from SATISFACTION
where sf_research = 2
<isNotEqual prepend="AND" property="menuNo" compareValue="0">
MENU_NO= #menuNo#
</isNotEqual>
<isNotEqual prepend="AND" property="yearSearch" compareValue="0">
DATE_FORMAT(sf_writeday,'%Y') = #yearSearch#
</isNotEqual >
UNION ALL
select
count(sf_research) as sf_cnt
from SATISFACTION
where sf_research = 3
<isNotEqual prepend="AND" property="menuNo" compareValue="0">
MENU_NO= #menuNo#
</isNotEqual>
<isNotEqual prepend="AND" property="yearSearch" compareValue="0">
DATE_FORMAT(sf_writeday,'%Y') = #yearSearch#
</isNotEqual >
UNION ALL
select
count(sf_research) as sf_cnt
from SATISFACTION
where sf_research = 4
<isNotEqual prepend="AND" property="menuNo" compareValue="0">
MENU_NO= #menuNo#
</isNotEqual>
<isNotEqual prepend="AND" property="yearSearch" compareValue="0">
DATE_FORMAT(sf_writeday,'%Y') = #yearSearch#
</isNotEqual >
UNION ALL
select
count(sf_research) as sf_cnt
from SATISFACTION
where sf_research = 5
<isNotEqual prepend="AND" property="menuNo" compareValue="0">
MENU_NO= #menuNo#
</isNotEqual>
<isNotEqual prepend="AND" property="yearSearch" compareValue="0">
DATE_FORMAT(sf_writeday,'%Y') = #yearSearch#
</isNotEqual >
) A
</select>
<insert id="satManageDAO.insertSatis">
<![CDATA[
INSERT INTO SATISFACTION (
SF_RESEARCH , SF_URL, SF_IP, SF_WRITEDAY, SF_TITLE, MENU_NO
) VALUES (
#sfResearch# , #sfUrl# , #sfIp# , now(), #mcTitle#, #menuNo# )
]]>
</insert>
</sqlMap>

View File

@ -0,0 +1,261 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="IpMng">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="signVO" type="kcc.let.uss.ion.sign.service.SignVO"/>
<typeAlias alias="approvalVO" type="kcc.let.uss.ion.sign.service.ApprovalVO"/>
<sql id="incSelIpRec"> /**IP신청 Select문 */
RECIP_ID as recipId,
RECIP_SJ as recipSj,
C.USER_NM as frstRegisterIdTxt,
RECIP_DEPT as recipDept,
B.LOC_NM as recipDeptTxt,
FRST_REGISTER_ID as frstRegisterId,
DATE_FORMAT(A.FRST_REGIST_PNTTM, '%Y-%m-%d') as frstRegistPnttm,
DATE_FORMAT(A.LAST_UPDT_PNTTM, '%Y-%m-%d') as lastUpdtPnttm,
RECIP_EQUI as recipEqui,
D.CODE_NM as recipEquiTxt,
RECIP_NET_CODE as recipNetCode,
E.CODE_NM as recipNetCodeTxt,
RECIP_NET_CNT as recipNetCnt,
DATE_FORMAT(A.RECIP_USE_STAR, '%Y-%m-%d') as recipUseStar,
DATE_FORMAT(A.RECIP_USE_EDDR, '%Y-%m-%d') as recipUseEddr,
RECIP_CN as recipCn,
RECIP_RESULT as recipResult,
RECIP_STATE as recipState,
F.CODE_NM as recipStateTxt
FROM ITSM_IP_RECEIVE A
LEFT JOIN ITSM_LOC B
ON A.RECIP_DEPT = B.LOC_NO LEFT JOIN LETTNEMPLYRINFO C ON A.FRST_REGISTER_ID = C.EMPLYR_ID
LEFT JOIN
(SELECT CODE_NM, CODE
FROM LETTCCMMNDETAILCODE
WHERE CODE_ID = 'IPMA02') D /**단말유형*/ ON A.RECIP_EQUI = D.CODE
LEFT JOIN
(SELECT CODE_NM, CODE
FROM LETTCCMMNDETAILCODE
WHERE CODE_ID = 'IPMA04') E /**인터넷망*/ ON A.RECIP_NET_CODE = E.CODE
LEFT JOIN (SELECT CODE_NM, CODE
FROM LETTCCMMNDETAILCODE
WHERE CODE_ID = 'IPMA10') F /**IP신청상태*/ ON A.RECIP_STATE = F.CODE
</sql>
<select id="signManageDAO.selectSignList" parameterClass="signVO" resultClass="signVO">
SELECT COUNT(RECIP_ID) OVER() AS totCnt ,
<include refid = "incSelIpRec" />
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND (RECIP_SJ LIKE CONCAT ('%', #searchKeyword#,'%')
OR RECIP_CN LIKE CONCAT ('%', #searchKeyword#,'%')
OR C.USER_NM LIKE CONCAT ('%', #searchKeyword#,'%')
)
</isEqual>
<isEqual property="searchCondition" compareValue="1"> /**제목 */
AND RECIP_SJ LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
<isEqual property="searchCondition" compareValue="2"> /** 제목+내용 */
AND (RECIP_CN LIKE CONCAT ('%', #searchKeyword#,'%')
OR RECIP_CN LIKE CONCAT ('%', #searchKeyword#,'%')
)
</isEqual>
<isEqual property="searchCondition" compareValue="3"> /** 작성자 */
AND C.USER_NM LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
</isNotEmpty>
<isNotEmpty property="searchCn">
AND RECIP_CN LIKE CONCAT ('%', #searchCn#,'%')
</isNotEmpty>
<isNotEmpty property="searchNm">
AND B.USER_NM LIKE CONCAT ('%', #searchNm#,'%')
</isNotEmpty>
<isNotEmpty property="searchStartDt">
AND ( A.FRST_REGIST_PNTTM BETWEEN STR_TO_DATE(CONCAT(#searchStartDt#,'00:00:00'), '%Y-%m-%d %H:%i:%s')
AND STR_TO_DATE(CONCAT(#searchEndDt#,'23:59:59'), '%Y-%m-%d %H:%i:%s')
)
</isNotEmpty>
<isNotEmpty property="frstRegisterId"> /** 자신의 것과 결제자가 등록된것 */
<isEmpty property="apprStatus">
AND ( FRST_REGISTER_ID = #frstRegisterId#
OR RECIP_ID IN (
SELECT APPR_ID FROM ITSM_APPROVAL B
WHERE B.APPR_USR_ID = #frstRegisterId#
)
)
</isEmpty>
<isNotEmpty property="apprStatus">/**자신이 결제할 차례인 것만 */
AND (
RECIP_ID IN (
SELECT APPR_ID FROM ITSM_APPROVAL B
WHERE B.APPR_USR_ID = #frstRegisterId#
AND B.APPR_STATUS = 'R'
)
)
</isNotEmpty>
</isNotEmpty>
ORDER BY 1=1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<!-- 단건 조회 -->
<select id="signManageDAO.selectSignVO" parameterClass="signVO" resultClass="signVO">
SELECT
<include refid = "incSelIpRec" />
WHERE 1=1
AND RECIP_ID = #recipId#
</select>
<!-- 단건 조회 -->
<select id="signManageDAO.selectApprovalList" parameterClass="approvalVO" resultClass="approvalVO">
SELECT A.APPR_ID as apprId,
A.APPR_CND as apprCnd,
A.APPR_SN as apprSn,
A.APPR_USR_ID as apprUsrId,
A.APPR_USR_NM as apprUsrNm,
A.APPR_YN as apprYn,
A.APPR_CN as apprCn,
A.APPR_DATETIME as apprDatetime,
A.CHG_BGN_DATETIME as chgBgnDatetime,
A.CHG_END_DATETIME as chgEndDatetime,
A.APPR_DEPT as apprDept,
B.LOC_NM as apprDeptText,
A.APPR_STATUS as apprStatus,
DATE_FORMAT(A.FRST_REGIST_PNTTM, '%Y-%m-%d') as frstRegistPnttm
FROM ITSM_APPROVAL A LEFT JOIN ITSM_LOC B
ON A.APPR_DEPT = B.LOC_NO
WHERE 1=1
AND APPR_ID = #apprId#
ORDER BY APPR_SN
</select>
<!-- 단건 조회 -->
<select id="signManageDAO.selectLocNmTxt" parameterClass="approvalVO" resultClass="approvalVO">
SELECT B.LOC_NM AS apprDeptText ,
B.LOC_NO AS apprDept
FROM LETTNEMPLYRINFO A
LEFT JOIN ITSM_LOC B ON A.PART_IDX = B.LOC_NO
WHERE EMPLYR_ID = #apprId#
</select>
<update id="signManageDAO.updateSign" parameterClass="signVO">
UPDATE ITSM_IP_RECEIVE
SET
RECIP_SJ = #recipSj#,
RECIP_EQUI = #recipEqui#,
RECIP_NET_CODE = #recipNetCode#,
RECIP_CN = #recipCn#
WHERE 1=1
AND RECIP_ID = #recipId#
</update>
<insert id="signManageDAO.insertSign" parameterClass="signVO">
INSERT
INTO ITSM_IP_RECEIVE
(
RECIP_ID,
RECIP_SJ,
RECIP_DEPT,
FRST_REGISTER_ID,
RECIP_EQUI,
RECIP_NET_CODE,
RECIP_CN,
RECIP_RESULT
)
VALUES
(
#recipId#,
#recipSj#,
#recipDept#,
#frstRegisterId#,
#recipEqui#,
#recipNetCode#,
#recipCn#,
#recipResult#
)
</insert>
<delete id="signManageDAO.deleteApproval" parameterClass="signVO" >
DELETE FROM ITSM_APPROVAL
WHERE APPR_ID = #recipId#
</delete>
<insert id="signManageDAO.insertApproval" parameterClass="approvalVO">
INSERT INTO ITSM_APPROVAL
(
APPR_ID,
APPR_CND,
APPR_SN,
APPR_USR_ID,
APPR_USR_NM,
FRST_REGIST_PNTTM,
APPR_DEPT,
APPR_STATUS
)
VALUES
(
#apprId#,
#apprCnd#,
#apprSn#,
#apprUsrId#,
#apprUsrNm#,
now(),
#apprDept#,
#apprStatus#
)
</insert>
<update id="signManageDAO.updateRecipState" parameterClass="signVO">
UPDATE ITSM_IP_RECEIVE
SET
RECIP_STATE = #recipState#
WHERE RECIP_ID = #recipId#
</update>
<update id="signManageDAO.updateAccept" parameterClass="approvalVO">
UPDATE ITSM_APPROVAL
SET
<isNotEmpty property="apprYn">
APPR_YN = #apprYn#,
APPR_CN = #apprCn#,
APPR_DATETIME = now(),
</isNotEmpty>
APPR_STATUS = #apprStatus#
WHERE APPR_ID = #apprId#
AND APPR_CND = #apprCnd#
AND APPR_SN = #apprSn#
</update>
<delete id="signManageDAO.deleteSign" parameterClass="String" >
<![CDATA[
DELETE FROM ITSM_IP_RECEIVE
WHERE
RECIP_ID = #recipId#
]]>
</delete>
<delete id="signManageDAO.deleteAccept" parameterClass="String" >
<![CDATA[
DELETE FROM ITSM_APPROVAL
WHERE
APPR_ID = #apprId#
]]>
</delete>
<update id="signManageDAO.updateSignResult" parameterClass="signVO">
UPDATE ITSM_IP_RECEIVE
SET
RECIP_RESULT = #recipResult#
WHERE RECIP_ID = #recipId#
</update>
</sqlMap>

View File

@ -0,0 +1,261 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="IpMng">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="signVO" type="kcc.let.uss.ion.sign.service.SignVO"/>
<typeAlias alias="approvalVO" type="kcc.let.uss.ion.sign.service.ApprovalVO"/>
<sql id="incSelIpRec"> /**IP신청 Select문 */
RECIP_ID as recipId,
RECIP_SJ as recipSj,
C.USER_NM as frstRegisterIdTxt,
RECIP_DEPT as recipDept,
B.LOC_NM as recipDeptTxt,
FRST_REGISTER_ID as frstRegisterId,
DATE_FORMAT(A.FRST_REGIST_PNTTM, '%Y-%m-%d') as frstRegistPnttm,
DATE_FORMAT(A.LAST_UPDT_PNTTM, '%Y-%m-%d') as lastUpdtPnttm,
RECIP_EQUI as recipEqui,
D.CODE_NM as recipEquiTxt,
RECIP_NET_CODE as recipNetCode,
E.CODE_NM as recipNetCodeTxt,
RECIP_NET_CNT as recipNetCnt,
DATE_FORMAT(A.RECIP_USE_STAR, '%Y-%m-%d') as recipUseStar,
DATE_FORMAT(A.RECIP_USE_EDDR, '%Y-%m-%d') as recipUseEddr,
RECIP_CN as recipCn,
RECIP_RESULT as recipResult,
RECIP_STATE as recipState,
F.CODE_NM as recipStateTxt
FROM ITSM_IP_RECEIVE A
LEFT JOIN ITSM_LOC B
ON A.RECIP_DEPT = B.LOC_NO LEFT JOIN LETTNEMPLYRINFO C ON A.FRST_REGISTER_ID = C.EMPLYR_ID
LEFT JOIN
(SELECT CODE_NM, CODE
FROM LETTCCMMNDETAILCODE
WHERE CODE_ID = 'IPMA02') D /**단말유형*/ ON A.RECIP_EQUI = D.CODE
LEFT JOIN
(SELECT CODE_NM, CODE
FROM LETTCCMMNDETAILCODE
WHERE CODE_ID = 'IPMA04') E /**인터넷망*/ ON A.RECIP_NET_CODE = E.CODE
LEFT JOIN (SELECT CODE_NM, CODE
FROM LETTCCMMNDETAILCODE
WHERE CODE_ID = 'IPMA10') F /**IP신청상태*/ ON A.RECIP_STATE = F.CODE
</sql>
<select id="signManageDAO.selectSignList" parameterClass="signVO" resultClass="signVO">
SELECT COUNT(RECIP_ID) OVER() AS totCnt ,
<include refid = "incSelIpRec" />
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND (RECIP_SJ LIKE CONCAT ('%', #searchKeyword#,'%')
OR RECIP_CN LIKE CONCAT ('%', #searchKeyword#,'%')
OR C.USER_NM LIKE CONCAT ('%', #searchKeyword#,'%')
)
</isEqual>
<isEqual property="searchCondition" compareValue="1"> /**제목 */
AND RECIP_SJ LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
<isEqual property="searchCondition" compareValue="2"> /** 제목+내용 */
AND (RECIP_CN LIKE CONCAT ('%', #searchKeyword#,'%')
OR RECIP_CN LIKE CONCAT ('%', #searchKeyword#,'%')
)
</isEqual>
<isEqual property="searchCondition" compareValue="3"> /** 작성자 */
AND C.USER_NM LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
</isNotEmpty>
<isNotEmpty property="searchCn">
AND RECIP_CN LIKE CONCAT ('%', #searchCn#,'%')
</isNotEmpty>
<isNotEmpty property="searchNm">
AND B.USER_NM LIKE CONCAT ('%', #searchNm#,'%')
</isNotEmpty>
<isNotEmpty property="searchStartDt">
AND ( A.FRST_REGIST_PNTTM BETWEEN STR_TO_DATE(CONCAT(#searchStartDt#,'00:00:00'), '%Y-%m-%d %H:%i:%s')
AND STR_TO_DATE(CONCAT(#searchEndDt#,'23:59:59'), '%Y-%m-%d %H:%i:%s')
)
</isNotEmpty>
<isNotEmpty property="frstRegisterId"> /** 자신의 것과 결제자가 등록된것 */
<isEmpty property="apprStatus">
AND ( FRST_REGISTER_ID = #frstRegisterId#
OR RECIP_ID IN (
SELECT APPR_ID FROM ITSM_APPROVAL B
WHERE B.APPR_USR_ID = #frstRegisterId#
)
)
</isEmpty>
<isNotEmpty property="apprStatus">/**자신이 결제할 차례인 것만 */
AND (
RECIP_ID IN (
SELECT APPR_ID FROM ITSM_APPROVAL B
WHERE B.APPR_USR_ID = #frstRegisterId#
AND B.APPR_STATUS = 'R'
)
)
</isNotEmpty>
</isNotEmpty>
ORDER BY 1=1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<!-- 단건 조회 -->
<select id="signManageDAO.selectSignVO" parameterClass="signVO" resultClass="signVO">
SELECT
<include refid = "incSelIpRec" />
WHERE 1=1
AND RECIP_ID = #recipId#
</select>
<!-- 단건 조회 -->
<select id="signManageDAO.selectApprovalList" parameterClass="approvalVO" resultClass="approvalVO">
SELECT A.APPR_ID as apprId,
A.APPR_CND as apprCnd,
A.APPR_SN as apprSn,
A.APPR_USR_ID as apprUsrId,
A.APPR_USR_NM as apprUsrNm,
A.APPR_YN as apprYn,
A.APPR_CN as apprCn,
A.APPR_DATETIME as apprDatetime,
A.CHG_BGN_DATETIME as chgBgnDatetime,
A.CHG_END_DATETIME as chgEndDatetime,
A.APPR_DEPT as apprDept,
B.LOC_NM as apprDeptText,
A.APPR_STATUS as apprStatus,
DATE_FORMAT(A.FRST_REGIST_PNTTM, '%Y-%m-%d') as frstRegistPnttm
FROM ITSM_APPROVAL A LEFT JOIN ITSM_LOC B
ON A.APPR_DEPT = B.LOC_NO
WHERE 1=1
AND APPR_ID = #apprId#
ORDER BY APPR_SN
</select>
<!-- 단건 조회 -->
<select id="signManageDAO.selectLocNmTxt" parameterClass="approvalVO" resultClass="approvalVO">
SELECT B.LOC_NM AS apprDeptText ,
B.LOC_NO AS apprDept
FROM LETTNEMPLYRINFO A
LEFT JOIN ITSM_LOC B ON A.PART_IDX = B.LOC_NO
WHERE EMPLYR_ID = #apprId#
</select>
<update id="signManageDAO.updateSign" parameterClass="signVO">
UPDATE ITSM_IP_RECEIVE
SET
RECIP_SJ = #recipSj#,
RECIP_EQUI = #recipEqui#,
RECIP_NET_CODE = #recipNetCode#,
RECIP_CN = #recipCn#
WHERE 1=1
AND RECIP_ID = #recipId#
</update>
<insert id="signManageDAO.insertSign" parameterClass="signVO">
INSERT
INTO ITSM_IP_RECEIVE
(
RECIP_ID,
RECIP_SJ,
RECIP_DEPT,
FRST_REGISTER_ID,
RECIP_EQUI,
RECIP_NET_CODE,
RECIP_CN,
RECIP_RESULT
)
VALUES
(
#recipId#,
#recipSj#,
#recipDept#,
#frstRegisterId#,
#recipEqui#,
#recipNetCode#,
#recipCn#,
#recipResult#
)
</insert>
<delete id="signManageDAO.deleteApproval" parameterClass="signVO" >
DELETE FROM ITSM_APPROVAL
WHERE APPR_ID = #recipId#
</delete>
<insert id="signManageDAO.insertApproval" parameterClass="approvalVO">
INSERT INTO ITSM_APPROVAL
(
APPR_ID,
APPR_CND,
APPR_SN,
APPR_USR_ID,
APPR_USR_NM,
FRST_REGIST_PNTTM,
APPR_DEPT,
APPR_STATUS
)
VALUES
(
#apprId#,
#apprCnd#,
#apprSn#,
#apprUsrId#,
#apprUsrNm#,
now(),
#apprDept#,
#apprStatus#
)
</insert>
<update id="signManageDAO.updateRecipState" parameterClass="signVO">
UPDATE ITSM_IP_RECEIVE
SET
RECIP_STATE = #recipState#
WHERE RECIP_ID = #recipId#
</update>
<update id="signManageDAO.updateAccept" parameterClass="approvalVO">
UPDATE ITSM_APPROVAL
SET
<isNotEmpty property="apprYn">
APPR_YN = #apprYn#,
APPR_CN = #apprCn#,
APPR_DATETIME = now(),
</isNotEmpty>
APPR_STATUS = #apprStatus#
WHERE APPR_ID = #apprId#
AND APPR_CND = #apprCnd#
AND APPR_SN = #apprSn#
</update>
<delete id="signManageDAO.deleteSign" parameterClass="String" >
<![CDATA[
DELETE FROM ITSM_IP_RECEIVE
WHERE
RECIP_ID = #recipId#
]]>
</delete>
<delete id="signManageDAO.deleteAccept" parameterClass="String" >
<![CDATA[
DELETE FROM ITSM_APPROVAL
WHERE
APPR_ID = #apprId#
]]>
</delete>
<update id="signManageDAO.updateSignResult" parameterClass="signVO">
UPDATE ITSM_IP_RECEIVE
SET
RECIP_RESULT = #recipResult#
WHERE RECIP_ID = #recipId#
</update>
</sqlMap>

View File

@ -0,0 +1,123 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="UserAbsnce">
<typeAlias alias="UserAbsnce" type="kcc.let.uss.ion.uas.service.UserAbsnce"/>
<typeAlias alias="UserAbsnceVO" type="kcc.let.uss.ion.uas.service.UserAbsnceVO"/>
<resultMap id="userAbsnce" class="kcc.let.uss.ion.uas.service.UserAbsnceVO">
<result property="userId" column="EMPLYR_ID" columnIndex="1"/>
<result property="userNm" column="USER_NM" columnIndex="2"/>
<result property="userAbsnceAt" column="USER_ABSNCE_AT" columnIndex="3"/>
<result property="regYn" column="REG_YN" columnIndex="4"/>
<result property="lastUpdusrId" column="LAST_UPDUSR_ID" columnIndex="5"/>
<result property="lastUpdusrPnttm" column="LAST_UPDT_PNTTM" columnIndex="6"/>
</resultMap>
<select id="userAbsnceDAO.selectUserAbsnceList" parameterClass="UserAbsnceVO" resultMap="userAbsnce">
SELECT X.EMPLYR_ID,
X.USER_NM,
X.USER_ABSNCE_AT,
X.REG_YN,
X.LAST_UPDUSR_ID,
X.LAST_UPDT_PNTTM
FROM (SELECT A.EMPLYR_ID,
A.USER_NM,
(CASE WHEN B.USER_ABSNCE_AT IS NULL THEN 'N'
ELSE B.USER_ABSNCE_AT
END) AS USER_ABSNCE_AT,
(CASE WHEN B.USER_ABSNCE_AT IS NULL THEN 'N'
ELSE 'Y'
END) AS REG_YN,
LAST_UPDUSR_ID,
LAST_UPDT_PNTTM
FROM LETTNEMPLYRINFO A LEFT OUTER JOIN LETTNUSERABSNCE B
ON A.EMPLYR_ID = B.EMPLYR_ID
) X
WHERE 1 = 1
<isEqual prepend="AND" property="searchCondition" compareValue="1">
X.USER_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isNotEqual prepend="AND" property="selAbsnceAt" compareValue="A">
X.USER_ABSNCE_AT = #selAbsnceAt#
</isNotEqual>
ORDER BY LAST_UPDT_PNTTM DESC
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<select id="userAbsnceDAO.selectUserAbsnceListTotCnt" parameterClass="UserAbsnceVO" resultClass="int">
SELECT COUNT(*) totcnt
FROM (SELECT A.EMPLYR_ID,
A.USER_NM,
(CASE WHEN B.USER_ABSNCE_AT IS NULL THEN 'N'
ELSE B.USER_ABSNCE_AT
END) AS USER_ABSNCE_AT,
(CASE WHEN B.USER_ABSNCE_AT IS NULL THEN 'N'
ELSE 'Y'
END) AS REG_YN,
LAST_UPDUSR_ID,
LAST_UPDT_PNTTM
FROM LETTNEMPLYRINFO A LEFT OUTER JOIN LETTNUSERABSNCE B
ON A.EMPLYR_ID = B.EMPLYR_ID
) X
WHERE 1 = 1
<isEqual prepend="AND" property="searchCondition" compareValue="1">
X.USER_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isNotEqual prepend="AND" property="selAbsnceAt" compareValue="A">
X.USER_ABSNCE_AT = #selAbsnceAt#
</isNotEqual>
</select>
<select id="userAbsnceDAO.selectUserAbsnce" parameterClass="UserAbsnceVO" resultMap="userAbsnce">
SELECT A.EMPLYR_ID,
A.USER_NM,
(CASE WHEN B.USER_ABSNCE_AT IS NULL THEN 'N'
ELSE B.USER_ABSNCE_AT
END) AS USER_ABSNCE_AT,
(CASE WHEN B.USER_ABSNCE_AT IS NULL THEN 'N'
ELSE 'Y'
END) AS REG_YN,
LAST_UPDUSR_ID,
LAST_UPDT_PNTTM
FROM LETTNEMPLYRINFO A LEFT OUTER JOIN LETTNUSERABSNCE B
ON A.EMPLYR_ID = B.EMPLYR_ID
WHERE 1 = 1
AND A.EMPLYR_ID = #userId#
</select>
<insert id="userAbsnceDAO.insertUserAbsnce" parameterClass="UserAbsnce">
INSERT INTO LETTNUSERABSNCE (
EMPLYR_ID,
USER_ABSNCE_AT,
FRST_REGISTER_ID,
FRST_REGIST_PNTTM,
LAST_UPDUSR_ID,
LAST_UPDT_PNTTM )
VALUES (#userId#,
#userAbsnceAt#,
#lastUpdusrId#,
now(),
#lastUpdusrId#,
now())
</insert>
<update id="userAbsnceDAO.updateUserAbsnce" parameterClass="UserAbsnce">
UPDATE LETTNUSERABSNCE
SET USER_ABSNCE_AT = #userAbsnceAt#,
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = now()
WHERE EMPLYR_ID = #userId#
</update>
<delete id="userAbsnceDAO.deleteUserAbsnce" parameterClass="UserAbsnce">
<![CDATA[
DELETE FROM LETTNUSERABSNCE
WHERE EMPLYR_ID = #userId#
]]>
</delete>
</sqlMap>

View File

@ -0,0 +1,123 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="UserAbsnce">
<typeAlias alias="UserAbsnce" type="kcc.let.uss.ion.uas.service.UserAbsnce"/>
<typeAlias alias="UserAbsnceVO" type="kcc.let.uss.ion.uas.service.UserAbsnceVO"/>
<resultMap id="userAbsnce" class="kcc.let.uss.ion.uas.service.UserAbsnceVO">
<result property="userId" column="EMPLYR_ID" columnIndex="1"/>
<result property="userNm" column="USER_NM" columnIndex="2"/>
<result property="userAbsnceAt" column="USER_ABSNCE_AT" columnIndex="3"/>
<result property="regYn" column="REG_YN" columnIndex="4"/>
<result property="lastUpdusrId" column="LAST_UPDUSR_ID" columnIndex="5"/>
<result property="lastUpdusrPnttm" column="LAST_UPDT_PNTTM" columnIndex="6"/>
</resultMap>
<select id="userAbsnceDAO.selectUserAbsnceList" parameterClass="UserAbsnceVO" resultMap="userAbsnce">
SELECT X.EMPLYR_ID,
X.USER_NM,
X.USER_ABSNCE_AT,
X.REG_YN,
X.LAST_UPDUSR_ID,
X.LAST_UPDT_PNTTM
FROM (SELECT A.EMPLYR_ID,
A.USER_NM,
(CASE WHEN B.USER_ABSNCE_AT IS NULL THEN 'N'
ELSE B.USER_ABSNCE_AT
END) AS USER_ABSNCE_AT,
(CASE WHEN B.USER_ABSNCE_AT IS NULL THEN 'N'
ELSE 'Y'
END) AS REG_YN,
LAST_UPDUSR_ID,
LAST_UPDT_PNTTM
FROM LETTNEMPLYRINFO A LEFT OUTER JOIN LETTNUSERABSNCE B
ON A.EMPLYR_ID = B.EMPLYR_ID
) X
WHERE 1 = 1
<isEqual prepend="AND" property="searchCondition" compareValue="1">
X.USER_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isNotEqual prepend="AND" property="selAbsnceAt" compareValue="A">
X.USER_ABSNCE_AT = #selAbsnceAt#
</isNotEqual>
ORDER BY LAST_UPDT_PNTTM DESC
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<select id="userAbsnceDAO.selectUserAbsnceListTotCnt" parameterClass="UserAbsnceVO" resultClass="int">
SELECT COUNT(*) totcnt
FROM (SELECT A.EMPLYR_ID,
A.USER_NM,
(CASE WHEN B.USER_ABSNCE_AT IS NULL THEN 'N'
ELSE B.USER_ABSNCE_AT
END) AS USER_ABSNCE_AT,
(CASE WHEN B.USER_ABSNCE_AT IS NULL THEN 'N'
ELSE 'Y'
END) AS REG_YN,
LAST_UPDUSR_ID,
LAST_UPDT_PNTTM
FROM LETTNEMPLYRINFO A LEFT OUTER JOIN LETTNUSERABSNCE B
ON A.EMPLYR_ID = B.EMPLYR_ID
) X
WHERE 1 = 1
<isEqual prepend="AND" property="searchCondition" compareValue="1">
X.USER_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isNotEqual prepend="AND" property="selAbsnceAt" compareValue="A">
X.USER_ABSNCE_AT = #selAbsnceAt#
</isNotEqual>
</select>
<select id="userAbsnceDAO.selectUserAbsnce" parameterClass="UserAbsnceVO" resultMap="userAbsnce">
SELECT A.EMPLYR_ID,
A.USER_NM,
(CASE WHEN B.USER_ABSNCE_AT IS NULL THEN 'N'
ELSE B.USER_ABSNCE_AT
END) AS USER_ABSNCE_AT,
(CASE WHEN B.USER_ABSNCE_AT IS NULL THEN 'N'
ELSE 'Y'
END) AS REG_YN,
LAST_UPDUSR_ID,
LAST_UPDT_PNTTM
FROM LETTNEMPLYRINFO A LEFT OUTER JOIN LETTNUSERABSNCE B
ON A.EMPLYR_ID = B.EMPLYR_ID
WHERE 1 = 1
AND A.EMPLYR_ID = #userId#
</select>
<insert id="userAbsnceDAO.insertUserAbsnce" parameterClass="UserAbsnce">
INSERT INTO LETTNUSERABSNCE (
EMPLYR_ID,
USER_ABSNCE_AT,
FRST_REGISTER_ID,
FRST_REGIST_PNTTM,
LAST_UPDUSR_ID,
LAST_UPDT_PNTTM )
VALUES (#userId#,
#userAbsnceAt#,
#lastUpdusrId#,
now(),
#lastUpdusrId#,
now())
</insert>
<update id="userAbsnceDAO.updateUserAbsnce" parameterClass="UserAbsnce">
UPDATE LETTNUSERABSNCE
SET USER_ABSNCE_AT = #userAbsnceAt#,
LAST_UPDUSR_ID = #lastUpdusrId#,
LAST_UPDT_PNTTM = now()
WHERE EMPLYR_ID = #userId#
</update>
<delete id="userAbsnceDAO.deleteUserAbsnce" parameterClass="UserAbsnce">
<![CDATA[
DELETE FROM LETTNUSERABSNCE
WHERE EMPLYR_ID = #userId#
]]>
</delete>
</sqlMap>

View File

@ -0,0 +1,454 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="SchdlrManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="schdlrVO" type="kcc.let.schdlr.service.SchdlrVO"/>
<!-- 스케줄달력 목록 -->
<select id="schdlrManageDAO.selectSchdlrList" parameterClass="schdlrVO" resultClass="schdlrVO">
<![CDATA[
WITH days AS (
WITH RECURSIVE days AS (
SELECT DATE_FORMAT(#searchBgnDt# + INTERVAL 0 DAY, '%Y%m%d') AS strDate
UNION ALL
SELECT DATE_FORMAT(sub_days.strDate + INTERVAL 1 DAY, '%Y%m%d') AS strDate
FROM days AS sub_days
WHERE sub_days.strDate + INTERVAL 1 DAY < #searchEndDt# + INTERVAL 1 DAY
)
SELECT strDate
FROM days
)
SELECT a.strDate
,GROUP_CONCAT(a.SCHDLR_ID ORDER BY a.ordBgnTime, a.ordEndTime desc separator '|') as schdlrIds
,GROUP_CONCAT(a.SCHDLR_TY_CD ORDER BY a.ordBgnTime, a.ordEndTime desc separator '|') as schdlrTyCd
,GROUP_CONCAT(a.SCHDLR_TITLE ORDER BY a.ordBgnTime, a.ordEndTime desc separator '|') as schdlrTitles
,GROUP_CONCAT(a.schdlrBgnDatetime ORDER BY a.ordBgnTime, a.ordEndTime desc separator '|') as schdlrBgnDatetimes
,GROUP_CONCAT(a.schdlrEndDatetime ORDER BY a.ordBgnTime, a.ordEndTime desc separator '|') as schdlrEndDatetimes
,GROUP_CONCAT(a.schdlrBgnTimes ORDER BY a.ordBgnTime, a.ordEndTime desc separator '|') as schdlrBgnTimes
,GROUP_CONCAT(a.schdlrEndTimes ORDER BY a.ordBgnTime, a.ordEndTime desc separator '|') as schdlrEndTimes
,GROUP_CONCAT(
CASE
WHEN a.schdlrBgnDatetime = a.schdlrEndDatetime THEN 'se'
WHEN a.strDate = a.schdlrBgnDatetime THEN 's'
WHEN a.strDate = a.schdlrEndDatetime THEN 'e'
ELSE 'm'
END
ORDER BY a.ordBgnTime, a.ordEndTime desc separator '|') as schdlrDtSecs
FROM (
SELECT * FROM (
SELECT days.strDate
/*,IF(a.SCHDLR_SHARE_YN = 'Y', '02', '01') AS SCHDLR_TY_CD*/
,CASE a.SCHDLR_SHARE_YN
WHEN 'Y' THEN '02'
WHEN 'A' THEN '02'
ELSE '01'
END AS SCHDLR_TY_CD
,a.SCHDLR_ID
,a.SCHDLR_TITLE
,DATE_FORMAT(a.SCHDLR_BGN_DATETIME, '%Y%m%d') as schdlrBgnDatetime
,DATE_FORMAT(a.SCHDLR_END_DATETIME, '%Y%m%d') as schdlrEndDatetime
,DATE_FORMAT(a.SCHDLR_BGN_DATETIME, '%H:%i') as schdlrBgnTimes
,DATE_FORMAT(a.SCHDLR_END_DATETIME, '%H:%i') as schdlrEndTimes
,DATE_FORMAT(a.SCHDLR_BGN_DATETIME, '%Y%m%d %H:%i') as ordBgnTime
,DATE_FORMAT(a.SCHDLR_END_DATETIME, '%Y%m%d %H:%i') as ordEndTime
FROM itsm_scheduler a
INNER JOIN (
SELECT SCHDLR_ID FROM (
SELECT SCHDLR_ID FROM itsm_scheduler
WHERE (FRST_REGISTER_ID = #frstRegisterId# OR SCHDLR_SHARE_YN = 'A')
UNION ALL
SELECT a.SCHDLR_ID FROM itsm_scheduler_share a
INNER JOIN itsm_scheduler b ON a.SCHDLR_ID = b.SCHDLR_ID AND b.SCHDLR_SHARE_YN = 'Y'
WHERE (a.SCHDLR_USER_ID = #frstRegisterId# OR a.SCHDLR_DEPT_ID = #schdlrDeptId#)
) a GROUP BY SCHDLR_ID
) b ON a.SCHDLR_ID = b.SCHDLR_ID
RIGHT OUTER JOIN days
ON days.strDate
BETWEEN DATE_FORMAT(a.SCHDLR_BGN_DATETIME, '%Y%m%d')
AND DATE_FORMAT(a.SCHDLR_END_DATETIME, '%Y%m%d')
]]>
) a
ORDER BY a.SCHDLR_ID, a.strDate
) a
WHERE a.SCHDLR_ID IS NOT NULL
GROUP BY a.strDate
ORDER BY a.strDate
</select>
<!-- 일정 등록 -->
<insert id="schdlrManageDAO.schdlrInsert" parameterClass="schdlrVO">
INSERT INTO itsm_scheduler (
SCHDLR_ID
,SCHDLR_TITLE
,SCHDLR_SHARE_YN
,SCHDLR_DATE_ALL_YN
,SCHDLR_BGN_DATETIME
,SCHDLR_END_DATETIME
,SCHDLR_PLACE
,SCHDLR_CN
,SCHDLR_ALARM_CND
<isEqual property="schdlrAlarmCnd" compareValue="etc">
,SCHDLR_ALARM_DATETIME
</isEqual>
,SCHDLR_ATCH_FILE_ID
,FRST_REGIST_PNTTM
,FRST_REGISTER_ID
,FRST_REGISTER_NM
,LAST_UPDT_PNTTM
,LAST_UPDUSR_ID
,LAST_UPDUSR_NM
) VALUES (
#schdlrId#
,#schdlrTitle#
,#schdlrShareYn#
,#schdlrDateAllYn#
,#schdlrBgnDatetime#
,#schdlrEndDatetime#
,#schdlrPlace#
,#schdlrCn#
,#schdlrAlarmCnd#
<isEqual property="schdlrAlarmCnd" compareValue="etc">
,#schdlrAlarmDatetime#
</isEqual>
,#schdlrAtchFileId#
,NOW()
,#frstRegisterId#
,#frstRegisterNm#
,NOW()
,#lastUpdusrId#
,#lastUpdusrNm#
)
</insert>
<insert id="schdlrManageDAO.schdlrShareInsert" parameterClass="schdlrVO">
INSERT INTO ITSM_SCHEDULER_SHARE
(
SCHDLR_SHARE_ID
, SCHDLR_ID
, SCHDLR_USER_ID
, SCHDLR_USER_NAME
, SCHDLR_DEPT_ID
, FRST_REGIST_PNTTM
, FRST_REGISTER_ID
)
VALUES
(
#schdlrShareId#
, #schdlrId#
, #schdlrUserId#
, #schdlrUserName#
<isNotEmpty property="schdlrDeptId">
, #schdlrDeptId#
</isNotEmpty>
<isEmpty property="schdlrDeptId">
, NULL
</isEmpty>
, now()
, #frstRegisterId#
)
</insert>
<!-- 일정 상세 조회 -->
<select id="schdlrManageDAO.selectSchdlrDetail" parameterClass="schdlrVO" resultClass="schdlrVO">
SELECT
a.SCHDLR_ID as schdlrId
,a.SCHDLR_TITLE as schdlrTitle
,a.SCHDLR_SHARE_YN as schdlrShareYn
,a.SCHDLR_DATE_ALL_YN as schdlrDateAllYn
,DATE_FORMAT(a.SCHDLR_BGN_DATETIME, '%Y-%m-%d %H:%i') as schdlrBgnDatetime
,DATE_FORMAT(a.SCHDLR_END_DATETIME, '%Y-%m-%d %H:%i') as schdlrEndDatetime
,a.SCHDLR_PLACE as schdlrPlace
,a.SCHDLR_CN as schdlrCn
,a.SCHDLR_ALARM_CND as schdlrAlarmCnd
,a.SCHDLR_ALARM_DATETIME as schdlrAlarmDatetime
,a.SCHDLR_ATCH_FILE_ID as schdlrAtchFileId
,a.FRST_REGIST_PNTTM as frstRegistPnttm
,a.FRST_REGISTER_ID as frstRegisterId
,a.FRST_REGISTER_NM as frstRegisterNm
,a.LAST_UPDT_PNTTM as lastUpdtPnttm
,a.LAST_UPDUSR_ID as lastUpdusrId
,a.LAST_UPDUSR_NM as lastUpdusrNm
,DATE_FORMAT(
CASE a.SCHDLR_ALARM_CND
WHEN 'etc' THEN a.SCHDLR_ALARM_DATETIME
WHEN 'none' THEN ''
ELSE a.SCHDLR_BGN_DATETIME + INTERVAL (-a.SCHDLR_ALARM_CND) MINUTE
END, '%Y-%m-%d %H:%i'
) as orgnAlarmDateTime
FROM itsm_scheduler a
WHERE a.SCHDLR_ID = #schdlrId#
</select>
<!-- 일정 상세 공유 조회 -->
<select id="schdlrManageDAO.selectSchdlrShare" parameterClass="schdlrVO" resultClass="schdlrVO">
SELECT
SCHDLR_SHARE_ID AS schdlrShareId
, SCHDLR_ID AS schdlrId
, SCHDLR_USER_ID AS schdlrUserId
, SCHDLR_USER_NAME AS schdlrUserName
, SCHDLR_DEPT_ID AS schdlrDeptId
FROM
ITSM_SCHEDULER_SHARE
WHERE
SCHDLR_ID = #schdlrId#
</select>
<!-- 일정 상세 공유 조회 -->
<select id="schdlrManageDAO.selectSchdlrShareCount" parameterClass="schdlrVO" resultClass="int">
SELECT
count(*)
FROM
ITSM_SCHEDULER_SHARE
WHERE
SCHDLR_ID = #schdlrId#
</select>
<!-- 관리자 담당자 삭제 -->
<delete id="schdlrManageDAO.deleteSchdlrShare" parameterClass="String" >
DELETE FROM ITSM_SCHEDULER_SHARE
WHERE SCHDLR_ID = #schdlrId#
</delete>
<!-- 스케줄 수정 -->
<update id="schdlrManageDAO.schdlrUpdate" parameterClass="schdlrVO">
UPDATE itsm_scheduler SET
SCHDLR_TITLE = #schdlrTitle#
,SCHDLR_SHARE_YN = #schdlrShareYn#
,SCHDLR_DATE_ALL_YN = #schdlrDateAllYn#
,SCHDLR_BGN_DATETIME = #schdlrBgnDatetime#
,SCHDLR_END_DATETIME = #schdlrEndDatetime#
,SCHDLR_PLACE = #schdlrPlace#
,SCHDLR_CN = #schdlrCn#
,SCHDLR_ALARM_CND = #schdlrAlarmCnd#
<isEqual property="schdlrAlarmCnd" compareValue="etc">
,SCHDLR_ALARM_DATETIME = #schdlrAlarmDatetime#
</isEqual>
<isNotEmpty property="schdlrAlarmMailYn">
,SCHDLR_ALARM_MAIL_YN = #schdlrAlarmMailYn#
</isNotEmpty>
<isNotEqual property="schdlrAlarmCnd" compareValue="etc">
,SCHDLR_ALARM_DATETIME = NULL
</isNotEqual>
,SCHDLR_ATCH_FILE_ID = #schdlrAtchFileId#
,LAST_UPDT_PNTTM = NOW()
,LAST_UPDUSR_ID = #lastUpdusrId#
,LAST_UPDUSR_NM = #lastUpdusrNm#
WHERE SCHDLR_ID = #schdlrId#
</update>
<!-- 일정 목록 조회 -->
<select id="schdlrManageDAO.selectSchList" parameterClass="schdlrVO" resultClass="schdlrVO">
<![CDATA[
WITH days AS (
WITH RECURSIVE days AS (
SELECT DATE_FORMAT(#schdlrBgnDatetime# + INTERVAL 0 DAY, '%Y-%m-%d') AS strDate
UNION ALL
SELECT DATE_FORMAT(sub_days.strDate + INTERVAL 1 DAY, '%Y-%m-%d') AS strDate
FROM days AS sub_days
WHERE sub_days.strDate + INTERVAL 1 DAY < #schdlrEndDatetime# + INTERVAL 1 DAY
)
SELECT strDate
FROM days
)
SELECT COUNT(a.schdlrId) OVER() as totCnt, a.*
FROM (
SELECT
/*IF(a.SCHDLR_SHARE_YN = 'Y', '02', '01') AS schdlrTyCd*/
CASE a.SCHDLR_SHARE_YN
WHEN 'Y' THEN '02'
WHEN 'A' THEN '02'
ELSE '01'
END AS schdlrTyCd
,a.SCHDLR_ID AS schdlrId
,a.SCHDLR_TITLE AS schdlrTitle
,DATE_FORMAT(a.SCHDLR_BGN_DATETIME, '%Y-%m-%d %H:%i') as schdlrBgnDatetime
,DATE_FORMAT(a.SCHDLR_END_DATETIME, '%Y-%m-%d %H:%i') as schdlrEndDatetime
,a.FRST_REGISTER_NM as frstRegisterNm
FROM itsm_scheduler a
INNER JOIN (
SELECT SCHDLR_ID FROM (
SELECT SCHDLR_ID FROM itsm_scheduler
WHERE (FRST_REGISTER_ID = #frstRegisterId# OR SCHDLR_SHARE_YN = 'A')
UNION ALL
SELECT a.SCHDLR_ID FROM itsm_scheduler_share a
INNER JOIN itsm_scheduler b ON a.SCHDLR_ID = b.SCHDLR_ID AND b.SCHDLR_SHARE_YN = 'Y'
WHERE (a.SCHDLR_USER_ID = #frstRegisterId# OR a.SCHDLR_DEPT_ID = #schdlrDeptId#)
) a GROUP BY SCHDLR_ID
) b ON a.SCHDLR_ID = b.SCHDLR_ID
INNER JOIN days
ON days.strDate
BETWEEN DATE_FORMAT(a.SCHDLR_BGN_DATETIME, '%Y-%m-%d')
AND DATE_FORMAT(a.SCHDLR_END_DATETIME, '%Y-%m-%d')
WHERE a.SCHDLR_TITLE LIKE CONCAT('%', #searchKeyword#, '%')
) a
WHERE a.schdlrId IS NOT NULL
GROUP BY a.schdlrId
ORDER BY a.schdlrBgnDatetime DESC
LIMIT #recordCountPerPage# OFFSET #firstIndex#
]]>
</select>
<!-- 환경설정 등록 -->
<insert id="schdlrManageDAO.insertSchConfig" parameterClass="schdlrVO">
INSERT INTO itsm_scheduler_config (
SCHDLR_CFG_ID
,SCHDLR_CFG_USER_ID
,SCHDLR_OPEN_CD
,SCHDLR_WEEK_BGN_CD
,SCHDLR_TIME_CD
,SCHDLR_COLOR_USER_CD
,SCHDLR_COLOR_SHARE_CD
,SCHDLR_COLOR_PER_CD
,FRST_REGIST_PNTTM
) VALUES (
#schdlrCfgId#
,#schdlrCfgUserId#
,#schdlrOpenCd#
,#schdlrWeekBgnCd#
,#schdlrTimeCd#
,#schdlrColorUserCd#
,#schdlrColorShareCd#
,#schdlrColorPerCd#
,NOW()
)
</insert>
<!-- 환경설정 조회 -->
<select id="schdlrManageDAO.selectSchConfigDetail" parameterClass="schdlrVO" resultClass="schdlrVO">
SELECT
SCHDLR_CFG_ID as schdlrCfgId
,SCHDLR_CFG_USER_ID as schdlrCfgUserId
,SCHDLR_OPEN_CD as schdlrOpenCd
,SCHDLR_WEEK_BGN_CD as schdlrWeekBgnCd
,SCHDLR_TIME_CD as schdlrTimeCd
,SCHDLR_COLOR_USER_CD as schdlrColorUserCd
,SCHDLR_COLOR_SHARE_CD as schdlrColorShareCd
,SCHDLR_COLOR_PER_CD as schdlrColorPerCd
,FRST_REGIST_PNTTM as frstRegistPnttm
FROM itsm_scheduler_config
WHERE SCHDLR_CFG_USER_ID = #schdlrCfgUserId#
</select>
<!-- 환경설정 수정 -->
<update id="schdlrManageDAO.updateSchConfig" parameterClass="schdlrVO">
UPDATE itsm_scheduler_config SET
SCHDLR_OPEN_CD = #schdlrOpenCd#
,SCHDLR_WEEK_BGN_CD = #schdlrWeekBgnCd#
,SCHDLR_TIME_CD = #schdlrTimeCd#
,SCHDLR_COLOR_USER_CD = #schdlrColorUserCd#
,SCHDLR_COLOR_SHARE_CD = #schdlrColorShareCd#
,SCHDLR_COLOR_PER_CD = #schdlrColorPerCd#
WHERE SCHDLR_CFG_ID = #schdlrCfgId#
</update>
<!-- 일정 메일 알림 목록 조회 -->
<select id="schdlrManageDAO.selectMailSendList" parameterClass="String" resultClass="schdlrVO">
<![CDATA[
SELECT
a.SCHDLR_ID as schdlrId
,a.SCHDLR_TITLE as schdlrTitle
,a.SCHDLR_CN as schdlrCn
,b.USER_NM as frstRegisterNm
,b.EMAIL_ADRES as emailAdres
,DATE_FORMAT(a.SCHDLR_BGN_DATETIME, '%Y-%m-%d %H:%i') as schdlrBgnDatetime
,DATE_FORMAT(a.SCHDLR_END_DATETIME, '%Y-%m-%d %H:%i') as schdlrEndDatetime
,a.SCHDLR_PLACE as schdlrPlace
,a.SCHDLR_ALARM_CND as schdlrAlarmCnd
,DATE_FORMAT(a.orgnDateTime, '%Y-%m-%d %H:%i') as schdlrAlarmDatetime
FROM (
SELECT a.SCHDLR_ID
,a.SCHDLR_TITLE ,a.SCHDLR_CN ,a.FRST_REGISTER_ID
,a.SCHDLR_BGN_DATETIME ,a.SCHDLR_END_DATETIME ,a.SCHDLR_PLACE
,a.SCHDLR_ALARM_CND ,a.SCHDLR_ALARM_DATETIME as orgnDateTime
,CASE a.SCHDLR_ALARM_CND
WHEN 'etc' THEN a.SCHDLR_ALARM_DATETIME
ELSE DATE_ADD(a.SCHDLR_BGN_DATETIME, INTERVAL -a.SCHDLR_ALARM_CND MINUTE)
END as SCHDLR_ALARM_DATETIME
FROM itsm_scheduler a
WHERE 1=1
AND a.SCHDLR_ALARM_MAIL_YN IS NULL
AND a.SCHDLR_ALARM_CND != 'none'
) a
LEFT OUTER JOIN LETTNEMPLYRINFO b
ON a.FRST_REGISTER_ID = b.EMPLYR_ID
WHERE 1=1
AND (
(a.SCHDLR_ALARM_CND = 'etc' AND a.SCHDLR_ALARM_DATETIME
<= DATE_FORMAT(#bgnDateTime# + INTERVAL 1 MINUTE, '%Y-%m-%d %H:%i'))
OR (a.SCHDLR_ALARM_CND = '0' AND a.SCHDLR_BGN_DATETIME
<= DATE_FORMAT(#bgnDateTime# + INTERVAL 1 MINUTE, '%Y-%m-%d %H:%i'))
OR (a.SCHDLR_ALARM_CND = '10' AND a.SCHDLR_BGN_DATETIME + INTERVAL -10 MINUTE
<= DATE_FORMAT(#bgnDateTime# + INTERVAL 1 MINUTE, '%Y-%m-%d %H:%i'))
OR (a.SCHDLR_ALARM_CND = '30' AND a.SCHDLR_BGN_DATETIME + INTERVAL -30 MINUTE
<= DATE_FORMAT(#bgnDateTime# + INTERVAL 1 MINUTE, '%Y-%m-%d %H:%i'))
OR (a.SCHDLR_ALARM_CND = '60' AND a.SCHDLR_BGN_DATETIME + INTERVAL -60 MINUTE
<= DATE_FORMAT(#bgnDateTime# + INTERVAL 1 MINUTE, '%Y-%m-%d %H:%i'))
)
]]>
</select>
<!-- 메일전송완료 수정 -->
<update id="schdlrManageDAO.updateMailSend" parameterClass="schdlrVO">
UPDATE itsm_scheduler SET
SCHDLR_ALARM_MAIL_YN = 'Y'
WHERE SCHDLR_ID = #schdlrId#
</update>
<!-- 메인화면 > 전체일정 -->
<select id="schdlrManageDAO.selectMainSchList" parameterClass="schdlrVO" resultClass="schdlrVO">
SELECT a.*
,IFNULL(g.USER_NM, a.frstRegisterId) as frstRegisterNm
,COUNT(a.schdlrId) OVER() as totCnt
FROM (
SELECT
CASE a.SCHDLR_SHARE_YN
WHEN 'A' THEN '02'
WHEN 'Y' THEN '02'
ELSE '01'
END AS schdlrTyCd
,a.SCHDLR_ID AS schdlrId
,a.SCHDLR_TITLE AS schdlrTitle
,DATE_FORMAT(a.SCHDLR_BGN_DATETIME, '%Y-%m-%d %H:%i') as schdlrBgnDatetime
,DATE_FORMAT(a.SCHDLR_END_DATETIME, '%Y-%m-%d %H:%i') as schdlrEndDatetime
,a.FRST_REGISTER_ID as frstRegisterId
FROM itsm_scheduler a
INNER JOIN (
SELECT SCHDLR_ID FROM (
(SELECT SCHDLR_ID FROM itsm_scheduler
WHERE (FRST_REGISTER_ID = #frstRegisterId# OR SCHDLR_SHARE_YN = 'A')
ORDER BY SCHDLR_BGN_DATETIME DESC
LIMIT 10)
UNION ALL
(SELECT a.SCHDLR_ID FROM itsm_scheduler_share a
INNER JOIN itsm_scheduler b ON a.SCHDLR_ID = b.SCHDLR_ID AND b.SCHDLR_SHARE_YN = 'Y'
WHERE (a.SCHDLR_USER_ID = #frstRegisterId# OR a.SCHDLR_DEPT_ID = #schdlrDeptId#)
ORDER BY b.SCHDLR_BGN_DATETIME DESC
LIMIT 10)
) a GROUP BY SCHDLR_ID
) b ON a.SCHDLR_ID = b.SCHDLR_ID
WHERE 1=1
) a LEFT OUTER JOIN LETTNEMPLYRINFO g
ON a.frstRegisterId = g.EMPLYR_ID
WHERE a.schdlrId IS NOT NULL
<isEqual property="schdlrTyCd" compareValue="01">
AND a.frstRegisterId = 'admin'
</isEqual>
<isEqual property="schdlrTyCd" compareValue="02">
AND a.schdlrTyCd = '02'
</isEqual>
<isEqual property="schdlrTyCd" compareValue="03">
AND a.schdlrTyCd = '03'
</isEqual>
GROUP BY a.schdlrId
ORDER BY a.schdlrBgnDatetime DESC
LIMIT 10
</select>
</sqlMap>

View File

@ -0,0 +1,454 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="SchdlrManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="schdlrVO" type="kcc.let.schdlr.service.SchdlrVO"/>
<!-- 스케줄달력 목록 -->
<select id="schdlrManageDAO.selectSchdlrList" parameterClass="schdlrVO" resultClass="schdlrVO">
<![CDATA[
WITH days AS (
WITH RECURSIVE days AS (
SELECT DATE_FORMAT(#searchBgnDt# + INTERVAL 0 DAY, '%Y%m%d') AS strDate
UNION ALL
SELECT DATE_FORMAT(sub_days.strDate + INTERVAL 1 DAY, '%Y%m%d') AS strDate
FROM days AS sub_days
WHERE sub_days.strDate + INTERVAL 1 DAY < #searchEndDt# + INTERVAL 1 DAY
)
SELECT strDate
FROM days
)
SELECT a.strDate
,GROUP_CONCAT(a.SCHDLR_ID ORDER BY a.ordBgnTime, a.ordEndTime desc separator '|') as schdlrIds
,GROUP_CONCAT(a.SCHDLR_TY_CD ORDER BY a.ordBgnTime, a.ordEndTime desc separator '|') as schdlrTyCd
,GROUP_CONCAT(a.SCHDLR_TITLE ORDER BY a.ordBgnTime, a.ordEndTime desc separator '|') as schdlrTitles
,GROUP_CONCAT(a.schdlrBgnDatetime ORDER BY a.ordBgnTime, a.ordEndTime desc separator '|') as schdlrBgnDatetimes
,GROUP_CONCAT(a.schdlrEndDatetime ORDER BY a.ordBgnTime, a.ordEndTime desc separator '|') as schdlrEndDatetimes
,GROUP_CONCAT(a.schdlrBgnTimes ORDER BY a.ordBgnTime, a.ordEndTime desc separator '|') as schdlrBgnTimes
,GROUP_CONCAT(a.schdlrEndTimes ORDER BY a.ordBgnTime, a.ordEndTime desc separator '|') as schdlrEndTimes
,GROUP_CONCAT(
CASE
WHEN a.schdlrBgnDatetime = a.schdlrEndDatetime THEN 'se'
WHEN a.strDate = a.schdlrBgnDatetime THEN 's'
WHEN a.strDate = a.schdlrEndDatetime THEN 'e'
ELSE 'm'
END
ORDER BY a.ordBgnTime, a.ordEndTime desc separator '|') as schdlrDtSecs
FROM (
SELECT * FROM (
SELECT days.strDate
/*,IF(a.SCHDLR_SHARE_YN = 'Y', '02', '01') AS SCHDLR_TY_CD*/
,CASE a.SCHDLR_SHARE_YN
WHEN 'Y' THEN '02'
WHEN 'A' THEN '02'
ELSE '01'
END AS SCHDLR_TY_CD
,a.SCHDLR_ID
,a.SCHDLR_TITLE
,DATE_FORMAT(a.SCHDLR_BGN_DATETIME, '%Y%m%d') as schdlrBgnDatetime
,DATE_FORMAT(a.SCHDLR_END_DATETIME, '%Y%m%d') as schdlrEndDatetime
,DATE_FORMAT(a.SCHDLR_BGN_DATETIME, '%H:%i') as schdlrBgnTimes
,DATE_FORMAT(a.SCHDLR_END_DATETIME, '%H:%i') as schdlrEndTimes
,DATE_FORMAT(a.SCHDLR_BGN_DATETIME, '%Y%m%d %H:%i') as ordBgnTime
,DATE_FORMAT(a.SCHDLR_END_DATETIME, '%Y%m%d %H:%i') as ordEndTime
FROM itsm_scheduler a
INNER JOIN (
SELECT SCHDLR_ID FROM (
SELECT SCHDLR_ID FROM itsm_scheduler
WHERE (FRST_REGISTER_ID = #frstRegisterId# OR SCHDLR_SHARE_YN = 'A')
UNION ALL
SELECT a.SCHDLR_ID FROM itsm_scheduler_share a
INNER JOIN itsm_scheduler b ON a.SCHDLR_ID = b.SCHDLR_ID AND b.SCHDLR_SHARE_YN = 'Y'
WHERE (a.SCHDLR_USER_ID = #frstRegisterId# OR a.SCHDLR_DEPT_ID = #schdlrDeptId#)
) a GROUP BY SCHDLR_ID
) b ON a.SCHDLR_ID = b.SCHDLR_ID
RIGHT OUTER JOIN days
ON days.strDate
BETWEEN DATE_FORMAT(a.SCHDLR_BGN_DATETIME, '%Y%m%d')
AND DATE_FORMAT(a.SCHDLR_END_DATETIME, '%Y%m%d')
]]>
) a
ORDER BY a.SCHDLR_ID, a.strDate
) a
WHERE a.SCHDLR_ID IS NOT NULL
GROUP BY a.strDate
ORDER BY a.strDate
</select>
<!-- 일정 등록 -->
<insert id="schdlrManageDAO.schdlrInsert" parameterClass="schdlrVO">
INSERT INTO itsm_scheduler (
SCHDLR_ID
,SCHDLR_TITLE
,SCHDLR_SHARE_YN
,SCHDLR_DATE_ALL_YN
,SCHDLR_BGN_DATETIME
,SCHDLR_END_DATETIME
,SCHDLR_PLACE
,SCHDLR_CN
,SCHDLR_ALARM_CND
<isEqual property="schdlrAlarmCnd" compareValue="etc">
,SCHDLR_ALARM_DATETIME
</isEqual>
,SCHDLR_ATCH_FILE_ID
,FRST_REGIST_PNTTM
,FRST_REGISTER_ID
,FRST_REGISTER_NM
,LAST_UPDT_PNTTM
,LAST_UPDUSR_ID
,LAST_UPDUSR_NM
) VALUES (
#schdlrId#
,#schdlrTitle#
,#schdlrShareYn#
,#schdlrDateAllYn#
,#schdlrBgnDatetime#
,#schdlrEndDatetime#
,#schdlrPlace#
,#schdlrCn#
,#schdlrAlarmCnd#
<isEqual property="schdlrAlarmCnd" compareValue="etc">
,#schdlrAlarmDatetime#
</isEqual>
,#schdlrAtchFileId#
,NOW()
,#frstRegisterId#
,#frstRegisterNm#
,NOW()
,#lastUpdusrId#
,#lastUpdusrNm#
)
</insert>
<insert id="schdlrManageDAO.schdlrShareInsert" parameterClass="schdlrVO">
INSERT INTO ITSM_SCHEDULER_SHARE
(
SCHDLR_SHARE_ID
, SCHDLR_ID
, SCHDLR_USER_ID
, SCHDLR_USER_NAME
, SCHDLR_DEPT_ID
, FRST_REGIST_PNTTM
, FRST_REGISTER_ID
)
VALUES
(
#schdlrShareId#
, #schdlrId#
, #schdlrUserId#
, #schdlrUserName#
<isNotEmpty property="schdlrDeptId">
, #schdlrDeptId#
</isNotEmpty>
<isEmpty property="schdlrDeptId">
, NULL
</isEmpty>
, now()
, #frstRegisterId#
)
</insert>
<!-- 일정 상세 조회 -->
<select id="schdlrManageDAO.selectSchdlrDetail" parameterClass="schdlrVO" resultClass="schdlrVO">
SELECT
a.SCHDLR_ID as schdlrId
,a.SCHDLR_TITLE as schdlrTitle
,a.SCHDLR_SHARE_YN as schdlrShareYn
,a.SCHDLR_DATE_ALL_YN as schdlrDateAllYn
,DATE_FORMAT(a.SCHDLR_BGN_DATETIME, '%Y-%m-%d %H:%i') as schdlrBgnDatetime
,DATE_FORMAT(a.SCHDLR_END_DATETIME, '%Y-%m-%d %H:%i') as schdlrEndDatetime
,a.SCHDLR_PLACE as schdlrPlace
,a.SCHDLR_CN as schdlrCn
,a.SCHDLR_ALARM_CND as schdlrAlarmCnd
,a.SCHDLR_ALARM_DATETIME as schdlrAlarmDatetime
,a.SCHDLR_ATCH_FILE_ID as schdlrAtchFileId
,a.FRST_REGIST_PNTTM as frstRegistPnttm
,a.FRST_REGISTER_ID as frstRegisterId
,a.FRST_REGISTER_NM as frstRegisterNm
,a.LAST_UPDT_PNTTM as lastUpdtPnttm
,a.LAST_UPDUSR_ID as lastUpdusrId
,a.LAST_UPDUSR_NM as lastUpdusrNm
,DATE_FORMAT(
CASE a.SCHDLR_ALARM_CND
WHEN 'etc' THEN a.SCHDLR_ALARM_DATETIME
WHEN 'none' THEN ''
ELSE a.SCHDLR_BGN_DATETIME + INTERVAL (-a.SCHDLR_ALARM_CND) MINUTE
END, '%Y-%m-%d %H:%i'
) as orgnAlarmDateTime
FROM itsm_scheduler a
WHERE a.SCHDLR_ID = #schdlrId#
</select>
<!-- 일정 상세 공유 조회 -->
<select id="schdlrManageDAO.selectSchdlrShare" parameterClass="schdlrVO" resultClass="schdlrVO">
SELECT
SCHDLR_SHARE_ID AS schdlrShareId
, SCHDLR_ID AS schdlrId
, SCHDLR_USER_ID AS schdlrUserId
, SCHDLR_USER_NAME AS schdlrUserName
, SCHDLR_DEPT_ID AS schdlrDeptId
FROM
ITSM_SCHEDULER_SHARE
WHERE
SCHDLR_ID = #schdlrId#
</select>
<!-- 일정 상세 공유 조회 -->
<select id="schdlrManageDAO.selectSchdlrShareCount" parameterClass="schdlrVO" resultClass="int">
SELECT
count(*)
FROM
ITSM_SCHEDULER_SHARE
WHERE
SCHDLR_ID = #schdlrId#
</select>
<!-- 관리자 담당자 삭제 -->
<delete id="schdlrManageDAO.deleteSchdlrShare" parameterClass="String" >
DELETE FROM ITSM_SCHEDULER_SHARE
WHERE SCHDLR_ID = #schdlrId#
</delete>
<!-- 스케줄 수정 -->
<update id="schdlrManageDAO.schdlrUpdate" parameterClass="schdlrVO">
UPDATE itsm_scheduler SET
SCHDLR_TITLE = #schdlrTitle#
,SCHDLR_SHARE_YN = #schdlrShareYn#
,SCHDLR_DATE_ALL_YN = #schdlrDateAllYn#
,SCHDLR_BGN_DATETIME = #schdlrBgnDatetime#
,SCHDLR_END_DATETIME = #schdlrEndDatetime#
,SCHDLR_PLACE = #schdlrPlace#
,SCHDLR_CN = #schdlrCn#
,SCHDLR_ALARM_CND = #schdlrAlarmCnd#
<isEqual property="schdlrAlarmCnd" compareValue="etc">
,SCHDLR_ALARM_DATETIME = #schdlrAlarmDatetime#
</isEqual>
<isNotEmpty property="schdlrAlarmMailYn">
,SCHDLR_ALARM_MAIL_YN = #schdlrAlarmMailYn#
</isNotEmpty>
<isNotEqual property="schdlrAlarmCnd" compareValue="etc">
,SCHDLR_ALARM_DATETIME = NULL
</isNotEqual>
,SCHDLR_ATCH_FILE_ID = #schdlrAtchFileId#
,LAST_UPDT_PNTTM = NOW()
,LAST_UPDUSR_ID = #lastUpdusrId#
,LAST_UPDUSR_NM = #lastUpdusrNm#
WHERE SCHDLR_ID = #schdlrId#
</update>
<!-- 일정 목록 조회 -->
<select id="schdlrManageDAO.selectSchList" parameterClass="schdlrVO" resultClass="schdlrVO">
<![CDATA[
WITH days AS (
WITH RECURSIVE days AS (
SELECT DATE_FORMAT(#schdlrBgnDatetime# + INTERVAL 0 DAY, '%Y-%m-%d') AS strDate
UNION ALL
SELECT DATE_FORMAT(sub_days.strDate + INTERVAL 1 DAY, '%Y-%m-%d') AS strDate
FROM days AS sub_days
WHERE sub_days.strDate + INTERVAL 1 DAY < #schdlrEndDatetime# + INTERVAL 1 DAY
)
SELECT strDate
FROM days
)
SELECT COUNT(a.schdlrId) OVER() as totCnt, a.*
FROM (
SELECT
/*IF(a.SCHDLR_SHARE_YN = 'Y', '02', '01') AS schdlrTyCd*/
CASE a.SCHDLR_SHARE_YN
WHEN 'Y' THEN '02'
WHEN 'A' THEN '02'
ELSE '01'
END AS schdlrTyCd
,a.SCHDLR_ID AS schdlrId
,a.SCHDLR_TITLE AS schdlrTitle
,DATE_FORMAT(a.SCHDLR_BGN_DATETIME, '%Y-%m-%d %H:%i') as schdlrBgnDatetime
,DATE_FORMAT(a.SCHDLR_END_DATETIME, '%Y-%m-%d %H:%i') as schdlrEndDatetime
,a.FRST_REGISTER_NM as frstRegisterNm
FROM itsm_scheduler a
INNER JOIN (
SELECT SCHDLR_ID FROM (
SELECT SCHDLR_ID FROM itsm_scheduler
WHERE (FRST_REGISTER_ID = #frstRegisterId# OR SCHDLR_SHARE_YN = 'A')
UNION ALL
SELECT a.SCHDLR_ID FROM itsm_scheduler_share a
INNER JOIN itsm_scheduler b ON a.SCHDLR_ID = b.SCHDLR_ID AND b.SCHDLR_SHARE_YN = 'Y'
WHERE (a.SCHDLR_USER_ID = #frstRegisterId# OR a.SCHDLR_DEPT_ID = #schdlrDeptId#)
) a GROUP BY SCHDLR_ID
) b ON a.SCHDLR_ID = b.SCHDLR_ID
INNER JOIN days
ON days.strDate
BETWEEN DATE_FORMAT(a.SCHDLR_BGN_DATETIME, '%Y-%m-%d')
AND DATE_FORMAT(a.SCHDLR_END_DATETIME, '%Y-%m-%d')
WHERE a.SCHDLR_TITLE LIKE CONCAT('%', #searchKeyword#, '%')
) a
WHERE a.schdlrId IS NOT NULL
GROUP BY a.schdlrId
ORDER BY a.schdlrBgnDatetime DESC
LIMIT #recordCountPerPage# OFFSET #firstIndex#
]]>
</select>
<!-- 환경설정 등록 -->
<insert id="schdlrManageDAO.insertSchConfig" parameterClass="schdlrVO">
INSERT INTO itsm_scheduler_config (
SCHDLR_CFG_ID
,SCHDLR_CFG_USER_ID
,SCHDLR_OPEN_CD
,SCHDLR_WEEK_BGN_CD
,SCHDLR_TIME_CD
,SCHDLR_COLOR_USER_CD
,SCHDLR_COLOR_SHARE_CD
,SCHDLR_COLOR_PER_CD
,FRST_REGIST_PNTTM
) VALUES (
#schdlrCfgId#
,#schdlrCfgUserId#
,#schdlrOpenCd#
,#schdlrWeekBgnCd#
,#schdlrTimeCd#
,#schdlrColorUserCd#
,#schdlrColorShareCd#
,#schdlrColorPerCd#
,NOW()
)
</insert>
<!-- 환경설정 조회 -->
<select id="schdlrManageDAO.selectSchConfigDetail" parameterClass="schdlrVO" resultClass="schdlrVO">
SELECT
SCHDLR_CFG_ID as schdlrCfgId
,SCHDLR_CFG_USER_ID as schdlrCfgUserId
,SCHDLR_OPEN_CD as schdlrOpenCd
,SCHDLR_WEEK_BGN_CD as schdlrWeekBgnCd
,SCHDLR_TIME_CD as schdlrTimeCd
,SCHDLR_COLOR_USER_CD as schdlrColorUserCd
,SCHDLR_COLOR_SHARE_CD as schdlrColorShareCd
,SCHDLR_COLOR_PER_CD as schdlrColorPerCd
,FRST_REGIST_PNTTM as frstRegistPnttm
FROM itsm_scheduler_config
WHERE SCHDLR_CFG_USER_ID = #schdlrCfgUserId#
</select>
<!-- 환경설정 수정 -->
<update id="schdlrManageDAO.updateSchConfig" parameterClass="schdlrVO">
UPDATE itsm_scheduler_config SET
SCHDLR_OPEN_CD = #schdlrOpenCd#
,SCHDLR_WEEK_BGN_CD = #schdlrWeekBgnCd#
,SCHDLR_TIME_CD = #schdlrTimeCd#
,SCHDLR_COLOR_USER_CD = #schdlrColorUserCd#
,SCHDLR_COLOR_SHARE_CD = #schdlrColorShareCd#
,SCHDLR_COLOR_PER_CD = #schdlrColorPerCd#
WHERE SCHDLR_CFG_ID = #schdlrCfgId#
</update>
<!-- 일정 메일 알림 목록 조회 -->
<select id="schdlrManageDAO.selectMailSendList" parameterClass="String" resultClass="schdlrVO">
<![CDATA[
SELECT
a.SCHDLR_ID as schdlrId
,a.SCHDLR_TITLE as schdlrTitle
,a.SCHDLR_CN as schdlrCn
,b.USER_NM as frstRegisterNm
,b.EMAIL_ADRES as emailAdres
,DATE_FORMAT(a.SCHDLR_BGN_DATETIME, '%Y-%m-%d %H:%i') as schdlrBgnDatetime
,DATE_FORMAT(a.SCHDLR_END_DATETIME, '%Y-%m-%d %H:%i') as schdlrEndDatetime
,a.SCHDLR_PLACE as schdlrPlace
,a.SCHDLR_ALARM_CND as schdlrAlarmCnd
,DATE_FORMAT(a.orgnDateTime, '%Y-%m-%d %H:%i') as schdlrAlarmDatetime
FROM (
SELECT a.SCHDLR_ID
,a.SCHDLR_TITLE ,a.SCHDLR_CN ,a.FRST_REGISTER_ID
,a.SCHDLR_BGN_DATETIME ,a.SCHDLR_END_DATETIME ,a.SCHDLR_PLACE
,a.SCHDLR_ALARM_CND ,a.SCHDLR_ALARM_DATETIME as orgnDateTime
,CASE a.SCHDLR_ALARM_CND
WHEN 'etc' THEN a.SCHDLR_ALARM_DATETIME
ELSE DATE_ADD(a.SCHDLR_BGN_DATETIME, INTERVAL -a.SCHDLR_ALARM_CND MINUTE)
END as SCHDLR_ALARM_DATETIME
FROM itsm_scheduler a
WHERE 1=1
AND a.SCHDLR_ALARM_MAIL_YN IS NULL
AND a.SCHDLR_ALARM_CND != 'none'
) a
LEFT OUTER JOIN LETTNEMPLYRINFO b
ON a.FRST_REGISTER_ID = b.EMPLYR_ID
WHERE 1=1
AND (
(a.SCHDLR_ALARM_CND = 'etc' AND a.SCHDLR_ALARM_DATETIME
<= DATE_FORMAT(#bgnDateTime# + INTERVAL 1 MINUTE, '%Y-%m-%d %H:%i'))
OR (a.SCHDLR_ALARM_CND = '0' AND a.SCHDLR_BGN_DATETIME
<= DATE_FORMAT(#bgnDateTime# + INTERVAL 1 MINUTE, '%Y-%m-%d %H:%i'))
OR (a.SCHDLR_ALARM_CND = '10' AND a.SCHDLR_BGN_DATETIME + INTERVAL -10 MINUTE
<= DATE_FORMAT(#bgnDateTime# + INTERVAL 1 MINUTE, '%Y-%m-%d %H:%i'))
OR (a.SCHDLR_ALARM_CND = '30' AND a.SCHDLR_BGN_DATETIME + INTERVAL -30 MINUTE
<= DATE_FORMAT(#bgnDateTime# + INTERVAL 1 MINUTE, '%Y-%m-%d %H:%i'))
OR (a.SCHDLR_ALARM_CND = '60' AND a.SCHDLR_BGN_DATETIME + INTERVAL -60 MINUTE
<= DATE_FORMAT(#bgnDateTime# + INTERVAL 1 MINUTE, '%Y-%m-%d %H:%i'))
)
]]>
</select>
<!-- 메일전송완료 수정 -->
<update id="schdlrManageDAO.updateMailSend" parameterClass="schdlrVO">
UPDATE itsm_scheduler SET
SCHDLR_ALARM_MAIL_YN = 'Y'
WHERE SCHDLR_ID = #schdlrId#
</update>
<!-- 메인화면 > 전체일정 -->
<select id="schdlrManageDAO.selectMainSchList" parameterClass="schdlrVO" resultClass="schdlrVO">
SELECT a.*
,IFNULL(g.USER_NM, a.frstRegisterId) as frstRegisterNm
,COUNT(a.schdlrId) OVER() as totCnt
FROM (
SELECT
CASE a.SCHDLR_SHARE_YN
WHEN 'A' THEN '02'
WHEN 'Y' THEN '02'
ELSE '01'
END AS schdlrTyCd
,a.SCHDLR_ID AS schdlrId
,a.SCHDLR_TITLE AS schdlrTitle
,DATE_FORMAT(a.SCHDLR_BGN_DATETIME, '%Y-%m-%d %H:%i') as schdlrBgnDatetime
,DATE_FORMAT(a.SCHDLR_END_DATETIME, '%Y-%m-%d %H:%i') as schdlrEndDatetime
,a.FRST_REGISTER_ID as frstRegisterId
FROM itsm_scheduler a
INNER JOIN (
SELECT SCHDLR_ID FROM (
(SELECT SCHDLR_ID FROM itsm_scheduler
WHERE (FRST_REGISTER_ID = #frstRegisterId# OR SCHDLR_SHARE_YN = 'A')
ORDER BY SCHDLR_BGN_DATETIME DESC
LIMIT 10)
UNION ALL
(SELECT a.SCHDLR_ID FROM itsm_scheduler_share a
INNER JOIN itsm_scheduler b ON a.SCHDLR_ID = b.SCHDLR_ID AND b.SCHDLR_SHARE_YN = 'Y'
WHERE (a.SCHDLR_USER_ID = #frstRegisterId# OR a.SCHDLR_DEPT_ID = #schdlrDeptId#)
ORDER BY b.SCHDLR_BGN_DATETIME DESC
LIMIT 10)
) a GROUP BY SCHDLR_ID
) b ON a.SCHDLR_ID = b.SCHDLR_ID
WHERE 1=1
) a LEFT OUTER JOIN LETTNEMPLYRINFO g
ON a.frstRegisterId = g.EMPLYR_ID
WHERE a.schdlrId IS NOT NULL
<isEqual property="schdlrTyCd" compareValue="01">
AND a.frstRegisterId = 'admin'
</isEqual>
<isEqual property="schdlrTyCd" compareValue="02">
AND a.schdlrTyCd = '02'
</isEqual>
<isEqual property="schdlrTyCd" compareValue="03">
AND a.schdlrTyCd = '03'
</isEqual>
GROUP BY a.schdlrId
ORDER BY a.schdlrBgnDatetime DESC
LIMIT 10
</select>
</sqlMap>

View File

@ -0,0 +1,212 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="QustnrItemManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="QustnrItemManageVO" type="kcc.let.uss.olp.qim.service.QustnrItemManageVO"/>
<!-- 설문정보::설문템플릿정보 -->
<select id="QustnrItemManage.selectQustnrTmplatManage" parameterClass="QustnrItemManageVO" resultClass="egovMap">
SELECT
QUSTNR_TMPLAT_ID qestnrTmplatId,
QUSTNR_TMPLAT_TY qestnrTmplatTy
FROM LETTNQUSTNRTMPLAT
</select>
<!-- 설문조사(설문결과) 삭제 -->
<delete id="QustnrItemManage.deleteQustnrRespondInfo">
DELETE FROM LETTNQUSTNRRSPNSRESULT WHERE QUSTNR_IEM_ID = #qustnrIemId#
</delete>
<!-- 설문정보::삭제 -->
<delete id="QustnrItemManage.deleteQustnrItemManage">
<![CDATA[
DELETE FROM LETTNQUSTNRIEM
WHERE QUSTNR_IEM_ID = #qustnrIemId#
]]>
</delete>
<!-- 설문정보::수정 -->
<update id="QustnrItemManage.updateQustnrItemManage">
UPDATE LETTNQUSTNRIEM
SET
IEM_SN=#iemSn#,
IEM_CN=#iemCn#,
ETC_ANSWER_AT=#etcAnswerAt#,
LAST_UPDT_PNTTM = SYSDATE,
LAST_UPDUSR_ID = #lastUpdusrId#
WHERE QUSTNR_IEM_ID = #qustnrIemId#
</update>
<!-- 설문정보::상세보기 -->
<select id="QustnrItemManage.selectQustnrItemManageDetail" parameterClass="QustnrItemManageVO" resultClass="egovMap">
SELECT
A.QUSTNR_QESITM_ID qestnrQesitmId,
(SELECT QESTN_CN FROM LETTNQUSTNRQESITM WHERE QUSTNR_QESITM_ID = A.QUSTNR_QESITM_ID) QESTNR_QESITM_CN,
A.QESTNR_ID,
(SELECT QUSTNR_SJ FROM LETTNQESTNRINFO WHERE QESTNR_ID = A.QESTNR_ID) QESTNR_CN,
A.IEM_SN,
A.QUSTNR_IEM_ID,
A.IEM_CN,
A.ETC_ANSWER_AT,
A.QUSTNR_TMPLAT_ID qestnrTmplatId,
A.FRST_REGIST_PNTTM frstRegisterPnttm,
A.FRST_REGISTER_ID,
A.LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID
FROM LETTNQUSTNRIEM A
WHERE 1=1
AND A.QUSTNR_IEM_ID = #qustnrIemId#
</select>
<!-- 설문정보::목록조회_게시물정보 -->
<select id="QustnrItemManage.selectQustnrItemManage" parameterClass="comDefaultVO" resultClass="egovMap">
<![CDATA[
SELECT
A.QUSTNR_QESITM_ID qestnrQesitmId,
A.QESTNR_ID,
A.IEM_SN,
A.QUSTNR_IEM_ID,
A.IEM_CN,
A.ETC_ANSWER_AT,
A.QUSTNR_TMPLAT_ID qestnrTmplatId,
A.FRST_REGIST_PNTTM frstRegisterPnttm,
A.FRST_REGISTER_ID,
(SELECT USER_NM FROM COMVNUSERMASTER WHERE ESNTL_ID = A.FRST_REGISTER_ID ORDER BY USER_NM DESC LIMIT 1) FRST_REGISTER_NM,
A.LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID,
(SELECT QUSTNR_SJ FROM LETTNQESTNRINFO WHERE QESTNR_ID = A.QESTNR_ID LIMIT 1) QUSTNR_SJ,
(SELECT QESTN_CN FROM LETTNQUSTNRQESITM WHERE QUSTNR_QESITM_ID = A.QUSTNR_QESITM_ID LIMIT 1) QESTN_CN
FROM LETTNQUSTNRIEM A
WHERE 1=1
]]>
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isNotEqual property="searchCondition" compareValue="FRST_REGISTER_ID">
<isEqual property="searchCondition" compareValue="IEM_CN">
AND IEM_CN LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isEqual>
</isNotEqual>
<isEqual property="searchCondition" compareValue="FRST_REGISTER_ID">
AND FRST_REGISTER_ID IN (SELECT ESNTL_ID FROM COMVNUSERMASTER WHERE USER_NM LIKE CONCAT(CONCAT('%', #searchKeyword#), '%') )
</isEqual>
<isEqual property="searchCondition" compareValue="QUSTNR_QESITM_ID">
AND QUSTNR_QESITM_ID = #searchKeyword#
</isEqual>
</isNotEqual>
</isNotEmpty>
<![CDATA[
ORDER BY A.FRST_REGIST_PNTTM DESC
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
]]>
</select>
<!-- 설문정보::목록조회_게시물 총갯수 -->
<select id="QustnrItemManage.selectQustnrItemManageCnt" parameterClass="comDefaultVO" resultClass="int">
SELECT
COUNT(*) totcnt
FROM LETTNQUSTNRIEM
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isNotEqual property="searchCondition" compareValue="FRST_REGISTER_ID">
<isEqual property="searchCondition" compareValue="IEM_CN">
AND IEM_CN LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isEqual>
</isNotEqual>
<isEqual property="searchCondition" compareValue="FRST_REGISTER_ID">
AND FRST_REGISTER_ID IN (SELECT ESNTL_ID FROM COMVNUSERMASTER WHERE USER_NM LIKE CONCAT(CONCAT('%', #searchKeyword#), '%') )
</isEqual>
</isNotEqual>
</isNotEmpty>
</select>
<!-- 설문정보::입력 -->
<insert id="QustnrItemManage.insertQustnrItemManage">
/* QustnrItemManage.insertQustnrItemManage */
<![CDATA[
INSERT INTO LETTNQUSTNRIEM (
QUSTNR_QESITM_ID,
QESTNR_ID,
IEM_SN,
QUSTNR_IEM_ID,
IEM_CN,
ETC_ANSWER_AT,
QUSTNR_TMPLAT_ID,
FRST_REGIST_PNTTM,
FRST_REGISTER_ID,
LAST_UPDT_PNTTM,
LAST_UPDUSR_ID
)VALUES(
#qestnrQesitmId#,
#qestnrId#,
#iemSn#,
#qustnrIemId#,
#iemCn#,
#etcAnswerAt#,
#qestnrTmplatId#,
SYSDATE,
#frstRegisterId#,
SYSDATE,
#lastUpdusrId#
)
]]>
</insert>
<!-- 설문정보::입력 -->
<insert id="QustnrItemManage.insertItnQustnrItemManage">
/* QustnrItemManage.insertItnQustnrItemManage */
<![CDATA[
INSERT INTO LETTNQUSTNRIEM (
QUSTNR_QESITM_ID,
QESTNR_ID,
IEM_SN,
QUSTNR_IEM_ID,
IEM_CN,
ETC_ANSWER_AT,
QUSTNR_TMPLAT_ID,
FRST_REGIST_PNTTM,
FRST_REGISTER_ID,
LAST_UPDT_PNTTM,
LAST_UPDUSR_ID
)VALUES(
#qestnrQesitmId#,
#qestnrId#,
#iemSn#,
#qustnrIemId#,
#iemCn#,
#etcAnswerAt#,
#qestnrTmplatId#,
SYSDATE,
#frstRegisterId#,
SYSDATE,
#lastUpdusrId#
)
]]>
</insert>
<!-- 설문정보::삭제 -->
<delete id="QustnrItemManage.deleteAllQustnrItemManage">
<![CDATA[
DELETE FROM LETTNQUSTNRIEM
WHERE QUSTNR_QESITM_ID = #qestnrQesitmId#
]]>
</delete>
<!-- 설문조사(설문결과) 삭제 -->
<delete id="QustnrItemManage.deleteAllQustnrRespondInfo">
DELETE FROM LETTNQUSTNRRSPNSRESULT WHERE QESTNR_ID = #qestnrId#
</delete>
</sqlMap>

View File

@ -0,0 +1,212 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="QustnrItemManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="QustnrItemManageVO" type="kcc.let.uss.olp.qim.service.QustnrItemManageVO"/>
<!-- 설문정보::설문템플릿정보 -->
<select id="QustnrItemManage.selectQustnrTmplatManage" parameterClass="QustnrItemManageVO" resultClass="egovMap">
SELECT
QUSTNR_TMPLAT_ID qestnrTmplatId,
QUSTNR_TMPLAT_TY qestnrTmplatTy
FROM LETTNQUSTNRTMPLAT
</select>
<!-- 설문조사(설문결과) 삭제 -->
<delete id="QustnrItemManage.deleteQustnrRespondInfo">
DELETE FROM LETTNQUSTNRRSPNSRESULT WHERE QUSTNR_IEM_ID = #qustnrIemId#
</delete>
<!-- 설문정보::삭제 -->
<delete id="QustnrItemManage.deleteQustnrItemManage">
<![CDATA[
DELETE FROM LETTNQUSTNRIEM
WHERE QUSTNR_IEM_ID = #qustnrIemId#
]]>
</delete>
<!-- 설문정보::수정 -->
<update id="QustnrItemManage.updateQustnrItemManage">
UPDATE LETTNQUSTNRIEM
SET
IEM_SN=#iemSn#,
IEM_CN=#iemCn#,
ETC_ANSWER_AT=#etcAnswerAt#,
LAST_UPDT_PNTTM = SYSDATE,
LAST_UPDUSR_ID = #lastUpdusrId#
WHERE QUSTNR_IEM_ID = #qustnrIemId#
</update>
<!-- 설문정보::상세보기 -->
<select id="QustnrItemManage.selectQustnrItemManageDetail" parameterClass="QustnrItemManageVO" resultClass="egovMap">
SELECT
A.QUSTNR_QESITM_ID qestnrQesitmId,
(SELECT QESTN_CN FROM LETTNQUSTNRQESITM WHERE QUSTNR_QESITM_ID = A.QUSTNR_QESITM_ID) QESTNR_QESITM_CN,
A.QESTNR_ID,
(SELECT QUSTNR_SJ FROM LETTNQESTNRINFO WHERE QESTNR_ID = A.QESTNR_ID) QESTNR_CN,
A.IEM_SN,
A.QUSTNR_IEM_ID,
A.IEM_CN,
A.ETC_ANSWER_AT,
A.QUSTNR_TMPLAT_ID qestnrTmplatId,
A.FRST_REGIST_PNTTM frstRegisterPnttm,
A.FRST_REGISTER_ID,
A.LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID
FROM LETTNQUSTNRIEM A
WHERE 1=1
AND A.QUSTNR_IEM_ID = #qustnrIemId#
</select>
<!-- 설문정보::목록조회_게시물정보 -->
<select id="QustnrItemManage.selectQustnrItemManage" parameterClass="comDefaultVO" resultClass="egovMap">
<![CDATA[
SELECT
A.QUSTNR_QESITM_ID qestnrQesitmId,
A.QESTNR_ID,
A.IEM_SN,
A.QUSTNR_IEM_ID,
A.IEM_CN,
A.ETC_ANSWER_AT,
A.QUSTNR_TMPLAT_ID qestnrTmplatId,
A.FRST_REGIST_PNTTM frstRegisterPnttm,
A.FRST_REGISTER_ID,
(SELECT USER_NM FROM COMVNUSERMASTER WHERE ESNTL_ID = A.FRST_REGISTER_ID ORDER BY USER_NM DESC LIMIT 1) FRST_REGISTER_NM,
A.LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID,
(SELECT QUSTNR_SJ FROM LETTNQESTNRINFO WHERE QESTNR_ID = A.QESTNR_ID LIMIT 1) QUSTNR_SJ,
(SELECT QESTN_CN FROM LETTNQUSTNRQESITM WHERE QUSTNR_QESITM_ID = A.QUSTNR_QESITM_ID LIMIT 1) QESTN_CN
FROM LETTNQUSTNRIEM A
WHERE 1=1
]]>
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isNotEqual property="searchCondition" compareValue="FRST_REGISTER_ID">
<isEqual property="searchCondition" compareValue="IEM_CN">
AND IEM_CN LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isEqual>
</isNotEqual>
<isEqual property="searchCondition" compareValue="FRST_REGISTER_ID">
AND FRST_REGISTER_ID IN (SELECT ESNTL_ID FROM COMVNUSERMASTER WHERE USER_NM LIKE CONCAT(CONCAT('%', #searchKeyword#), '%') )
</isEqual>
<isEqual property="searchCondition" compareValue="QUSTNR_QESITM_ID">
AND QUSTNR_QESITM_ID = #searchKeyword#
</isEqual>
</isNotEqual>
</isNotEmpty>
<![CDATA[
ORDER BY A.FRST_REGIST_PNTTM DESC
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
]]>
</select>
<!-- 설문정보::목록조회_게시물 총갯수 -->
<select id="QustnrItemManage.selectQustnrItemManageCnt" parameterClass="comDefaultVO" resultClass="int">
SELECT
COUNT(*) totcnt
FROM LETTNQUSTNRIEM
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isNotEqual property="searchCondition" compareValue="FRST_REGISTER_ID">
<isEqual property="searchCondition" compareValue="IEM_CN">
AND IEM_CN LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isEqual>
</isNotEqual>
<isEqual property="searchCondition" compareValue="FRST_REGISTER_ID">
AND FRST_REGISTER_ID IN (SELECT ESNTL_ID FROM COMVNUSERMASTER WHERE USER_NM LIKE CONCAT(CONCAT('%', #searchKeyword#), '%') )
</isEqual>
</isNotEqual>
</isNotEmpty>
</select>
<!-- 설문정보::입력 -->
<insert id="QustnrItemManage.insertQustnrItemManage">
/* QustnrItemManage.insertQustnrItemManage */
<![CDATA[
INSERT INTO LETTNQUSTNRIEM (
QUSTNR_QESITM_ID,
QESTNR_ID,
IEM_SN,
QUSTNR_IEM_ID,
IEM_CN,
ETC_ANSWER_AT,
QUSTNR_TMPLAT_ID,
FRST_REGIST_PNTTM,
FRST_REGISTER_ID,
LAST_UPDT_PNTTM,
LAST_UPDUSR_ID
)VALUES(
#qestnrQesitmId#,
#qestnrId#,
#iemSn#,
#qustnrIemId#,
#iemCn#,
#etcAnswerAt#,
#qestnrTmplatId#,
SYSDATE,
#frstRegisterId#,
SYSDATE,
#lastUpdusrId#
)
]]>
</insert>
<!-- 설문정보::입력 -->
<insert id="QustnrItemManage.insertItnQustnrItemManage">
/* QustnrItemManage.insertItnQustnrItemManage */
<![CDATA[
INSERT INTO LETTNQUSTNRIEM (
QUSTNR_QESITM_ID,
QESTNR_ID,
IEM_SN,
QUSTNR_IEM_ID,
IEM_CN,
ETC_ANSWER_AT,
QUSTNR_TMPLAT_ID,
FRST_REGIST_PNTTM,
FRST_REGISTER_ID,
LAST_UPDT_PNTTM,
LAST_UPDUSR_ID
)VALUES(
#qestnrQesitmId#,
#qestnrId#,
#iemSn#,
#qustnrIemId#,
#iemCn#,
#etcAnswerAt#,
#qestnrTmplatId#,
SYSDATE,
#frstRegisterId#,
SYSDATE,
#lastUpdusrId#
)
]]>
</insert>
<!-- 설문정보::삭제 -->
<delete id="QustnrItemManage.deleteAllQustnrItemManage">
<![CDATA[
DELETE FROM LETTNQUSTNRIEM
WHERE QUSTNR_QESITM_ID = #qestnrQesitmId#
]]>
</delete>
<!-- 설문조사(설문결과) 삭제 -->
<delete id="QustnrItemManage.deleteAllQustnrRespondInfo">
DELETE FROM LETTNQUSTNRRSPNSRESULT WHERE QESTNR_ID = #qestnrId#
</delete>
</sqlMap>

View File

@ -0,0 +1,291 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="QustnrManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="QustnrManageVO" type="kcc.let.uss.olp.qmc.service.QustnrManageVO"/>
<resultMap id="QustnrManage" class="kcc.let.uss.olp.qmc.service.QustnrManageVO">
<result property="qestnrId" column="QESTNR_ID" columnIndex="1"/>
<result property="qestnrSj" column="QUSTNR_SJ" columnIndex="2"/>
<result property="qestnrPurps" column="QUSTNR_PURPS" columnIndex="3"/>
<result property="qestnrWritngGuidanceCn" column="QUSTNR_WRITNG_GUIDANCE_CN" columnIndex="4"/>
<result property="qestnrBeginDe" column="QUSTNR_BGNDE" columnIndex="5"/>
<result property="qestnrEndDe" column="QUSTNR_ENDDE" columnIndex="6"/>
<result property="qestnrTrget" column="QUSTNR_TRGET" columnIndex="7"/>
<result property="qestnrTmplatId" column="QUSTNR_TMPLAT_ID" columnIndex="8"/>
<result property="qestnrTmplatTy" column="QUSTNR_TMPLAT_TY" columnIndex="9"/>
<result property="frstRegisterPnttm" column="FRST_REGIST_PNTTM" columnIndex="10"/>
<result property="frstRegisterId" column="FRST_REGISTER_ID" columnIndex="11"/>
<result property="lastUpdusrPnttm" column="LAST_UPDT_PNTTM" columnIndex="12"/>
<result property="lastUpdusrId" column="LAST_UPDUSR_ID" columnIndex="13"/>
<result property="qustnrQesitmCnt" column="QUSTNRQESITM_CNT" />
<result property="rrspnsResultCnt" column="RRSPNSRESULT_CNT" />
<result property="sttus" column="STTUS" />
<result property="siteId" column="SITE_ID" />
<result property="qestnrViewTrget" column="QUSTNR_VIEW_TRGET" />
<result property="beforeAndAfter" column="BEFORE_AND_AFTER" />
<result property="atchFileId" column="ATCH_FILE_ID" />
</resultMap>
<!-- 설문정보::목록조회_게시물정보 -->
<select id="QustnrManage.selectQustnrManageDetailModel" resultMap="QustnrManage">
/* QustnrManage.selectQustnrManageDetailModel */
<![CDATA[
SELECT
A.QESTNR_ID,
A.QUSTNR_SJ,
A.QUSTNR_PURPS,
A.QUSTNR_WRITNG_GUIDANCE_CN,
TO_DATE(A.QUSTNR_BGNDE,'YYYY-MM-DD') QUSTNR_BGNDE,
TO_DATE(A.QUSTNR_ENDDE,'YYYY-MM-DD') QUSTNR_ENDDE,
A.QUSTNR_TRGET,
A.QUSTNR_TMPLAT_ID,
(SELECT QUSTNR_TMPLAT_TY FROM LETTNQUSTNRTMPLAT WHERE QUSTNR_TMPLAT_ID = A.QUSTNR_TMPLAT_ID) QUSTNR_TMPLAT_TY,
TO_CHAR(A.FRST_REGIST_PNTTM,'YYYY-MM-DD HH24') FRST_REGIST_PNTTM,
(SELECT USER_NM FROM LETTNEMPLYRINFO
WHERE ESNTL_ID = A.FRST_REGISTER_ID) FRST_REGISTER_ID,
TO_CHAR(A.LAST_UPDT_PNTTM,'YYYY-MM-DD HH24') LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID,
( SELECT COUNT(*) FROM LETTNQUSTNRQESITM WHERE QESTNR_ID = A.QESTNR_ID ) QUSTNRQESITM_CNT ,
( SELECT COUNT(*) FROM LETTNQUSTNRRSPNSRESULT WHERE QESTNR_ID = A.QESTNR_ID ) RRSPNSRESULT_CNT,
( SELECT COUNT(*) FROM LETTNQUSTNRRESPONDINFO WHERE QESTNR_ID = A.QESTNR_ID ) rrspnsResultCnt,
CASE
WHEN A.STTUS = '1' THEN
CASE
WHEN TO_DATE(A.QUSTNR_ENDDE,'YYYYMMDD') < TO_CHAR(SYSDATE, 'YYYYMMDD') THEN '2'
ELSE '1'
END
ELSE A.STTUS
END AS STTUS,
A.SITE_ID,
A.SITE_ID_CD AS siteIdCd,
A.QUSTNR_VIEW_TRGET,
A.BEFORE_AND_AFTER,
A.ATCH_FILE_ID
FROM LETTNQESTNRINFO A
WHERE 1=1
AND QESTNR_ID = #qestnrId#
]]>
</select>
<!-- 설문정보::목록조회_게시물정보 -->
<select id="QustnrManage.selectQustnrManage" parameterClass="comDefaultVO" resultClass="egovMap" >
/* QustnrManage.selectQustnrManage */
<![CDATA[
select
count(a.qestnr_id) over() as totcnt
, a.qestnr_id qestnrId
, a.qustnr_sj qestnrSj
, a.qustnr_purps qestnrPurps
, a.qustnr_writng_guidance_cn qestnrwritngguidancecn
, a.qustnr_bgnde qestnrBeginDe
, a.qustnr_endde qestnrEndDe
, a.qustnr_trget qestnrtrget
, a.qustnr_tmplat_id qestnrtmplatid
, a.frst_regist_pnttm frstregisterpnttm
, a.frst_register_id
, (select user_nm from comvnusermaster where esntl_id = a.frst_register_id ORDER BY USER_NM DESC LIMIT 1) frst_register_nm
, a.last_updt_pnttm
, a.last_updusr_id
, a.site_id
, a.before_and_after
, a.atch_file_id
, ( select count(*) from lettnqustnrqesitm where qestnr_id = a.qestnr_id ) qustnrQesitmCnt
, ( select count(*) from lettnqustnrrespondinfo where qestnr_id = a.qestnr_id ) rrspnsResultCnt
, case
when a.qustnr_endde < TO_CHAR(SYSDATE, 'YYYYMMDD') then '2' /* */
else a.sttus
end as sttus
, (select qustnr_tmplat_path_nm from lettnqustnrtmplat where qustnr_tmplat_id = a.qustnr_tmplat_id ) template_url
from
lettnqestnrinfo a
where 1=1
]]>
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isEqual property="searchCondition" compareValue="">
AND ( QUSTNR_SJ LIKE '%'||#searchKeyword#||'%'
OR FRST_REGISTER_ID IN (SELECT ESNTL_ID FROM COMVNUSERMASTER WHERE USER_NM LIKE '%'||#searchKeyword#||'%'
)
)
</isEqual>
<isEqual property="searchCondition" compareValue="QUSTNR_SJ">
AND QUSTNR_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="FRST_REGISTER_ID">
AND FRST_REGISTER_ID IN (SELECT ESNTL_ID FROM COMVNUSERMASTER WHERE USER_NM LIKE '%'||#searchKeyword#||'%' )
</isEqual>
</isNotEqual>
</isNotEmpty>
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
<isNotEqual property="pageIndex" compareValue="0">
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</isNotEqual>
</select>
<!-- 설문정보::목록조회_게시물 총갯수 -->
<select id="QustnrManage.selectQustnrManageCnt" parameterClass="comDefaultVO" resultClass="int">
/* QustnrManage.selectQustnrManageCnt */
SELECT
COUNT(*) totcnt
FROM LETTNQESTNRINFO
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isEqual property="searchCondition" compareValue="">
AND ( QUSTNR_SJ LIKE '%'||#searchKeyword#||'%'
OR FRST_REGISTER_ID IN (SELECT ESNTL_ID FROM COMVNUSERMASTER WHERE USER_NM LIKE '%'||#searchKeyword#||'%' )
)
</isEqual>
<isEqual property="searchCondition" compareValue="QUSTNR_SJ">
AND QUSTNR_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="FRST_REGISTER_ID">
AND FRST_REGISTER_ID IN (SELECT ESNTL_ID FROM COMVNUSERMASTER WHERE USER_NM LIKE '%'||#searchKeyword#||'%' )
</isEqual>
</isNotEqual>
</isNotEmpty>
<isNotEmpty property="searchConditionSite">
AND SITE_ID = #searchConditionSite#
</isNotEmpty>
</select>
<!-- 설문정보::설문템플릿정보 -->
<select id="QustnrManage.selectQustnrTmplatManage" parameterClass="QustnrManageVO" resultClass="egovMap">
SELECT
QUSTNR_TMPLAT_ID qestnrTmplatId,
QUSTNR_TMPLAT_TY qestnrTmplatTy
FROM LETTNQUSTNRTMPLAT
</select>
<!-- 설문응답자 삭제 -->
<delete id="QustnrManage.deleteQustnrRespondManage">
DELETE FROM LETTNQUSTNRRESPONDINFO WHERE QESTNR_ID = #qestnrId#
</delete>
<!-- 설문조사(설문결과) 삭제 -->
<delete id="QustnrManage.deleteQustnrRespondInfo">
DELETE FROM LETTNQUSTNRRSPNSRESULT WHERE QESTNR_ID = #qestnrId#
</delete>
<!-- 설문항목 삭제 -->
<delete id="QustnrManage.deleteQustnrItemManage">
DELETE FROM LETTNQUSTNRIEM WHERE QESTNR_ID = #qestnrId#
</delete>
<!-- 설문문항 삭제 -->
<delete id="QustnrManage.deleteQustnrQestnManage">
DELETE FROM LETTNQUSTNRQESITM WHERE QESTNR_ID = #qestnrId#
</delete>
<!-- 설문정보::삭제 -->
<delete id="QustnrManage.deleteQustnrManage">
<![CDATA[
DELETE FROM LETTNQESTNRINFO
WHERE QESTNR_ID = #qestnrId#
]]>
</delete>
<!-- 설문정보::수정 -->
<update id="QustnrManage.updateQustnrManage">
UPDATE LETTNQESTNRINFO
SET
QUSTNR_SJ=#qestnrSj#,
QUSTNR_PURPS=#qestnrPurps#,
QUSTNR_TMPLAT_ID=#qestnrTmplatId#,
QUSTNR_WRITNG_GUIDANCE_CN=#qestnrWritngGuidanceCn#,
QUSTNR_BGNDE=REPLACE(#qestnrBeginDe#,'-',''),
QUSTNR_TRGET=#qestnrTrget#,
QUSTNR_VIEW_TRGET=#qestnrViewTrget#,
QUSTNR_ENDDE=REPLACE(#qestnrEndDe#,'-',''),
LAST_UPDT_PNTTM = SYSDATE,
SITE_ID = #siteId#,
LAST_UPDUSR_ID = #lastUpdusrId#,
STTUS = #sttus#,
BEFORE_AND_AFTER = #beforeAndAfter#,
ATCH_FILE_ID = #atchFileId#
WHERE QESTNR_ID = #qestnrId#
</update>
<!-- 설문정보::상세보기 -->
<select id="QustnrManage.selectQustnrManageDetail" parameterClass="QustnrManageVO" resultClass="egovMap">
/* QustnrManage.selectQustnrManageDetail */
<![CDATA[
SELECT
A.QESTNR_ID,
A.QUSTNR_SJ qestnrSj,
A.QUSTNR_PURPS qestnrPurps,
A.QUSTNR_WRITNG_GUIDANCE_CN qestnrWritngGuidanceCn,
TO_DATE(A.QUSTNR_BGNDE,'YYYY-MM-DD') QESTNR_BEGIN_DE,
TO_DATE(A.QUSTNR_ENDDE,'YYYY-MM-DD') QESTNR_END_DE,
TO_CHAR(A.FRST_REGIST_PNTTM,'YYYY-MM-DD HH24') frstRegisterPnttm,
A.FRST_REGISTER_ID,
TO_CHAR(A.LAST_UPDT_PNTTM,'YYYY-MM-DD HH24') LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID,
A.ATCH_FILE_ID atchFileId,
A.QUSTNR_TRGET qestnrTrget,
A.QUSTNR_VIEW_TRGET qestnrViewTrget,
A.QUSTNR_TMPLAT_ID qestnrTmplatId,
( SELECT COUNT(*) FROM LETTNQUSTNRQESITM WHERE QESTNR_ID = A.QESTNR_ID ) qustnrQesitmCnt ,
( SELECT COUNT(*) FROM LETTNQUSTNRRESPONDINFO WHERE QESTNR_ID = A.QESTNR_ID ) rrspnsResultCnt,
CASE
WHEN A.QUSTNR_ENDDE < TO_CHAR(SYSDATE, 'YYYY.MM.DD') THEN '2' /* */
ELSE A.STTUS
END AS STTUS,
(SELECT QUSTNR_TMPLAT_PATH_NM FROM LETTNQUSTNRTMPLAT WHERE QUSTNR_TMPLAT_ID = A.QUSTNR_TMPLAT_ID ) TEMPLATE_URL
FROM LETTNQESTNRINFO A
WHERE 1=1
AND QESTNR_ID = #qestnrId#
]]>
</select>
<!-- 설문정보::입력 -->
<insert id="QustnrManage.insertQustnrManage">
INSERT INTO LETTNQESTNRINFO (
QESTNR_ID,
QUSTNR_SJ,
QUSTNR_PURPS,
QUSTNR_WRITNG_GUIDANCE_CN,
QUSTNR_BGNDE,
QUSTNR_ENDDE,
QUSTNR_TRGET,
QUSTNR_VIEW_TRGET,
QUSTNR_TMPLAT_ID,
SITE_ID,
FRST_REGIST_PNTTM,
FRST_REGISTER_ID,
LAST_UPDT_PNTTM,
LAST_UPDUSR_ID,
ATCH_FILE_ID
)VALUES(
#qestnrId#,
#qestnrSj#,
#qestnrPurps#,
#qestnrWritngGuidanceCn#,
REPLACE(#qestnrBeginDe#,'-',''),
REPLACE(#qestnrEndDe#,'-',''),
#qestnrTrget#,
#qestnrViewTrget#,
#qestnrTmplatId#,
#siteId#,
SYSDATE,
#frstRegisterId#,
SYSDATE,
#lastUpdusrId#,
#atchFileId#
)
</insert>
</sqlMap>

View File

@ -0,0 +1,291 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="QustnrManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="QustnrManageVO" type="kcc.let.uss.olp.qmc.service.QustnrManageVO"/>
<resultMap id="QustnrManage" class="kcc.let.uss.olp.qmc.service.QustnrManageVO">
<result property="qestnrId" column="QESTNR_ID" columnIndex="1"/>
<result property="qestnrSj" column="QUSTNR_SJ" columnIndex="2"/>
<result property="qestnrPurps" column="QUSTNR_PURPS" columnIndex="3"/>
<result property="qestnrWritngGuidanceCn" column="QUSTNR_WRITNG_GUIDANCE_CN" columnIndex="4"/>
<result property="qestnrBeginDe" column="QUSTNR_BGNDE" columnIndex="5"/>
<result property="qestnrEndDe" column="QUSTNR_ENDDE" columnIndex="6"/>
<result property="qestnrTrget" column="QUSTNR_TRGET" columnIndex="7"/>
<result property="qestnrTmplatId" column="QUSTNR_TMPLAT_ID" columnIndex="8"/>
<result property="qestnrTmplatTy" column="QUSTNR_TMPLAT_TY" columnIndex="9"/>
<result property="frstRegisterPnttm" column="FRST_REGIST_PNTTM" columnIndex="10"/>
<result property="frstRegisterId" column="FRST_REGISTER_ID" columnIndex="11"/>
<result property="lastUpdusrPnttm" column="LAST_UPDT_PNTTM" columnIndex="12"/>
<result property="lastUpdusrId" column="LAST_UPDUSR_ID" columnIndex="13"/>
<result property="qustnrQesitmCnt" column="QUSTNRQESITM_CNT" />
<result property="rrspnsResultCnt" column="RRSPNSRESULT_CNT" />
<result property="sttus" column="STTUS" />
<result property="siteId" column="SITE_ID" />
<result property="qestnrViewTrget" column="QUSTNR_VIEW_TRGET" />
<result property="beforeAndAfter" column="BEFORE_AND_AFTER" />
<result property="atchFileId" column="ATCH_FILE_ID" />
</resultMap>
<!-- 설문정보::목록조회_게시물정보 -->
<select id="QustnrManage.selectQustnrManageDetailModel" resultMap="QustnrManage">
/* QustnrManage.selectQustnrManageDetailModel */
<![CDATA[
SELECT
A.QESTNR_ID,
A.QUSTNR_SJ,
A.QUSTNR_PURPS,
A.QUSTNR_WRITNG_GUIDANCE_CN,
TO_DATE(A.QUSTNR_BGNDE,'YYYY-MM-DD') QUSTNR_BGNDE,
TO_DATE(A.QUSTNR_ENDDE,'YYYY-MM-DD') QUSTNR_ENDDE,
A.QUSTNR_TRGET,
A.QUSTNR_TMPLAT_ID,
(SELECT QUSTNR_TMPLAT_TY FROM LETTNQUSTNRTMPLAT WHERE QUSTNR_TMPLAT_ID = A.QUSTNR_TMPLAT_ID) QUSTNR_TMPLAT_TY,
TO_CHAR(A.FRST_REGIST_PNTTM,'YYYY-MM-DD HH24') FRST_REGIST_PNTTM,
(SELECT USER_NM FROM LETTNEMPLYRINFO
WHERE ESNTL_ID = A.FRST_REGISTER_ID) FRST_REGISTER_ID,
TO_CHAR(A.LAST_UPDT_PNTTM,'YYYY-MM-DD HH24') LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID,
( SELECT COUNT(*) FROM LETTNQUSTNRQESITM WHERE QESTNR_ID = A.QESTNR_ID ) QUSTNRQESITM_CNT ,
( SELECT COUNT(*) FROM LETTNQUSTNRRSPNSRESULT WHERE QESTNR_ID = A.QESTNR_ID ) RRSPNSRESULT_CNT,
( SELECT COUNT(*) FROM LETTNQUSTNRRESPONDINFO WHERE QESTNR_ID = A.QESTNR_ID ) rrspnsResultCnt,
CASE
WHEN A.STTUS = '1' THEN
CASE
WHEN TO_DATE(A.QUSTNR_ENDDE,'YYYYMMDD') < TO_CHAR(SYSDATE, 'YYYYMMDD') THEN '2'
ELSE '1'
END
ELSE A.STTUS
END AS STTUS,
A.SITE_ID,
A.SITE_ID_CD AS siteIdCd,
A.QUSTNR_VIEW_TRGET,
A.BEFORE_AND_AFTER,
A.ATCH_FILE_ID
FROM LETTNQESTNRINFO A
WHERE 1=1
AND QESTNR_ID = #qestnrId#
]]>
</select>
<!-- 설문정보::목록조회_게시물정보 -->
<select id="QustnrManage.selectQustnrManage" parameterClass="comDefaultVO" resultClass="egovMap" >
/* QustnrManage.selectQustnrManage */
<![CDATA[
select
count(a.qestnr_id) over() as totcnt
, a.qestnr_id qestnrId
, a.qustnr_sj qestnrSj
, a.qustnr_purps qestnrPurps
, a.qustnr_writng_guidance_cn qestnrwritngguidancecn
, a.qustnr_bgnde qestnrBeginDe
, a.qustnr_endde qestnrEndDe
, a.qustnr_trget qestnrtrget
, a.qustnr_tmplat_id qestnrtmplatid
, a.frst_regist_pnttm frstregisterpnttm
, a.frst_register_id
, (select user_nm from comvnusermaster where esntl_id = a.frst_register_id ORDER BY USER_NM DESC LIMIT 1) frst_register_nm
, a.last_updt_pnttm
, a.last_updusr_id
, a.site_id
, a.before_and_after
, a.atch_file_id
, ( select count(*) from lettnqustnrqesitm where qestnr_id = a.qestnr_id ) qustnrQesitmCnt
, ( select count(*) from lettnqustnrrespondinfo where qestnr_id = a.qestnr_id ) rrspnsResultCnt
, case
when a.qustnr_endde < TO_CHAR(SYSDATE, 'YYYYMMDD') then '2' /* */
else a.sttus
end as sttus
, (select qustnr_tmplat_path_nm from lettnqustnrtmplat where qustnr_tmplat_id = a.qustnr_tmplat_id ) template_url
from
lettnqestnrinfo a
where 1=1
]]>
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isEqual property="searchCondition" compareValue="">
AND ( QUSTNR_SJ LIKE '%'||#searchKeyword#||'%'
OR FRST_REGISTER_ID IN (SELECT ESNTL_ID FROM COMVNUSERMASTER WHERE USER_NM LIKE '%'||#searchKeyword#||'%'
)
)
</isEqual>
<isEqual property="searchCondition" compareValue="QUSTNR_SJ">
AND QUSTNR_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="FRST_REGISTER_ID">
AND FRST_REGISTER_ID IN (SELECT ESNTL_ID FROM COMVNUSERMASTER WHERE USER_NM LIKE '%'||#searchKeyword#||'%' )
</isEqual>
</isNotEqual>
</isNotEmpty>
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
<isNotEqual property="pageIndex" compareValue="0">
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</isNotEqual>
</select>
<!-- 설문정보::목록조회_게시물 총갯수 -->
<select id="QustnrManage.selectQustnrManageCnt" parameterClass="comDefaultVO" resultClass="int">
/* QustnrManage.selectQustnrManageCnt */
SELECT
COUNT(*) totcnt
FROM LETTNQESTNRINFO
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isEqual property="searchCondition" compareValue="">
AND ( QUSTNR_SJ LIKE '%'||#searchKeyword#||'%'
OR FRST_REGISTER_ID IN (SELECT ESNTL_ID FROM COMVNUSERMASTER WHERE USER_NM LIKE '%'||#searchKeyword#||'%' )
)
</isEqual>
<isEqual property="searchCondition" compareValue="QUSTNR_SJ">
AND QUSTNR_SJ LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="FRST_REGISTER_ID">
AND FRST_REGISTER_ID IN (SELECT ESNTL_ID FROM COMVNUSERMASTER WHERE USER_NM LIKE '%'||#searchKeyword#||'%' )
</isEqual>
</isNotEqual>
</isNotEmpty>
<isNotEmpty property="searchConditionSite">
AND SITE_ID = #searchConditionSite#
</isNotEmpty>
</select>
<!-- 설문정보::설문템플릿정보 -->
<select id="QustnrManage.selectQustnrTmplatManage" parameterClass="QustnrManageVO" resultClass="egovMap">
SELECT
QUSTNR_TMPLAT_ID qestnrTmplatId,
QUSTNR_TMPLAT_TY qestnrTmplatTy
FROM LETTNQUSTNRTMPLAT
</select>
<!-- 설문응답자 삭제 -->
<delete id="QustnrManage.deleteQustnrRespondManage">
DELETE FROM LETTNQUSTNRRESPONDINFO WHERE QESTNR_ID = #qestnrId#
</delete>
<!-- 설문조사(설문결과) 삭제 -->
<delete id="QustnrManage.deleteQustnrRespondInfo">
DELETE FROM LETTNQUSTNRRSPNSRESULT WHERE QESTNR_ID = #qestnrId#
</delete>
<!-- 설문항목 삭제 -->
<delete id="QustnrManage.deleteQustnrItemManage">
DELETE FROM LETTNQUSTNRIEM WHERE QESTNR_ID = #qestnrId#
</delete>
<!-- 설문문항 삭제 -->
<delete id="QustnrManage.deleteQustnrQestnManage">
DELETE FROM LETTNQUSTNRQESITM WHERE QESTNR_ID = #qestnrId#
</delete>
<!-- 설문정보::삭제 -->
<delete id="QustnrManage.deleteQustnrManage">
<![CDATA[
DELETE FROM LETTNQESTNRINFO
WHERE QESTNR_ID = #qestnrId#
]]>
</delete>
<!-- 설문정보::수정 -->
<update id="QustnrManage.updateQustnrManage">
UPDATE LETTNQESTNRINFO
SET
QUSTNR_SJ=#qestnrSj#,
QUSTNR_PURPS=#qestnrPurps#,
QUSTNR_TMPLAT_ID=#qestnrTmplatId#,
QUSTNR_WRITNG_GUIDANCE_CN=#qestnrWritngGuidanceCn#,
QUSTNR_BGNDE=REPLACE(#qestnrBeginDe#,'-',''),
QUSTNR_TRGET=#qestnrTrget#,
QUSTNR_VIEW_TRGET=#qestnrViewTrget#,
QUSTNR_ENDDE=REPLACE(#qestnrEndDe#,'-',''),
LAST_UPDT_PNTTM = SYSDATE,
SITE_ID = #siteId#,
LAST_UPDUSR_ID = #lastUpdusrId#,
STTUS = #sttus#,
BEFORE_AND_AFTER = #beforeAndAfter#,
ATCH_FILE_ID = #atchFileId#
WHERE QESTNR_ID = #qestnrId#
</update>
<!-- 설문정보::상세보기 -->
<select id="QustnrManage.selectQustnrManageDetail" parameterClass="QustnrManageVO" resultClass="egovMap">
/* QustnrManage.selectQustnrManageDetail */
<![CDATA[
SELECT
A.QESTNR_ID,
A.QUSTNR_SJ qestnrSj,
A.QUSTNR_PURPS qestnrPurps,
A.QUSTNR_WRITNG_GUIDANCE_CN qestnrWritngGuidanceCn,
TO_DATE(A.QUSTNR_BGNDE,'YYYY-MM-DD') QESTNR_BEGIN_DE,
TO_DATE(A.QUSTNR_ENDDE,'YYYY-MM-DD') QESTNR_END_DE,
TO_CHAR(A.FRST_REGIST_PNTTM,'YYYY-MM-DD HH24') frstRegisterPnttm,
A.FRST_REGISTER_ID,
TO_CHAR(A.LAST_UPDT_PNTTM,'YYYY-MM-DD HH24') LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID,
A.ATCH_FILE_ID atchFileId,
A.QUSTNR_TRGET qestnrTrget,
A.QUSTNR_VIEW_TRGET qestnrViewTrget,
A.QUSTNR_TMPLAT_ID qestnrTmplatId,
( SELECT COUNT(*) FROM LETTNQUSTNRQESITM WHERE QESTNR_ID = A.QESTNR_ID ) qustnrQesitmCnt ,
( SELECT COUNT(*) FROM LETTNQUSTNRRESPONDINFO WHERE QESTNR_ID = A.QESTNR_ID ) rrspnsResultCnt,
CASE
WHEN A.QUSTNR_ENDDE < TO_CHAR(SYSDATE, 'YYYY.MM.DD') THEN '2' /* */
ELSE A.STTUS
END AS STTUS,
(SELECT QUSTNR_TMPLAT_PATH_NM FROM LETTNQUSTNRTMPLAT WHERE QUSTNR_TMPLAT_ID = A.QUSTNR_TMPLAT_ID ) TEMPLATE_URL
FROM LETTNQESTNRINFO A
WHERE 1=1
AND QESTNR_ID = #qestnrId#
]]>
</select>
<!-- 설문정보::입력 -->
<insert id="QustnrManage.insertQustnrManage">
INSERT INTO LETTNQESTNRINFO (
QESTNR_ID,
QUSTNR_SJ,
QUSTNR_PURPS,
QUSTNR_WRITNG_GUIDANCE_CN,
QUSTNR_BGNDE,
QUSTNR_ENDDE,
QUSTNR_TRGET,
QUSTNR_VIEW_TRGET,
QUSTNR_TMPLAT_ID,
SITE_ID,
FRST_REGIST_PNTTM,
FRST_REGISTER_ID,
LAST_UPDT_PNTTM,
LAST_UPDUSR_ID,
ATCH_FILE_ID
)VALUES(
#qestnrId#,
#qestnrSj#,
#qestnrPurps#,
#qestnrWritngGuidanceCn#,
REPLACE(#qestnrBeginDe#,'-',''),
REPLACE(#qestnrEndDe#,'-',''),
#qestnrTrget#,
#qestnrViewTrget#,
#qestnrTmplatId#,
#siteId#,
SYSDATE,
#frstRegisterId#,
SYSDATE,
#lastUpdusrId#,
#atchFileId#
)
</insert>
</sqlMap>

View File

@ -0,0 +1,204 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="QustnrQestnManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="QustnrQestnManageVO" type="kcc.let.uss.olp.qqm.service.QustnrQestnManageVO"/>
<!-- 설문문항:: 객관식 통계 -->
<select id="QustnrQestnManage.selectQustnrManageStatistics" parameterClass="java.util.Map" resultClass="egovMap">
<![CDATA[
SELECT
( SELECT IEM_CN FROM LETTNQUSTNRIEM
WHERE 1=1
AND QUSTNR_IEM_ID = A.QUSTNR_IEM_ID ) IEM_CN,
COUNT(A.QUSTNR_IEM_ID) QUSTNR_IEM_ID_CNT,
ROUND((100/(SELECT COUNT(*) CNT
FROM LETTNQUSTNRRSPNSRESULT
WHERE QUSTNR_QESITM_ID = #qestnrQesitmId#)) * COUNT(A.QUSTNR_IEM_ID)) QUSTNR_PERCENT
FROM LETTNQUSTNRRSPNSRESULT A
WHERE 1=1
AND A.QUSTNR_QESITM_ID = #qestnrQesitmId#
GROUP BY A.QUSTNR_IEM_ID
]]>
</select>
<!-- 설문문항:: 응답자답변내용 결과/기타답변내용 결과 통계 -->
<select id="QustnrQestnManage.selectQustnrManageStatistics2" parameterClass="java.util.Map" resultClass="egovMap">
<![CDATA[
SELECT
RESPOND_ANSWER_CN,
ETC_ANSWER_CN
FROM LETTNQUSTNRRSPNSRESULT A
WHERE 1=1
AND A.QUSTNR_QESITM_ID = #qestnrQesitmId#
]]>
</select>
<!-- 설문문항:: 설문지 제목 검색 -->
<select id="QustnrQestnManage.selectQustnrManageQestnrSj" parameterClass="java.util.Map" resultClass="egovMap">
SELECT QUSTNR_SJ
FROM LETTNQESTNRINFO
WHERE QESTNR_ID = #qestnrId#
</select>
<!-- 설문조사(설문결과) 삭제 -->
<delete id="QustnrQestnManage.deleteQustnrRespondInfo">
DELETE FROM LETTNQUSTNRRSPNSRESULT
WHERE QUSTNR_QESITM_ID = #qestnrQesitmId#
</delete>
<!-- 설문항목 삭제 -->
<delete id="QustnrQestnManage.deleteQustnrItemManage">
DELETE FROM LETTNQUSTNRIEM
WHERE QUSTNR_QESITM_ID = #qestnrQesitmId#
</delete>
<!-- 설문문항::삭제 -->
<delete id="QustnrQestnManage.deleteQustnrQestnManage">
<![CDATA[
DELETE FROM LETTNQUSTNRQESITM
WHERE QUSTNR_QESITM_ID = #qestnrQesitmId#
]]>
</delete>
<!-- 설문문항::수정 -->
<update id="QustnrQestnManage.updateQustnrQestnManage">
UPDATE LETTNQUSTNRQESITM
SET
QESTN_SN=#qestnSn#,
QESTN_TY_CODE=#qestnTyCode#,
QESTN_CN=#qestnCn#,
MXMM_CHOISE_CO=#mxmmChoiseCo#,
LAST_UPDT_PNTTM = SYSDATE,
LAST_UPDUSR_ID = #lastUpdusrId#
WHERE QUSTNR_QESITM_ID = #qestnrQesitmId#
</update>
<!-- 설문문항::상세보기 -->
<select id="QustnrQestnManage.selectQustnrQestnManageDetail" parameterClass="QustnrQestnManageVO" resultClass="egovMap">
/* QustnrQestnManage.selectQustnrQestnManageDetail */
SELECT
A.QUSTNR_QESITM_ID qestnrQesitmId,
A.QESTNR_ID,
(SELECT QUSTNR_SJ FROM LETTNQESTNRINFO WHERE QESTNR_ID=A.QESTNR_ID) QESTNR_SJ,
A.QESTN_SN "qestnSn",
A.QESTN_TY_CODE "qestnTyCode",
A.QESTN_CN "qestnCn",
A.MXMM_CHOISE_CO "mxmmChoiseCo",
A.QUSTNR_TMPLAT_ID "qestnrTmplatId",
TO_CHAR(A.FRST_REGIST_PNTTM,'YYYY-MM-DD HH24:MI:SS') FRST_REGIST_PNTTM,
A.FRST_REGISTER_ID,
TO_CHAR(A.LAST_UPDT_PNTTM,'YYYY-MM-DD HH24:MI:SS') LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID
FROM LETTNQUSTNRQESITM A
WHERE 1=1
AND QUSTNR_QESITM_ID = #qestnrQesitmId#
</select>
<!-- 설문문항::목록조회_게시물정보 -->
<select id="QustnrQestnManage.selectQustnrQestnManage" parameterClass="comDefaultVO" resultClass="egovMap">
/* QustnrQestnManage.selectQustnrQestnManage */
<![CDATA[
SELECT
A.QUSTNR_QESITM_ID "qestnrQesitmId",
A.QESTNR_ID,
(SELECT QUSTNR_SJ FROM LETTNQESTNRINFO WHERE QESTNR_ID=A.QESTNR_ID) "QESTNR_SJ",
A.QESTN_SN,
A.QESTN_TY_CODE,
A.QESTN_CN,
A.MXMM_CHOISE_CO,
A.QUSTNR_TMPLAT_ID "qestnrTmplatId",
TO_CHAR(A.FRST_REGIST_PNTTM,'YYYY-MM-DD') FRST_REGIST_PNTTM,
A.FRST_REGISTER_ID,
(SELECT USER_NM FROM COMVNUSERMASTER WHERE ESNTL_ID = A.FRST_REGISTER_ID ORDER BY USER_NM DESC LIMIT 1) FRST_REGISTER_NM,
TO_CHAR(A.LAST_UPDT_PNTTM,'YYYY-MM-DD') LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID,
( SELECT COUNT(*) FROM LETTNQUSTNRIEM WHERE QUSTNR_QESITM_ID = A.QUSTNR_QESITM_ID ) QUSTNRIEM_CNT
FROM LETTNQUSTNRQESITM A
WHERE 1=1
]]>
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isNotEqual property="searchCondition" compareValue="">
<isEqual property="searchCondition" compareValue="QESTN_CN">
AND QESTN_CN LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isEqual>
<isEqual property="searchCondition" compareValue="MXMM_CHOISE_CO">
AND MXMM_CHOISE_CO LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isEqual>
<isEqual property="searchCondition" compareValue="QESTNR_ID">
AND QESTNR_ID = #searchKeyword#
</isEqual>
</isNotEqual>
</isNotEqual>
</isNotEmpty>
<![CDATA[
ORDER BY A.QESTN_SN ASC
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
]]>
</select>
<!-- 설문문항::목록조회_게시물 총갯수 -->
<select id="QustnrQestnManage.selectQustnrQestnManageCnt" parameterClass="comDefaultVO" resultClass="int">
SELECT
COUNT(*) totcnt
FROM LETTNQUSTNRQESITM
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isNotEqual property="searchCondition" compareValue="">
<isEqual property="searchCondition" compareValue="QESTN_CN">
AND QESTN_CN LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isEqual>
<isEqual property="searchCondition" compareValue="MXMM_CHOISE_CO">
AND MXMM_CHOISE_CO LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isEqual>
</isNotEqual>
</isNotEqual>
</isNotEmpty>
</select>
<!-- 설문문항::입력 -->
<insert id="QustnrQestnManage.insertQustnrQestnManage">
/* QustnrQestnManage.insertQustnrQestnManage */
<![CDATA[
INSERT INTO LETTNQUSTNRQESITM (
QUSTNR_QESITM_ID,
QESTNR_ID,
QESTN_SN,
QESTN_TY_CODE,
QESTN_CN,
MXMM_CHOISE_CO,
QUSTNR_TMPLAT_ID,
FRST_REGIST_PNTTM,
FRST_REGISTER_ID,
LAST_UPDT_PNTTM,
LAST_UPDUSR_ID
)VALUES(
#qestnrQesitmId#,
#qestnrId#,
#qestnSn#,
#qestnTyCode#,
#qestnCn#,
#mxmmChoiseCo#,
#qestnrTmplatId#,
SYSDATE,
#frstRegisterId#,
SYSDATE,
#lastUpdusrId#
)
]]>
</insert>
</sqlMap>

View File

@ -0,0 +1,204 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="QustnrQestnManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="QustnrQestnManageVO" type="kcc.let.uss.olp.qqm.service.QustnrQestnManageVO"/>
<!-- 설문문항:: 객관식 통계 -->
<select id="QustnrQestnManage.selectQustnrManageStatistics" parameterClass="java.util.Map" resultClass="egovMap">
<![CDATA[
SELECT
( SELECT IEM_CN FROM LETTNQUSTNRIEM
WHERE 1=1
AND QUSTNR_IEM_ID = A.QUSTNR_IEM_ID ) IEM_CN,
COUNT(A.QUSTNR_IEM_ID) QUSTNR_IEM_ID_CNT,
ROUND((100/(SELECT COUNT(*) CNT
FROM LETTNQUSTNRRSPNSRESULT
WHERE QUSTNR_QESITM_ID = #qestnrQesitmId#)) * COUNT(A.QUSTNR_IEM_ID)) QUSTNR_PERCENT
FROM LETTNQUSTNRRSPNSRESULT A
WHERE 1=1
AND A.QUSTNR_QESITM_ID = #qestnrQesitmId#
GROUP BY A.QUSTNR_IEM_ID
]]>
</select>
<!-- 설문문항:: 응답자답변내용 결과/기타답변내용 결과 통계 -->
<select id="QustnrQestnManage.selectQustnrManageStatistics2" parameterClass="java.util.Map" resultClass="egovMap">
<![CDATA[
SELECT
RESPOND_ANSWER_CN,
ETC_ANSWER_CN
FROM LETTNQUSTNRRSPNSRESULT A
WHERE 1=1
AND A.QUSTNR_QESITM_ID = #qestnrQesitmId#
]]>
</select>
<!-- 설문문항:: 설문지 제목 검색 -->
<select id="QustnrQestnManage.selectQustnrManageQestnrSj" parameterClass="java.util.Map" resultClass="egovMap">
SELECT QUSTNR_SJ
FROM LETTNQESTNRINFO
WHERE QESTNR_ID = #qestnrId#
</select>
<!-- 설문조사(설문결과) 삭제 -->
<delete id="QustnrQestnManage.deleteQustnrRespondInfo">
DELETE FROM LETTNQUSTNRRSPNSRESULT
WHERE QUSTNR_QESITM_ID = #qestnrQesitmId#
</delete>
<!-- 설문항목 삭제 -->
<delete id="QustnrQestnManage.deleteQustnrItemManage">
DELETE FROM LETTNQUSTNRIEM
WHERE QUSTNR_QESITM_ID = #qestnrQesitmId#
</delete>
<!-- 설문문항::삭제 -->
<delete id="QustnrQestnManage.deleteQustnrQestnManage">
<![CDATA[
DELETE FROM LETTNQUSTNRQESITM
WHERE QUSTNR_QESITM_ID = #qestnrQesitmId#
]]>
</delete>
<!-- 설문문항::수정 -->
<update id="QustnrQestnManage.updateQustnrQestnManage">
UPDATE LETTNQUSTNRQESITM
SET
QESTN_SN=#qestnSn#,
QESTN_TY_CODE=#qestnTyCode#,
QESTN_CN=#qestnCn#,
MXMM_CHOISE_CO=#mxmmChoiseCo#,
LAST_UPDT_PNTTM = SYSDATE,
LAST_UPDUSR_ID = #lastUpdusrId#
WHERE QUSTNR_QESITM_ID = #qestnrQesitmId#
</update>
<!-- 설문문항::상세보기 -->
<select id="QustnrQestnManage.selectQustnrQestnManageDetail" parameterClass="QustnrQestnManageVO" resultClass="egovMap">
/* QustnrQestnManage.selectQustnrQestnManageDetail */
SELECT
A.QUSTNR_QESITM_ID qestnrQesitmId,
A.QESTNR_ID,
(SELECT QUSTNR_SJ FROM LETTNQESTNRINFO WHERE QESTNR_ID=A.QESTNR_ID) QESTNR_SJ,
A.QESTN_SN "qestnSn",
A.QESTN_TY_CODE "qestnTyCode",
A.QESTN_CN "qestnCn",
A.MXMM_CHOISE_CO "mxmmChoiseCo",
A.QUSTNR_TMPLAT_ID "qestnrTmplatId",
TO_CHAR(A.FRST_REGIST_PNTTM,'YYYY-MM-DD HH24:MI:SS') FRST_REGIST_PNTTM,
A.FRST_REGISTER_ID,
TO_CHAR(A.LAST_UPDT_PNTTM,'YYYY-MM-DD HH24:MI:SS') LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID
FROM LETTNQUSTNRQESITM A
WHERE 1=1
AND QUSTNR_QESITM_ID = #qestnrQesitmId#
</select>
<!-- 설문문항::목록조회_게시물정보 -->
<select id="QustnrQestnManage.selectQustnrQestnManage" parameterClass="comDefaultVO" resultClass="egovMap">
/* QustnrQestnManage.selectQustnrQestnManage */
<![CDATA[
SELECT
A.QUSTNR_QESITM_ID "qestnrQesitmId",
A.QESTNR_ID,
(SELECT QUSTNR_SJ FROM LETTNQESTNRINFO WHERE QESTNR_ID=A.QESTNR_ID) "QESTNR_SJ",
A.QESTN_SN,
A.QESTN_TY_CODE,
A.QESTN_CN,
A.MXMM_CHOISE_CO,
A.QUSTNR_TMPLAT_ID "qestnrTmplatId",
TO_CHAR(A.FRST_REGIST_PNTTM,'YYYY-MM-DD') FRST_REGIST_PNTTM,
A.FRST_REGISTER_ID,
(SELECT USER_NM FROM COMVNUSERMASTER WHERE ESNTL_ID = A.FRST_REGISTER_ID ORDER BY USER_NM DESC LIMIT 1) FRST_REGISTER_NM,
TO_CHAR(A.LAST_UPDT_PNTTM,'YYYY-MM-DD') LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID,
( SELECT COUNT(*) FROM LETTNQUSTNRIEM WHERE QUSTNR_QESITM_ID = A.QUSTNR_QESITM_ID ) QUSTNRIEM_CNT
FROM LETTNQUSTNRQESITM A
WHERE 1=1
]]>
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isNotEqual property="searchCondition" compareValue="">
<isEqual property="searchCondition" compareValue="QESTN_CN">
AND QESTN_CN LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isEqual>
<isEqual property="searchCondition" compareValue="MXMM_CHOISE_CO">
AND MXMM_CHOISE_CO LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isEqual>
<isEqual property="searchCondition" compareValue="QESTNR_ID">
AND QESTNR_ID = #searchKeyword#
</isEqual>
</isNotEqual>
</isNotEqual>
</isNotEmpty>
<![CDATA[
ORDER BY A.QESTN_SN ASC
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
]]>
</select>
<!-- 설문문항::목록조회_게시물 총갯수 -->
<select id="QustnrQestnManage.selectQustnrQestnManageCnt" parameterClass="comDefaultVO" resultClass="int">
SELECT
COUNT(*) totcnt
FROM LETTNQUSTNRQESITM
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isNotEqual property="searchCondition" compareValue="">
<isEqual property="searchCondition" compareValue="QESTN_CN">
AND QESTN_CN LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isEqual>
<isEqual property="searchCondition" compareValue="MXMM_CHOISE_CO">
AND MXMM_CHOISE_CO LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isEqual>
</isNotEqual>
</isNotEqual>
</isNotEmpty>
</select>
<!-- 설문문항::입력 -->
<insert id="QustnrQestnManage.insertQustnrQestnManage">
/* QustnrQestnManage.insertQustnrQestnManage */
<![CDATA[
INSERT INTO LETTNQUSTNRQESITM (
QUSTNR_QESITM_ID,
QESTNR_ID,
QESTN_SN,
QESTN_TY_CODE,
QESTN_CN,
MXMM_CHOISE_CO,
QUSTNR_TMPLAT_ID,
FRST_REGIST_PNTTM,
FRST_REGISTER_ID,
LAST_UPDT_PNTTM,
LAST_UPDUSR_ID
)VALUES(
#qestnrQesitmId#,
#qestnrId#,
#qestnSn#,
#qestnTyCode#,
#qestnCn#,
#mxmmChoiseCo#,
#qestnrTmplatId#,
SYSDATE,
#frstRegisterId#,
SYSDATE,
#lastUpdusrId#
)
]]>
</insert>
</sqlMap>

View File

@ -0,0 +1,189 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="QustnrRespondManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="QustnrRespondManageVO" type="kcc.let.uss.olp.qrm.service.QustnrRespondManageVO"/>
<!-- 응답자정보(설문조사)::삭제 -->
<delete id="QustnrRespondManage.deleteQustnrRespondManage">
<![CDATA[
DELETE FROM LETTNQUSTNRRESPONDINFO
WHERE 1=1
AND QUSTNR_RESPOND_ID = #qestnrRespondId#
]]>
</delete>
<!-- 응답자정보(설문조사)::수정 -->
<update id="QustnrRespondManage.updateQustnrRespondManage">
/*QustnrRespondManage.updateQustnrRespondManage*/
UPDATE LETTNQUSTNRRESPONDINFO
SET
LAST_UPDT_PNTTM = SYSDATE
, LAST_UPDUSR_ID = #lastUpdusrId#
<isNotNull property="qestnrParticipant">
, QESTNR_RESPONDENT_COUNT = #qestnrParticipant#
</isNotNull>
<isNotNull property="qestnrRespondent">
, QESTNR_PARTICIPANT_COUNT = #qestnrRespondent#
</isNotNull>
WHERE 1=1
AND QUSTNR_RESPOND_ID = #qestnrRespondId#
</update>
<!-- 응답자정보(설문조사)::상세보기 -->
<select id="QustnrRespondManage.selectQustnrRespondManageDetail" parameterClass="QustnrRespondManageVO" resultClass="egovMap">
SELECT
( SELECT QUSTNR_SJ FROM LETTNQESTNRINFO WHERE 1=1 AND QESTNR_ID = A.QESTNR_ID ) QESTNR_SJ
, A.QESTNR_ID
, A.QUSTNR_RESPOND_ID qestnrRespondId
, A.FRST_REGIST_PNTTM frstRegisterPnttm
, A.FRST_REGISTER_ID
, A.LAST_UPDT_PNTTM
, A.LAST_UPDUSR_ID
FROM
LETTNQUSTNRRESPONDINFO A
WHERE 1=1
AND QUSTNR_RESPOND_ID = #qestnrRespondId#
</select>
<!-- 응답자정보(설문조사)::목록조회_게시물정보 -->
<select id="QustnrRespondManage.selectQustnrRespondManage" parameterClass="comDefaultVO" resultClass="egovMap">
<![CDATA[
SELECT
( SELECT QUSTNR_SJ FROM LETTNQESTNRINFO WHERE 1=1 AND QESTNR_ID = A.QESTNR_ID ) QESTNR_SJ
, A.QESTNR_ID
, A.QUSTNR_RESPOND_ID qestnrRespondId
, A.FRST_REGIST_PNTTM frstRegisterPnttm
, A.FRST_REGISTER_ID
, (SELECT USER_NM FROM COMVNUSERMASTER WHERE ESNTL_ID = A.FRST_REGISTER_ID ORDER BY USER_NM DESC LIMIT 1) FRST_REGISTER_NM
, A.LAST_UPDT_PNTTM
, A.LAST_UPDUSR_ID
FROM
LETTNQUSTNRRESPONDINFO A
WHERE 1=1
]]>
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isEqual property="searchCondition" compareValue="">
AND ( RESPOND_NM LIKE CONCAT(CONCAT('%', #searchKeyword#), '%') )
</isEqual>
<isEqual property="searchCondition" compareValue="RESPOND_NM">
AND RESPOND_NM LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isEqual>
</isNotEqual>
</isNotEmpty>
<![CDATA[
ORDER BY A.FRST_REGIST_PNTTM DESC
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
]]>
</select>
<!-- 응답자정보(설문조사)::목록조회_게시물 총갯수 -->
<select id="QustnrRespondManage.selectQustnrRespondManageCnt" parameterClass="comDefaultVO" resultClass="int">
SELECT
COUNT(*) totcnt
FROM LETTNQUSTNRRESPONDINFO
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isEqual property="searchCondition" compareValue="">
AND ( RESPOND_NM LIKE CONCAT(CONCAT('%', #searchKeyword#), '%') )
</isEqual>
<isEqual property="searchCondition" compareValue="RESPOND_NM">
AND RESPOND_NM LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isEqual>
</isNotEqual>
</isNotEmpty>
</select>
<!-- 응답자정보(설문조사)::입력 -->
<insert id="QustnrRespondManage.insertQustnrRespondManage">
/* QustnrRespondManage.insertQustnrRespondManage */
<![CDATA[
INSERT INTO LETTNQUSTNRRESPONDINFO (
QUSTNR_TMPLAT_ID
, QESTNR_ID
, QUSTNR_RESPOND_ID
, EDU_APLCT_ORD
, EDU_CHASI_ORD
, QESTNR_RESPONDENT_COUNT
, QESTNR_PARTICIPANT_COUNT
, FRST_REGIST_PNTTM
, FRST_REGISTER_ID
, LAST_UPDT_PNTTM
, LAST_UPDUSR_ID
)VALUES(
#qestnrTmplatId#
, #qestnrId#
, #qestnrRespondId#
, #eduAplctOrd#
, #eduChasiOrd#
, #qestnrParticipant#
, #qestnrRespondent#
, SYSDATE
, #frstRegisterId#
, SYSDATE
, #lastUpdusrId#
)
]]>
</insert>
<!-- 응답자정보(설문조사)::기타의견입력 -->
<insert id="QustnrRespondManage.insertSubjRespond">
/* QustnrRespondManage.insertSubjRespond */
MERGE INTO VEA_SUL_OPINION
USING DUAL
ON(
QUSTNR_TMPLAT_ID=#qestnrTmplatId#
AND qestnr_Id=#qestnrId#
AND edu_aplct_ord=#eduAplctOrd#
AND edu_chasi_ord=#eduChasiOrd#
AND user_Id=#userId#
)
WHEN NOT MATCHED THEN
INSERT
(
QUSTNR_TMPLAT_ID
, QESTNR_ID
, EDU_APLCT_ORD
, EDU_CHASI_ORD
, USER_ID
, QUSTNR_CN
, FRST_REGIST_PNTTM
, FRST_REGISTER_ID
, LAST_UPDT_PNTTM
, LAST_UPDUSR_ID
)
VALUES(
#qestnrTmplatId#
, #qestnrId#
, #eduAplctOrd#
, #eduChasiOrd#
, #userId#
, #qustnrCn#
, SYSDATE
, #frstRegisterId#
, SYSDATE
, #lastUpdusrId#
)
WHEN MATCHED THEN
UPDATE
SET last_updusr_id = #lastUpdusrId#
, last_updt_pnttm = SYSDATE
, QUSTNR_CN = #qustnrCn#
</insert>
</sqlMap>

View File

@ -0,0 +1,189 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="QustnrRespondManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="QustnrRespondManageVO" type="kcc.let.uss.olp.qrm.service.QustnrRespondManageVO"/>
<!-- 응답자정보(설문조사)::삭제 -->
<delete id="QustnrRespondManage.deleteQustnrRespondManage">
<![CDATA[
DELETE FROM LETTNQUSTNRRESPONDINFO
WHERE 1=1
AND QUSTNR_RESPOND_ID = #qestnrRespondId#
]]>
</delete>
<!-- 응답자정보(설문조사)::수정 -->
<update id="QustnrRespondManage.updateQustnrRespondManage">
/*QustnrRespondManage.updateQustnrRespondManage*/
UPDATE LETTNQUSTNRRESPONDINFO
SET
LAST_UPDT_PNTTM = SYSDATE
, LAST_UPDUSR_ID = #lastUpdusrId#
<isNotNull property="qestnrParticipant">
, QESTNR_RESPONDENT_COUNT = #qestnrParticipant#
</isNotNull>
<isNotNull property="qestnrRespondent">
, QESTNR_PARTICIPANT_COUNT = #qestnrRespondent#
</isNotNull>
WHERE 1=1
AND QUSTNR_RESPOND_ID = #qestnrRespondId#
</update>
<!-- 응답자정보(설문조사)::상세보기 -->
<select id="QustnrRespondManage.selectQustnrRespondManageDetail" parameterClass="QustnrRespondManageVO" resultClass="egovMap">
SELECT
( SELECT QUSTNR_SJ FROM LETTNQESTNRINFO WHERE 1=1 AND QESTNR_ID = A.QESTNR_ID ) QESTNR_SJ
, A.QESTNR_ID
, A.QUSTNR_RESPOND_ID qestnrRespondId
, A.FRST_REGIST_PNTTM frstRegisterPnttm
, A.FRST_REGISTER_ID
, A.LAST_UPDT_PNTTM
, A.LAST_UPDUSR_ID
FROM
LETTNQUSTNRRESPONDINFO A
WHERE 1=1
AND QUSTNR_RESPOND_ID = #qestnrRespondId#
</select>
<!-- 응답자정보(설문조사)::목록조회_게시물정보 -->
<select id="QustnrRespondManage.selectQustnrRespondManage" parameterClass="comDefaultVO" resultClass="egovMap">
<![CDATA[
SELECT
( SELECT QUSTNR_SJ FROM LETTNQESTNRINFO WHERE 1=1 AND QESTNR_ID = A.QESTNR_ID ) QESTNR_SJ
, A.QESTNR_ID
, A.QUSTNR_RESPOND_ID qestnrRespondId
, A.FRST_REGIST_PNTTM frstRegisterPnttm
, A.FRST_REGISTER_ID
, (SELECT USER_NM FROM COMVNUSERMASTER WHERE ESNTL_ID = A.FRST_REGISTER_ID ORDER BY USER_NM DESC LIMIT 1) FRST_REGISTER_NM
, A.LAST_UPDT_PNTTM
, A.LAST_UPDUSR_ID
FROM
LETTNQUSTNRRESPONDINFO A
WHERE 1=1
]]>
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isEqual property="searchCondition" compareValue="">
AND ( RESPOND_NM LIKE CONCAT(CONCAT('%', #searchKeyword#), '%') )
</isEqual>
<isEqual property="searchCondition" compareValue="RESPOND_NM">
AND RESPOND_NM LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isEqual>
</isNotEqual>
</isNotEmpty>
<![CDATA[
ORDER BY A.FRST_REGIST_PNTTM DESC
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
]]>
</select>
<!-- 응답자정보(설문조사)::목록조회_게시물 총갯수 -->
<select id="QustnrRespondManage.selectQustnrRespondManageCnt" parameterClass="comDefaultVO" resultClass="int">
SELECT
COUNT(*) totcnt
FROM LETTNQUSTNRRESPONDINFO
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isEqual property="searchCondition" compareValue="">
AND ( RESPOND_NM LIKE CONCAT(CONCAT('%', #searchKeyword#), '%') )
</isEqual>
<isEqual property="searchCondition" compareValue="RESPOND_NM">
AND RESPOND_NM LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isEqual>
</isNotEqual>
</isNotEmpty>
</select>
<!-- 응답자정보(설문조사)::입력 -->
<insert id="QustnrRespondManage.insertQustnrRespondManage">
/* QustnrRespondManage.insertQustnrRespondManage */
<![CDATA[
INSERT INTO LETTNQUSTNRRESPONDINFO (
QUSTNR_TMPLAT_ID
, QESTNR_ID
, QUSTNR_RESPOND_ID
, EDU_APLCT_ORD
, EDU_CHASI_ORD
, QESTNR_RESPONDENT_COUNT
, QESTNR_PARTICIPANT_COUNT
, FRST_REGIST_PNTTM
, FRST_REGISTER_ID
, LAST_UPDT_PNTTM
, LAST_UPDUSR_ID
)VALUES(
#qestnrTmplatId#
, #qestnrId#
, #qestnrRespondId#
, #eduAplctOrd#
, #eduChasiOrd#
, #qestnrParticipant#
, #qestnrRespondent#
, SYSDATE
, #frstRegisterId#
, SYSDATE
, #lastUpdusrId#
)
]]>
</insert>
<!-- 응답자정보(설문조사)::기타의견입력 -->
<insert id="QustnrRespondManage.insertSubjRespond">
/* QustnrRespondManage.insertSubjRespond */
MERGE INTO VEA_SUL_OPINION
USING DUAL
ON(
QUSTNR_TMPLAT_ID=#qestnrTmplatId#
AND qestnr_Id=#qestnrId#
AND edu_aplct_ord=#eduAplctOrd#
AND edu_chasi_ord=#eduChasiOrd#
AND user_Id=#userId#
)
WHEN NOT MATCHED THEN
INSERT
(
QUSTNR_TMPLAT_ID
, QESTNR_ID
, EDU_APLCT_ORD
, EDU_CHASI_ORD
, USER_ID
, QUSTNR_CN
, FRST_REGIST_PNTTM
, FRST_REGISTER_ID
, LAST_UPDT_PNTTM
, LAST_UPDUSR_ID
)
VALUES(
#qestnrTmplatId#
, #qestnrId#
, #eduAplctOrd#
, #eduChasiOrd#
, #userId#
, #qustnrCn#
, SYSDATE
, #frstRegisterId#
, SYSDATE
, #lastUpdusrId#
)
WHEN MATCHED THEN
UPDATE
SET last_updusr_id = #lastUpdusrId#
, last_updt_pnttm = SYSDATE
, QUSTNR_CN = #qustnrCn#
</insert>
</sqlMap>

View File

@ -0,0 +1,170 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="QustnrTmplatManage">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="QustnrTmplatManageVO" type="kcc.let.uss.olp.qtm.service.QustnrTmplatManageVO"/>
<resultMap id="QustnrTmplatManageTmplatImagepathnm" class="java.util.HashMap">
<result property="QUSTNR_TMPLAT_IMAGE_INFOPATHNM" column="QUSTNR_TMPLAT_IMAGE_INFOPATHNM" jdbcType="BLOB" javaType="[B"/>
</resultMap>
<select id="QustnrTmplatManage.selectQustnrTmplatManageTmplatImagepathnm" parameterClass="QustnrTmplatManageVO" resultMap="QustnrTmplatManageTmplatImagepathnm">
SELECT
QUSTNR_TMPLAT_IMAGE_INFO QUSTNR_TMPLAT_IMAGE_INFOPATHNM
FROM LETTNQUSTNRTMPLAT
WHERE 1=1
AND QUSTNR_TMPLAT_ID = #qestnrTmplatId#
</select>
<!-- 설문응답자 삭제 -->
<delete id="QustnrTmplatManage.deleteQustnrRespondManage">
DELETE FROM LETTNQUSTNRRESPONDINFO
WHERE QUSTNR_TMPLAT_ID = #qestnrTmplatId#
</delete>
<!-- 설문조사(설문결과) 삭제 -->
<delete id="QustnrTmplatManage.deleteQustnrRespondInfo">
DELETE FROM LETTNQUSTNRRSPNSRESULT
WHERE QUSTNR_TMPLAT_ID = #qestnrTmplatId#
</delete>
<!-- 설문항목 삭제 -->
<delete id="QustnrTmplatManage.deleteQustnrItemManage">
DELETE FROM LETTNQUSTNRIEM
WHERE QUSTNR_TMPLAT_ID = #qestnrTmplatId#
</delete>
<!-- 설문문항 삭제 -->
<delete id="QustnrTmplatManage.deleteQustnrQestnManage">
DELETE FROM LETTNQUSTNRQESITM
WHERE QUSTNR_TMPLAT_ID = #qestnrTmplatId#
</delete>
<!-- 설문관리 삭제 -->
<delete id="QustnrTmplatManage.deleteQustnrManage">
DELETE FROM LETTNQESTNRINFO
WHERE QUSTNR_TMPLAT_ID = #qestnrTmplatId#
</delete>
<delete id="QustnrTmplatManage.deleteQustnrTmplatManage">
<![CDATA[
DELETE FROM LETTNQUSTNRTMPLAT
WHERE QUSTNR_TMPLAT_ID = #qestnrTmplatId#
]]>
</delete>
<update id="QustnrTmplatManage.updateQustnrTmplatManage">
UPDATE LETTNQUSTNRTMPLAT
SET
<isNotNull property="qestnrTmplatImagepathnm">
QUSTNR_TMPLAT_IMAGE_INFO = #qestnrTmplatImagepathnm:BLOB#,
</isNotNull>
QUSTNR_TMPLAT_TY = #qestnrTmplatTy#,
QUSTNR_TMPLAT_DC = #qestnrTmplatCn#,
QUSTNR_TMPLAT_PATH_NM = #qestnrTmplatCours#,
LAST_UPDT_PNTTM = NOW(),
LAST_UPDUSR_ID = #lastUpdusrId#
WHERE QUSTNR_TMPLAT_ID = #qestnrTmplatId#
</update>
<select id="QustnrTmplatManage.selectQustnrTmplatManageDetail" parameterClass="QustnrTmplatManageVO" resultClass="QustnrTmplatManageVO">
SELECT
QUSTNR_TMPLAT_ID qestnrTmplatId,
QUSTNR_TMPLAT_TY qestnrTmplatTy,
FRST_REGIST_PNTTM frstRegisterPnttm,
FRST_REGISTER_ID,
LAST_UPDT_PNTTM,
LAST_UPDUSR_ID,
QUSTNR_TMPLAT_IMAGE_INFO qestnrTmplatImagepathnm,
QUSTNR_TMPLAT_DC qestnrTmplatCn,
QUSTNR_TMPLAT_PATH_NM qestnrTmplatCours
FROM LETTNQUSTNRTMPLAT
WHERE 1=1
AND QUSTNR_TMPLAT_ID = #qestnrTmplatId#
</select>
<select id="QustnrTmplatManage.selectQustnrTmplatManage" parameterClass="comDefaultVO" resultClass="egovMap">
<![CDATA[
SELECT
A.QUSTNR_TMPLAT_ID qestnrTmplatId,
A.QUSTNR_TMPLAT_TY qestnrTmplatTy,
A.FRST_REGIST_PNTTM frstRegisterPnttm,
(SELECT USER_NM FROM COMVNUSERMASTER WHERE ESNTL_ID = A.FRST_REGISTER_ID ORDER BY USER_NM DESC LIMIT 1) FRST_REGISTER_NM,
A.FRST_REGISTER_ID,
A.LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID,
A.QUSTNR_TMPLAT_IMAGE_INFO qestnrTmplatImagepathnm,
A.QUSTNR_TMPLAT_DC qestnrTmplatCn,
A.QUSTNR_TMPLAT_PATH_NM qestnrTmplatCours
FROM LETTNQUSTNRTMPLAT A
WHERE 1=1
]]>
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isEqual property="searchCondition" compareValue="">
AND ( QUSTNR_TMPLAT_DC LIKE CONCAT(CONCAT('%', #searchKeyword#), '%') OR QUSTNR_TMPLAT_TY LIKE CONCAT(CONCAT('%', #searchKeyword#), '%') )
</isEqual>
<isEqual property="searchCondition" compareValue="QUSTNR_TMPLAT_DC">
AND QUSTNR_TMPLAT_DC LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isEqual>
<isEqual property="searchCondition" compareValue="QUSTNR_TMPLAT_TY">
AND QUSTNR_TMPLAT_TY LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isEqual>
</isNotEqual>
</isNotEmpty>
<![CDATA[
ORDER BY A.FRST_REGIST_PNTTM DESC
LIMIT #recordCountPerPage# OFFSET #firstIndex#
]]>
</select>
<select id="QustnrTmplatManage.selectQustnrTmplatManageCnt" parameterClass="comDefaultVO" resultClass="int">
SELECT
COUNT(*) totcnt
FROM LETTNQUSTNRTMPLAT
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isNotEqual property="searchKeyword" compareValue="">
<isEqual property="searchCondition" compareValue="">
AND ( QUSTNR_TMPLAT_DC LIKE CONCAT(CONCAT('%', #searchKeyword#), '%') OR QUSTNR_TMPLAT_TY LIKE CONCAT(CONCAT('%', #searchKeyword#), '%') )
</isEqual>
<isEqual property="searchCondition" compareValue="QUSTNR_TMPLAT_DC">
AND QUSTNR_TMPLAT_DC LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isEqual>
<isEqual property="searchCondition" compareValue="QUSTNR_TMPLAT_TY">
AND QUSTNR_TMPLAT_TY LIKE CONCAT(CONCAT('%', #searchKeyword#), '%')
</isEqual>
</isNotEqual>
</isNotEmpty>
</select>
<insert id="QustnrTmplatManage.insertQustnrTmplatManage">
<![CDATA[
INSERT INTO LETTNQUSTNRTMPLAT (
QUSTNR_TMPLAT_ID
,QUSTNR_TMPLAT_TY
,QUSTNR_TMPLAT_IMAGE_INFO
,QUSTNR_TMPLAT_DC
,QUSTNR_TMPLAT_PATH_NM
,FRST_REGIST_PNTTM
,FRST_REGISTER_ID
,LAST_UPDT_PNTTM
,LAST_UPDUSR_ID
)VALUES(
#qestnrTmplatId#
,#qestnrTmplatTy#
,#qestnrTmplatImagepathnm:BLOB#
,#qestnrTmplatCn#
,#qestnrTmplatCours#
,NOW()
,#frstRegisterId#
,NOW()
,#lastUpdusrId#
)
]]>
</insert>
</sqlMap>

View File

@ -0,0 +1,969 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!--
수정일 수정자 수정내용
=========== ======== =================================================
2011.10.06 이기하 보안 취약점 점검사항 반영 $->#변경
-->
<sqlMap namespace="UnityLink">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="PopupManageVO" type="kcc.com.uss.ion.pwm.service.PopupManageVO" />
<typeAlias alias="popupzoneVO" type="kcc.com.uss.ion.pwm.service.PopupzoneVO"/>
<typeAlias alias="mainzoneVO" type="kcc.com.uss.ion.pwm.service.MainzoneVO"/>
<typeAlias alias="socialVO" type="kcc.com.uss.ion.pwm.service.SocialVO"/>
<typeAlias alias="sortVO" type="kcc.com.uss.ion.pwm.service.SortVO"/>
<!-- ::ResultMap 선언 -->
<resultMap id="PopupManageVOs" class="kcc.com.uss.ion.pwm.service.PopupManageVO">
<result property="popupId" column="POPUP_ID" columnIndex="1"/>
<result property="popupTitleNm" column="POPUP_SJ_NM" columnIndex="2"/>
<result property="fileUrl" column="FILE_URL" columnIndex="3"/>
<result property="popupHlc" column="POPUP_VRTICL_LC" columnIndex="4"/>
<result property="popupWlc" column="POPUP_WIDTH_LC" columnIndex="5"/>
<result property="popupHSize" column="POPUP_VRTICL_SIZE" columnIndex="6"/>
<result property="popupWSize" column="POPUP_WIDTH_SIZE" columnIndex="7"/>
<result property="ntceBgnde" column="NTCE_BGNDE" columnIndex="8"/>
<result property="ntceEndde" column="NTCE_ENDDE" columnIndex="9"/>
<result property="stopVewAt" column="STOPVEW_SETUP_AT" columnIndex="10"/>
<result property="ntceAt" column="NTCE_AT" columnIndex="11"/>
<result property="frstRegisterPnttm" column="FRST_REGIST_PNTTM" columnIndex="12"/>
<result property="frstRegisterId" column="FRST_REGISTER_ID" columnIndex="13"/>
<result property="lastUpdusrPnttm" column="LAST_UPDT_PNTTM" columnIndex="14"/>
<result property="lastUpdusrId" column="LAST_UPDUSR_ID" columnIndex="15"/>
<result property="popupType" column="POPUP_TYPE" columnIndex="16"/>
<result property="scrollType" column="SCROLL_TYPE" columnIndex="17"/>
<result property="nttCn" column="NTT_CN" columnIndex="18"/>
<result property="sortNum" column="SORT_NUM" columnIndex="19"/>
</resultMap>
<!-- 팝업창관리:: 메인 게시물정보 -->
<select id="PopupManage.selectPopupManageMain" resultClass="PopupManageVO">
/* PopupManage.selectPopupManageMain */
<![CDATA[
SELECT
A.POPUP_ID AS popupId,
A.POPUP_SJ_NM AS popupTitleNm,
A.FILE_URL AS fileUrl,
A.POPUP_VRTICL_LC AS popupVrticlLc,
A.POPUP_WIDTH_LC AS popupWidthLc,
A.POPUP_VRTICL_SIZE AS popupVrticlSize,
A.POPUP_WIDTH_SIZE AS popupWidthSize,
A.NTCE_BGNDE AS ntceBgnde,
A.NTCE_ENDDE AS ntceEndde,
A.STOPVEW_SETUP_AT AS stopvewSetupAt,
A.NTCE_AT AS ntceAt,
TO_CHAR(A.FRST_REGIST_PNTTM,'YYYY-MM-DD') AS frstRegistPnttm,
(SELECT USER_NM FROM LETTNEMPLYRINFO WHERE ESNTL_ID = A.FRST_REGISTER_ID) AS frstRegisterNm,
A.POPUP_TYPE AS popupType,
A.SCROLL_TYPE AS scrollType,
A.NTT_CN AS nttCn,
A.SORT_NUM AS sortNum
FROM COMTNPOPUPMANAGE A
WHERE 1=1
AND A.NTCE_AT = 'Y'
AND TO_CHAR(SYSDATE, 'YYYYMMDDHH24MI') >= NTCE_BGNDE
AND TO_CHAR(SYSDATE, 'YYYYMMDDHH24MI') <= NTCE_ENDDE
]]>
<isNotNull prepend="AND" property="popupType">
POPUP_TYPE = #popupType#
</isNotNull>
ORDER BY SORT_NUM ASC
</select>
<!-- 팝업창관리::목록조회 게시물정보 -->
<select id="PopupManage.selectPopupManage" resultClass="egovMap">
/* PopupManage.selectPopupManage */
<![CDATA[
SELECT
A.POPUP_ID,
A.POPUP_SJ_NM POPUP_TITLE_NM,
A.FILE_URL,
A.POPUP_VRTICL_LC,
A.POPUP_WIDTH_LC,
A.POPUP_VRTICL_SIZE,
A.POPUP_WIDTH_SIZE,
A.NTCE_BGNDE,
A.NTCE_ENDDE,
A.STOPVEW_SETUP_AT,
A.NTCE_AT,
TO_CHAR(A.FRST_REGIST_PNTTM,'YYYY-MM-DD') FRST_REGIST_PNTTM,
(SELECT USER_NM FROM LETTNEMPLYRINFO WHERE ESNTL_ID = A.FRST_REGISTER_ID) FRST_REGISTER_NM,
A.POPUP_TYPE,
A.SCROLL_TYPE,
A.NTT_CN,
SORT_NUM,
DEL_STTUS
FROM COMTNPOPUPMANAGE A
WHERE 1=1
]]>
<isNotEqual property="delSttus" compareValue="Y">
AND DEL_STTUS != 'Y'
</isNotEqual>
<isNotEmpty property="searchConditionSite">
AND SITE_ID = #searchConditionSite#
</isNotEmpty>
<isNotEmpty property="searchKeyword">
<!-- <isNotEqual property="searchKeyword" compareValue=""> -->
<isEqual property="searchCondition" compareValue="">
AND ( POPUP_SJ_NM LIKE '%'||#searchKeyword#||'%' OR FILE_URL LIKE '%'||#searchKeyword#||'%' )
</isEqual>
<isEqual property="searchCondition" compareValue="POPUP_SJ_NM">
AND POPUP_SJ_NM LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="FILE_URL">
AND FILE_URL LIKE '%'||#searchKeyword#||'%'
</isEqual>
<!-- </isNotEqual> -->
</isNotEmpty>
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<!-- 팝업창관리::목록조회_게시물 총갯수 -->
<select id="PopupManage.selectPopupManageCnt" resultClass="int">
/* PopupManage.selectPopupManageCnt */
SELECT
COUNT(*) totcnt
FROM COMTNPOPUPMANAGE
WHERE 1=1
<isNotEqual property="delSttus" compareValue="Y">
AND DEL_STTUS != 'Y'
</isNotEqual>
<isNotEmpty property="searchConditionSite">
AND SITE_ID = #searchConditionSite#
</isNotEmpty>
<isNotEmpty property="searchKeyword">
<!-- <isNotEqual property="searchKeyword" compareValue=""> -->
<isEqual property="searchCondition" compareValue="">
AND ( POPUP_SJ_NM LIKE CONCAT ('%', #searchKeyword#,'%') OR FILE_URL LIKE CONCAT ('%', #searchKeyword#,'%') )
</isEqual>
<isEqual property="searchCondition" compareValue="POPUP_SJ_NM">
AND POPUP_SJ_NM LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
<isEqual property="searchCondition" compareValue="FILE_URL">
AND FILE_URL LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
<!-- </isNotEqual> -->
</isNotEmpty>
</select>
<!-- 팝업창관리::삭제 del 수정 -->
<!-- <delete id="PopupManage.deletePopupManage">
<![CDATA[
DELETE FROM COMTNPOPUPMANAGE
WHERE POPUP_ID=#popupId#
]]>
</delete> -->
<delete id="PopupManage.deletePopupManage">
<![CDATA[
UPDATE COMTNPOPUPMANAGE
SET DEL_STTUS=#delSttus#,
NTCE_AT='N'
WHERE POPUP_ID=#popupId#
]]>
</delete>
<!-- 팝업창관리::수정 -->
<update id="PopupManage.updatePopupManage">
UPDATE COMTNPOPUPMANAGE
SET
POPUP_SJ_NM=#popupTitleNm#,
FILE_URL=#fileUrl#,
POPUP_VRTICL_LC=#popupHlc#,
POPUP_WIDTH_LC=#popupWlc#,
POPUP_VRTICL_SIZE=#popupHSize#,
POPUP_WIDTH_SIZE=#popupWSize#,
NTCE_BGNDE=#ntceBgnde#,
NTCE_ENDDE=#ntceEndde#,
STOPVEW_SETUP_AT=#stopVewAt#,
NTCE_AT=#ntceAt#,
LAST_UPDT_PNTTM= SYSDATE,
LAST_UPDUSR_ID=#lastUpdusrId#,
POPUP_TYPE=#popupType#,
SCROLL_TYPE=#scrollType#,
NTT_CN=#nttCn#,
SORT_NUM=#sortNum#
WHERE POPUP_ID=#popupId#
</update>
<!-- 팝업창관리::상세보기 -->
<select id="PopupManage.selectPopupManageDetail" resultMap="PopupManageVOs">
/* PopupManage.selectPopupManageDetail */
SELECT
A.POPUP_ID,
A.POPUP_SJ_NM,
A.FILE_URL,
A.POPUP_VRTICL_LC,
A.POPUP_WIDTH_LC,
A.POPUP_VRTICL_SIZE,
A.POPUP_WIDTH_SIZE,
A.NTCE_BGNDE,
A.NTCE_ENDDE,
A.STOPVEW_SETUP_AT,
A.NTCE_AT,
A.FRST_REGIST_PNTTM,
A.FRST_REGISTER_ID,
A.LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID,
A.POPUP_TYPE,
A.SCROLL_TYPE,
A.NTT_CN,
A.SORT_NUM
FROM COMTNPOPUPMANAGE A
WHERE 1=1
AND A.POPUP_ID=#popupId#
</select>
<!-- 팝업창관리::입력 -->
<insert id="PopupManage.insertPopupManage">
<![CDATA[
INSERT INTO COMTNPOPUPMANAGE (
POPUP_ID,
POPUP_SJ_NM,
FILE_URL,
POPUP_VRTICL_LC,
POPUP_WIDTH_LC,
POPUP_VRTICL_SIZE,
POPUP_WIDTH_SIZE,
NTCE_BGNDE,
NTCE_ENDDE,
STOPVEW_SETUP_AT,
NTCE_AT,
FRST_REGIST_PNTTM,
FRST_REGISTER_ID,
LAST_UPDT_PNTTM,
LAST_UPDUSR_ID,
POPUP_TYPE,
SCROLL_TYPE,
NTT_CN,
SORT_NUM,
DEL_STTUS
)VALUES(
#popupId#,
#popupTitleNm#,
#fileUrl#,
#popupHlc#,
#popupWlc#,
#popupHSize#,
#popupWSize#,
#ntceBgnde#,
#ntceEndde#,
#stopVewAt#,
#ntceAt#,
SYSDATE,
#frstRegisterId#,
SYSDATE,
#lastUpdusrId#,
#popupType#,
#scrollType#,
#nttCn#,
#sortNum#,
#delSttus#
)
]]>
</insert>
<!-- 알림창 관리자 리스트 -->
<select id="PopupzoneManage.selectPopupzoneList" parameterClass="popupzoneVO" resultClass="egovMap">
/* PopupzoneManage.selectPopupzoneList */
<![CDATA[
SELECT
POZ_ID,
CONCAT('/UPLOADROOT/POPUPZONE/',UPFILE ) AS IMG,
CONTENT AS IMG_ALT,
MLINK,
ISTARGET,
CASE WHEN
TRUNC(SYSDATE -7) < TRUNC(REGDT)
THEN 'Y'
ELSE 'N'
END AS NEW_FLAG,
TO_CHAR(REGDT, 'YYYY-MM-DD') REGDT,
POPUPZONE_IMAGE,
POPUPZONE_IMAGE_FILE,
POZ_NM,
USE_YN,
SORT,
TO_CHAR(REGDT, 'YYYYMMDDHH24MI') REGDT,
(SELECT USER_NM FROM LETTNEMPLYRINFO WHERE ESNTL_ID = REGISTER_ID) REGISTER_ID,
SITE_ID
FROM POPUPZONE MB
WHERE DEL = '0'
]]>
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND ( POZ_NM LIKE '%' || #searchKeyword# || '%'
OR MLINK LIKE '%' || #searchKeyword# || '%'
)
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND POZ_NM LIKE '%' || #searchKeyword# || '%'
</isEqual>
<isEqual property="searchCondition" compareValue="2">
AND MLINK LIKE '%' || #searchKeyword# || '%'
</isEqual>
</isNotEmpty>
<isNotEmpty property="searchConditionSite">
AND SITE_ID = #searchConditionSite#
</isNotEmpty>
<!-- <isNotEmpty property="seCd">
AND SE_CD = #seCd#
</isNotEmpty> -->
<isNotEmpty property="useYn">
AND USE_YN = 'Y'
</isNotEmpty>
ORDER BY
<isEmpty property="searchSortCnd">
1
</isEmpty>
<isNotEmpty property="searchSortCnd">
$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<!-- 알림창 관리자 리스트 -->
<select id="PopupzoneManage.selectPopupzoneListTotCnt" parameterClass="popupzoneVO" resultClass="int" >
/* PopupzoneManage.selectPopupzoneListTotCnt */
SELECT
COUNT(*) totcnt
FROM POPUPZONE MB
WHERE 1=1
AND DEL = '0'
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND ( POZ_NM LIKE '%'||#searchKeyword#||'%'
OR MLINK LIKE '%'||#searchKeyword#||'%'
)
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND POZ_NM LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="2">
AND MLINK LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
<isNotEmpty property="searchConditionSite">
AND SITE_ID = #searchConditionSite#
</isNotEmpty>
<!-- <isNotEmpty property="seCd">
AND SE_CD = #seCd#
</isNotEmpty> -->
<isNotEmpty property="useYn">
AND USE_YN = 'Y'
</isNotEmpty>
</select>
<select id="PopupzoneManage.getSortList" resultClass="EgovMap">
/* PopupzoneManage.getSortList */
<![CDATA[
SELECT
SORT as CM_SUB_CODE,
SORT as CM_CODE_NAME
FROM POPUPZONE mb
WHERE DEL = '0'
ORDER BY SORT
]]>
</select>
<select id="PopupzoneManage.selectPopupzoneVO" parameterClass="String" resultClass="popupzoneVO">
/* PopupzoneManage.selectPopupzoneVO */
SELECT
POZ_ID AS POZID,
UPFILE,
CONCAT('/UPLOADROOT/POPUPZONE/',UPFILE ) AS UPFILEURL,
CONTENT,
MLINK,
ISTARGET,
REGDT,
TO_CHAR(MODDT, 'YYYY-MM-DD HH24:MI:SS') MODDT ,
DEL,
SORT,
POPUPZONE_IMAGE AS POPUPZONEIMAGE ,
POPUPZONE_IMAGE_FILE AS POPUPZONEIMAGEFILE,
POZ_NM AS POZNM ,
USE_YN AS USEYN ,
SE_CD AS seCd ,
(SELECT USER_NM FROM LETTNEMPLYRINFO WHERE ESNTL_ID = REGISTER_ID) REGISTERID,
SITE_ID as siteId
FROM POPUPZONE
WHERE POZ_ID=#pozId#
</select>
<update id="PopupzoneManage.updateSortUp" parameterClass="sortVO">
<![CDATA[
UPDATE POPUPZONE SET
SORT = SORT + 1
WHERE
SORT >= #startSort# AND SORT <= #endSort#
]]>
</update>
<update id="PopupzoneManage.updateSortDown" parameterClass="sortVO">
<![CDATA[
UPDATE POPUPZONE SET
SORT = SORT - 1
WHERE
SORT >= #startSort# AND SORT <= #endSort#
]]>
</update>
<update id="PopupzoneManage.updatePopupzone" parameterClass="popupzoneVO">
UPDATE POPUPZONE SET
UPFILE=#upfile#,
CONTENT=#content#,
MLINK=#mlink#,
ISTARGET=#istarget#,
SORT=#sort#,
POPUPZONE_IMAGE = #popupzoneImage#,
POPUPZONE_IMAGE_FILE = #popupzoneImageFile#,
USE_YN = #useYn#,
POZ_NM = #pozNm# ,
MODDT = SYSDATE
WHERE POZ_ID=#pozId#
</update>
<delete id="PopupzoneManage.deletePopupzone" parameterClass="String">
DELETE FROM POPUPZONE WHERE POZ_ID=#pozId#
</delete>
<select id="PopupzoneManage.getMaxSort" resultClass="int">
/* PopupzoneManage.getMaxSort */
SELECT NVL(MAX(SORT),1) FROM POPUPZONE
</select>
<select id="PopupzoneManage.selectNextSeq" resultClass="int">
/* PopupzoneManage.selectNextSeq */
SELECT POPUPZONE_SEQ.NEXTVAL FROM DB_ROOT
</select>
<insert id="PopupzoneManage.insertPopupzone">
INSERT INTO POPUPZONE (
POZ_ID,
UPFILE,
CONTENT,
MLINK,
ISTARGET,
REGDT,
MODDT,
DEL,
SORT,
POPUPZONE_IMAGE,
POPUPZONE_IMAGE_FILE,
POZ_NM,
USE_YN,
<isNotEmpty property="seCd">
SE_CD,
</isNotEmpty>
REGISTER_ID
) VALUES (
#pozId#,
#upfile#,
#content#,
#mlink#,
#istarget#,
SYSDATE,
SYSDATE,
#del#,
#sort#,
#popupzoneImage#,
#popupzoneImageFile#,
#pozNm#,
#useYn#,
<isNotEmpty property="seCd">
#seCd#,
</isNotEmpty>
#registerId#
)
</insert>
<update id="PopupzoneManage.resetSort" parameterClass="popupzoneVO">
MERGE INTO POPUPZONE A
USING (
SELECT
ROW_NUMBER() OVER (ORDER BY SORT,
<isEqual property="sortOver" compareValue="A">
MODDT ASC
</isEqual>
<isEqual property="sortOver" compareValue="D">
MODDT DESC
</isEqual>
) AS SORT1,
POZ_ID
FROM
POPUPZONE
WHERE
1 = 1
) B
ON (A.POZ_ID = B.POZ_ID)
WHEN MATCHED THEN
UPDATE SET A.SORT = B.SORT1;
</update>
<!-- <update id="PopupzoneManage.resetSort" parameterClass="popupzoneVO">
UPDATE POPUPZONE A ,
(SELECT ROW_NUMBER() OVER(ORDER BY SORT
<isEqual property="sortOver" compareValue="A">
, MODDT ASC
</isEqual>
<isEqual property="sortOver" compareValue="D">
, MODDT DESC
</isEqual>
) AS SORT1 , POZ_ID FROM POPUPZONE
WHERE 1=1
ORDER BY SORT1
) B
SET A.SORT = B.SORT1
WHERE A.POZ_ID = B.POZ_ID
</update> -->
<!-- 매인이미지 관리자 리스트 -->
<select id="MainzoneManage.selectMainzoneList" parameterClass="mainzoneVO" resultClass="egovMap">
/* "MainzoneManage.selectMainzoneList" */
<![CDATA[
SELECT
MAZ_ID,
CONCAT('/UPLOADROOT/POPUPZONE/',UPFILE ) AS IMG,
CONTENT AS IMG_ALT,
MLINK,
ISTARGET,
CASE WHEN
TRUNC(SYSDATE -7) < TRUNC(REGDT)
THEN 'Y'
ELSE 'N'
END AS NEW_FLAG,
TO_CHAR(REGDT, 'YYYY-MM-DD') REGDT,
MAINZONE_IMAGE,
MAINZONE_IMAGE_FILE ,
SORT,
MAZ_NM,
USE_YN,
(SELECT USER_NM FROM LETTNEMPLYRINFO WHERE ESNTL_ID = REGISTER_ID) REGISTER_ID ,
DEVICETYPE
FROM MAINZONE MB
WHERE 1=1
]]>
<isEqual property="useYn" compareValue="Y">
AND USE_YN = 'Y'
</isEqual>
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND ( MAZ_NM LIKE '%' || #searchKeyword# || '%'
OR CONTENT LIKE '%' || #searchKeyword# || '%'
)
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND MAZ_NM LIKE '%' || #searchKeyword# || '%'
</isEqual>
<isEqual property="searchCondition" compareValue="2">
AND CONTENT LIKE '%' || #searchKeyword# || '%'
</isEqual>
</isNotEmpty>
<isNotEmpty property="searchConditionSite">
AND SITE_ID = #searchConditionSite#
</isNotEmpty>
<isNotEmpty property="deviceType">
<isEqual property="deviceType" compareValue="P">
AND ( DEVICETYPE IS NULL OR DEVICETYPE = #deviceType# )
</isEqual>
<isEqual property="deviceType" compareValue="M">
AND DEVICETYPE = #deviceType#
</isEqual>
</isNotEmpty>
ORDER BY SORT
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<select id="MainzoneManage.getMainMaxSort" resultClass="int">
/* MainzoneManage.getMainMaxSort */
SELECT NVL(MAX(SORT),1) FROM MAINZONE
</select>
<insert id="MainzoneManage.insertMainzone" parameterClass="mainzoneVO">
INSERT INTO MAINZONE (
MAZ_ID,
UPFILE,
CONTENT,
MLINK,
ISTARGET,
REGDT,
MODDT,
DEL,
SORT,
MAINZONE_IMAGE,
MAINZONE_IMAGE_FILE,
MAZ_NM,
USE_YN,
<isNotEmpty property="deviceType">
DEVICETYPE,
</isNotEmpty>
REGISTER_ID
) VALUES (
#mazId#,
#upfile#,
#content#,
#mlink#,
#istarget#,
SYSDATE,
SYSDATE,
#del#,
#sort#,
#mainzoneImage#,
#mainzoneImageFile#,
#mazNm#,
#useYn#,
<isNotEmpty property="deviceType">
#deviceType#,
</isNotEmpty>
#registerId#
)
</insert>
<update id="MainzoneManage.resetMainSort" parameterClass="mainzoneVO">
UPDATE MAINZONE A , (SELECT ROW_NUMBER() OVER(ORDER BY SORT) AS SORT1 , MAZ_ID FROM MAINZONE
WHERE 1=1
ORDER BY SORT ASC) B
SET A.SORT = B.SORT1
WHERE A.MAZ_ID = B.MAZ_ID
</update>
<update id="MainzoneManage.updateMainSortUp" parameterClass="sortVO">
<![CDATA[
UPDATE MAINZONE SET
SORT = SORT + 1
WHERE
SORT >= #startSort# AND SORT <= #endSort#
]]>
</update>
<select id="MainzoneManage.selectMainzoneVO" parameterClass="String" resultClass="mainzoneVO">
/* MainzoneManage.selectMainzoneVO */
SELECT
MAZ_ID AS MAZID,
UPFILE,
CONCAT('/UPLOADROOT/POPUPZONE/',UPFILE ) AS UPFILEURL,
CONTENT,
MLINK,
ISTARGET,
REGDT,
DEL,
SORT,
MAINZONE_IMAGE AS MAINZONEIMAGE ,
MAINZONE_IMAGE_FILE AS MAINZONEIMAGEFILE,
MAZ_NM AS MAZNM,
USE_YN AS USEYN,
DATE_FORMAT(MODDT, '%Y-%m-%d %H:%i:%s') MODDT ,
(SELECT USER_NM FROM LETTNEMPLYRINFO WHERE ESNTL_ID = REGISTER_ID) REGISTERID,
DEVICETYPE AS deviceType
FROM MAINZONE
WHERE MAZ_ID=#mazId#
</select>
<select id="MainzoneManage.getMainSortList" resultClass="EgovMap">
/* MainzoneManage.getMainSortList */
<![CDATA[
SELECT
SORT as CM_SUB_CODE,
SORT as CM_CODE_NAME
FROM MAINZONE mb
WHERE DEL = '0'
ORDER BY SORT
]]>
</select>
<delete id="MainzoneManage.deleteMainzone" parameterClass="String">
DELETE FROM MAINZONE WHERE MAZ_ID=#mazId#
</delete>
<update id="MainzoneManage.updateMainSortDown" parameterClass="sortVO">
<![CDATA[
UPDATE MAINZONE SET
SORT = SORT - 1
WHERE
SORT >= #startSort# AND SORT <= #endSort#
]]>
</update>
<update id="MainzoneManage.updateMainzone" parameterClass="mainzoneVO">
UPDATE MAINZONE SET
UPFILE=#upfile#,
CONTENT=#content#,
MLINK=#mlink#,
ISTARGET=#istarget#,
SORT=#sort#,
MAINZONE_IMAGE = #mainzoneImage#,
MAINZONE_IMAGE_FILE = #mainzoneImageFile#,
USE_YN = #useYn#,
MAZ_NM = #mazNm# ,
<isNotEmpty property="deviceType">
DEVICETYPE = #deviceType# ,
</isNotEmpty>
MODDT = SYSDATE
WHERE MAZ_ID=#mazId#
</update>
<select id="MainzoneManage.selectMainzoneCount" resultClass="int">
/* MainzoneManage.selectMainzoneCount */
SELECT
COUNT(*) totcnt
FROM MAINZONE
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND ( MAZ_NM LIKE CONCAT ('%', #searchKeyword#,'%')
OR CONTENT LIKE CONCAT ('%', #searchKeyword#,'%')
)
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND MAZ_NM LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
<isEqual property="searchCondition" compareValue="2">
AND CONTENT LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
</isNotEmpty>
<isNotEmpty property="searchConditionSite">
AND SITE_ID = #searchConditionSite#
</isNotEmpty>
</select>
<update id="PopupzoneManage.resetVOSort" parameterClass="popupzoneVO">
MERGE INTO POPUPZONE A
USING (
SELECT
ROW_NUMBER() OVER (ORDER BY SORT,
<isEqual property="sortOver" compareValue="A">
MODDT ASC
</isEqual>
<isEqual property="sortOver" compareValue="D">
MODDT DESC
</isEqual>
) AS SORT1,
POZ_ID
FROM
POPUPZONE
WHERE
1 = 1
<isNotEmpty property="seCd">
AND SE_CD = #seCd#
</isNotEmpty>
) B
ON (A.POZ_ID = B.POZ_ID)
WHEN MATCHED THEN
UPDATE SET A.SORT = B.SORT1;
</update>
<!-- <update id="PopupzoneManage.resetVOSort" parameterClass="popupzoneVO">
UPDATE POPUPZONE A ,
(SELECT ROW_NUMBER() OVER(ORDER BY SORT
<isEqual property="sortOver" compareValue="A">
, MODDT ASC
</isEqual>
<isEqual property="sortOver" compareValue="D">
, MODDT DESC
</isEqual>
) AS SORT1 , POZ_ID FROM POPUPZONE
WHERE 1=1
<isNotEmpty property="seCd">
AND SE_CD = #seCd#
</isNotEmpty>
ORDER BY SORT1
) B
SET A.SORT = B.SORT1
WHERE A.POZ_ID = B.POZ_ID
</update> -->
<update id="MainzoneManage.resetMainVOSort" parameterClass="mainzoneVO">
UPDATE MAINZONE A ,
(SELECT ROW_NUMBER() OVER(ORDER BY SORT
<isEqual property="sortOver" compareValue="A">
, MODDT ASC
</isEqual>
<isEqual property="sortOver" compareValue="D">
, MODDT DESC
</isEqual>
) AS SORT1 , MAZ_ID FROM MAINZONE
WHERE 1=1
ORDER BY SORT1
) B
SET A.SORT = B.SORT1
WHERE A.MAZ_ID = B.MAZ_ID
</update>
<!-- 소설 관리자 리스트 -->
<select id="SocialManage.selectSocialList" parameterClass="socialVO" resultClass="socialVO">
/* SocialManage.selectSocialList */
<![CDATA[
SELECT
COUNT(SOCIAL_ID) OVER() AS totCnt,
SOCIAL_TITLE AS socialTitle,
SOCIAL_ID AS socialId,
SOCIAL_SJ AS socialSj,
SOCIAL_CN AS socialCn,
CONCAT('/UPLOADROOT/POPUPZONE/',UPFILE ) AS upFile,
MLINK AS mlink,
ISTARGET AS istarget,
DATE_FORMAT(REGDT, '%Y-%m-%d') AS regdt,
SOCIAL_IMAGE AS socialeImage,
SOCIAL_IMAGE_FILE AS socialImageFile,
USE_YN AS useYn,
SE_CD AS seCd,
IFNULL(SORT, 0) AS sort,
(SELECT USER_NM FROM LETTNEMPLYRINFO WHERE ESNTL_ID = REGISTER_ID) registerId
FROM SOCIAL_HUB
WHERE 1=1
]]>
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND ( POZ_NM LIKE CONCAT ('%', #searchKeyword#,'%')
OR MLINK LIKE CONCAT ('%', #searchKeyword#,'%')
)
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND POZ_NM LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
<isEqual property="searchCondition" compareValue="2">
AND MLINK LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
</isNotEmpty>
<isNotEmpty property="seCd">
AND SE_CD = #seCd#
</isNotEmpty>
<isNotEmpty property="useYn">
AND USE_YN = 'Y'
</isNotEmpty>
ORDER BY 1=1 , SE_CD ASC
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<!-- 소셜창관리::상세보기 -->
<select id="SocialManage.selectSocialVO" resultClass="socialVO">
/* SocialManage.selectSocialVO */
SELECT A.SOCIAL_ID AS socialId,
A.SOCIAL_TITLE AS socialTitle,
A.SOCIAL_SJ AS socialSj,
A.SOCIAL_CN AS socialCn,
A.UPFILE AS upFile,
A.MLINK AS mlink,
A.ISTARGET AS istarget,
IFNULL(A.SORT, 0) AS sort,
A.REGDT AS regdt,
A.MODDT AS moddt,
A.DEL AS del,
A.SOCIAL_IMAGE_FILE AS socialImageFile,
A.SOCIAL_IMAGE AS socialImage,
A.REGISTER_ID AS registerId,
A.USE_YN AS useYn,
A.SE_CD AS seCd
FROM SOCIAL_HUB A
WHERE 1=1
AND A.SOCIAL_ID=#socialId#
</select>
<update id="SocialManage.updateSocial" parameterClass="socialVO">
UPDATE SOCIAL_HUB
SET SOCIAL_ID = #socialId#,
SOCIAL_TITLE = #socialTitle#,
SOCIAL_SJ = #socialSj#,
SOCIAL_CN = #socialCn#,
UPFILE = #upfile#,
MLINK = #mlink#,
ISTARGET = #istarget#,
SORT = #sort#,
DEL = #del#,
SOCIAL_IMAGE_FILE = #socialImageFile#,
SOCIAL_IMAGE = #socialImage#,
REGISTER_ID = #registerId#,
USE_YN = #useYn#,
SE_CD = #seCd#,
MODDT = SYSDATE
WHERE SOCIAL_ID=#socialId#
</update>
<update id="SocialManage.resetSocialSort" parameterClass="socialVO">
UPDATE SOCIAL_HUB A ,
(SELECT ROW_NUMBER() OVER(ORDER BY SORT
<isEqual property="sortOver" compareValue="A">
, MODDT ASC
</isEqual>
<isEqual property="sortOver" compareValue="D">
, MODDT DESC
</isEqual>
) AS SORT1 , SOCIAL_ID FROM SOCIAL_HUB
WHERE 1=1
<isNotEmpty property="seCd">
AND SE_CD = #seCd#
</isNotEmpty>
ORDER BY SORT1
) B
SET A.SORT = B.SORT1
WHERE A.SOCIAL_ID = B.SOCIAL_ID
</update>
<insert id="SocialManage.insertSocial" parameterClass="socialVO">
INSERT INTO SOCIAL_HUB(
SOCIAL_ID,
SOCIAL_SJ,
SOCIAL_CN,
UPFILE,
MLINK,
ISTARGET,
SORT,
REGDT,
MODDT,
DEL,
SOCIAL_IMAGE_FILE,
REGISTER_ID,
USE_YN,
SE_CD,
SOCIAL_IMAGE
)
VALUES(
#socialId#,
#socialSj#,
#socialCn#,
#upfile#,
#mlink#,
#istarget#,
#sort#,
SYSDATE,
SYSDATE,
#del#,
#socialImageFile#,
#registerId#,
#useYn#,
#seCd#,
#socialImage#
)
</insert>
<delete id="SocialManage.deleteSocial" parameterClass="String">
DELETE FROM SOCIAL_HUB WHERE SOCIAL_ID=#socialId#
</delete>
</sqlMap>

View File

@ -0,0 +1,969 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!--
수정일 수정자 수정내용
=========== ======== =================================================
2011.10.06 이기하 보안 취약점 점검사항 반영 $->#변경
-->
<sqlMap namespace="UnityLink">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="comDefaultVO" type="kcc.com.cmm.ComDefaultVO"/>
<typeAlias alias="PopupManageVO" type="kcc.com.uss.ion.pwm.service.PopupManageVO" />
<typeAlias alias="popupzoneVO" type="kcc.com.uss.ion.pwm.service.PopupzoneVO"/>
<typeAlias alias="mainzoneVO" type="kcc.com.uss.ion.pwm.service.MainzoneVO"/>
<typeAlias alias="socialVO" type="kcc.com.uss.ion.pwm.service.SocialVO"/>
<typeAlias alias="sortVO" type="kcc.com.uss.ion.pwm.service.SortVO"/>
<!-- ::ResultMap 선언 -->
<resultMap id="PopupManageVOs" class="kcc.com.uss.ion.pwm.service.PopupManageVO">
<result property="popupId" column="POPUP_ID" columnIndex="1"/>
<result property="popupTitleNm" column="POPUP_SJ_NM" columnIndex="2"/>
<result property="fileUrl" column="FILE_URL" columnIndex="3"/>
<result property="popupHlc" column="POPUP_VRTICL_LC" columnIndex="4"/>
<result property="popupWlc" column="POPUP_WIDTH_LC" columnIndex="5"/>
<result property="popupHSize" column="POPUP_VRTICL_SIZE" columnIndex="6"/>
<result property="popupWSize" column="POPUP_WIDTH_SIZE" columnIndex="7"/>
<result property="ntceBgnde" column="NTCE_BGNDE" columnIndex="8"/>
<result property="ntceEndde" column="NTCE_ENDDE" columnIndex="9"/>
<result property="stopVewAt" column="STOPVEW_SETUP_AT" columnIndex="10"/>
<result property="ntceAt" column="NTCE_AT" columnIndex="11"/>
<result property="frstRegisterPnttm" column="FRST_REGIST_PNTTM" columnIndex="12"/>
<result property="frstRegisterId" column="FRST_REGISTER_ID" columnIndex="13"/>
<result property="lastUpdusrPnttm" column="LAST_UPDT_PNTTM" columnIndex="14"/>
<result property="lastUpdusrId" column="LAST_UPDUSR_ID" columnIndex="15"/>
<result property="popupType" column="POPUP_TYPE" columnIndex="16"/>
<result property="scrollType" column="SCROLL_TYPE" columnIndex="17"/>
<result property="nttCn" column="NTT_CN" columnIndex="18"/>
<result property="sortNum" column="SORT_NUM" columnIndex="19"/>
</resultMap>
<!-- 팝업창관리:: 메인 게시물정보 -->
<select id="PopupManage.selectPopupManageMain" resultClass="PopupManageVO">
/* PopupManage.selectPopupManageMain */
<![CDATA[
SELECT
A.POPUP_ID AS popupId,
A.POPUP_SJ_NM AS popupTitleNm,
A.FILE_URL AS fileUrl,
A.POPUP_VRTICL_LC AS popupVrticlLc,
A.POPUP_WIDTH_LC AS popupWidthLc,
A.POPUP_VRTICL_SIZE AS popupVrticlSize,
A.POPUP_WIDTH_SIZE AS popupWidthSize,
A.NTCE_BGNDE AS ntceBgnde,
A.NTCE_ENDDE AS ntceEndde,
A.STOPVEW_SETUP_AT AS stopvewSetupAt,
A.NTCE_AT AS ntceAt,
TO_CHAR(A.FRST_REGIST_PNTTM,'YYYY-MM-DD') AS frstRegistPnttm,
(SELECT USER_NM FROM LETTNEMPLYRINFO WHERE ESNTL_ID = A.FRST_REGISTER_ID) AS frstRegisterNm,
A.POPUP_TYPE AS popupType,
A.SCROLL_TYPE AS scrollType,
A.NTT_CN AS nttCn,
A.SORT_NUM AS sortNum
FROM COMTNPOPUPMANAGE A
WHERE 1=1
AND A.NTCE_AT = 'Y'
AND TO_CHAR(SYSDATE, 'YYYYMMDDHH24MI') >= NTCE_BGNDE
AND TO_CHAR(SYSDATE, 'YYYYMMDDHH24MI') <= NTCE_ENDDE
]]>
<isNotNull prepend="AND" property="popupType">
POPUP_TYPE = #popupType#
</isNotNull>
ORDER BY SORT_NUM ASC
</select>
<!-- 팝업창관리::목록조회 게시물정보 -->
<select id="PopupManage.selectPopupManage" resultClass="egovMap">
/* PopupManage.selectPopupManage */
<![CDATA[
SELECT
A.POPUP_ID,
A.POPUP_SJ_NM POPUP_TITLE_NM,
A.FILE_URL,
A.POPUP_VRTICL_LC,
A.POPUP_WIDTH_LC,
A.POPUP_VRTICL_SIZE,
A.POPUP_WIDTH_SIZE,
A.NTCE_BGNDE,
A.NTCE_ENDDE,
A.STOPVEW_SETUP_AT,
A.NTCE_AT,
TO_CHAR(A.FRST_REGIST_PNTTM,'YYYY-MM-DD') FRST_REGIST_PNTTM,
(SELECT USER_NM FROM LETTNEMPLYRINFO WHERE ESNTL_ID = A.FRST_REGISTER_ID) FRST_REGISTER_NM,
A.POPUP_TYPE,
A.SCROLL_TYPE,
A.NTT_CN,
SORT_NUM,
DEL_STTUS
FROM COMTNPOPUPMANAGE A
WHERE 1=1
]]>
<isNotEqual property="delSttus" compareValue="Y">
AND DEL_STTUS != 'Y'
</isNotEqual>
<isNotEmpty property="searchConditionSite">
AND SITE_ID = #searchConditionSite#
</isNotEmpty>
<isNotEmpty property="searchKeyword">
<!-- <isNotEqual property="searchKeyword" compareValue=""> -->
<isEqual property="searchCondition" compareValue="">
AND ( POPUP_SJ_NM LIKE '%'||#searchKeyword#||'%' OR FILE_URL LIKE '%'||#searchKeyword#||'%' )
</isEqual>
<isEqual property="searchCondition" compareValue="POPUP_SJ_NM">
AND POPUP_SJ_NM LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="FILE_URL">
AND FILE_URL LIKE '%'||#searchKeyword#||'%'
</isEqual>
<!-- </isNotEqual> -->
</isNotEmpty>
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<!-- 팝업창관리::목록조회_게시물 총갯수 -->
<select id="PopupManage.selectPopupManageCnt" resultClass="int">
/* PopupManage.selectPopupManageCnt */
SELECT
COUNT(*) totcnt
FROM COMTNPOPUPMANAGE
WHERE 1=1
<isNotEqual property="delSttus" compareValue="Y">
AND DEL_STTUS != 'Y'
</isNotEqual>
<isNotEmpty property="searchConditionSite">
AND SITE_ID = #searchConditionSite#
</isNotEmpty>
<isNotEmpty property="searchKeyword">
<!-- <isNotEqual property="searchKeyword" compareValue=""> -->
<isEqual property="searchCondition" compareValue="">
AND ( POPUP_SJ_NM LIKE CONCAT ('%', #searchKeyword#,'%') OR FILE_URL LIKE CONCAT ('%', #searchKeyword#,'%') )
</isEqual>
<isEqual property="searchCondition" compareValue="POPUP_SJ_NM">
AND POPUP_SJ_NM LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
<isEqual property="searchCondition" compareValue="FILE_URL">
AND FILE_URL LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
<!-- </isNotEqual> -->
</isNotEmpty>
</select>
<!-- 팝업창관리::삭제 del 수정 -->
<!-- <delete id="PopupManage.deletePopupManage">
<![CDATA[
DELETE FROM COMTNPOPUPMANAGE
WHERE POPUP_ID=#popupId#
]]>
</delete> -->
<delete id="PopupManage.deletePopupManage">
<![CDATA[
UPDATE COMTNPOPUPMANAGE
SET DEL_STTUS=#delSttus#,
NTCE_AT='N'
WHERE POPUP_ID=#popupId#
]]>
</delete>
<!-- 팝업창관리::수정 -->
<update id="PopupManage.updatePopupManage">
UPDATE COMTNPOPUPMANAGE
SET
POPUP_SJ_NM=#popupTitleNm#,
FILE_URL=#fileUrl#,
POPUP_VRTICL_LC=#popupHlc#,
POPUP_WIDTH_LC=#popupWlc#,
POPUP_VRTICL_SIZE=#popupHSize#,
POPUP_WIDTH_SIZE=#popupWSize#,
NTCE_BGNDE=#ntceBgnde#,
NTCE_ENDDE=#ntceEndde#,
STOPVEW_SETUP_AT=#stopVewAt#,
NTCE_AT=#ntceAt#,
LAST_UPDT_PNTTM= SYSDATE,
LAST_UPDUSR_ID=#lastUpdusrId#,
POPUP_TYPE=#popupType#,
SCROLL_TYPE=#scrollType#,
NTT_CN=#nttCn#,
SORT_NUM=#sortNum#
WHERE POPUP_ID=#popupId#
</update>
<!-- 팝업창관리::상세보기 -->
<select id="PopupManage.selectPopupManageDetail" resultMap="PopupManageVOs">
/* PopupManage.selectPopupManageDetail */
SELECT
A.POPUP_ID,
A.POPUP_SJ_NM,
A.FILE_URL,
A.POPUP_VRTICL_LC,
A.POPUP_WIDTH_LC,
A.POPUP_VRTICL_SIZE,
A.POPUP_WIDTH_SIZE,
A.NTCE_BGNDE,
A.NTCE_ENDDE,
A.STOPVEW_SETUP_AT,
A.NTCE_AT,
A.FRST_REGIST_PNTTM,
A.FRST_REGISTER_ID,
A.LAST_UPDT_PNTTM,
A.LAST_UPDUSR_ID,
A.POPUP_TYPE,
A.SCROLL_TYPE,
A.NTT_CN,
A.SORT_NUM
FROM COMTNPOPUPMANAGE A
WHERE 1=1
AND A.POPUP_ID=#popupId#
</select>
<!-- 팝업창관리::입력 -->
<insert id="PopupManage.insertPopupManage">
<![CDATA[
INSERT INTO COMTNPOPUPMANAGE (
POPUP_ID,
POPUP_SJ_NM,
FILE_URL,
POPUP_VRTICL_LC,
POPUP_WIDTH_LC,
POPUP_VRTICL_SIZE,
POPUP_WIDTH_SIZE,
NTCE_BGNDE,
NTCE_ENDDE,
STOPVEW_SETUP_AT,
NTCE_AT,
FRST_REGIST_PNTTM,
FRST_REGISTER_ID,
LAST_UPDT_PNTTM,
LAST_UPDUSR_ID,
POPUP_TYPE,
SCROLL_TYPE,
NTT_CN,
SORT_NUM,
DEL_STTUS
)VALUES(
#popupId#,
#popupTitleNm#,
#fileUrl#,
#popupHlc#,
#popupWlc#,
#popupHSize#,
#popupWSize#,
#ntceBgnde#,
#ntceEndde#,
#stopVewAt#,
#ntceAt#,
SYSDATE,
#frstRegisterId#,
SYSDATE,
#lastUpdusrId#,
#popupType#,
#scrollType#,
#nttCn#,
#sortNum#,
#delSttus#
)
]]>
</insert>
<!-- 알림창 관리자 리스트 -->
<select id="PopupzoneManage.selectPopupzoneList" parameterClass="popupzoneVO" resultClass="egovMap">
/* PopupzoneManage.selectPopupzoneList */
<![CDATA[
SELECT
POZ_ID,
CONCAT('/UPLOADROOT/POPUPZONE/',UPFILE ) AS IMG,
CONTENT AS IMG_ALT,
MLINK,
ISTARGET,
CASE WHEN
TRUNC(SYSDATE -7) < TRUNC(REGDT)
THEN 'Y'
ELSE 'N'
END AS NEW_FLAG,
TO_CHAR(REGDT, 'YYYY-MM-DD') REGDT,
POPUPZONE_IMAGE,
POPUPZONE_IMAGE_FILE,
POZ_NM,
USE_YN,
SORT,
TO_CHAR(REGDT, 'YYYYMMDDHH24MI') REGDT,
(SELECT USER_NM FROM LETTNEMPLYRINFO WHERE ESNTL_ID = REGISTER_ID) REGISTER_ID,
SITE_ID
FROM POPUPZONE MB
WHERE DEL = '0'
]]>
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND ( POZ_NM LIKE '%' || #searchKeyword# || '%'
OR MLINK LIKE '%' || #searchKeyword# || '%'
)
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND POZ_NM LIKE '%' || #searchKeyword# || '%'
</isEqual>
<isEqual property="searchCondition" compareValue="2">
AND MLINK LIKE '%' || #searchKeyword# || '%'
</isEqual>
</isNotEmpty>
<isNotEmpty property="searchConditionSite">
AND SITE_ID = #searchConditionSite#
</isNotEmpty>
<!-- <isNotEmpty property="seCd">
AND SE_CD = #seCd#
</isNotEmpty> -->
<isNotEmpty property="useYn">
AND USE_YN = 'Y'
</isNotEmpty>
ORDER BY
<isEmpty property="searchSortCnd">
1
</isEmpty>
<isNotEmpty property="searchSortCnd">
$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<!-- 알림창 관리자 리스트 -->
<select id="PopupzoneManage.selectPopupzoneListTotCnt" parameterClass="popupzoneVO" resultClass="int" >
/* PopupzoneManage.selectPopupzoneListTotCnt */
SELECT
COUNT(*) totcnt
FROM POPUPZONE MB
WHERE 1=1
AND DEL = '0'
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND ( POZ_NM LIKE '%'||#searchKeyword#||'%'
OR MLINK LIKE '%'||#searchKeyword#||'%'
)
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND POZ_NM LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual property="searchCondition" compareValue="2">
AND MLINK LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
<isNotEmpty property="searchConditionSite">
AND SITE_ID = #searchConditionSite#
</isNotEmpty>
<!-- <isNotEmpty property="seCd">
AND SE_CD = #seCd#
</isNotEmpty> -->
<isNotEmpty property="useYn">
AND USE_YN = 'Y'
</isNotEmpty>
</select>
<select id="PopupzoneManage.getSortList" resultClass="EgovMap">
/* PopupzoneManage.getSortList */
<![CDATA[
SELECT
SORT as CM_SUB_CODE,
SORT as CM_CODE_NAME
FROM POPUPZONE mb
WHERE DEL = '0'
ORDER BY SORT
]]>
</select>
<select id="PopupzoneManage.selectPopupzoneVO" parameterClass="String" resultClass="popupzoneVO">
/* PopupzoneManage.selectPopupzoneVO */
SELECT
POZ_ID AS POZID,
UPFILE,
CONCAT('/UPLOADROOT/POPUPZONE/',UPFILE ) AS UPFILEURL,
CONTENT,
MLINK,
ISTARGET,
REGDT,
TO_CHAR(MODDT, 'YYYY-MM-DD HH24:MI:SS') MODDT ,
DEL,
SORT,
POPUPZONE_IMAGE AS POPUPZONEIMAGE ,
POPUPZONE_IMAGE_FILE AS POPUPZONEIMAGEFILE,
POZ_NM AS POZNM ,
USE_YN AS USEYN ,
SE_CD AS seCd ,
(SELECT USER_NM FROM LETTNEMPLYRINFO WHERE ESNTL_ID = REGISTER_ID) REGISTERID,
SITE_ID as siteId
FROM POPUPZONE
WHERE POZ_ID=#pozId#
</select>
<update id="PopupzoneManage.updateSortUp" parameterClass="sortVO">
<![CDATA[
UPDATE POPUPZONE SET
SORT = SORT + 1
WHERE
SORT >= #startSort# AND SORT <= #endSort#
]]>
</update>
<update id="PopupzoneManage.updateSortDown" parameterClass="sortVO">
<![CDATA[
UPDATE POPUPZONE SET
SORT = SORT - 1
WHERE
SORT >= #startSort# AND SORT <= #endSort#
]]>
</update>
<update id="PopupzoneManage.updatePopupzone" parameterClass="popupzoneVO">
UPDATE POPUPZONE SET
UPFILE=#upfile#,
CONTENT=#content#,
MLINK=#mlink#,
ISTARGET=#istarget#,
SORT=#sort#,
POPUPZONE_IMAGE = #popupzoneImage#,
POPUPZONE_IMAGE_FILE = #popupzoneImageFile#,
USE_YN = #useYn#,
POZ_NM = #pozNm# ,
MODDT = SYSDATE
WHERE POZ_ID=#pozId#
</update>
<delete id="PopupzoneManage.deletePopupzone" parameterClass="String">
DELETE FROM POPUPZONE WHERE POZ_ID=#pozId#
</delete>
<select id="PopupzoneManage.getMaxSort" resultClass="int">
/* PopupzoneManage.getMaxSort */
SELECT NVL(MAX(SORT),1) FROM POPUPZONE
</select>
<select id="PopupzoneManage.selectNextSeq" resultClass="int">
/* PopupzoneManage.selectNextSeq */
SELECT POPUPZONE_SEQ.NEXTVAL FROM DB_ROOT
</select>
<insert id="PopupzoneManage.insertPopupzone">
INSERT INTO POPUPZONE (
POZ_ID,
UPFILE,
CONTENT,
MLINK,
ISTARGET,
REGDT,
MODDT,
DEL,
SORT,
POPUPZONE_IMAGE,
POPUPZONE_IMAGE_FILE,
POZ_NM,
USE_YN,
<isNotEmpty property="seCd">
SE_CD,
</isNotEmpty>
REGISTER_ID
) VALUES (
#pozId#,
#upfile#,
#content#,
#mlink#,
#istarget#,
SYSDATE,
SYSDATE,
#del#,
#sort#,
#popupzoneImage#,
#popupzoneImageFile#,
#pozNm#,
#useYn#,
<isNotEmpty property="seCd">
#seCd#,
</isNotEmpty>
#registerId#
)
</insert>
<update id="PopupzoneManage.resetSort" parameterClass="popupzoneVO">
MERGE INTO POPUPZONE A
USING (
SELECT
ROW_NUMBER() OVER (ORDER BY SORT,
<isEqual property="sortOver" compareValue="A">
MODDT ASC
</isEqual>
<isEqual property="sortOver" compareValue="D">
MODDT DESC
</isEqual>
) AS SORT1,
POZ_ID
FROM
POPUPZONE
WHERE
1 = 1
) B
ON (A.POZ_ID = B.POZ_ID)
WHEN MATCHED THEN
UPDATE SET A.SORT = B.SORT1;
</update>
<!-- <update id="PopupzoneManage.resetSort" parameterClass="popupzoneVO">
UPDATE POPUPZONE A ,
(SELECT ROW_NUMBER() OVER(ORDER BY SORT
<isEqual property="sortOver" compareValue="A">
, MODDT ASC
</isEqual>
<isEqual property="sortOver" compareValue="D">
, MODDT DESC
</isEqual>
) AS SORT1 , POZ_ID FROM POPUPZONE
WHERE 1=1
ORDER BY SORT1
) B
SET A.SORT = B.SORT1
WHERE A.POZ_ID = B.POZ_ID
</update> -->
<!-- 매인이미지 관리자 리스트 -->
<select id="MainzoneManage.selectMainzoneList" parameterClass="mainzoneVO" resultClass="egovMap">
/* "MainzoneManage.selectMainzoneList" */
<![CDATA[
SELECT
MAZ_ID,
CONCAT('/UPLOADROOT/POPUPZONE/',UPFILE ) AS IMG,
CONTENT AS IMG_ALT,
MLINK,
ISTARGET,
CASE WHEN
TRUNC(SYSDATE -7) < TRUNC(REGDT)
THEN 'Y'
ELSE 'N'
END AS NEW_FLAG,
TO_CHAR(REGDT, 'YYYY-MM-DD') REGDT,
MAINZONE_IMAGE,
MAINZONE_IMAGE_FILE ,
SORT,
MAZ_NM,
USE_YN,
(SELECT USER_NM FROM LETTNEMPLYRINFO WHERE ESNTL_ID = REGISTER_ID) REGISTER_ID ,
DEVICETYPE
FROM MAINZONE MB
WHERE 1=1
]]>
<isEqual property="useYn" compareValue="Y">
AND USE_YN = 'Y'
</isEqual>
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND ( MAZ_NM LIKE '%' || #searchKeyword# || '%'
OR CONTENT LIKE '%' || #searchKeyword# || '%'
)
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND MAZ_NM LIKE '%' || #searchKeyword# || '%'
</isEqual>
<isEqual property="searchCondition" compareValue="2">
AND CONTENT LIKE '%' || #searchKeyword# || '%'
</isEqual>
</isNotEmpty>
<isNotEmpty property="searchConditionSite">
AND SITE_ID = #searchConditionSite#
</isNotEmpty>
<isNotEmpty property="deviceType">
<isEqual property="deviceType" compareValue="P">
AND ( DEVICETYPE IS NULL OR DEVICETYPE = #deviceType# )
</isEqual>
<isEqual property="deviceType" compareValue="M">
AND DEVICETYPE = #deviceType#
</isEqual>
</isNotEmpty>
ORDER BY SORT
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<select id="MainzoneManage.getMainMaxSort" resultClass="int">
/* MainzoneManage.getMainMaxSort */
SELECT NVL(MAX(SORT),1) FROM MAINZONE
</select>
<insert id="MainzoneManage.insertMainzone" parameterClass="mainzoneVO">
INSERT INTO MAINZONE (
MAZ_ID,
UPFILE,
CONTENT,
MLINK,
ISTARGET,
REGDT,
MODDT,
DEL,
SORT,
MAINZONE_IMAGE,
MAINZONE_IMAGE_FILE,
MAZ_NM,
USE_YN,
<isNotEmpty property="deviceType">
DEVICETYPE,
</isNotEmpty>
REGISTER_ID
) VALUES (
#mazId#,
#upfile#,
#content#,
#mlink#,
#istarget#,
SYSDATE,
SYSDATE,
#del#,
#sort#,
#mainzoneImage#,
#mainzoneImageFile#,
#mazNm#,
#useYn#,
<isNotEmpty property="deviceType">
#deviceType#,
</isNotEmpty>
#registerId#
)
</insert>
<update id="MainzoneManage.resetMainSort" parameterClass="mainzoneVO">
UPDATE MAINZONE A , (SELECT ROW_NUMBER() OVER(ORDER BY SORT) AS SORT1 , MAZ_ID FROM MAINZONE
WHERE 1=1
ORDER BY SORT ASC) B
SET A.SORT = B.SORT1
WHERE A.MAZ_ID = B.MAZ_ID
</update>
<update id="MainzoneManage.updateMainSortUp" parameterClass="sortVO">
<![CDATA[
UPDATE MAINZONE SET
SORT = SORT + 1
WHERE
SORT >= #startSort# AND SORT <= #endSort#
]]>
</update>
<select id="MainzoneManage.selectMainzoneVO" parameterClass="String" resultClass="mainzoneVO">
/* MainzoneManage.selectMainzoneVO */
SELECT
MAZ_ID AS MAZID,
UPFILE,
CONCAT('/UPLOADROOT/POPUPZONE/',UPFILE ) AS UPFILEURL,
CONTENT,
MLINK,
ISTARGET,
REGDT,
DEL,
SORT,
MAINZONE_IMAGE AS MAINZONEIMAGE ,
MAINZONE_IMAGE_FILE AS MAINZONEIMAGEFILE,
MAZ_NM AS MAZNM,
USE_YN AS USEYN,
DATE_FORMAT(MODDT, '%Y-%m-%d %H:%i:%s') MODDT ,
(SELECT USER_NM FROM LETTNEMPLYRINFO WHERE ESNTL_ID = REGISTER_ID) REGISTERID,
DEVICETYPE AS deviceType
FROM MAINZONE
WHERE MAZ_ID=#mazId#
</select>
<select id="MainzoneManage.getMainSortList" resultClass="EgovMap">
/* MainzoneManage.getMainSortList */
<![CDATA[
SELECT
SORT as CM_SUB_CODE,
SORT as CM_CODE_NAME
FROM MAINZONE mb
WHERE DEL = '0'
ORDER BY SORT
]]>
</select>
<delete id="MainzoneManage.deleteMainzone" parameterClass="String">
DELETE FROM MAINZONE WHERE MAZ_ID=#mazId#
</delete>
<update id="MainzoneManage.updateMainSortDown" parameterClass="sortVO">
<![CDATA[
UPDATE MAINZONE SET
SORT = SORT - 1
WHERE
SORT >= #startSort# AND SORT <= #endSort#
]]>
</update>
<update id="MainzoneManage.updateMainzone" parameterClass="mainzoneVO">
UPDATE MAINZONE SET
UPFILE=#upfile#,
CONTENT=#content#,
MLINK=#mlink#,
ISTARGET=#istarget#,
SORT=#sort#,
MAINZONE_IMAGE = #mainzoneImage#,
MAINZONE_IMAGE_FILE = #mainzoneImageFile#,
USE_YN = #useYn#,
MAZ_NM = #mazNm# ,
<isNotEmpty property="deviceType">
DEVICETYPE = #deviceType# ,
</isNotEmpty>
MODDT = SYSDATE
WHERE MAZ_ID=#mazId#
</update>
<select id="MainzoneManage.selectMainzoneCount" resultClass="int">
/* MainzoneManage.selectMainzoneCount */
SELECT
COUNT(*) totcnt
FROM MAINZONE
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND ( MAZ_NM LIKE CONCAT ('%', #searchKeyword#,'%')
OR CONTENT LIKE CONCAT ('%', #searchKeyword#,'%')
)
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND MAZ_NM LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
<isEqual property="searchCondition" compareValue="2">
AND CONTENT LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
</isNotEmpty>
<isNotEmpty property="searchConditionSite">
AND SITE_ID = #searchConditionSite#
</isNotEmpty>
</select>
<update id="PopupzoneManage.resetVOSort" parameterClass="popupzoneVO">
MERGE INTO POPUPZONE A
USING (
SELECT
ROW_NUMBER() OVER (ORDER BY SORT,
<isEqual property="sortOver" compareValue="A">
MODDT ASC
</isEqual>
<isEqual property="sortOver" compareValue="D">
MODDT DESC
</isEqual>
) AS SORT1,
POZ_ID
FROM
POPUPZONE
WHERE
1 = 1
<isNotEmpty property="seCd">
AND SE_CD = #seCd#
</isNotEmpty>
) B
ON (A.POZ_ID = B.POZ_ID)
WHEN MATCHED THEN
UPDATE SET A.SORT = B.SORT1;
</update>
<!-- <update id="PopupzoneManage.resetVOSort" parameterClass="popupzoneVO">
UPDATE POPUPZONE A ,
(SELECT ROW_NUMBER() OVER(ORDER BY SORT
<isEqual property="sortOver" compareValue="A">
, MODDT ASC
</isEqual>
<isEqual property="sortOver" compareValue="D">
, MODDT DESC
</isEqual>
) AS SORT1 , POZ_ID FROM POPUPZONE
WHERE 1=1
<isNotEmpty property="seCd">
AND SE_CD = #seCd#
</isNotEmpty>
ORDER BY SORT1
) B
SET A.SORT = B.SORT1
WHERE A.POZ_ID = B.POZ_ID
</update> -->
<update id="MainzoneManage.resetMainVOSort" parameterClass="mainzoneVO">
UPDATE MAINZONE A ,
(SELECT ROW_NUMBER() OVER(ORDER BY SORT
<isEqual property="sortOver" compareValue="A">
, MODDT ASC
</isEqual>
<isEqual property="sortOver" compareValue="D">
, MODDT DESC
</isEqual>
) AS SORT1 , MAZ_ID FROM MAINZONE
WHERE 1=1
ORDER BY SORT1
) B
SET A.SORT = B.SORT1
WHERE A.MAZ_ID = B.MAZ_ID
</update>
<!-- 소설 관리자 리스트 -->
<select id="SocialManage.selectSocialList" parameterClass="socialVO" resultClass="socialVO">
/* SocialManage.selectSocialList */
<![CDATA[
SELECT
COUNT(SOCIAL_ID) OVER() AS totCnt,
SOCIAL_TITLE AS socialTitle,
SOCIAL_ID AS socialId,
SOCIAL_SJ AS socialSj,
SOCIAL_CN AS socialCn,
CONCAT('/UPLOADROOT/POPUPZONE/',UPFILE ) AS upFile,
MLINK AS mlink,
ISTARGET AS istarget,
DATE_FORMAT(REGDT, '%Y-%m-%d') AS regdt,
SOCIAL_IMAGE AS socialeImage,
SOCIAL_IMAGE_FILE AS socialImageFile,
USE_YN AS useYn,
SE_CD AS seCd,
IFNULL(SORT, 0) AS sort,
(SELECT USER_NM FROM LETTNEMPLYRINFO WHERE ESNTL_ID = REGISTER_ID) registerId
FROM SOCIAL_HUB
WHERE 1=1
]]>
<isNotEmpty property="searchKeyword">
<isEqual property="searchCondition" compareValue="">
AND ( POZ_NM LIKE CONCAT ('%', #searchKeyword#,'%')
OR MLINK LIKE CONCAT ('%', #searchKeyword#,'%')
)
</isEqual>
<isEqual property="searchCondition" compareValue="1">
AND POZ_NM LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
<isEqual property="searchCondition" compareValue="2">
AND MLINK LIKE CONCAT ('%', #searchKeyword#,'%')
</isEqual>
</isNotEmpty>
<isNotEmpty property="seCd">
AND SE_CD = #seCd#
</isNotEmpty>
<isNotEmpty property="useYn">
AND USE_YN = 'Y'
</isNotEmpty>
ORDER BY 1=1 , SE_CD ASC
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
<!-- 소셜창관리::상세보기 -->
<select id="SocialManage.selectSocialVO" resultClass="socialVO">
/* SocialManage.selectSocialVO */
SELECT A.SOCIAL_ID AS socialId,
A.SOCIAL_TITLE AS socialTitle,
A.SOCIAL_SJ AS socialSj,
A.SOCIAL_CN AS socialCn,
A.UPFILE AS upFile,
A.MLINK AS mlink,
A.ISTARGET AS istarget,
IFNULL(A.SORT, 0) AS sort,
A.REGDT AS regdt,
A.MODDT AS moddt,
A.DEL AS del,
A.SOCIAL_IMAGE_FILE AS socialImageFile,
A.SOCIAL_IMAGE AS socialImage,
A.REGISTER_ID AS registerId,
A.USE_YN AS useYn,
A.SE_CD AS seCd
FROM SOCIAL_HUB A
WHERE 1=1
AND A.SOCIAL_ID=#socialId#
</select>
<update id="SocialManage.updateSocial" parameterClass="socialVO">
UPDATE SOCIAL_HUB
SET SOCIAL_ID = #socialId#,
SOCIAL_TITLE = #socialTitle#,
SOCIAL_SJ = #socialSj#,
SOCIAL_CN = #socialCn#,
UPFILE = #upfile#,
MLINK = #mlink#,
ISTARGET = #istarget#,
SORT = #sort#,
DEL = #del#,
SOCIAL_IMAGE_FILE = #socialImageFile#,
SOCIAL_IMAGE = #socialImage#,
REGISTER_ID = #registerId#,
USE_YN = #useYn#,
SE_CD = #seCd#,
MODDT = SYSDATE
WHERE SOCIAL_ID=#socialId#
</update>
<update id="SocialManage.resetSocialSort" parameterClass="socialVO">
UPDATE SOCIAL_HUB A ,
(SELECT ROW_NUMBER() OVER(ORDER BY SORT
<isEqual property="sortOver" compareValue="A">
, MODDT ASC
</isEqual>
<isEqual property="sortOver" compareValue="D">
, MODDT DESC
</isEqual>
) AS SORT1 , SOCIAL_ID FROM SOCIAL_HUB
WHERE 1=1
<isNotEmpty property="seCd">
AND SE_CD = #seCd#
</isNotEmpty>
ORDER BY SORT1
) B
SET A.SORT = B.SORT1
WHERE A.SOCIAL_ID = B.SOCIAL_ID
</update>
<insert id="SocialManage.insertSocial" parameterClass="socialVO">
INSERT INTO SOCIAL_HUB(
SOCIAL_ID,
SOCIAL_SJ,
SOCIAL_CN,
UPFILE,
MLINK,
ISTARGET,
SORT,
REGDT,
MODDT,
DEL,
SOCIAL_IMAGE_FILE,
REGISTER_ID,
USE_YN,
SE_CD,
SOCIAL_IMAGE
)
VALUES(
#socialId#,
#socialSj#,
#socialCn#,
#upfile#,
#mlink#,
#istarget#,
#sort#,
SYSDATE,
SYSDATE,
#del#,
#socialImageFile#,
#registerId#,
#useYn#,
#seCd#,
#socialImage#
)
</insert>
<delete id="SocialManage.deleteSocial" parameterClass="String">
DELETE FROM SOCIAL_HUB WHERE SOCIAL_ID=#socialId#
</delete>
</sqlMap>

View File

@ -0,0 +1,353 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="MberManage">
<typeAlias alias="egovMap" type = "egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="userSearchVO" type = "kcc.let.uss.umt.service.UserDefaultVO"/>
<typeAlias alias="mberVO" type = "kcc.let.uss.umt.service.MberManageVO"/>
<typeAlias alias="mberConfigVO" type = "kcc.let.uss.umt.service.MberManageConfigVO"/>
<select id="mberManageDAO.selectMberCnf" resultClass="mberConfigVO">
/* mberManageDAO.selectMberCnf */
SELECT a.CONFIG_ID as configId,
a.CONFIG_ORDER as configOrder,
a.CONFIG_NAME as configName,
a.USE_YN as useYn,
a.NECE_YN as neceYn,
a.PLACE_HOLDER as placeHolder,
a.IS_SNS as isSns
FROM TB_REGICONFIG a
WHERE 1=1
<isNotEmpty property="useYn">
AND a.USE_YN = #useYn#
</isNotEmpty>
<isNotEmpty property="isSns">
AND a.IS_SNS = #isSns#
</isNotEmpty>
ORDER BY a.CONFIG_ORDER
</select>
<update id="mberManageDAO.updateMberCnf" >
UPDATE TB_REGICONFIG
SET USE_YN = #useYn#,
NECE_YN = #neceYn#,
PLACE_HOLDER = #placeHolder#,
CONFIG_ORDER = #configOrder#
WHERE CONFIG_ID = #configId#
</update>
<select id="mberManageDAO.selectMberList" parameterClass="userSearchVO" resultClass="egovMap">
/* mberManageDAO.selectMberList */
SELECT
COUNT(uniqId) OVER() AS totCnt ,
uniqId, userTy, userId , userNm,
emailAdres, areaNo, middleTelno, endTelno,
moblphonNo, groupId, sttus,
TO_CHAR(sbscrbDe, 'YYYY-MM-DD') sbscrbDe,
B.AUTHOR_CODE AS authorCode,
E.AUTHOR_NM AS authorCodeTxt
FROM(
SELECT
ESNTL_ID uniqId,
'USR01' userTy,
MBER_ID userId,
MBER_NM userNm,
MBER_EMAIL_ADRES emailAdres,
AREA_NO areaNo,
MIDDLE_TELNO middleTelno,
END_TELNO endTelno,
MBTLNUM moblphonNo,
GROUP_ID groupId,
MBER_STTUS sttus,
SBSCRB_DE sbscrbDe
FROM LETTNGNRLMBER
) A
LEFT JOIN LETTNEMPLYRSCRTYESTBS B
ON A.uniqId = B.SCRTY_DTRMN_TRGET_ID
LEFT JOIN LETTNAUTHORINFO E
ON B.AUTHOR_CODE = E.AUTHOR_CODE
LEFT JOIN
( SELECT CODE_NM ,
CODE
FROM LETTCCMMNDETAILCODE
WHERE USE_AT = 'Y'
/** 회원상태 코드 */
AND CODE_ID = 'COM013'
)
F
ON A.sttus = F.CODE
WHERE 1=1
<isNotEqual prepend="AND" property="sbscrbSttus" compareValue="0">
sttus = #sbscrbSttus#
</isNotEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="0">
userId LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
userNm LIKE '%'||#snsSiteName#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="">
( userNm LIKE '%'||#searchKeyword#||'%'
OR
userId LIKE '%'||#searchKeyword#||'%'
)
</isEqual>
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<select id="mberManageDAO.selectMberListTotCnt" parameterClass="userSearchVO" resultClass="int">
/* mberManageDAO.selectMberListTotCnt */
SELECT COUNT(1) totcnt
FROM(
SELECT
ESNTL_ID uniqId,
'USR01' userTy,
MBER_ID userId,
MBER_NM userNm,
MBER_EMAIL_ADRES emailAdres,
AREA_NO areaNo,
MIDDLE_TELNO middleTelno,
END_TELNO endTelno,
MBTLNUM moblphonNo,
GROUP_ID groupId,
MBER_STTUS sttus,
SBSCRB_DE sbscrbDe
FROM LETTNGNRLMBER
) A
WHERE 1=1
<isNotEqual prepend="AND" property="sbscrbSttus" compareValue="0">
sttus = #sbscrbSttus#
</isNotEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="0">
userId LIKE CONCAT('%',#searchKeyword#,'%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
userNm LIKE CONCAT('%',#searchKeyword#,'%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="">
( userNm LIKE CONCAT('%',#searchKeyword#,'%') OR userId LIKE CONCAT('%',#searchKeyword#,'%'))
</isEqual>
</select>
<select id="mberManageDAO.selectMber" resultClass="kcc.let.uss.umt.service.MberManageVO">
/* mberManageDAO.selectMber */
SELECT
A.ESNTL_ID uniqId,
'USR01' userTy,
A.MBER_ID mberId,
A.MBER_NM mberNm,
A.PASSWORD password,
A.PASSWORD_HINT passwordHint,
A.PASSWORD_CNSR passwordCnsr,
A.IHIDNUM ihidnum,
A.SEXDSTN_CODE sexdstnCode,
A.ZIP zip,
A.ADRES adres,
A.AREA_NO areaNo,
A.MBER_STTUS mberSttus,
A.DETAIL_ADRES detailAdres,
A.END_TELNO endTelno,
A.MBTLNUM moblphonNo,
A.GROUP_ID groupId,
A.MBER_FXNUM mberFxnum,
A.MBER_EMAIL_ADRES mberEmailAdres,
A.MIDDLE_TELNO middleTelno,
A.SBSCRB_DE sbscrbDe,
A.BIRTH_DAY birth,
A.EMAIL_YN emailYN,
A.SMS_YN smsYN,
A.PHOTOFILE_ID photofileId,
c.author_code authorCode
FROM LETTNGNRLMBER A
LEFT OUTER JOIN
( SELECT b.author_code, b.scrty_dtrmn_trget_id
FROM lettnemplyrscrtyestbs b
)
c
ON A.esntl_id = c.scrty_dtrmn_trget_id
WHERE ESNTL_ID= #uniqId#
</select>
<!-- 관리자 대리 등록을 위한 사용자 정보 찾기용 쿼리 -->
<select id="mberManageDAO.selectMber4AdminReg" resultClass="kcc.let.uss.umt.service.MberManageVO">
/* mberManageDAO.selectMber4AdminReg */
SELECT
A.ESNTL_ID uniqId,
'USR01' userTy,
A.MBER_ID mberId,
A.MBER_NM mberNm,
A.PASSWORD password,
A.PASSWORD_HINT passwordHint,
A.PASSWORD_CNSR passwordCnsr,
A.IHIDNUM ihidnum,
A.SEXDSTN_CODE sexdstnCode,
A.ZIP zip,
A.ADRES adres,
A.AREA_NO areaNo,
A.MBER_STTUS mberSttus,
A.DETAIL_ADRES detailAdres,
A.END_TELNO endTelno,
A.MBTLNUM moblphonNo,
A.GROUP_ID groupId,
A.MBER_FXNUM mberFxnum,
A.MBER_EMAIL_ADRES mberEmailAdres,
A.MIDDLE_TELNO middleTelno,
A.SBSCRB_DE sbscrbDe,
A.BIRTH_DAY birth,
A.EMAIL_YN emailYN,
A.SMS_YN smsYN,
A.PHOTOFILE_ID photofileId,
c.author_code authorCode
FROM LETTNGNRLMBER A
LEFT OUTER JOIN
( SELECT b.author_code, b.scrty_dtrmn_trget_id
FROM lettnemplyrscrtyestbs b
)
c
ON A.esntl_id = c.scrty_dtrmn_trget_id
WHERE 1=1
AND a.mber_seq>0
AND a.mber_id!=a.mber_seq
and a.mber_id = (
SELECT user_id
FROM ve_edu_aplct a
LEFT OUTER JOIN
( SELECT b.author_code,
b.scrty_dtrmn_trget_id
FROM lettnemplyrscrtyestbs b
)
c
ON A.user_id = c.scrty_dtrmn_trget_id
WHERE a.email=#mberEmailAdres#
AND c.author_code='ROLE_USER_MEMBER'
GROUP BY user_id
LIMIT 1
)
</select>
<!-- <select id="mberManageDAO.selectMberListTotCnt" parameterClass="userSearchVO" resultClass="int">
SELECT COUNT(1) totcnt
FROM(
SELECT
ESNTL_ID uniqId,
'USR01' userTy,
MBER_ID mberId,
MBER_NM mberNm,
PASSWORD password,
PASSWORD_HINT passwordHint,
PASSWORD_CNSR passwordCnsr,
IHIDNUM ihidnum,
SEXDSTN_CODE sexdstnCode,
ZIP zip,
ADRES adres,
AREA_NO areaNo,
MBER_STTUS mberSttus,
DETAIL_ADRES detailAdres,
END_TELNO endTelno,
MBTLNUM moblphonNo,
GROUP_ID groupId,
MBER_FXNUM mberFxnum,
MBER_EMAIL_ADRES mberEmailAdres,
MIDDLE_TELNO middleTelno,
SBSCRB_DE sbscrbDe,
BIRTH_DAY birth,
EMAIL_YN emailYN,
SMS_YN smsYN,
PHOTOFILE_ID photofileId
FROM LETTNGNRLMBER
) A
WHERE 1=1
<isNotEqual prepend="AND" property="sbscrbSttus" compareValue="0">
sttus LIKE #sbscrbSttus#
</isNotEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="0">
userId LIKE #searchKeyword#
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
userNm LIKE '%' #searchKeyword# '%'
</isEqual>
</select> -->
<update id="mberManageDAO.updateMber" >
UPDATE LETTNGNRLMBER
SET
<isNotEmpty property="passwordHint">
PASSWORD_HINT = #passwordHint#,
</isNotEmpty>
<isNotEmpty property="passwordCnsr">
PASSWORD_CNSR = #passwordCnsr#,
</isNotEmpty>
<isNotEmpty property="ihidnum">
IHIDNUM = #ihidnum#,
</isNotEmpty>
<isNotEmpty property="sexdstnCode">
SEXDSTN_CODE = #sexdstnCode#,
</isNotEmpty>
<isNotEmpty property="zip">
ZIP = #zip#,
</isNotEmpty>
<isNotEmpty property="adres">
ADRES = #adres#,
</isNotEmpty>
<isNotEmpty property="areaNo">
AREA_NO = #areaNo#,
</isNotEmpty>
<isNotEmpty property="mberSttus">
MBER_STTUS = #mberSttus#,
</isNotEmpty>
<isNotEmpty property="detailAdres">
DETAIL_ADRES = #detailAdres#,
</isNotEmpty>
<isNotEmpty property="endTelno">
END_TELNO = #endTelno#,
</isNotEmpty>
<isNotEmpty property="moblphonNo">
MBTLNUM = #moblphonNo#,
</isNotEmpty>
<isNotEmpty property="groupId">
GROUP_ID = #groupId#,
</isNotEmpty>
<isNotEmpty property="mberFxnum">
MBER_FXNUM = #mberFxnum#,
</isNotEmpty>
<isNotEmpty property="mberEmailAdres">
MBER_EMAIL_ADRES = #mberEmailAdres#,
</isNotEmpty>
<isNotEmpty property="middleTelno">
MIDDLE_TELNO = #middleTelno#,
</isNotEmpty>
<isNotEmpty property="birth">
BIRTH_DAY = #birth#,
</isNotEmpty>
<isNotEmpty property="emailYN">
EMAIL_YN = #emailYN#,
</isNotEmpty>
<isNotEmpty property="smsYN">
SMS_YN = #smsYN#,
</isNotEmpty>
<isNotEmpty property="photofileId">
PHOTOFILE_ID = #photofileId#,
</isNotEmpty>
MBER_NM = #mberNm#
WHERE ESNTL_ID=#uniqId#
</update>
<delete id="mberManageDAO.deleteMber">
<![CDATA[
DELETE FROM LETTNGNRLMBER
WHERE ESNTL_ID=#delId#
]]>
</delete>
</sqlMap>

View File

@ -0,0 +1,353 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="MberManage">
<typeAlias alias="egovMap" type = "egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="userSearchVO" type = "kcc.let.uss.umt.service.UserDefaultVO"/>
<typeAlias alias="mberVO" type = "kcc.let.uss.umt.service.MberManageVO"/>
<typeAlias alias="mberConfigVO" type = "kcc.let.uss.umt.service.MberManageConfigVO"/>
<select id="mberManageDAO.selectMberCnf" resultClass="mberConfigVO">
/* mberManageDAO.selectMberCnf */
SELECT a.CONFIG_ID as configId,
a.CONFIG_ORDER as configOrder,
a.CONFIG_NAME as configName,
a.USE_YN as useYn,
a.NECE_YN as neceYn,
a.PLACE_HOLDER as placeHolder,
a.IS_SNS as isSns
FROM TB_REGICONFIG a
WHERE 1=1
<isNotEmpty property="useYn">
AND a.USE_YN = #useYn#
</isNotEmpty>
<isNotEmpty property="isSns">
AND a.IS_SNS = #isSns#
</isNotEmpty>
ORDER BY a.CONFIG_ORDER
</select>
<update id="mberManageDAO.updateMberCnf" >
UPDATE TB_REGICONFIG
SET USE_YN = #useYn#,
NECE_YN = #neceYn#,
PLACE_HOLDER = #placeHolder#,
CONFIG_ORDER = #configOrder#
WHERE CONFIG_ID = #configId#
</update>
<select id="mberManageDAO.selectMberList" parameterClass="userSearchVO" resultClass="egovMap">
/* mberManageDAO.selectMberList */
SELECT
COUNT(uniqId) OVER() AS totCnt ,
uniqId, userTy, userId , userNm,
emailAdres, areaNo, middleTelno, endTelno,
moblphonNo, groupId, sttus,
TO_CHAR(sbscrbDe, 'YYYY-MM-DD') sbscrbDe,
B.AUTHOR_CODE AS authorCode,
E.AUTHOR_NM AS authorCodeTxt
FROM(
SELECT
ESNTL_ID uniqId,
'USR01' userTy,
MBER_ID userId,
MBER_NM userNm,
MBER_EMAIL_ADRES emailAdres,
AREA_NO areaNo,
MIDDLE_TELNO middleTelno,
END_TELNO endTelno,
MBTLNUM moblphonNo,
GROUP_ID groupId,
MBER_STTUS sttus,
SBSCRB_DE sbscrbDe
FROM LETTNGNRLMBER
) A
LEFT JOIN LETTNEMPLYRSCRTYESTBS B
ON A.uniqId = B.SCRTY_DTRMN_TRGET_ID
LEFT JOIN LETTNAUTHORINFO E
ON B.AUTHOR_CODE = E.AUTHOR_CODE
LEFT JOIN
( SELECT CODE_NM ,
CODE
FROM LETTCCMMNDETAILCODE
WHERE USE_AT = 'Y'
/** 회원상태 코드 */
AND CODE_ID = 'COM013'
)
F
ON A.sttus = F.CODE
WHERE 1=1
<isNotEqual prepend="AND" property="sbscrbSttus" compareValue="0">
sttus = #sbscrbSttus#
</isNotEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="0">
userId LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
userNm LIKE '%'||#snsSiteName#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="">
( userNm LIKE '%'||#searchKeyword#||'%'
OR
userId LIKE '%'||#searchKeyword#||'%'
)
</isEqual>
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<select id="mberManageDAO.selectMberListTotCnt" parameterClass="userSearchVO" resultClass="int">
/* mberManageDAO.selectMberListTotCnt */
SELECT COUNT(1) totcnt
FROM(
SELECT
ESNTL_ID uniqId,
'USR01' userTy,
MBER_ID userId,
MBER_NM userNm,
MBER_EMAIL_ADRES emailAdres,
AREA_NO areaNo,
MIDDLE_TELNO middleTelno,
END_TELNO endTelno,
MBTLNUM moblphonNo,
GROUP_ID groupId,
MBER_STTUS sttus,
SBSCRB_DE sbscrbDe
FROM LETTNGNRLMBER
) A
WHERE 1=1
<isNotEqual prepend="AND" property="sbscrbSttus" compareValue="0">
sttus = #sbscrbSttus#
</isNotEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="0">
userId LIKE CONCAT('%',#searchKeyword#,'%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
userNm LIKE CONCAT('%',#searchKeyword#,'%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="">
( userNm LIKE CONCAT('%',#searchKeyword#,'%') OR userId LIKE CONCAT('%',#searchKeyword#,'%'))
</isEqual>
</select>
<select id="mberManageDAO.selectMber" resultClass="kcc.let.uss.umt.service.MberManageVO">
/* mberManageDAO.selectMber */
SELECT
A.ESNTL_ID uniqId,
'USR01' userTy,
A.MBER_ID mberId,
A.MBER_NM mberNm,
A.PASSWORD password,
A.PASSWORD_HINT passwordHint,
A.PASSWORD_CNSR passwordCnsr,
A.IHIDNUM ihidnum,
A.SEXDSTN_CODE sexdstnCode,
A.ZIP zip,
A.ADRES adres,
A.AREA_NO areaNo,
A.MBER_STTUS mberSttus,
A.DETAIL_ADRES detailAdres,
A.END_TELNO endTelno,
A.MBTLNUM moblphonNo,
A.GROUP_ID groupId,
A.MBER_FXNUM mberFxnum,
A.MBER_EMAIL_ADRES mberEmailAdres,
A.MIDDLE_TELNO middleTelno,
A.SBSCRB_DE sbscrbDe,
A.BIRTH_DAY birth,
A.EMAIL_YN emailYN,
A.SMS_YN smsYN,
A.PHOTOFILE_ID photofileId,
c.author_code authorCode
FROM LETTNGNRLMBER A
LEFT OUTER JOIN
( SELECT b.author_code, b.scrty_dtrmn_trget_id
FROM lettnemplyrscrtyestbs b
)
c
ON A.esntl_id = c.scrty_dtrmn_trget_id
WHERE ESNTL_ID= #uniqId#
</select>
<!-- 관리자 대리 등록을 위한 사용자 정보 찾기용 쿼리 -->
<select id="mberManageDAO.selectMber4AdminReg" resultClass="kcc.let.uss.umt.service.MberManageVO">
/* mberManageDAO.selectMber4AdminReg */
SELECT
A.ESNTL_ID uniqId,
'USR01' userTy,
A.MBER_ID mberId,
A.MBER_NM mberNm,
A.PASSWORD password,
A.PASSWORD_HINT passwordHint,
A.PASSWORD_CNSR passwordCnsr,
A.IHIDNUM ihidnum,
A.SEXDSTN_CODE sexdstnCode,
A.ZIP zip,
A.ADRES adres,
A.AREA_NO areaNo,
A.MBER_STTUS mberSttus,
A.DETAIL_ADRES detailAdres,
A.END_TELNO endTelno,
A.MBTLNUM moblphonNo,
A.GROUP_ID groupId,
A.MBER_FXNUM mberFxnum,
A.MBER_EMAIL_ADRES mberEmailAdres,
A.MIDDLE_TELNO middleTelno,
A.SBSCRB_DE sbscrbDe,
A.BIRTH_DAY birth,
A.EMAIL_YN emailYN,
A.SMS_YN smsYN,
A.PHOTOFILE_ID photofileId,
c.author_code authorCode
FROM LETTNGNRLMBER A
LEFT OUTER JOIN
( SELECT b.author_code, b.scrty_dtrmn_trget_id
FROM lettnemplyrscrtyestbs b
)
c
ON A.esntl_id = c.scrty_dtrmn_trget_id
WHERE 1=1
AND a.mber_seq>0
AND a.mber_id!=a.mber_seq
and a.mber_id = (
SELECT user_id
FROM ve_edu_aplct a
LEFT OUTER JOIN
( SELECT b.author_code,
b.scrty_dtrmn_trget_id
FROM lettnemplyrscrtyestbs b
)
c
ON A.user_id = c.scrty_dtrmn_trget_id
WHERE a.email=#mberEmailAdres#
AND c.author_code='ROLE_USER_MEMBER'
GROUP BY user_id
LIMIT 1
)
</select>
<!-- <select id="mberManageDAO.selectMberListTotCnt" parameterClass="userSearchVO" resultClass="int">
SELECT COUNT(1) totcnt
FROM(
SELECT
ESNTL_ID uniqId,
'USR01' userTy,
MBER_ID mberId,
MBER_NM mberNm,
PASSWORD password,
PASSWORD_HINT passwordHint,
PASSWORD_CNSR passwordCnsr,
IHIDNUM ihidnum,
SEXDSTN_CODE sexdstnCode,
ZIP zip,
ADRES adres,
AREA_NO areaNo,
MBER_STTUS mberSttus,
DETAIL_ADRES detailAdres,
END_TELNO endTelno,
MBTLNUM moblphonNo,
GROUP_ID groupId,
MBER_FXNUM mberFxnum,
MBER_EMAIL_ADRES mberEmailAdres,
MIDDLE_TELNO middleTelno,
SBSCRB_DE sbscrbDe,
BIRTH_DAY birth,
EMAIL_YN emailYN,
SMS_YN smsYN,
PHOTOFILE_ID photofileId
FROM LETTNGNRLMBER
) A
WHERE 1=1
<isNotEqual prepend="AND" property="sbscrbSttus" compareValue="0">
sttus LIKE #sbscrbSttus#
</isNotEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="0">
userId LIKE #searchKeyword#
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
userNm LIKE '%' #searchKeyword# '%'
</isEqual>
</select> -->
<update id="mberManageDAO.updateMber" >
UPDATE LETTNGNRLMBER
SET
<isNotEmpty property="passwordHint">
PASSWORD_HINT = #passwordHint#,
</isNotEmpty>
<isNotEmpty property="passwordCnsr">
PASSWORD_CNSR = #passwordCnsr#,
</isNotEmpty>
<isNotEmpty property="ihidnum">
IHIDNUM = #ihidnum#,
</isNotEmpty>
<isNotEmpty property="sexdstnCode">
SEXDSTN_CODE = #sexdstnCode#,
</isNotEmpty>
<isNotEmpty property="zip">
ZIP = #zip#,
</isNotEmpty>
<isNotEmpty property="adres">
ADRES = #adres#,
</isNotEmpty>
<isNotEmpty property="areaNo">
AREA_NO = #areaNo#,
</isNotEmpty>
<isNotEmpty property="mberSttus">
MBER_STTUS = #mberSttus#,
</isNotEmpty>
<isNotEmpty property="detailAdres">
DETAIL_ADRES = #detailAdres#,
</isNotEmpty>
<isNotEmpty property="endTelno">
END_TELNO = #endTelno#,
</isNotEmpty>
<isNotEmpty property="moblphonNo">
MBTLNUM = #moblphonNo#,
</isNotEmpty>
<isNotEmpty property="groupId">
GROUP_ID = #groupId#,
</isNotEmpty>
<isNotEmpty property="mberFxnum">
MBER_FXNUM = #mberFxnum#,
</isNotEmpty>
<isNotEmpty property="mberEmailAdres">
MBER_EMAIL_ADRES = #mberEmailAdres#,
</isNotEmpty>
<isNotEmpty property="middleTelno">
MIDDLE_TELNO = #middleTelno#,
</isNotEmpty>
<isNotEmpty property="birth">
BIRTH_DAY = #birth#,
</isNotEmpty>
<isNotEmpty property="emailYN">
EMAIL_YN = #emailYN#,
</isNotEmpty>
<isNotEmpty property="smsYN">
SMS_YN = #smsYN#,
</isNotEmpty>
<isNotEmpty property="photofileId">
PHOTOFILE_ID = #photofileId#,
</isNotEmpty>
MBER_NM = #mberNm#
WHERE ESNTL_ID=#uniqId#
</update>
<delete id="mberManageDAO.deleteMber">
<![CDATA[
DELETE FROM LETTNGNRLMBER
WHERE ESNTL_ID=#delId#
]]>
</delete>
</sqlMap>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="User">
@ -10,6 +10,7 @@
<typeAlias alias="siteManagerVO" type = "kcc.let.sym.site.service.SiteManagerVO"/>
<select id="userManageDAO.selectUserCount" resultClass="userSearchVO">
/* userManageDAO.selectUserCount */
SELECT
(SELECT COUNT(EMPLYR_ID) FROM LETTNEMPLYRINFO WHERE 1=1) as userTotailCount,
(SELECT COUNT(EMPLYR_ID) FROM LETTNEMPLYRINFO WHERE 1=1 AND EMPLYR_STTUS_CODE = 'A') as userNewCount,
@ -19,79 +20,95 @@
</select>
<select id="userManageDAO.selectUserList_S" parameterClass="userSearchVO" resultClass="egovMap">
SELECT *
FROM (
SELECT
COUNT(uniqId) OVER() AS totCnt ,
uniqId, userTy, userId , userNm, emailAdres, areaNo, middleTelno, endTelno, moblphonNo, groupId, sttus,
offmTelno ,
TO_CHAR(sbscrbDe, 'YYYY-MM-DD') sbscrbDe,
B.AUTHOR_CODE as authorCode,
E.AUTHOR_NM as authorCodeTxt,
A.emplyrSttusCode,
A.PART_IDX AS partIdx ,
A.OFCPS_NM AS ofcpsNm,
FXNUM AS fxNum ,
USER_WORK AS userWork,
ROWNUM AS rnum
FROM(
SELECT
ESNTL_ID uniqId,
'USR03' userTy,
EMPLYR_ID userId,
USER_NM userNm,
EMAIL_ADRES emailAdres,
AREA_NO areaNo,
HOUSE_MIDDLE_TELNO middleTelno,
HOUSE_END_TELNO endTelno,
MBTLNUM moblphonNo,
GROUP_ID groupId,
EMPLYR_STTUS_CODE sttus,
OFFM_TELNO offmTelno,
SBSCRB_DE sbscrbDe,
C.EMPLYR_STTUS_CODE AS emplyrSttusCode,
PART_IDX,
OFCPS_NM,
FXNUM ,
USER_WORK
FROM LETTNEMPLYRINFO C
WHERE 1=1
<isNotEmpty property="emplyrSttusCode">
AND C.EMPLYR_STTUS_CODE = #emplyrSttusCode#
</isNotEmpty>
) A LEFT JOIN LETTNEMPLYRSCRTYESTBS B ON A.uniqId = B.SCRTY_DTRMN_TRGET_ID
LEFT JOIN LETTNAUTHORINFO E ON B.AUTHOR_CODE = E.AUTHOR_CODE
<![CDATA[
WHERE ROWNUM <= (#firstIndex# + #recordCountPerPage#)
]]>
<isNotEqual prepend="AND" property="sbscrbSttus" compareValue="0">
sttus = #sbscrbSttus#
</isNotEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="0">
userId LIKE CONCAT('%',#searchKeyword#,'%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
userNm LIKE CONCAT('%',#searchKeyword#,'%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="">
( userNm LIKE CONCAT('%',#searchKeyword#,'%') OR userId LIKE CONCAT('%',#searchKeyword#,'%'))
</isEqual>
<isNotEmpty property="searchConditionSite">
AND A.siteId = #searchConditionSite#
</isNotEmpty>
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
)
WHERE rnum > #firstIndex#
/* userManageDAO.selectUserList_S */
SELECT
COUNT(uniqId) OVER() AS "totCnt"
, uniqId AS "uniqId"
, userTy AS "userTy"
, userId AS "userId"
, userNm AS "userNm"
, emailAdres AS "emailAdres"
, areaNo AS "areaNo"
, middleTelno AS "middleTelno"
, endTelno AS "endTelno"
, moblphonNo AS "moblphonNo"
, groupId AS "groupId"
, sttus AS "sttus"
, offmTelno AS "offmTelno"
, TO_CHAR(sbscrbDe, 'YYYY-MM-DD') AS "sbscrbDe"
, B.AUTHOR_CODE as "authorCode"
, E.AUTHOR_NM as "authorCodeTxt"
, A.emplyrSttusCode AS "emplyrSttusCode"
, F.CODE_NM as "emplyrSttusCodeTxt"
, A.PART_IDX AS "partIdx"
, G.LOC_NM AS "partIdxTxt"
, A.OFCPS_NM AS "ofcpsNm"
, FXNUM AS "fxNum"
, USER_WORK AS "userWork"
FROM(
SELECT
ESNTL_ID uniqId,
'USR03' userTy,
EMPLYR_ID userId,
USER_NM userNm,
EMAIL_ADRES emailAdres,
AREA_NO areaNo,
HOUSE_MIDDLE_TELNO middleTelno,
HOUSE_END_TELNO endTelno,
MBTLNUM moblphonNo,
GROUP_ID groupId,
EMPLYR_STTUS_CODE sttus,
OFFM_TELNO offmTelno,
SBSCRB_DE sbscrbDe,
C.EMPLYR_STTUS_CODE AS emplyrSttusCode,
PART_IDX,
OFCPS_NM,
FXNUM ,
USER_WORK
FROM LETTNEMPLYRINFO C
WHERE 1=1
<isNotEmpty property="emplyrSttusCode">
AND C.EMPLYR_STTUS_CODE = #emplyrSttusCode#
</isNotEmpty>
) A LEFT JOIN LETTNEMPLYRSCRTYESTBS B ON A.uniqId = B.SCRTY_DTRMN_TRGET_ID
LEFT JOIN LETTNAUTHORINFO E ON B.AUTHOR_CODE = E.AUTHOR_CODE
LEFT JOIN
( SELECT CODE_NM , CODE FROM LETTCCMMNDETAILCODE WHERE USE_AT = 'Y' /** 회원상태 코드 */
AND CODE_ID = 'COM013'
) F ON A.emplyrSttusCode = F.CODE
LEFT JOIN ITSM_LOC G ON A.PART_IDX = G.LOC_NO
WHERE 1=1
<isNotEqual prepend="AND" property="sbscrbSttus" compareValue="0">
sttus = #sbscrbSttus#
</isNotEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="0">
userId LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
userNm LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="">
( userNm LIKE '%'||#searchKeyword#||'%' OR userId LIKE '%'||#searchKeyword#||'%')
</isEqual>
<isNotEmpty property="searchConditionSite">
AND A.siteId = #searchConditionSite#
</isNotEmpty>
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<select id="userManageDAO.selectUserListTotCnt_S" parameterClass="userSearchVO" resultClass="int">
/* userManageDAO.selectUserListTotCnt_S */
SELECT COUNT(1) totcnt
FROM(
SELECT
@ -146,7 +163,7 @@
<insert id="userManageDAO.insertUser_S">
/* userManageDAO.insertUser_S 운영자 */
INSERT INTO LETTNEMPLYRINFO
(
ESNTL_ID ,
@ -181,7 +198,6 @@
EMPLYR_STTUS_CODE ,
SBSCRB_DE ,
ATCH_FILE_ID ,
<isNotEmpty property="partIdx">
PART_IDX ,
</isNotEmpty>
@ -202,8 +218,7 @@
]]>
</isEqual>
</isNotEmpty>
CRTFC_DN_VALUE,
LOGIN_TYPE_CD )
CRTFC_DN_VALUE )
VALUES (
#uniqId# ,
#emplyrId# ,
@ -230,8 +245,7 @@
#orgnztId# ,
#insttCode# ,
#emplyrSttusCode# ,
NOW() ,
#atchFileId# ,
SYSDATE ,
<isNotEmpty property="partIdx">
#partIdx# ,
</isNotEmpty>
@ -242,8 +256,7 @@
#snsId# ,
#snsEmail# ,
</isNotEmpty>
#subDn#,
#loginTypeCd# )
#subDn# )
</insert>
<!-- <insert id="userManageDAO.insertUser_GNR">
@ -269,7 +282,7 @@
, 'Y'
, #moblphonNo#
, NULL
, NOW()
, SYSDATE
, #uniqId#
, NULL
, #mberSeq#
@ -277,6 +290,7 @@
)
</insert> -->
<insert id="userManageDAO.insertUser_GNR">
/* userManageDAO.insertUser_GNR 일반사용자 */
INSERT
INTO lettngnrlmber
(
@ -290,7 +304,6 @@
esntl_id,
dept,
mber_seq,
atch_file_id,
frst_regist_pnttm,
last_updt_pnttm
)
@ -302,13 +315,12 @@
, #emplyrSttusCode#
, #moblphonNo#
, NULL
, NOW()
, SYSDATE
, #uniqId#
, NULL
, #mberSeq#
, #atchFileId#
, NOW()
, NOW()
, SYSDATE
, SYSDATE
)
</insert>
@ -321,6 +333,7 @@
</delete>
<select id="userManageDAO.selectUser_S" resultClass="userVO">
/* userManageDAO.selectUser_S */
<![CDATA[
SELECT
ESNTL_ID uniqId ,
@ -353,10 +366,8 @@
CRTFC_DN_VALUE subDn ,
PART_IDX partIdx ,
AUTHOR_CODE authorCode ,
ATCH_FILE_ID atchFileId,
C.CODE_NM as emplyrSttusCodeTxt,
USER_WORK AS userWork,
login_type_cd AS loginTypeCd
USER_WORK AS userWork
FROM LETTNEMPLYRINFO A LEFT JOIN
LETTNEMPLYRSCRTYESTBS B ON A.ESNTL_ID = B.SCRTY_DTRMN_TRGET_ID
LEFT JOIN
@ -367,13 +378,6 @@
]]>
</select>
<select id="userManageDAO.selectUser_Court" parameterClass="userVO" resultClass="int">
SELECT COUNT(1)
FROM lettnemplyrinfo a
WHERE a.pstinst_code = #insttCode#
AND a.esntl_id != #uniqId#
</select>
<update id="userManageDAO.updateUser_S">
UPDATE LETTNEMPLYRINFO
SET EMPLYR_ID = #emplyrId# ,
@ -435,12 +439,7 @@
ORGNZT_ID = #orgnztId# ,
</isNotNull>
<isNotNull property="insttCode">
<isEqual property="insttCode" compareValue="00">
PSTINST_CODE = null ,
</isEqual>
<isNotEqual property="insttCode" compareValue="00">
PSTINST_CODE = #insttCode# ,
</isNotEqual>
PSTINST_CODE = #insttCode# ,
</isNotNull>
<isNotNull property="emplyrSttusCode">
EMPLYR_STTUS_CODE = #emplyrSttusCode# ,
@ -454,11 +453,7 @@
<isNotNull property="userWork">
USER_WORK = #userWork# ,
</isNotNull>
<isNotNull property="atchFileId">
ATCH_FILE_ID = #atchFileId# ,
</isNotNull>
USER_NM = #emplyrNm# ,
LOGIN_TYPE_CD = #loginTypeCd#
USER_NM = #emplyrNm#
WHERE ESNTL_ID = #uniqId#
</update>
@ -506,13 +501,14 @@
PSTINST_CODE ,
EMPLYR_STTUS_CODE ,
ESNTL_ID ,
now()
SYSDATE
FROM LETTNEMPLYRINFO
WHERE ESNTL_ID = #uniqId#
]]>
</insert>
<select id="userManageDAO.checkIdDplct_S" resultClass="int">
/* userManageDAO.checkIdDplct_S */
<![CDATA[
SELECT COUNT(1) usedCnt
FROM(
@ -529,6 +525,7 @@
</select>
<select id="userManageDAO.selectUserIdAjax" parameterClass="userVO" resultClass="userVO">
/* userManageDAO.selectUserIdAjax */
SELECT
EMPLYR_ID AS emplyrId
FROM
@ -540,6 +537,7 @@
</select>
<select id="userManageDAO.selectUserPWAjax" parameterClass="userVO" resultClass="int">
/* userManageDAO.selectUserPWAjax */
SELECT
count(*)
FROM
@ -571,6 +569,7 @@
</update>
<select id="userManageDAO.selectPassword_S" resultClass="userVO">
/* userManageDAO.selectPassword_S */
<![CDATA[
SELECT
PASSWORD password
@ -632,7 +631,7 @@
#emailYN#,
#smsYN#,
#photofileId#,
NOW() )
SYSDATE )
]]>
</insert>
@ -700,7 +699,7 @@
#emailYN#,
#smsYN#,
#photofileId#,
now()
SYSDATE
)
</update>
@ -786,7 +785,7 @@
#snsId# ,
#snsEmail# ,
</isNotEmpty>
now()
SYSDATE
)
</update>
@ -820,6 +819,7 @@
</update>
<select id="userManageDAO.selectRecentSearchWord" parameterClass="userVO" resultClass="userVO">
/* userManageDAO.selectRecentSearchWord */
SELECT
SEARCH_WORD AS searchWord
FROM
@ -878,10 +878,70 @@
</insert>
<select id="userManageDAO.selectKccadrUser" parameterClass="userVO" resultClass="userVO">
/* userManageDAO.selectKccadrUser */
SELECT a.mber_id AS emplyrId,
a.mber_seq AS mberSeq,
a.password AS password
FROM lettngnrlmber A
WHERE a.mber_seq = #mberSeq#
</select>
<update id="userManageDAO.updateUserNm" parameterClass="userVO" >
UPDATE
LETTNGNRLMBER
SET
MBER_NM = #emplyrNm#
WHERE
MBER_SEQ = #mberSeq#
</update>
<select id="userManageDAO.selectOffeduUser" parameterClass="userVO" resultClass="userVO">
/* 임시.*NOT_SQL_LOG.* userManageDAO.selectOffeduUser */
SELECT a.mber_id AS mberId,
a.esntl_Id AS esntlId
FROM lettngnrlmber a
WHERE a.mber_id = #mberId#
</select>
<insert id="userManageDAO.insertOffeduUser" parameterClass="userVO">
/* 임시.*NOT_SQL_LOG.* userManageDAO.insertOffeduUser */
INSERT
INTO lettngnrlmber
(
mber_id,
password,
mber_sttus,
sbscrb_de,
esntl_id,
frst_regist_pnttm,
last_updt_pnttm
)
VALUES
(
#mberId#,
#password#,
#emplyrSttusCode#,
SYSDATE,
#uniqId#,
SYSDATE,
SYSDATE
)
</insert>
<select id="userManageDAO.selectOffeduUserList" parameterClass="userVO" resultClass="userVO">
/* 임시.*NOT_SQL_LOG.* userManageDAO.selectOffeduUserList */
SELECT COUNT(mber_id) OVER() AS totCnt
, a.mber_id AS mberId
, a.esntl_id AS esntlId
FROM lettngnrlmber a
WHERE 1=1
<isNotEmpty property="searchWord" prepend="AND">
a.mber_id LIKE '%'||#searchWord#||'%'
OR
a.esntl_id LIKE '%'||#searchWord#||'%'
</isNotEmpty>
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
</sqlMap>

View File

@ -0,0 +1,947 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="User">
<typeAlias alias="egovMap" type = "egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="userSearchVO" type = "kcc.let.uss.umt.service.UserDefaultVO"/>
<typeAlias alias="userVO" type = "kcc.let.uss.umt.service.UserManageVO"/>
<typeAlias alias="mberVO" type = "kcc.let.uss.umt.service.MberManageVO"/>
<typeAlias alias="siteManagerVO" type = "kcc.let.sym.site.service.SiteManagerVO"/>
<select id="userManageDAO.selectUserCount" resultClass="userSearchVO">
/* userManageDAO.selectUserCount */
SELECT
(SELECT COUNT(EMPLYR_ID) FROM LETTNEMPLYRINFO WHERE 1=1) as userTotailCount,
(SELECT COUNT(EMPLYR_ID) FROM LETTNEMPLYRINFO WHERE 1=1 AND EMPLYR_STTUS_CODE = 'A') as userNewCount,
(SELECT COUNT(EMPLYR_ID) FROM LETTNEMPLYRINFO WHERE 1=1 AND EMPLYR_STTUS_CODE = 'D') as userDeleteCount,
(SELECT COUNT(EMPLYR_ID) FROM LETTNEMPLYRINFO WHERE 1=1 AND EMPLYR_STTUS_CODE = 'B') as userNewBlock
</select>
<select id="userManageDAO.selectUserList_S" parameterClass="userSearchVO" resultClass="egovMap">
/* userManageDAO.selectUserList_S */
SELECT
COUNT(uniqId) OVER() AS "totCnt"
, uniqId AS "uniqId"
, userTy AS "userTy"
, userId AS "userId"
, userNm AS "userNm"
, emailAdres AS "emailAdres"
, areaNo AS "areaNo"
, middleTelno AS "middleTelno"
, endTelno AS "endTelno"
, moblphonNo AS "moblphonNo"
, groupId AS "groupId"
, sttus AS "sttus"
, offmTelno AS "offmTelno"
, TO_CHAR(sbscrbDe, 'YYYY-MM-DD') AS "sbscrbDe"
, B.AUTHOR_CODE as "authorCode"
, E.AUTHOR_NM as "authorCodeTxt"
, A.emplyrSttusCode AS "emplyrSttusCode"
, F.CODE_NM as "emplyrSttusCodeTxt"
, A.PART_IDX AS "partIdx"
, G.LOC_NM AS "partIdxTxt"
, A.OFCPS_NM AS "ofcpsNm"
, FXNUM AS "fxNum"
, USER_WORK AS "userWork"
FROM(
SELECT
ESNTL_ID uniqId,
'USR03' userTy,
EMPLYR_ID userId,
USER_NM userNm,
EMAIL_ADRES emailAdres,
AREA_NO areaNo,
HOUSE_MIDDLE_TELNO middleTelno,
HOUSE_END_TELNO endTelno,
MBTLNUM moblphonNo,
GROUP_ID groupId,
EMPLYR_STTUS_CODE sttus,
OFFM_TELNO offmTelno,
SBSCRB_DE sbscrbDe,
C.EMPLYR_STTUS_CODE AS emplyrSttusCode,
PART_IDX,
OFCPS_NM,
FXNUM ,
USER_WORK
FROM LETTNEMPLYRINFO C
WHERE 1=1
<isNotEmpty property="emplyrSttusCode">
AND C.EMPLYR_STTUS_CODE = #emplyrSttusCode#
</isNotEmpty>
) A LEFT JOIN LETTNEMPLYRSCRTYESTBS B ON A.uniqId = B.SCRTY_DTRMN_TRGET_ID
LEFT JOIN LETTNAUTHORINFO E ON B.AUTHOR_CODE = E.AUTHOR_CODE
LEFT JOIN
( SELECT CODE_NM , CODE FROM LETTCCMMNDETAILCODE WHERE USE_AT = 'Y' /** 회원상태 코드 */
AND CODE_ID = 'COM013'
) F ON A.emplyrSttusCode = F.CODE
LEFT JOIN ITSM_LOC G ON A.PART_IDX = G.LOC_NO
WHERE 1=1
<isNotEqual prepend="AND" property="sbscrbSttus" compareValue="0">
sttus = #sbscrbSttus#
</isNotEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="0">
userId LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
userNm LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="">
( userNm LIKE '%'||#searchKeyword#||'%' OR userId LIKE '%'||#searchKeyword#||'%')
</isEqual>
<isNotEmpty property="searchConditionSite">
AND A.siteId = #searchConditionSite#
</isNotEmpty>
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<select id="userManageDAO.selectUserListTotCnt_S" parameterClass="userSearchVO" resultClass="int">
/* userManageDAO.selectUserListTotCnt_S */
SELECT COUNT(1) totcnt
FROM(
SELECT
ESNTL_ID uniqId,
'USR03' userTy,
EMPLYR_ID userId,
USER_NM userNm,
EMAIL_ADRES emailAdres,
AREA_NO areaNo,
HOUSE_MIDDLE_TELNO middleTelno,
HOUSE_END_TELNO endTelno,
MBTLNUM moblphonNo,
GROUP_ID groupId,
EMPLYR_STTUS_CODE sttus,
SBSCRB_DE sbscrbDe
FROM LETTNEMPLYRINFO
) A
LEFT JOIN
LETTNEMPLYRSCRTYESTBS B
ON A.uniqId = B.SCRTY_DTRMN_TRGET_ID
WHERE 1=1
<isNotEqual prepend="AND" property="sbscrbSttus" compareValue="0">
sttus = #sbscrbSttus#
</isNotEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="0">
userId LIKE CONCAT('%',#searchKeyword#,'%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
userNm LIKE CONCAT('%',#searchKeyword#,'%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="">
( userNm LIKE CONCAT('%',#searchKeyword#,'%') OR userId LIKE CONCAT('%',#searchKeyword#,'%'))
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="S">
A.siteId IN
( SELECT SITE_ID FROM SITEMANAGER
WHERE SITE_NM LIKE CONCAT('%',#searchKeyword#,'%')
)
</isEqual>
<isNotEmpty property="searchConditionSite">
AND A.siteId = #searchConditionSite#
</isNotEmpty>
<isNotEqual prepend="AND" property="adminYn" compareValue="N">
B.AUTHOR_CODE != 'ROLE_GNRL_USER'
</isNotEqual>
<isEqual prepend="AND" property="adminYn" compareValue="N">
B.AUTHOR_CODE = 'ROLE_GNRL_USER'
</isEqual>
</select>
<insert id="userManageDAO.insertUser_S">
/* userManageDAO.insertUser_S 운영자 */
INSERT INTO LETTNEMPLYRINFO
(
ESNTL_ID ,
EMPLYR_ID ,
USER_NM ,
PASSWORD ,
PASSWORD_HINT ,
PASSWORD_CNSR ,
EMPL_NO ,
IHIDNUM ,
SEXDSTN_CODE ,
BRTHDY ,
AREA_NO ,
HOUSE_MIDDLE_TELNO ,
HOUSE_END_TELNO ,
FXNUM ,
HOUSE_ADRES ,
DETAIL_ADRES ,
ZIP ,
OFFM_TELNO ,
MBTLNUM ,
EMAIL_ADRES ,
OFCPS_NM ,
GROUP_ID ,
ORGNZT_ID ,
PSTINST_CODE ,
EMPLYR_STTUS_CODE ,
SBSCRB_DE ,
<isNotEmpty property="partIdx">
PART_IDX ,
</isNotEmpty>
<isNotEmpty property="userWork">
USER_WORK ,
</isNotEmpty>
<isNotEmpty property="snsSite">
<isEqual property="snsSite" compareValue="kakao">
<![CDATA[
KAKAO_ID ,
KAKAO_EMAIL ,
]]>
</isEqual>
<isEqual property="snsSite" compareValue="naver">
<![CDATA[
NAVER_ID,
NAVER_EMAIL,
]]>
</isEqual>
</isNotEmpty>
CRTFC_DN_VALUE )
VALUES (
#uniqId# ,
#emplyrId# ,
#emplyrNm# ,
#password# ,
#passwordHint# ,
#passwordCnsr# ,
#emplNo# ,
#ihidnum# ,
#sexdstnCode# ,
#brth# ,
#areaNo# ,
#homemiddleTelno# ,
#homeendTelno# ,
#fxnum# ,
#homeadres# ,
#detailAdres# ,
#zip# ,
#offmTelno# ,
#moblphonNo# ,
#emailAdres# ,
#ofcpsNm# ,
#groupId# ,
#orgnztId# ,
#insttCode# ,
#emplyrSttusCode# ,
SYSDATE ,
<isNotEmpty property="partIdx">
#partIdx# ,
</isNotEmpty>
<isNotEmpty property="userWork">
#userWork# ,
</isNotEmpty>
<isNotEmpty property="snsSite">
#snsId# ,
#snsEmail# ,
</isNotEmpty>
#subDn# )
</insert>
<!-- <insert id="userManageDAO.insertUser_GNR">
INSERT
INTO lettngnrlmber
(
mber_id,
password,
mber_nm,
mber_sttus,
mbtlnum,
group_id,
sbscrb_de,
esntl_id,
dept,
mber_seq
)
VALUES
(
#emplyrId#
, '1'
, #emplyrNm#
, 'Y'
, #moblphonNo#
, NULL
, SYSDATE
, #uniqId#
, NULL
, #mberSeq#
)
</insert> -->
<insert id="userManageDAO.insertUser_GNR">
/* userManageDAO.insertUser_GNR 일반사용자 */
INSERT
INTO lettngnrlmber
(
mber_id,
password,
mber_nm,
mber_sttus,
mbtlnum,
group_id,
sbscrb_de,
esntl_id,
dept,
mber_seq,
frst_regist_pnttm,
last_updt_pnttm
)
VALUES
(
#uniqId#
, '1'
, #emplyrNm#
, #emplyrSttusCode#
, #moblphonNo#
, NULL
, SYSDATE
, #uniqId#
, NULL
, #mberSeq#
, SYSDATE
, SYSDATE
)
</insert>
<delete id="userManageDAO.deleteUser_S">
<![CDATA[
DELETE FROM LETTNEMPLYRINFO
WHERE ESNTL_ID=#delId#
]]>
</delete>
<select id="userManageDAO.selectUser_S" resultClass="userVO">
/* userManageDAO.selectUser_S */
<![CDATA[
SELECT
ESNTL_ID uniqId ,
'USR03' userTy,
EMPLYR_ID emplyrId ,
USER_NM emplyrNm ,
PASSWORD password ,
PASSWORD_HINT passwordHint ,
PASSWORD_CNSR passwordCnsr ,
EMPL_NO emplNo ,
IHIDNUM ihidnum ,
SEXDSTN_CODE sexdstnCode ,
BRTHDY brth ,
AREA_NO areaNo ,
HOUSE_MIDDLE_TELNO homemiddleTelno ,
HOUSE_END_TELNO homeendTelno ,
FXNUM fxnum ,
HOUSE_ADRES homeadres ,
DETAIL_ADRES detailAdres ,
ZIP zip ,
OFFM_TELNO offmTelno ,
MBTLNUM moblphonNo ,
EMAIL_ADRES emailAdres ,
OFCPS_NM ofcpsNm ,
GROUP_ID groupId ,
ORGNZT_ID orgnztId ,
PSTINST_CODE insttCode ,
EMPLYR_STTUS_CODE emplyrSttusCode ,
SBSCRB_DE sbscrbDe ,
CRTFC_DN_VALUE subDn ,
PART_IDX partIdx ,
AUTHOR_CODE authorCode ,
C.CODE_NM as emplyrSttusCodeTxt,
USER_WORK AS userWork
FROM LETTNEMPLYRINFO A LEFT JOIN
LETTNEMPLYRSCRTYESTBS B ON A.ESNTL_ID = B.SCRTY_DTRMN_TRGET_ID
LEFT JOIN
( SELECT CODE_NM , CODE FROM LETTCCMMNDETAILCODE WHERE USE_AT = 'Y'
AND CODE_ID = 'COM013'
) C ON A.EMPLYR_STTUS_CODE = C.CODE
WHERE ESNTL_ID=#uniqId#
]]>
</select>
<update id="userManageDAO.updateUser_S">
UPDATE LETTNEMPLYRINFO
SET EMPLYR_ID = #emplyrId# ,
<isNotNull property="passwordHint">
PASSWORD_HINT = #passwordHint# ,
</isNotNull>
<isNotNull property="emplyrSttusCode">
PASSWORD_CNSR = #passwordCnsr# ,
</isNotNull>
<isNotNull property="emplNo">
EMPL_NO = #emplNo# ,
</isNotNull>
<isNotNull property="ihidnum">
IHIDNUM = #ihidnum# ,
</isNotNull>
<isNotNull property="sexdstnCode">
SEXDSTN_CODE = #sexdstnCode# ,
</isNotNull>
<isNotNull property="brth">
BRTHDY = #brth# ,
</isNotNull>
<isNotNull property="areaNo">
AREA_NO = #areaNo# ,
</isNotNull>
<isNotNull property="homemiddleTelno">
HOUSE_MIDDLE_TELNO = #homemiddleTelno# ,
</isNotNull>
<isNotNull property="homeendTelno">
HOUSE_END_TELNO = #homeendTelno# ,
</isNotNull>
<isNotNull property="fxnum">
FXNUM = #fxnum# ,
</isNotNull>
<isNotNull property="homeadres">
HOUSE_ADRES = #homeadres# ,
</isNotNull>
<isNotNull property="detailAdres">
DETAIL_ADRES = #detailAdres# ,
</isNotNull>
<isNotNull property="zip">
ZIP = #zip# ,
</isNotNull>
<isNotNull property="offmTelno">
OFFM_TELNO = #offmTelno# ,
</isNotNull>
<isNotNull property="moblphonNo">
MBTLNUM = #moblphonNo# ,
</isNotNull>
<isNotNull property="emailAdres">
EMAIL_ADRES = #emailAdres# ,
</isNotNull>
<isNotNull property="ofcpsNm">
OFCPS_NM = #ofcpsNm# ,
</isNotNull>
<isNotNull property="groupId">
GROUP_ID = #groupId# ,
</isNotNull>
<isNotNull property="orgnztId">
ORGNZT_ID = #orgnztId# ,
</isNotNull>
<isNotNull property="insttCode">
PSTINST_CODE = #insttCode# ,
</isNotNull>
<isNotNull property="emplyrSttusCode">
EMPLYR_STTUS_CODE = #emplyrSttusCode# ,
</isNotNull>
<isNotNull property="partIdx">
PART_IDX = #partIdx# ,
</isNotNull>
<isNotNull property="subDn">
CRTFC_DN_VALUE = #subDn# ,
</isNotNull>
<isNotNull property="userWork">
USER_WORK = #userWork# ,
</isNotNull>
USER_NM = #emplyrNm#
WHERE ESNTL_ID = #uniqId#
</update>
<insert id="userManageDAO.insertUserHistory_S">
<![CDATA[
INSERT INTO LETTHEMPLYRINFOCHANGEDTLS
( EMPLYR_ID ,
EMPL_NO ,
SEXDSTN_CODE ,
BRTHDY ,
AREA_NO ,
HOUSE_MIDDLE_TELNO ,
HOUSE_END_TELNO ,
FXNUM ,
HOUSE_ADRES ,
DETAIL_ADRES ,
ZIP ,
OFFM_TELNO ,
MBTLNUM ,
EMAIL_ADRES ,
GROUP_ID ,
ORGNZT_ID ,
PSTINST_CODE ,
EMPLYR_STTUS_CODE ,
ESNTL_ID ,
CHANGE_DE )
SELECT
EMPLYR_ID ,
EMPL_NO ,
SEXDSTN_CODE ,
BRTHDY ,
AREA_NO ,
HOUSE_MIDDLE_TELNO ,
HOUSE_END_TELNO ,
FXNUM ,
HOUSE_ADRES ,
DETAIL_ADRES ,
ZIP ,
OFFM_TELNO ,
MBTLNUM ,
EMAIL_ADRES ,
GROUP_ID ,
ORGNZT_ID ,
PSTINST_CODE ,
EMPLYR_STTUS_CODE ,
ESNTL_ID ,
SYSDATE
FROM LETTNEMPLYRINFO
WHERE ESNTL_ID = #uniqId#
]]>
</insert>
<select id="userManageDAO.checkIdDplct_S" resultClass="int">
/* userManageDAO.checkIdDplct_S */
<![CDATA[
SELECT COUNT(1) usedCnt
FROM(
SELECT
EMPLYR_ID userId
FROM LETTNEMPLYRINFO
UNION ALL
SELECT
MBER_ID userId
FROM LETTNGNRLMBER
) A
WHERE userId = #checkId#
]]>
</select>
<select id="userManageDAO.selectUserIdAjax" parameterClass="userVO" resultClass="userVO">
/* userManageDAO.selectUserIdAjax */
SELECT
EMPLYR_ID AS emplyrId
FROM
LETTNEMPLYRINFO
WHERE
USER_NM = #emplyrNm#
AND
EMAIL_ADRES = #emailAdres#
</select>
<select id="userManageDAO.selectUserPWAjax" parameterClass="userVO" resultClass="int">
/* userManageDAO.selectUserPWAjax */
SELECT
count(*)
FROM
LETTNEMPLYRINFO
WHERE
EMPLYR_ID = #emplyrId#
AND
EMAIL_ADRES = #emailAdres#
</select>
<update id="userManageDAO.updateUserPWAjax" parameterClass="userVO">
UPDATE
LETTNEMPLYRINFO
SET
PASSWORD = #password#
WHERE
EMPLYR_ID = #emplyrId#
AND
EMAIL_ADRES = #emailAdres#
</update>
<update id="userManageDAO.updatePassword_S">
<![CDATA[
UPDATE LETTNEMPLYRINFO
SET
PASSWORD = #password#
WHERE ESNTL_ID = #uniqId#
]]>
</update>
<select id="userManageDAO.selectPassword_S" resultClass="userVO">
/* userManageDAO.selectPassword_S */
<![CDATA[
SELECT
PASSWORD password
FROM LETTNEMPLYRINFO
WHERE ESNTL_ID=#uniqId#
]]>
</select>
<insert id="insertMber_S_Itn">
<![CDATA[
INSERT INTO COMTNGNRLMBER
(
ESNTL_ID ,
MBER_ID ,
MBER_NM ,
PASSWORD ,
PASSWORD_HINT ,
PASSWORD_CNSR ,
IHIDNUM ,
SEXDSTN_CODE ,
ZIP ,
ADRES ,
AREA_NO ,
MBER_STTUS ,
DETAIL_ADRES ,
END_TELNO ,
MBTLNUM ,
GROUP_ID ,
MBER_FXNUM ,
MBER_EMAIL_ADRES ,
MIDDLE_TELNO ,
BIRTH_DAY ,
EMAIL_YN ,
SMS_YN ,
PHOTOFILE_ID ,
SBSCRB_DE )
VALUES(
#uniqId#,
#mberId#,
#mberNm#,
#password#,
#passwordHint#,
#passwordCnsr#,
#ihidnum#,
#sexdstnCode#,
#zip#,
#adres#,
#areaNo#,
#mberSttus#,
#detailAdres#,
#endTelno#,
#moblphonNo#,
#groupId#,
#mberFxnum#,
#mberEmailAdres#,
#middleTelno#,
#birth#,
#emailYN#,
#smsYN#,
#photofileId#,
SYSDATE )
]]>
</insert>
<update id="mberManageDAO.insertMberItn" parameterClass="mberVO" >
INSERT
INTO LETTNGNRLMBER
(
ESNTL_ID ,
MBER_ID ,
MBER_NM ,
PASSWORD ,
PASSWORD_HINT ,
PASSWORD_CNSR ,
IHIDNUM ,
ZIP ,
ADRES ,
AREA_NO ,
MBER_STTUS ,
DETAIL_ADRES ,
END_TELNO ,
MBTLNUM ,
GROUP_ID ,
MBER_FXNUM ,
MBER_EMAIL_ADRES ,
MIDDLE_TELNO ,
SEXDSTN_CODE,
BIRTH_DAY,
EMAIL_YN,
SMS_YN ,
PHOTOFILE_ID,
SBSCRB_DE
)
VALUES
(
#uniqId#,
#mberId#,
#mberNm#,
#password#,
#passwordHint#,
#passwordCnsr#,
#ihidnum#,
#zip#,
#adres#,
#areaNo#,
#mberSttus#,
#detailAdres#,
#endTelno#,
#moblphonNo#,
#groupId#,
#mberFxnum# ,
#mberEmailAdres#,
#middleTelno#,
#sexdstnCode#,
#birth#,
#emailYN#,
#smsYN#,
#photofileId#,
SYSDATE
)
</update>
<update id="mberManageDAO.insertMber" parameterClass="mberVO" >
INSERT
INTO LETTNGNRLMBER
(
ESNTL_ID ,
MBER_ID ,
MBER_NM ,
PASSWORD ,
PASSWORD_HINT ,
PASSWORD_CNSR ,
IHIDNUM ,
ZIP ,
ADRES ,
AREA_NO ,
MBER_STTUS ,
DETAIL_ADRES ,
END_TELNO ,
MBTLNUM ,
GROUP_ID ,
MBER_FXNUM ,
MBER_EMAIL_ADRES ,
MIDDLE_TELNO ,
SEXDSTN_CODE,
BIRTH_DAY,
EMAIL_YN,
SMS_YN ,
PHOTOFILE_ID,
<isNotEmpty property="snsSite">
<isEqual property="snsSite" compareValue="kakao">
<![CDATA[
KAKAO_ID ,
KAKAO_EMAIL ,
]]>
</isEqual>
<isEqual property="snsSite" compareValue="naver">
<![CDATA[
NAVER_ID,
NAVER_EMAIL,
]]>
</isEqual>
</isNotEmpty>
SBSCRB_DE
)
VALUES
(
#uniqId#,
#mberId#,
#mberNm#,
#password#,
#passwordHint#,
#passwordCnsr#,
#ihidnum#,
#zip#,
#adres#,
#areaNo#,
#mberSttus#,
#detailAdres#,
#endTelno#,
#moblphonNo#,
#groupId#,
#mberFxnum# ,
#mberEmailAdres#,
#middleTelno#,
#sexdstnCode#,
#birth#,
#emailYN#,
#smsYN#,
#photofileId#,
<isNotEmpty property="snsSite">
#snsId# ,
#snsEmail# ,
</isNotEmpty>
SYSDATE
)
</update>
<update id="userManageDAO.updateUserSttusCode" parameterClass="userVO">
UPDATE
LETTNEMPLYRINFO
SET
EMPLYR_STTUS_CODE = #emplyrSttusCode#
WHERE
ESNTL_ID = #esntlId#
</update>
<update id="userManageDAO.deleteMemberSchedule" parameterClass="siteManagerVO">
DELETE FROM LETTNEMPLYRINFO
WHERE EMPLYR_STTUS_CODE = 'D'
<isEqual property="idWithdrawCd" compareValue="6">
<![CDATA[
AND WITHDRAW_DE < DATE_ADD(CURDATE(), INTERVAL '-6' MONTH)
]]>
</isEqual>
</update>
<update id="userManageDAO.deleteAdminLogSchedule" parameterClass="siteManagerVO">
DELETE FROM LETTNADMINLOG
WHERE 1=1
<isNotEmpty property="adminlogKpCd">
AND CREAT_DT <![CDATA[ < ]]>
DATE_ADD(CURDATE(), INTERVAL -#adminlogKpCd# MONTH)
</isNotEmpty>
</update>
<select id="userManageDAO.selectRecentSearchWord" parameterClass="userVO" resultClass="userVO">
/* userManageDAO.selectRecentSearchWord */
SELECT
SEARCH_WORD AS searchWord
FROM
TB_RECENT_SEARCH
WHERE
EMPLYR_ID = #emplyrId#
</select>
<update id="userManageDAO.insertUpdateSearchWord" parameterClass="userVO">
INSERT INTO TB_RECENT_SEARCH (EMPLYR_ID, SEARCH_WORD) VALUES (#emplyrId#, #searchWord#)
ON DUPLICATE KEY UPDATE EMPLYR_ID =#emplyrId#, SEARCH_WORD=#searchWord#
</update>
<update id="userManageDAO.updateLocInfo">
UPDATE LOC_INFO
SET USER_NM = #emplyrNm# ,
<isNotNull property="offmTelno">
OFFM_TELNO = #offmTelno# ,
</isNotNull>
<isNotNull property="ofcpsNm">
OFCPS_NM = #ofcpsNm# ,
</isNotNull>
<isNotNull property="partIdx">
</isNotNull>
<isNotNull property="userWork">
USER_WORK = #userWork# ,
</isNotNull>
<isNotNull property="sort">
SORT = #sort# ,
</isNotNull>
PART_IDX = #partIdx#
WHERE LOC_INFO_ID = #locInfoId#
</update>
<insert id="userManageDAO.insertLocInfo">
INSERT
INTO LOC_INFO
(
LOC_INFO_ID,
USER_NM,
OFCPS_NM,
OFFM_TELNO,
PART_IDX,
USER_WORK
)
VALUES
(
#locInfoId#,
#userNm#,
#ofcpsNm#,
#offmTelno#,
#partIdx#,
#userWork#
)
</insert>
<select id="userManageDAO.selectKccadrUser" parameterClass="userVO" resultClass="userVO">
/* userManageDAO.selectKccadrUser */
SELECT a.mber_id AS emplyrId,
a.mber_seq AS mberSeq,
a.password AS password
FROM lettngnrlmber A
WHERE a.mber_seq = #mberSeq#
</select>
<update id="userManageDAO.updateUserNm" parameterClass="userVO" >
UPDATE
LETTNGNRLMBER
SET
MBER_NM = #emplyrNm#
WHERE
MBER_SEQ = #mberSeq#
</update>
<select id="userManageDAO.selectOffeduUser" parameterClass="userVO" resultClass="userVO">
/* 임시.*NOT_SQL_LOG.* userManageDAO.selectOffeduUser */
SELECT a.mber_id AS mberId,
a.esntl_Id AS esntlId
FROM lettngnrlmber a
WHERE a.mber_id = #mberId#
</select>
<insert id="userManageDAO.insertOffeduUser" parameterClass="userVO">
/* 임시.*NOT_SQL_LOG.* userManageDAO.insertOffeduUser */
INSERT
INTO lettngnrlmber
(
mber_id,
password,
mber_sttus,
sbscrb_de,
esntl_id,
frst_regist_pnttm,
last_updt_pnttm
)
VALUES
(
#mberId#,
#password#,
#emplyrSttusCode#,
SYSDATE,
#uniqId#,
SYSDATE,
SYSDATE
)
</insert>
<select id="userManageDAO.selectOffeduUserList" parameterClass="userVO" resultClass="userVO">
/* 임시.*NOT_SQL_LOG.* userManageDAO.selectOffeduUserList */
SELECT COUNT(mber_id) OVER() AS totCnt
, a.mber_id AS mberId
, a.esntl_id AS esntlId
FROM lettngnrlmber a
WHERE 1=1
<isNotEmpty property="searchWord" prepend="AND">
a.mber_id LIKE '%'||#searchWord#||'%'
OR
a.esntl_id LIKE '%'||#searchWord#||'%'
</isNotEmpty>
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
</sqlMap>