<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.i2sema.v2.admin.comm.dao.CommDAO">

	<select id="com.i2sema.v2.admin.comm.dao.CommDAO.listCmpn"
		resultType="java.util.Map">
		<![CDATA[
			/* [com.i2sema.v2.admin.comm.dao.CommDAO.listCmpn] 회사 목록 */
			SELECT			mber_no AS mberNo,
							org_id AS orgId,
							cmpnm AS cmpnNm
			FROM			add_mber_info
			WHERE			(org_id IS NULL OR org_id = '')
		]]>
			<if test="mberNo != null">
				<![CDATA[
					AND mber_no = #{mberNo}
				]]>
			</if>
		<![CDATA[
			GROUP BY 		mber_no, org_id, cmpnm
		]]>
	</select>

	<select id="com.i2sema.v2.admin.comm.dao.CommDAO.listOrg"
		parameterType="java.util.Map" resultType="java.util.Map">
		<![CDATA[
			/* [com.i2sema.v2.admin.comm.dao.CommDAO.listOrg] ORG 목록 */
			SELECT			mber_no AS mberNo,
									org_sid AS orgId,
									usr_nm AS cmpnNm
			FROM			sns_user
			WHERE			org_sid IS NOT NULL
									AND org_sid != ''
									AND mber_no = #{mberNo}
		]]>
			<if test="@org.apache.commons.lang3.StringUtils@isNotEmpty(orgId)">
				<![CDATA[
					AND org_sid = #{orgId}
				]]>
			</if>
		<![CDATA[
			GROUP BY 		mber_no, org_sid, usr_nm
		]]>
	</select>

	<select id="listDepartment" parameterType="map" resultType="map">
		<![CDATA[
			/* [com.i2sema.v2.admin.comm.dao.CommDAO.listDepartment] 부서 리스트 */
			SELECT
				d.seq AS seq,
				d.dept_name AS deptNm,
				d.dept_code AS deptCode,
				d.mt_refkey AS deptKey,
				d.use_at AS useAt,
				u.usr_nm AS usrNm,
				d.org_id AS orgId
			FROM department d
				INNER JOIN sns_user u
					ON d.org_id = u.org_sid
			WHERE 1 = 1
		]]>
		<if test="@org.apache.commons.lang3.StringUtils@isNotEmpty(mberNo)">
			<![CDATA[
				AND d.mber_no = #{mberNo}
			]]>
		</if>
		<if test="@org.apache.commons.lang3.StringUtils@isNotEmpty(orgId)">
			<![CDATA[
				AND d.org_id = #{orgId}
			]]>
		</if>
	</select>
	
	<select id="listDepartmentOrg" parameterType="map" resultType="map">
		<![CDATA[
			/* [com.i2sema.v2.admin.comm.dao.CommDAO.listDepartmentOrg] 부서 Org 리스트 */
			SELECT
				org_sid AS orgId,
				usr_nm AS usrNm
			FROM sns_user
			WHERE mber_no = #{mberNo}
					AND nvl(org_sid, '') <> ''
		]]>
		<if test="@org.apache.commons.lang3.StringUtils@isNotEmpty(orgId)">
			<![CDATA[
				AND org_sid = #{orgId}
			]]>
		</if>
	</select>
	
	<update id="updateDepartment" parameterType="map">
		<![CDATA[
			/* [com.i2sema.v2.admin.comm.dao.CommDAO.updateDepartment] 부서 수정 */
			UPDATE		department
			SET				use_at = #{useAt}
								, dept_name = #{deptNm}
								, dept_code = #{deptCode}
			WHERE seq = #{seq}
		]]>
	</update>
	
	<insert id="insertDepartment" parameterType="map">
		<![CDATA[
			/* [com.i2sema.v2.admin.comm.dao.CommDAO.insertDepartment] 부서 입력 */
			INSERT INTO		department (
				  mber_no
				, org_id
				, mt_refkey
				, dept_name
				, dept_code
				, use_at
			)
			VALUES
			(
				  #{mberNo}
				, #{orgId}
				, #{mtRefKey}
				, #{deptNm}
				, #{deptCode}
				, #{useAt}
			)
		]]>
	</insert>
</mapper>