Files
wace_plm/WebContent/WEB-INF/classes/com/pms/mapper/eoMng.xml
chpark da06c4684c Initial commit: WACE PLM with database initialization features
- Add Docker Compose configurations for dev, prod, and standalone environments
- Add database initialization scripts (init-db.sh, init-db-docker.sh)
- Add enhanced start-docker-linux.sh with DB init support
- Add comprehensive database initialization guide
- Support for automatic dbexport.pgsql import on first run
- Include safety checks for production environment
2025-08-29 15:46:08 +09:00

676 lines
19 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="eoMng">
<!-- Part 관리 기본 조회 -->
<sql id="eoMngBase">
(
SELECT
OBJID,
CASE
WHEN E.CUSTOMER = '' THEN '0'
ELSE E.CUSTOMER
END CUSTOMER,
CASE
WHEN E.CAR_TYPE = '' THEN '0'
ELSE E.CAR_TYPE
END CAR_TYPE,
EO_TYPE,
CUSTOMER_DESIGN,
EO_NO,
EO_DATE,
TO_CHAR(E.EO_DATE,'YYYY-MM-DD') AS EO_DATE_TITLE,
URGENCY,
PURCHASE_RELEASE_DATE,
TO_CHAR(E.PURCHASE_RELEASE_DATE,'YYYY-MM-DD') AS PURCHASE_RELEASE_DATE_TITLE,
DEPLOY_DATE,
TO_CHAR(E.DEPLOY_DATE,'YYYY-MM-DD') AS DEPLOY_DATE_TITLE,
REG_DATE,
TO_CHAR(E.REG_DATE,'YYYY-MM-DD') AS REG_DATE_TITLE,
EDIT_DATE,
TO_CHAR(E.EDIT_DATE,'YYYY-MM-DD') AS EDIT_DATE_TITLE,
WRITER,
(SELECT DEPT_NAME||' '||USER_NAME FROM USER_INFO WHERE USER_ID = E.WRITER) AS WRITER_TITLE,
DEPLOY_WRITER,
(SELECT DEPT_NAME||' '||USER_NAME FROM USER_INFO WHERE USER_ID = E.DEPLOY_WRITER) AS DEPLOY_WRITER_TITLE,
STATUS,
CASE STATUS
WHEN 'create' THEN '작성중'
WHEN 'deploy' THEN '배포완료'
WHEN 'approvalRequest' THEN '결재중'
WHEN 'approvalComplete' THEN '결재완료'
WHEN 'reject' THEN '반려'
ELSE ''
END STATUS_TITLE,
A.APPR_STATUS,
A.ROUTE_OBJID,
A.APPROVAL_OBJID
FROM
EO_MNG E
LEFT OUTER JOIN
(
SELECT
B.OBJID AS ROUTE_OBJID,
CASE B.STATUS
WHEN 'inProcess' THEN '결재중'
WHEN 'complete' THEN '결재완료'
WHEN 'reject' THEN '반려'
ELSE ''
END APPR_STATUS,
A.OBJID AS APPROVAL_OBJID,
A.TARGET_OBJID,
B.ROUTE_SEQ
FROM
APPROVAL A,
(
select
T1.*
from
(
select
TARGET_OBJID,
max(T.ROUTE_SEQ) as ROUTE_SEQ
from
ROUTE T
group by
T.TARGET_OBJID
) T,
ROUTE T1
where
T.TARGET_OBJID = T1.TARGET_OBJID
and T.ROUTE_SEQ = T1.ROUTE_SEQ
) B
WHERE
A.OBJID = B.APPROVAL_OBJID
AND TARGET_TYPE IN ('EO_MNG')
) A
ON E.OBJID::numeric = A.TARGET_OBJID
)
</sql>
<sql id="eoMngBase2">
(
SELECT
OBJID,
eo_no,
eo_gubun,
ecr_objid,
product_1,
product_2,
eo_kind,
title,
request_code,
period_code,
unit,
DEPLOY_DATE,
TO_CHAR(REG_DATE,'YYYY-MM-DD') AS REG_DATE,
EDIT_DATE,
TO_CHAR(E.EDIT_DATE,'YYYY-MM-DD') AS EDIT_DATE_TITLE,
WRITER,
(SELECT DEPT_NAME||' '||USER_NAME FROM USER_INFO WHERE USER_ID = E.WRITER) AS WRITER_TITLE,
DEPLOY_WRITER,
DEPLOY_DEPT,
STATUS,
CASE STATUS
WHEN 'create' THEN '작성중'
WHEN 'deploy' THEN '배포완료'
WHEN 'approvalRequest' THEN '결재중'
WHEN 'approvalComplete' THEN '결재완료'
WHEN 'reject' THEN '반려'
ELSE ''
END STATUS_TITLE,
contents,
A.APPR_STATUS,
A.ROUTE_OBJID,
A.APPROVAL_OBJID
FROM
EO_MNG E
LEFT OUTER JOIN
(
SELECT
B.OBJID AS ROUTE_OBJID,
CASE B.STATUS
WHEN 'inProcess' THEN '결재중'
WHEN 'complete' THEN '결재완료'
WHEN 'reject' THEN '반려'
ELSE ''
END APPR_STATUS,
A.OBJID AS APPROVAL_OBJID,
A.TARGET_OBJID,
B.ROUTE_SEQ
FROM
APPROVAL A,
(
select
T1.*
from
(
select
TARGET_OBJID,
max(T.ROUTE_SEQ) as ROUTE_SEQ
from
ROUTE T
group by
T.TARGET_OBJID
) T,
ROUTE T1
where
T.TARGET_OBJID = T1.TARGET_OBJID
and T.ROUTE_SEQ = T1.ROUTE_SEQ
) B
WHERE
A.OBJID = B.APPROVAL_OBJID
AND TARGET_TYPE IN ('EO_MNG')
) A
ON E.OBJID::numeric = A.TARGET_OBJID
)
</sql>
<select id="eoMngList" parameterType="map" resultType="map">
SELECT
*
FROM(
SELECT
T.*,
(SELECT o.product_code from product_mgmt o WHERE T.product_1::numeric = o.objid::numeric) AS product_title,
(SELECT o.code_name from comm_code o WHERE T.eo_kind = o.code_id) AS eo_kind_title,
(SELECT o.code_name from comm_code o WHERE T.eo_gubun = o.code_id) AS eo_gubun_title,
(SELECT o.ecr_no from ecr_mng o WHERE T.ecr_objid::numeric = o.objid::numeric) AS ecr_no_title,
T.REG_DATE AS reg_date_time,
ROW_NUMBER() OVER(ORDER BY REG_DATE DESC) RNUM ,
CASE WHEN T.period_code_name IS NOT NULL AND T.unit IS NOT NULL AND T.unit != ''
THEN T.period_code_name ||','||T.unit||'호기'
WHEN T.period_code_name IS NOT NULL AND T.unit IS NULL or T.unit = ''
THEN T.period_code_name
WHEN T.period_code_name IS NULL AND T.unit IS NOT NULL AND T.unit != ''
THEN T.unit||'호기'
END period_code_name_unit
FROM(
SELECT
T.*,
t1.REQUEST_NAME,
t2.deploy_dept_name,
t3.period_code_name
FROM
<include refid="eoMngBase2"/> T
LEFT OUTER JOIN (
SELECT
TT.OBJID,
ARRAY_TO_STRING(ARRAY_AGG((SELECT CODE_NAME FROM COMM_CODE AS CC WHERE CC.CODE_ID IN(TT.REQUEST))),',') AS REQUEST_NAME
FROM (
SELECT
T.OBJID,
UNNEST(STRING_TO_ARRAY(REQUEST_CODE, ',')) AS REQUEST
FROM
EO_MNG AS T
) AS TT
GROUP BY TT.OBJID
) T1
ON T1.OBJID = T.OBJID
LEFT OUTER JOIN(
SELECT
TT.OBJID,
ARRAY_TO_STRING(ARRAY_AGG((SELECT USER_NAME || '(' || DEPT_NAME || ')' AS NAME FROM USER_INFO AS CC WHERE CC.USER_ID IN(TT.DEPLOY_DEPT))),',') AS DEPLOY_DEPT_NAME
FROM (
SELECT
T.OBJID,
UNNEST(STRING_TO_ARRAY(DEPLOY_DEPT, ',')) AS DEPLOY_DEPT
FROM EO_MNG AS T
) AS TT
GROUP BY TT.OBJID
) T2
ON T2.OBJID = T.OBJID
LEFT OUTER JOIN(
SELECT
TT.OBJID,
ARRAY_TO_STRING(ARRAY_AGG((SELECT CODE_NAME FROM COMM_CODE AS CC WHERE CC.CODE_ID IN(TT.PERIOD_CODE))),',') AS PERIOD_CODE_NAME
FROM (
SELECT
T.OBJID,
UNNEST(STRING_TO_ARRAY(PERIOD_CODE, ',')) AS PERIOD_CODE
FROM EO_MNG AS T
) AS TT
GROUP BY TT.OBJID
) AS T3
ON T3.OBJID = T.OBJID
WHERE 1=1
<if test="Year !=null and Year != '' ">
AND TO_CHAR(TO_DATE(T.REG_DATE,'YYYY-MM-DD'),'YYYY') = #{Year}
</if>
<if test="request_code != null and request_code != ''">
AND UPPER(T.request_code) LIKE UPPER('%${request_code}%')
</if>
<if test="eo_kind !=null and eo_kind != '' ">
AND T.eo_kind = #{eo_kind}
</if>
<if test="status_code != null and status_code != ''">
AND T.status = #{status_code}
</if>
<if test="search_eo_date_from != null and search_eo_date_from != ''">
AND TO_DATE(TO_CHAR(TO_DATE(T.REG_DATE,'YYYY-MM-DD'),'YYYY-MM-DD'),'YYYY-MM-DD') <![CDATA[ >= ]]> TO_DATE(#{search_eo_date_from}, 'YYYY-MM-DD')
</if>
<if test="search_eo_date_to != null and search_eo_date_to != ''">
AND TO_DATE(TO_CHAR(TO_DATE(T.REG_DATE,'YYYY-MM-DD'),'YYYY-MM-DD'),'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{search_eo_date_to}, 'YYYY-MM-DD')
</if>
<if test="request_code != null and request_code != ''">
AND UPPER(T.period_code) LIKE UPPER('%${request_code}%')
</if>
) T
) A WHERE 1=1
AND <![CDATA[ RNUM::integer <= #{PAGE_END}::integer ]]>
AND <![CDATA[ RNUM::integer >= #{PAGE_START}::integer]]>
</select>
<select id="eoMngListCnt" parameterType="map" resultType="map">
SELECT
CEIL(TOTAL_CNT/#{COUNT_PER_PAGE})::NUMERIC::INTEGER AS MAX_PAGE_SIZE,
TOTAL_CNT::INTEGER
FROM (
SELECT
COUNT(1)::float TOTAL_CNT
FROM(
SELECT
T.*,
(SELECT o.product_code from product_mgmt o WHERE T.product_1::numeric = o.objid::numeric) AS product_title,
(SELECT o.code_name from comm_code o WHERE T.eo_kind = o.code_id) AS eo_kind_title,
(SELECT o.code_name from comm_code o WHERE T.eo_gubun = o.code_id) AS eo_gubun_title,
(SELECT o.ecr_no from ecr_mng o WHERE T.ecr_objid::numeric = o.objid::numeric) AS ecr_no_title,
T.REG_DATE AS reg_date_time,
ROW_NUMBER() OVER(ORDER BY REG_DATE DESC) RNUM ,
CASE WHEN T.period_code_name IS NOT NULL AND T.unit IS NOT NULL AND T.unit != ''
THEN T.period_code_name ||','||T.unit||'호기'
WHEN T.period_code_name IS NOT NULL AND T.unit IS NULL or T.unit = ''
THEN T.period_code_name
WHEN T.period_code_name IS NULL AND T.unit IS NOT NULL AND T.unit != ''
THEN T.unit||'호기'
END period_code_name_unit
FROM(
SELECT
T.*,
t1.REQUEST_NAME,
t2.deploy_dept_name,
t3.period_code_name
FROM
<include refid="eoMngBase2"/> T
LEFT OUTER JOIN (
SELECT
TT.OBJID,
ARRAY_TO_STRING(ARRAY_AGG((SELECT CODE_NAME FROM COMM_CODE AS CC WHERE CC.CODE_ID IN(TT.REQUEST))),',') AS REQUEST_NAME
FROM (
SELECT
T.OBJID,
UNNEST(STRING_TO_ARRAY(REQUEST_CODE, ',')) AS REQUEST
FROM
EO_MNG AS T
) AS TT
GROUP BY TT.OBJID
) T1
ON T1.OBJID = T.OBJID
LEFT OUTER JOIN(
SELECT
TT.OBJID,
ARRAY_TO_STRING(ARRAY_AGG((SELECT USER_NAME || '(' || DEPT_NAME || ')' AS NAME FROM USER_INFO AS CC WHERE CC.USER_ID IN(TT.DEPLOY_DEPT))),',') AS DEPLOY_DEPT_NAME
FROM (
SELECT
T.OBJID,
UNNEST(STRING_TO_ARRAY(DEPLOY_DEPT, ',')) AS DEPLOY_DEPT
FROM EO_MNG AS T
) AS TT
GROUP BY TT.OBJID
) T2
ON T2.OBJID = T.OBJID
LEFT OUTER JOIN(
SELECT
TT.OBJID,
ARRAY_TO_STRING(ARRAY_AGG((SELECT CODE_NAME FROM COMM_CODE AS CC WHERE CC.CODE_ID IN(TT.PERIOD_CODE))),',') AS PERIOD_CODE_NAME
FROM (
SELECT
T.OBJID,
UNNEST(STRING_TO_ARRAY(PERIOD_CODE, ',')) AS PERIOD_CODE
FROM EO_MNG AS T
) AS TT
GROUP BY TT.OBJID
) AS T3
ON T3.OBJID = T.OBJID
WHERE 1=1
<if test="Year !=null and Year != '' ">
AND TO_CHAR(TO_DATE(T.REG_DATE,'YYYY-MM-DD'),'YYYY') = #{Year}
</if>
<if test="request_code != null and request_code != ''">
AND UPPER(T.request_code) LIKE UPPER('%${request_code}%')
</if>
<if test="eo_kind !=null and eo_kind != '' ">
AND T.eo_kind = #{eo_kind}
</if>
<if test="status_code != null and status_code != ''">
AND T.status = #{status_code}
</if>
<if test="search_eo_date_from != null and search_eo_date_from != ''">
AND TO_DATE(TO_CHAR(TO_DATE(T.REG_DATE,'YYYY-MM-DD'),'YYYY-MM-DD'),'YYYY-MM-DD') <![CDATA[ >= ]]> TO_DATE(#{search_eo_date_from}, 'YYYY-MM-DD')
</if>
<if test="search_eo_date_to != null and search_eo_date_to != ''">
AND TO_DATE(TO_CHAR(TO_DATE(T.REG_DATE,'YYYY-MM-DD'),'YYYY-MM-DD'),'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{search_eo_date_to}, 'YYYY-MM-DD')
</if>
<if test="request_code != null and request_code != ''">
AND UPPER(T.period_code) LIKE UPPER('%${request_code}%')
</if>
) T
) T
)A WHERE 1=1
</select>
<select id="getEOMngInfo" parameterType="map" resultType="map">
SELECT
T.*
<!-- ,(SELECT OEM_CODE FROM OEM_MNG WHERE OBJID = COALESCE(T.CUSTOMER,'0')::NUMERIC) AS CUSTOMER_TITLE -->
<!-- ,(SELECT CAR_CODE||'{'||CAR_NAME||'}' FROM CAR_MNG WHERE OBJID = COALESCE(T.CAR_TYPE,'0')::NUMERIC) AS CAR_TYPE_TITLE -->
<!-- ,(SELECT O.CODE_NAME FROM COMM_CODE O WHERE O.CODE_ID = T.EO_TYPE AND O.PARENT_CODE_ID = #{EO_TYPE_CODE}) AS EO_TYPE_TITLE -->
FROM <include refid="eoMngBase2"/> T
WHERE 1=1
AND T.OBJID = #{OBJID}::numeric
</select>
<!-- EO memo저장 -->
<update id="mergeEOmemo" parameterType="map">
UPDATE
REL_EO_PART
SET
memo = #{memo}
WHERE OBJID = #{rel_eo_objid}::NUMERIC
</update>
<!-- EO 저장 -->
<update id="mergeEOMng" parameterType="map">
INSERT INTO EO_MNG
(
OBJID,
EO_NO,
EO_GUBUN,
ECR_OBJID,
PRODUCT_1,
PRODUCT_2,
EO_KIND,
TITLE,
REQUEST_CODE,
PERIOD_CODE,
STATUS,
REG_DATE,
<if test="EDIT_DATE != null and EDIT_DATE != ''">
EDIT_DATE,
</if>
WRITER,
UNIT,
CONTENTS,
DEPLOY_DEPT
) VALUES (
#{OBJID}::NUMERIC,
(SELECT 'EOC_' || TO_CHAR(NOW(),'yy')::VARCHAR || LPAD((SELECT nextval('seq_eo_no'))::VARCHAR ,3,'0')),
#{eo_gubun},
#{ecr_objid},
#{product_objid},
#{same_product_objid},
#{eo_kind},
#{title},
#{request_codeArr},
#{period_codeArr},
'create',
NOW(),
<if test="EDIT_DATE != null and EDIT_DATE != ''">
#{EDIT_DATE},
</if>
#{WRITER},
#{unit},
#{contents},
#{deploy_dept}
) ON
CONFLICT (OBJID) DO
UPDATE
SET
EO_GUBUN = #{eo_gubun},
ECR_OBJID = #{ecr_objid},
PRODUCT_1 = #{product_objid},
PRODUCT_2 = #{same_product_objid},
EO_KIND = #{eo_kind},
TITLE = #{title},
REQUEST_CODE = #{request_codeArr},
PERIOD_CODE = #{period_codeArr},
STATUS = #{STATUS},
<if test="EDIT_DATE != null and EDIT_DATE != ''">
EDIT_DATE = NOW(),
</if>
WRITER = #{WRITER},
DEPLOY_WRITER = #{DEPLOY_WRITER},
UNIT = #{unit},
CONTENTS = #{contents},
DEPLOY_DEPT =#{deploy_dept}
</update>
<!-- EO와 Part의 연결을 초기화한다. -->
<update id="relEOMngPartMngInit" parameterType="map">
DELETE FROM REL_EO_PART WHERE PARENT_OBJID = #{OBJID}::NUMERIC
</update>
<delete id="deleteConnectPartMng" parameterType="map">
DELETE FROM REL_EO_PART WHERE PARENT_OBJID = #{PARENT_OBJID}::NUMERIC AND CHILD_OBJID = #{CHILD_OBJID}::NUMERIC
</delete>
<!-- EO와 Part를 연결한다. -->
<insert id="insertRelEOMngPartMng" parameterType="map">
INSERT INTO REL_EO_PART
(
OBJID,
PARENT_OBJID,
CHILD_OBJID,
REG_DATE,
WRITER
) VALUES (
#{OBJID}::NUMERIC,
#{PARENT_OBJID}::NUMERIC,
#{CHILD_OBJID}::NUMERIC,
NOW(),
#{WRITER}
)
</insert>
<!-- EO와 Part를 연결한다. -->
<insert id="insertRelEOMngMultiPartMng" parameterType="map">
INSERT INTO REL_EO_PART
(
SELECT
trunc(random() * 10000000000 + 1)::NUMERIC,
#{PARENT_OBJID}::NUMERIC,
OBJID,
NOW(),
#{WRITER}
FROM part_mng AS t
<if test="partObjIdArr != null and partObjIdArr.size != 0">
WHERE T.OBJID IN
<foreach collection="partObjIdArr" item="part" index="index" separator="," open="(" close=")">
#{part}::NUMERIC
</foreach>
</if>
)
</insert>
<!-- EO에 연결된 Part의 EO 정보를 Update 한다. -->
<update id="updatePartMngeo_temp" parameterType="map">
UPDATE
PART_MNG
SET
EO_TEMP = #{PARENT_OBJID}
<if test="CHILD_OBJID != null and CHILD_OBJID.size != 0">
WHERE OBJID IN
<foreach collection="CHILD_OBJID" item="CHILD_OBJID" index="index" separator="," open="(" close=")">
#{CHILD_OBJID}::NUMERIC
</foreach>
</if>
</update>
<!-- EO에 연결된 Part의 EO 정보를 Update 한다. -->
<update id="updatePartMng" parameterType="map">
UPDATE
PART_MNG
SET
EO = #{PARENT_OBJID},
EDIT_DATE = NOW()
WHERE OBJID = #{CHILD_OBJID}::NUMERIC
</update>
<!-- EO에 연결된 Part의 EO 정보를 null로 한다. -->
<update id="updatedeleteConnectPartMng" parameterType="map">
UPDATE
PART_MNG
SET
EO_TEMP = NULL
<!-- EDIT_DATE = NOW() -->
WHERE OBJID = #{CHILD_OBJID}::NUMERIC
</update>
<!-- EO에 연결된 Part의 EO 정보를 null로 한다. -->
<update id="deleteEOMngPart" parameterType="map">
UPDATE
PART_MNG
SET
EO_TEMP = NULL,
EO = NULL
<!-- EDIT_DATE = NOW() -->
WHERE EO_TEMP = #{OBJID}
</update>
<!-- EO를 배포한다. -->
<update id="deployEOMng" parameterType="map">
UPDATE
EO_MNG
SET
DEPLOY_DATE = NOW(),
EDIT_DATE = NOW(),
DEPLOY_WRITER = #{DEPLOY_WRITER},
STATUS = 'deploy'
WHERE OBJID = #{OBJID}::NUMERIC
</update>
<delete id="deleteEOMng" parameterType="map">
DELETE FROM EO_MNG WHERE OBJID = #{OBJID}::NUMERIC
</delete>
<select id="getConnectPartList" parameterType="map" resultType="map">
SELECT
T.*,
ROW_NUMBER() OVER(ORDER BY REG_DATE DESC) RNUM
FROM(
SELECT
T.*
,(SELECT O.CODE_NAME FROM COMM_CODE O WHERE O.CODE_ID = T.PRODUCT_GROUP AND O.PARENT_CODE_ID = #{PRODUCT_GROUP_CODE}) AS PRODUCT_GROUP_TITLE
,(SELECT O.CODE_NAME FROM COMM_CODE O WHERE O.CODE_ID = T.PRODUCT AND O.PARENT_CODE_ID = T.PRODUCT_GROUP) AS PRODUCT_TITLE
,(SELECT O.CODE_NAME FROM COMM_CODE O WHERE O.CODE_ID = T.MATERIAL AND O.PARENT_CODE_ID = #{MATERIAL_CODE}) AS MATERIAL_TITLE
,(SELECT O.CODE_NAME FROM COMM_CODE O WHERE O.CODE_ID = T.SPEC_NO AND O.PARENT_CODE_ID = #{SPEC_NO_CODE}) AS SPEC_NO_TITLE
,(SELECT O.CODE_NAME FROM COMM_CODE O WHERE O.CODE_ID = T.DESIGN_APPLY_POINT AND O.PARENT_CODE_ID = #{DESIGN_APPLY_POINT_CODE}) AS DESIGN_APPLY_POINT_TITLE
,(SELECT OEM_CODE FROM OEM_MNG WHERE OBJID = COALESCE(T.CUSTOMER,'0')::NUMERIC) AS CUSTOMER_TITLE
,(SELECT CAR_CODE||'{'||CAR_NAME||'}' FROM CAR_MNG WHERE OBJID = COALESCE(T.CAR_TYPE,'0')::NUMERIC) AS CAR_TYPE_TITLE
FROM
<include refid="partMng.partMngBase"/> T,
REL_EO_PART R
WHERE 1=1
AND R.CHILD_OBJID = T.OBJID::NUMERIC
AND R.PARENT_OBJID = T.EO::NUMERIC
AND R.PARENT_OBJID = #{OBJID}::NUMERIC
) T
</select>
<select id="getConnectEoPartList" parameterType="map" resultType="map">
SELECT
T.*,
ROW_NUMBER() OVER(ORDER BY part_no DESC) RNUM
FROM(
SELECT
t2.objid AS objid
,t1.objid AS part_objid
,t1.part_no
,t1.part_name
,t1.revision
,t2.memo
FROM part_mng t1,
rel_eo_part t2
WHERE 1=1
and t1.objid = t2.child_objid
AND t2.parent_objid = #{OBJID}::NUMERIC
) T
</select>
<select id="partrevision" parameterType="map" resultType="map">
SELECT
COALESCE(revision,'')
FROM part_mng
where 1=1
and objid = #{part_objid}::NUMERIC
</select>
<!-- part_mng저장 -->
<update id="mergeEOpart1" parameterType="map">
UPDATE
part_mng
SET
revision = '1'
WHERE OBJID = #{part_objid}::NUMERIC
</update>
<!-- part_mng저장 -->
<update id="mergeEOpartre" parameterType="map">
UPDATE
part_mng
SET
revision = (revision::NUMERIC + 1::NUMERIC)::VARCHAR
WHERE OBJID = #{part_objid}::NUMERIC
</update>
<!-- EO DATE (REG_DATE)저장 -->
<update id="changeEOEDITDate" parameterType="map">
UPDATE
eo_mng
SET
edit_date = now()
WHERE OBJID = #{targetObjId}::NUMERIC
</update>
<!-- part에 eo no 저장 -->
<update id="changePartEO" parameterType="map">
UPDATE
part_mng
SET
eo = #{targetObjId}
WHERE eo_temp = #{targetObjId}
</update>
</mapper>