sql mapper 추가
parent
563c07aba1
commit
43e04de295
@ -0,0 +1,238 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
|
<!-- 업무 사용자 -->
|
||||||
|
<mapper namespace="cokr.xit.base.user.dao.UserMapper">
|
||||||
|
|
||||||
|
<resultMap id="userRow" type="cokr.xit.base.user.ManagedUser">
|
||||||
|
<result property="id" column="USER_ID"/>
|
||||||
|
<result property="account" column="USER_ACNT"/>
|
||||||
|
<result property="name" column="USER_NM"/>
|
||||||
|
<result property="password" column="PASSWD"/>
|
||||||
|
<result property="passwordHint" column="PASSWD_HINT"/>
|
||||||
|
<result property="passwordHintAnswer" column="PASSWD_NSR"/>
|
||||||
|
<result property="empNo" column="EMP_NO"/>
|
||||||
|
<result property="residentRegNo" column="RSDNT_NO"/>
|
||||||
|
<result property="gender" column="GENDER"/>
|
||||||
|
<result property="birthday" column="BRDT"/>
|
||||||
|
<result property="areaNo" column="AREA_NO"/>
|
||||||
|
<result property="zipCode" column="ZIP"/>
|
||||||
|
<result property="address" column="ADDR"/>
|
||||||
|
<result property="addressDetail" column="DADDR"/>
|
||||||
|
<result property="phoneNo" column="TELNO"/>
|
||||||
|
<result property="mobilePhoneNo" column="MBL_TELNO"/>
|
||||||
|
<result property="faxNo" column="FXNO"/>
|
||||||
|
<result property="emailAddress" column="EML_ADRS"/>
|
||||||
|
<result property="positionName" column="POS_NM"/>
|
||||||
|
<result property="groupID" column="GRP_ID"/>
|
||||||
|
<result property="orgID" column="ORG_ID"/>
|
||||||
|
<result property="deptCode" column="DEPT_CD"/>
|
||||||
|
<result property="institute" column="NSTT_CD"/>
|
||||||
|
<result property="certificateDn" column="CRTFC_DN"/>
|
||||||
|
<result property="locked" column="LOCK_YN"/>
|
||||||
|
<result property="lockCount" column="LOCK_CNT"/>
|
||||||
|
<result property="lockedDate" column="LOCK_DT"/>
|
||||||
|
<result property="createdAt" column="REG_DT"/>
|
||||||
|
<result property="createdBy" column="RGTR"/>
|
||||||
|
<result property="lastModified" column="MDFCN_DT"/>
|
||||||
|
<result property="modifiedBy" column="MDFR"/>
|
||||||
|
<result property="useYN" column="USE_YN"/>
|
||||||
|
<result property="status" column="STTS"/>
|
||||||
|
</resultMap>
|
||||||
|
|
||||||
|
<sql id="selectUsers"><include refid="utility.paging-prefix" />
|
||||||
|
SELECT USER_ID
|
||||||
|
, USER_ACNT
|
||||||
|
, USER_NM
|
||||||
|
, PASSWD_HINT
|
||||||
|
, PASSWD_NSR
|
||||||
|
, EMP_NO
|
||||||
|
, RSDNT_NO
|
||||||
|
, GENDER
|
||||||
|
, BRDT
|
||||||
|
, AREA_NO
|
||||||
|
, ZIP
|
||||||
|
, ADDR
|
||||||
|
, DADDR
|
||||||
|
, TELNO
|
||||||
|
, MBL_TELNO
|
||||||
|
, FXNO
|
||||||
|
, EML_ADRS
|
||||||
|
, POS_NM
|
||||||
|
, GRP_ID
|
||||||
|
, ORG_ID
|
||||||
|
, (SELECT SGG_NM FROM TB_SGG WHERE SGG_CD = A.ORG_ID) AS SGG_NM
|
||||||
|
, DEPT_CD
|
||||||
|
, (CASE
|
||||||
|
WHEN A.DEPT_CD = 'default'
|
||||||
|
THEN '기본 부서'
|
||||||
|
ELSE (SELECT DEPT_NM FROM TB_DEPT WHERE DEPT_CD = A.DEPT_CD)
|
||||||
|
END
|
||||||
|
) AS DEPT_NM
|
||||||
|
, NSTT_CD
|
||||||
|
, (CASE
|
||||||
|
WHEN A.NSTT_CD = 'default'
|
||||||
|
THEN '기본 기관'
|
||||||
|
ELSE (SELECT INST_NM FROM TB_SGG WHERE INST_CD = A.NSTT_CD AND SGG_CD = A.ORG_ID)
|
||||||
|
END
|
||||||
|
) AS NSTT_NM
|
||||||
|
, CRTFC_DN
|
||||||
|
, LOCK_YN
|
||||||
|
, LOCK_CNT
|
||||||
|
, LOCK_DT
|
||||||
|
, REG_DT
|
||||||
|
, STTS
|
||||||
|
, (SELECT GET_CODE_NM('CMN004', STTS) FROM DUAL) AS STTS_NM
|
||||||
|
FROM TB_USER A
|
||||||
|
<where><if test="by != null and term != null">AND ${by} LIKE CONCAT('%', #{term}, '%')</if>
|
||||||
|
<if test="userIDs != null">USER_ID IN (<foreach collection="userIDs" item="userID" separator=",">#{userID}</foreach>)</if>
|
||||||
|
<if test="status == null and userIDs == null">AND STTS != 'D'</if>
|
||||||
|
<if test="status != null">AND STTS = #{status}</if></where>
|
||||||
|
<include refid="utility.orderBy" />
|
||||||
|
<include refid="utility.paging-suffix" /></sql>
|
||||||
|
|
||||||
|
<select id="getUserList" parameterType="map" resultType="dataobject">/* 사용자 목록 조회(userMapper.getUserList) */
|
||||||
|
<include refid="selectUsers"/></select>
|
||||||
|
|
||||||
|
<select id="getUsers" parameterType="map" resultMap="userRow">/* 사용자 가져오기(userMapper.getUsers) */
|
||||||
|
<include refid="selectUsers"/></select>
|
||||||
|
|
||||||
|
<select id="getUser" parameterType="map" resultMap="userRow">/* 사용자 계정 가져오기(userMapper.getUser) */
|
||||||
|
SELECT *
|
||||||
|
FROM TB_USER
|
||||||
|
WHERE USER_ACNT = #{account}
|
||||||
|
AND NSTT_CD = #{institute}</select>
|
||||||
|
|
||||||
|
<insert id="insertUser" parameterType="cokr.xit.base.user.ManagedUser">
|
||||||
|
<selectKey resultType="string" keyProperty="id" keyColumn="NEW_ID" order="BEFORE">SELECT LPAD(NVL(MAX(USER_ID) + 1, 1), 10, '0') NEW_ID FROM TB_USER</selectKey>
|
||||||
|
/* 사용자 정보 등록(userMapper.insertUser) */
|
||||||
|
INSERT INTO TB_USER (
|
||||||
|
USER_ID
|
||||||
|
, USER_ACNT
|
||||||
|
, USER_NM
|
||||||
|
, PASSWD
|
||||||
|
, PASSWD_HINT
|
||||||
|
, PASSWD_NSR
|
||||||
|
, EMP_NO
|
||||||
|
, RSDNT_NO
|
||||||
|
, GENDER
|
||||||
|
, BRDT
|
||||||
|
, AREA_NO
|
||||||
|
, ZIP
|
||||||
|
, ADDR
|
||||||
|
, DADDR
|
||||||
|
, TELNO
|
||||||
|
, MBL_TELNO
|
||||||
|
, FXNO
|
||||||
|
, EML_ADRS
|
||||||
|
, POS_NM
|
||||||
|
, GRP_ID
|
||||||
|
, ORG_ID
|
||||||
|
, NSTT_CD
|
||||||
|
, DEPT_CD
|
||||||
|
, CRTFC_DN
|
||||||
|
, LOCK_YN
|
||||||
|
, LOCK_CNT
|
||||||
|
, LOCK_DT
|
||||||
|
, REG_DT
|
||||||
|
, RGTR
|
||||||
|
, MDFCN_DT
|
||||||
|
, MDFR
|
||||||
|
, USE_YN
|
||||||
|
, STTS
|
||||||
|
) VALUES (
|
||||||
|
#{id}
|
||||||
|
, #{account}
|
||||||
|
, #{name}
|
||||||
|
, #{password}
|
||||||
|
, #{passwordHint}
|
||||||
|
, #{passwordHintAnswer}
|
||||||
|
, #{empNo}
|
||||||
|
, #{residentRegNo}
|
||||||
|
, #{gender}
|
||||||
|
, #{birthday}
|
||||||
|
, #{areaNo}
|
||||||
|
, #{zipCode}
|
||||||
|
, #{address}
|
||||||
|
, #{addressDetail}
|
||||||
|
, #{phoneNo}
|
||||||
|
, #{mobilePhoneNo}
|
||||||
|
, #{faxNo}
|
||||||
|
, #{emailAddress}
|
||||||
|
, #{positionName}
|
||||||
|
, #{groupID}
|
||||||
|
, #{orgID}
|
||||||
|
, #{institute}
|
||||||
|
, #{deptCode}
|
||||||
|
, #{certificateDn}
|
||||||
|
, 'N'
|
||||||
|
, 0
|
||||||
|
, NULL
|
||||||
|
,<include refid="utility.now" />
|
||||||
|
, #{createdBy}
|
||||||
|
,<include refid="utility.now" />
|
||||||
|
, #{createdBy}
|
||||||
|
, 'Y'
|
||||||
|
, #{status}
|
||||||
|
)</insert>
|
||||||
|
|
||||||
|
<update id="updateUser" parameterType="cokr.xit.base.user.ManagedUser">/* 사용자 정보 수정(userMapper.updateUser) */
|
||||||
|
UPDATE TB_USER SET
|
||||||
|
USER_NM = #{name}
|
||||||
|
, PASSWD_HINT = #{passwordHint}
|
||||||
|
, PASSWD_NSR = #{passwordHintAnswer}
|
||||||
|
, EMP_NO = #{empNo}
|
||||||
|
, RSDNT_NO = #{residentRegNo}
|
||||||
|
, GENDER = #{gender}
|
||||||
|
, BRDT = #{birthday}
|
||||||
|
, AREA_NO = #{areaNo}
|
||||||
|
, ZIP = #{zipCode}
|
||||||
|
, ADDR = #{address}
|
||||||
|
, DADDR = #{addressDetail}
|
||||||
|
, TELNO = #{phoneNo}
|
||||||
|
, MBL_TELNO = #{mobilePhoneNo}
|
||||||
|
, FXNO = #{faxNo}
|
||||||
|
, EML_ADRS = #{emailAddress}
|
||||||
|
, POS_NM = #{positionName}
|
||||||
|
, GRP_ID = #{groupID}
|
||||||
|
, ORG_ID = #{orgID}
|
||||||
|
, NSTT_CD = #{institute}
|
||||||
|
, DEPT_CD = #{deptCode}
|
||||||
|
, CRTFC_DN = #{certificateDn}
|
||||||
|
, MDFCN_DT =<include refid="utility.now" />
|
||||||
|
, MDFR = #{modifiedBy}
|
||||||
|
WHERE USER_ID = #{id}</update>
|
||||||
|
|
||||||
|
<update id="changePassword" parameterType="map">/* 비밀번호 변경(userMapper.changePassword) */
|
||||||
|
UPDATE TB_USER SET
|
||||||
|
PASSWD = CASE USER_ID<foreach collection="userPasswords" item="userPassword" separator=" ">
|
||||||
|
WHEN #{userPassword.userID} THEN #{userPassword.password}</foreach>
|
||||||
|
ELSE PASSWD END
|
||||||
|
, MDFCN_DT =<include refid="utility.now" />
|
||||||
|
, MDFR = #{currentUser.id}
|
||||||
|
WHERE USER_ID IN (<foreach collection="userIDs" item="userID" separator=",">#{userID}</foreach>)
|
||||||
|
</update>
|
||||||
|
|
||||||
|
<update id="lockUsers" parameterType="map">/* 사용자 잠김 해제(userMapper.lockUsers) */
|
||||||
|
UPDATE TB_USER SET
|
||||||
|
<if test='lock == true'> LOCK_YN = 'Y'
|
||||||
|
, LOCK_CNT = LOCK_CNT + 1
|
||||||
|
, LOCK_DT =<include refid="utility.now" /></if>
|
||||||
|
<if test='lock == false'> LOCK_YN = 'N'
|
||||||
|
, LOCK_CNT = 0
|
||||||
|
, LOCK_DT = NULL</if>
|
||||||
|
, MDFCN_DT =<include refid="utility.now" />
|
||||||
|
, MDFR = #{currentUser.id}
|
||||||
|
WHERE USER_ID IN (<foreach collection="userIDs" item="userID" separator=",">#{userID}</foreach>)
|
||||||
|
</update>
|
||||||
|
|
||||||
|
<update id="setStatus" parameterType="map">/* 사용자 상태 변경(userMapper.setStatus) */
|
||||||
|
UPDATE TB_USER SET
|
||||||
|
STTS = #{status}
|
||||||
|
<if test='"D" == status'>, USE_YN = 'N'</if>
|
||||||
|
, MDFCN_DT =<include refid="utility.now" />
|
||||||
|
, MDFR = #{currentUser.id}
|
||||||
|
WHERE USER_ID IN (<foreach collection="userIDs" item="userID" separator=",">#{userID}</foreach>)
|
||||||
|
AND STTS != #{status}
|
||||||
|
</update>
|
||||||
|
|
||||||
|
</mapper>
|
Loading…
Reference in New Issue