
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!--
작성자 : takensoft
작성일 : 2024.04.09
내 용 : 접근 제어 관리 관련
-->
<mapper namespace="com.takensoft.cms.accesCtrl.dao.AccesCtrlDAO">
<!--
작성자 : takensoft
작성일 : 2024.04.09
내 용 : 접근 제어 등록
-->
<insert id="save" parameterType="AccesCtrlVO" useGeneratedKeys="true" keyProperty="acsCntrlId">
INSERT INTO acs_cntrl_mng (
cntrl_type
, cntrl_ip
, cntrl_crs
, use_yn
, rgtr
, reg_dt
) VALUES (
#{cntrlType}
, #{cntrlIp}
, #{cntrlCrs}
, 'Y'
, #{rgtr}
, NOW()
)
</insert>
<!--
작성자 : takensoft
작성일 : 2024.04.15
내 용 : 접근 제어 수정
-->
<update id="update" parameterType="AccesCtrlVO">
UPDATE acs_cntrl_mng
SET cntrl_type = #{cntrlType}
, cntrl_ip = #{cntrlIp}
, cntrl_crs = #{cntrlCrs}
, use_yn = #{useYn}
, mdfr = #{mdfr}
, mdfcn_dt = NOW()
WHERE acs_cntrl_id = #{acsCntrlId}
</update>
<sql id="selectAccesCtrl">
SELECT acm.acs_cntrl_id
, acm.cntrl_type
, cm.cd_nm AS cntrl_type_nm
, acm.cntrl_ip
, acm.cntrl_crs
, acm.use_yn
, acm.rgtr
, TO_CHAR(acm.reg_dt, 'YYYY-MM-DD HH24:MI') AS reg_dt
, acm.mdfr
, TO_CHAR(acm.mdfcn_dt, 'YYYY-MM-DD HH24:MI') AS mdfcn_dt
FROM acs_cntrl_mng acm
LEFT JOIN cd_mng cm
ON acm.cntrl_type = cm.cd
</sql>
<sql id="selectRequirement">
<if test="searchText != null and searchText != ''">
<choose>
<when test="searchType != null and searchType != ''">
<if test="searchType == 'ip'">
AND acm.cntrl_ip LIKE '%' || #{searchText} || '%'
</if>
<if test="searchType == 'crs'">
AND acm.cntrl_crs LIKE '%' || #{searchText} || '%'
</if>
</when>
<otherwise>
AND (
acm.cntrl_ip LIKE '%' || #{searchText} || '%'
OR
acm.cntrl_crs LIKE '%' || #{searchText} || '%'
)
</otherwise>
</choose>
</if>
</sql>
<!--
작성자 : takensoft
작성일 : 2024.04.12
내 용 : 접근 제어 조회(관리자 페이지용)
-->
<select id="findAll" parameterType="Pagination" resultType="AccesCtrlVO">
<include refid="selectAccesCtrl" />
WHERE acm.use_yn = 'Y'
<include refid="selectRequirement" />
ORDER BY COALESCE(acm.mdfcn_dt, acm.reg_dt) DESC
LIMIT #{recordSize} OFFSET #{limitStart}
</select>
<!--
작성자 : takensoft
작성일 : 2024.04.18
내 용 : 접근제어 목록 갯수(관리자 페이지용)
-->
<select id="findAllCnt" parameterType="Pagination" resultType="Integer">
SELECT COUNT(acm.acs_cntrl_id)
FROM acs_cntrl_mng acm
WHERE acm.use_yn = 'Y'
<include refid="selectRequirement" />
</select>
<!--
작성자 : takensoft
작성일 : 2024.04.12
내 용 : 접근 제어 조회(시스템용 - 시큐리티 접근 제어)
-->
<select id="findAllAccesCtrlSecurity" parameterType="String" resultType="AccesCtrlVO">
<include refid="selectAccesCtrl" />
WHERE acm.use_yn = 'Y'
AND acm.cntrl_ip = #{ip}
</select>
<!--
작성자 : takensoft
작성일 : 2024.04.12
내 용 : 접근 제어 상세 조회
-->
<select id="findByAccesCtrl" parameterType="Integer" resultType="AccesCtrlVO">
<include refid="selectAccesCtrl" />
WHERE acm.acs_cntrl_id = #{acsCntrlId}
AND acm.use_yn = 'Y'
</select>
</mapper>