<?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="i2c.biz.admin.adminMng.AdminInfoDAO">
    <resultMap id="adminUserVO"     type="i2c.biz.admin.adminMng.vo.AdminUserVO"     />
    
    <parameterMap id="adminUserVO"      type="i2c.biz.admin.adminMng.vo.AdminUserVO"     />
    
   	<select id="selectAdminInfo" parameterMap="adminUserVO" resultMap="adminUserVO">
        /* [i2c.biz.admin.adminMng.AdminInfoDAO.selectAdminInfo] 관리자 정보 */
		SELECT 
         	USR_ID USRID,
         	LOGIN_ID LOGINID,
         	USR_NM USRNM,
         	PHN_NUM PHNNUM,
         	EMAIL EMAIL,
         	TO_CHAR(CASE WHEN passwd_mod_dttm IS NOT NULL THEN TO_DATE(passwd_mod_dttm,'YYYYMMDDHH24MISS') ELSE TO_DATE(crt_dttm,'YYYYMMDDHH24MISS') END, 'YYYY-MM-DD') PASSWDMODDTTM,
			TO_CHAR(CASE WHEN passwd_mod_dttm IS NOT NULL THEN TO_DATE(passwd_mod_dttm,'YYYYMMDDHH24MISS') + #{cdNm} ELSE TO_DATE(crt_dttm,'YYYYMMDDHH24MISS') + #{cdNm} END, 'YYYY-MM-DD') NEXTPASSWDMODDTTM
	   FROM SNS_USER SU
       WHERE
       	USR_ID = #{usrId}
	</select>
	
	<update id="updateAdminPwd" parameterMap="adminUserVO">
        /* [i2c.biz.admin.adminMng.AdminInfoDAO.updateAdminPwd] 비밀번호 변경 */
        UPDATE SNS_USER
        SET
             MOD_DTTM      = TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS')
             , MOD_USR_ID      = #{usrId}     
             <if test='newLoginPasswd != null'>
			, TEMP_PASSWD_YN = 'N'
			, LOGIN_PASSWD = #{newLoginPasswd}
			, PREV_PASSWD = #{loginPasswd}
			, PASSWD_MOD_DTTM = TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS')
			</if>
         WHERE USR_ID = #{usrId}
    </update>
    
    <update id="updateAdminInfo" parameterMap="adminUserVO">
		/* [i2c.biz.admin.adminMng.AdminInfoDAO.updateAdminInfo] 관리자정보 변경 */
		UPDATE SNS_USER SET
			MOD_USR_ID  = #{usrId}
			, MOD_DTTM    = TO_CHAR(SYSDATE, 'YYYYMMDDHH24MISS')
			
			<if test="usrNm != null and usrNm != ''">
			,USR_NM  = #{usrNm}
			</if>
			<if test="email != null and email != ''">
			, EMAIL   = #{email}
			</if>
			<if test="phnNum != null and phnNum != ''">
			, PHN_NUM = #{phnNum}
			</if>
		WHERE
			USR_ID = #{usrId}
	</update>
	
	<select id="selectAdminPwdCycle" parameterType="Map" resultType="i2c.cmm.base.CommonResultMap">
		/* [i2c.biz.admin.adminMng.AdminInfoDAO.selectAdminPwdCycle */
		SELECT
			CD_NM
		FROM
			SNS_COMMON_CODE
		WHERE
			UP_CD = #{up_cd}
			AND CD = #{cd}
	</select>
	
	<update id="updateAdminPwdCycle" parameterType="Map">
		/* [i2c.biz.admin.adminMng.AdminInfoDAO.updateAdminPwdCycle] 비밀번호주기변경처리. */
		UPDATE SNS_COMMON_CODE
			SET CD_NM = #{cd_nm}
		WHERE
			UP_CD = #{up_cd}
			AND CD = #{cd}
	</update>
</mapper>