You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
272 lines
13 KiB
XML
272 lines
13 KiB
XML
<?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.fims.rent.dao.UserRentEntMpngMapper">
|
|
|
|
<!-- 사용자 임대 기업 매핑 정보 매퍼
|
|
========== 변경 이력 ==========
|
|
2024-07-24 JoJH 최초 작성
|
|
============================ -->
|
|
|
|
<resultMap id="userRentEntMpngRow" type="cokr.xit.fims.rent.UserRentEntMpng"> <!-- 사용자 임대 기업 매핑 -->
|
|
<result property="mpngId" column="MPNG_ID" /> <!-- 매핑 ID -->
|
|
<result property="userId" column="USER_ID" /> <!-- 사용자 ID -->
|
|
<result property="entId" column="ENT_ID" /> <!-- 기업 ID -->
|
|
<result property="delYn" column="DEL_YN" /> <!-- 삭제 여부 -->
|
|
<result property="createdAt" column="REG_DT" /> <!-- 등록 일시 -->
|
|
<result property="createdBy" column="RGTR" /> <!-- 등록자 -->
|
|
<result property="lastModified" column="MDFCN_DT" /> <!-- 수정 일시 -->
|
|
<result property="modifiedBy" column="MDFR" /> <!-- 수정자 -->
|
|
<result property="removedAt" column="DEL_DT" /> <!-- 삭제 일시 -->
|
|
<result property="removedBy" column="DLTR" /> <!-- 삭제자 -->
|
|
</resultMap>
|
|
|
|
<sql id="select">
|
|
SELECT UREM.MPNG_ID <!-- 매핑 ID -->
|
|
, UREM.USER_ID <!-- 사용자 ID -->
|
|
, UREM.ENT_ID <!-- 기업 ID -->
|
|
, UREM.DEL_YN <!-- 삭제 여부 -->
|
|
, (GET_CODE_NM('CMN007', UREM.DEL_YN)) AS DEL_YN_NM <!-- 삭제 여부 -->
|
|
, UREM.REG_DT <!-- 등록 일시 -->
|
|
, UREM.RGTR <!-- 등록자 -->
|
|
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = UREM.RGTR) AS RGTR_NM <!-- 등록자 -->
|
|
, U.USER_ACNT <!-- 사용자 계정 -->
|
|
, U.USER_NM <!-- 사용자 이름 -->
|
|
, RE.ENT_SE_CD <!-- 기업 구분 코드 -->
|
|
, (GET_CODE_NM('FIM088', RE.ENT_SE_CD)) AS ENT_SE_NM <!-- 기업 구분 -->
|
|
, RE.ENT_NM <!-- 기업 명 -->
|
|
, RE.ENT_REG_NO <!-- 기업 등록 번호 -->
|
|
, RE.RPRSV_NM <!-- 대표자 명 -->
|
|
, RE.ENT_TELNO <!-- 기업 전화번호 -->
|
|
, RE.ENT_MBL_TELNO <!-- 기업 휴대 전화번호 -->
|
|
, RE.ENT_FXNO <!-- 기업 팩스번호 -->
|
|
, RE.ENT_EML_ADDR <!-- 기업 이메일 주소 -->
|
|
, RE.ENT_ZIP <!-- 기업 우편번호 -->
|
|
, RE.ENT_ADDR <!-- 기업 주소 -->
|
|
, RE.ENT_DTL_ADDR <!-- 기업 상세 주소 -->
|
|
FROM TB_USER_RENT_ENT_MPNG UREM
|
|
INNER JOIN TB_USER U ON (UREM.USER_ID = U.USER_ID)
|
|
INNER JOIN TB_RENT_ENT RE ON (UREM.ENT_ID = RE.ENT_ID)
|
|
</sql>
|
|
|
|
<select id="selectUserRentEntMpngList" parameterType="map" resultType="dataobject">/* 사용자 임대 기업 매핑 목록 조회(userRentEntMpngMapper.selectUserRentEntMpngList) */
|
|
<include refid="utility.paging-prefix" />
|
|
<include refid="select" />
|
|
<where>
|
|
<if test="userId != null">
|
|
AND UREM.USER_ID = #{userId} <!-- 사용자 ID -->
|
|
</if>
|
|
<if test="entId != null">
|
|
AND UREM.ENT_ID = #{entId} <!-- 기업 ID -->
|
|
</if>
|
|
AND UREM.DEL_YN = 'N' <!-- 삭제 여부 -->
|
|
</where>
|
|
<include refid="utility.orderBy" />
|
|
<include refid="utility.paging-suffix" />
|
|
</select>
|
|
|
|
<select id="selectUserRentEntMpngs" parameterType="map" resultType="dataobject">/* 사용자 임대 기업 매핑 객체 가져오기(userRentEntMpngMapper.selectUserRentEntMpngs) */
|
|
<include refid="select" />
|
|
<where>
|
|
<if test="mpngId != null">
|
|
AND UREM.MPNG_ID = #{mpngId} <!-- 매핑 ID -->
|
|
</if>
|
|
<if test="userId != null">
|
|
AND UREM.USER_ID = #{userId} <!-- 사용자 ID -->
|
|
</if>
|
|
<if test="entIds != null">
|
|
AND UREM.ENT_ID IN ( <!-- 기업 IDs -->
|
|
<foreach collection="entIds" item="entId" separator=","> #{entId} </foreach>
|
|
)
|
|
</if>
|
|
<if test="entId != null">
|
|
AND UREM.ENT_ID = #{entId} <!-- 기업 ID -->
|
|
</if>
|
|
<choose>
|
|
<when test="delYn != null">
|
|
AND UREM.DEL_YN = #{delYn} <!-- 삭제 여부 -->
|
|
</when>
|
|
<otherwise>
|
|
AND UREM.DEL_YN = 'N' <!-- 삭제 여부 -->
|
|
</otherwise>
|
|
</choose>
|
|
</where>
|
|
<include refid="utility.orderBy" />
|
|
</select>
|
|
|
|
<insert id="insertUserRentEntMpng" parameterType="cokr.xit.fims.rent.UserRentEntMpng">/* 사용자 임대 기업 매핑 등록(userRentEntMpngMapper.insertUserRentEntMpng) */
|
|
<selectKey resultType="string" keyProperty="mpngId" keyColumn="NEW_ID" order="BEFORE">
|
|
<include refid="numbering.key">
|
|
<property name="TABLE_NAME" value="TB_USER_RENT_ENT_MPNG" />
|
|
<property name="TABLE_KEY" value="MPNG_ID" />
|
|
<property name="pad" value="10" />
|
|
</include>
|
|
</selectKey>
|
|
INSERT
|
|
INTO TB_USER_RENT_ENT_MPNG (
|
|
MPNG_ID <!-- 매핑 ID -->
|
|
, USER_ID <!-- 사용자 ID -->
|
|
, ENT_ID <!-- 기업 ID -->
|
|
, DEL_YN <!-- 삭제 여부 -->
|
|
, REG_DT <!-- 등록 일시 -->
|
|
, RGTR <!-- 등록자 -->
|
|
, MDFCN_DT <!-- 수정 일시 -->
|
|
, MDFR <!-- 수정자 -->
|
|
)
|
|
VALUES (
|
|
#{mpngId} <!-- 매핑 ID -->
|
|
, #{userId} <!-- 사용자 ID -->
|
|
, #{entId} <!-- 기업 ID -->
|
|
, 'N' <!-- 삭제 여부 -->
|
|
, <include refid="utility.now" /> <!-- 등록 일시 -->
|
|
, #{createdBy} <!-- 등록자 -->
|
|
, <include refid="utility.now" /> <!-- 수정 일시 -->
|
|
, #{modifiedBy} <!-- 수정자 -->
|
|
)
|
|
</insert>
|
|
|
|
<update id="deleteUserRentEntMpng" parameterType="cokr.xit.fims.rent.UserRentEntMpng">/* 사용자 임대 기업 매핑 삭제(userRentEntMpngMapper.deleteUserRentEntMpng) */
|
|
UPDATE TB_USER_RENT_ENT_MPNG
|
|
SET DEL_YN = 'Y'
|
|
, DEL_DT = <include refid="utility.now" /> <!-- 삭제 일시 -->
|
|
, DLTR = #{modifiedBy} <!-- 삭제자 -->
|
|
<choose>
|
|
<when test="mpngIds != null">
|
|
WHERE MPNG_ID IN ( <!-- 매핑 IDs -->
|
|
<foreach collection="mpngIds" item="mpngId" separator=","> #{mpngId} </foreach>
|
|
)
|
|
</when>
|
|
<otherwise>
|
|
WHERE MPNG_ID = #{mpngId} <!-- 매핑 ID -->
|
|
</otherwise>
|
|
</choose>
|
|
</update>
|
|
|
|
|
|
<select id="selectEnterpriseCarMappingList" parameterType="map" resultType="dataobject">
|
|
/* 사용자 임대 기업 차량 매핑 목록 조회(userRentEntMpngMapper.selectEnterpriseCarMappingList) */
|
|
<include refid="utility.paging-prefix" />
|
|
SELECT REVM.MPNG_ID <!-- 매핑 ID -->
|
|
, UREM.USER_ID <!-- 사용자 ID -->
|
|
, UREM.ENT_ID <!-- 기업 ID -->
|
|
, REVM.DEL_YN <!-- 삭제 여부 -->
|
|
, (GET_CODE_NM('CMN007', REVM.DEL_YN)) AS DEL_YN_NM <!-- 삭제 여부 -->
|
|
, U.USER_ACNT <!-- 사용자 계정 -->
|
|
, U.USER_NM <!-- 사용자 이름 -->
|
|
, RE.ENT_SE_CD <!-- 기업 구분 코드 -->
|
|
, (GET_CODE_NM('FIM088', RE.ENT_SE_CD)) AS ENT_SE_NM <!-- 기업 구분 -->
|
|
, RE.ENT_NM <!-- 기업 명 -->
|
|
, RE.ENT_REG_NO <!-- 기업 등록 번호 -->
|
|
, RE.RPRSV_NM <!-- 대표자 명 -->
|
|
, RE.ENT_TELNO <!-- 기업 전화번호 -->
|
|
, RE.ENT_MBL_TELNO <!-- 기업 휴대 전화번호 -->
|
|
, RE.ENT_FXNO <!-- 기업 팩스번호 -->
|
|
, RE.ENT_EML_ADDR <!-- 기업 이메일 주소 -->
|
|
, RE.ENT_ZIP <!-- 기업 우편번호 -->
|
|
, RE.ENT_ADDR <!-- 기업 주소 -->
|
|
, RE.ENT_DTL_ADDR <!-- 기업 상세 주소 -->
|
|
, REVM.VHRNO <!-- 차량번호 -->
|
|
, REVM.REG_DT <!-- 등록 일시 -->
|
|
, REVM.RGTR <!-- 등록자 -->
|
|
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = REVM.RGTR) AS RGTR_NM <!-- 등록자 명 -->
|
|
FROM TB_USER_RENT_ENT_MPNG UREM
|
|
INNER JOIN TB_USER U ON (UREM.USER_ID = U.USER_ID)
|
|
INNER JOIN TB_RENT_ENT RE ON (UREM.ENT_ID = RE.ENT_ID)
|
|
INNER JOIN TB_RENT_ENT_VHCL_MPNG REVM ON (RE.ENT_ID = REVM.ENT_ID)
|
|
<where>
|
|
AND UREM.DEL_YN = 'N' <!-- 삭제 여부 -->
|
|
AND REVM.DEL_YN = 'N'
|
|
<if test="userId != null">
|
|
AND UREM.USER_ID = #{userId} <!-- 사용자 ID -->
|
|
</if>
|
|
<if test="entId != null">
|
|
AND UREM.ENT_ID = #{entId} <!-- 기업 ID -->
|
|
</if>
|
|
<if test="schEntRegNo != null">
|
|
AND RE.ENT_REG_NO = #{schEntRegNo} <!-- 기업 ID -->
|
|
</if>
|
|
<if test="schVhrno != null">
|
|
AND REVM.VHRNO = #{schVhrno} <!-- 기업 ID -->
|
|
</if>
|
|
<if test="@org.egovframe.rte.fdl.string.EgovStringUtil@isNotEmpty(by) and @org.egovframe.rte.fdl.string.EgovStringUtil@isNotEmpty(term)">
|
|
<choose>
|
|
<when test="mainOption == 'codeValue' or mainOption == 'match' or mainOption == 'ymd'">
|
|
<include refid="dynamicSearch.start" />
|
|
<choose>
|
|
<when test="by == 'userAcnt'">U.USER_ACNT</when>
|
|
<when test="by == 'userNm'">U.USER_NM</when>
|
|
<when test="by == 'entSeCd'">RE.ENT_SE_CD</when>
|
|
<when test="by == 'entNm'">RE.ENT_NM</when>
|
|
<when test="by == 'vhrno'">REVM.VHRNO</when>
|
|
</choose>
|
|
<include refid="dynamicSearch.center" />#{term}<include refid="dynamicSearch.end" />
|
|
</when>
|
|
<otherwise>
|
|
</otherwise>
|
|
</choose>
|
|
</if>
|
|
</where>
|
|
<include refid="utility.orderBy" />
|
|
<include refid="utility.paging-suffix" />
|
|
</select>
|
|
|
|
|
|
<update id="deleteRentEntVhclMpng" parameterType="cokr.xit.fims.rent.RentEntVhclMpng">
|
|
/* 임대 기업 차량 매핑 삭제(userRentEntMpngMapper.deleteRentEntVhclMpng) */
|
|
UPDATE TB_RENT_ENT_VHCL_MPNG
|
|
SET DEL_YN = 'Y'
|
|
, DEL_DT = <include refid="utility.now" /> <!-- 삭제 일시 -->
|
|
, DLTR = #{modifiedBy} <!-- 삭제자 -->
|
|
<choose>
|
|
<when test="mpngIds != null">
|
|
WHERE MPNG_ID IN ( <!-- 매핑 IDs -->
|
|
<foreach collection="mpngIds" item="mpngId" separator=","> #{mpngId} </foreach>
|
|
)
|
|
</when>
|
|
<otherwise>
|
|
WHERE MPNG_ID = #{mpngId} <!-- 매핑 ID -->
|
|
</otherwise>
|
|
</choose>
|
|
</update>
|
|
|
|
<select id="countRentEntVhclMpngInfo" parameterType="cokr.xit.fims.rent.RentEntVhclMpng" resultType="int">
|
|
/* 임대 기업 차량 매핑 중복 확인(userRentEntMpngMapper.countRentEntVhclMpngInfo) */
|
|
SELECT COUNT(*)
|
|
FROM TB_RENT_ENT_VHCL_MPNG
|
|
WHERE ENT_ID = #{entId}
|
|
AND VHRNO = #{vhrno}
|
|
AND DEL_YN = 'N'
|
|
</select>
|
|
|
|
<insert id="createRentEntVhclMpng" parameterType="cokr.xit.fims.rent.RentEntVhclMpng">
|
|
/* 임대 기업 차량 매핑 등록(userRentEntMpngMapper.createRentEntVhclMpng) */
|
|
<selectKey resultType="string" keyProperty="mpngId" keyColumn="NEW_ID" order="BEFORE">
|
|
<include refid="numbering.key">
|
|
<property name="TABLE_NAME" value="TB_RENT_ENT_VHCL_MPNG" />
|
|
<property name="TABLE_KEY" value="MPNG_ID" />
|
|
<property name="pad" value="10" />
|
|
</include>
|
|
</selectKey>
|
|
INSERT
|
|
INTO TB_RENT_ENT_VHCL_MPNG (
|
|
MPNG_ID <!-- 매핑 ID -->
|
|
, ENT_ID <!-- 기업 ID -->
|
|
, VHRNO <!-- 차량번호 -->
|
|
, DEL_YN <!-- 삭제 여부 -->
|
|
, REG_DT <!-- 등록 일시 -->
|
|
, RGTR <!-- 등록자 -->
|
|
, MDFCN_DT <!-- 수정 일시 -->
|
|
, MDFR <!-- 수정자 -->
|
|
)
|
|
VALUES (
|
|
#{mpngId} <!-- 매핑 ID -->
|
|
, #{entId} <!-- 기업 ID -->
|
|
, #{vhrno} <!-- 차량번호 -->
|
|
, 'N' <!-- 삭제 여부 -->
|
|
, <include refid="utility.now" /> <!-- 등록 일시 -->
|
|
, #{createdBy} <!-- 등록자 -->
|
|
, <include refid="utility.now" /> <!-- 수정 일시 -->
|
|
, #{createdBy} <!-- 수정자 -->
|
|
)
|
|
</insert>
|
|
</mapper>
|