Files
wace_plm/WebContent/WEB-INF/classes/com/pms/mapper/salesMngNew.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

620 lines
16 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="salesMngNew">
<update id="mergeSalesRequestMasterInfo" parameterType="map">
INSERT INTO SALES_REQUEST_MASTER
(
OBJID,
REQUEST_MNG_NO,
CATEGORY_CD,
PRODUCT_GROUP,
PRODUCT,
PRODUCT_CODE,
SALES_MNG_USER_ID,
REQUEST_STATUS,
REQUEST_STATUS_REMARK,
TITLE,
WRITER,
REGDATE,
STATUS,
ORDER_NUMBER
)
VALUES
(
#{SALES_REQUEST_MASTER_OBJID},
(SELECT 'R'||TO_CHAR(NOW(),'YYYYMMDD')||'-'||LPAD((COALESCE(MAX(SUBSTR(REQUEST_MNG_NO,11,13)),'0')::INTEGER+1)::TEXT,3,'0') FROM SALES_REQUEST_MASTER),
#{CATEGORY_CD },
#{PRODUCT_GROUP },
#{PRODUCT },
#{PRODUCT_CODE },
#{SALES_MNG_USER_ID },
#{REQUEST_STATUS },
#{REQUEST_STATUS_REMARK },
#{TITLE },
#{WRITER },
NOW(),
#{STATUS },
#{ORDER_NUMBER }
) ON CONFLICT (OBJID) DO
UPDATE
SET
REQUEST_MNG_NO = #{REQUEST_MNG_NO},
CATEGORY_CD = #{CATEGORY_CD},
PRODUCT_GROUP = #{PRODUCT_GROUP},
PRODUCT = #{PRODUCT},
PRODUCT_CODE = #{PRODUCT_CODE},
SALES_MNG_USER_ID = #{SALES_MNG_USER_ID},
REQUEST_STATUS = #{REQUEST_STATUS},
REQUEST_STATUS_REMARK = #{REQUEST_STATUS_REMARK},
TITLE = #{TITLE},
STATUS = #{STATUS},
ORDER_NUMBER = #{ORDER_NUMBER}
</update>
<!-- 구매의뢰 저장 시 저장된 파트 정보를 초기화 -->
<delete id="initSalesRequestPart" parameterType="map">
DELETE FROM SALES_REQUEST_PART WHERE SALES_REQUEST_MASTER_OBJID = #{SALES_REQUEST_MASTER_OBJID}
</delete>
<update id="mergeSalesRequestPartInfo" parameterType="map">
INSERT INTO SALES_REQUEST_PART
(
OBJID,
SALES_BOM_QTY_OBJID,
PART_OBJID,
SALES_REQUEST_MASTER_OBJID,
PART_NAME,
SPEC,
QTY,
ORG_QTY,
PARTNER_OBJID,
DELIVERY_REQUEST_DATE,
WRITER,
REGDATE,
STATUS,
REMARK
)
VALUES
(
#{SALES_REQUEST_PART_OBJID },
#{SALES_BOM_QTY_OBJID },
#{PART_OBJID },
#{SALES_REQUEST_MASTER_OBJID},
#{PART_NAME },
#{SPEC },
#{QTY },
#{ORG_QTY },
#{PARTNER_OBJID },
#{DELIVERY_REQUEST_DATE },
#{WRITER},
NOW(),
#{STATUS},
#{REMARK}
) ON CONFLICT (OBJID) DO
UPDATE
SET
SALES_BOM_QTY_OBJID = #{SALES_BOM_QTY_OBJID },
PART_OBJID = #{PART_OBJID },
SALES_REQUEST_MASTER_OBJID = #{SALES_REQUEST_MASTER_OBJID},
PART_NAME = #{PART_NAME },
SPEC = #{SPEC },
QTY = #{QTY },
ORG_QTY = #{ORG_QTY },
PARTNER_OBJID = #{PARTNER_OBJID },
DELIVERY_REQUEST_DATE = #{DELIVERY_REQUEST_DATE },
WRITER = #{WRITER},
STATUS = #{STATUS},
REMARK = #{REMARK}
</update>
<!-- 구매 BOM을 통한 구매 의뢰 시 저장된 Part 정보를 가져온다. -->
<select id="getSalesRequestSavedPartList" parameterType="map" resultType="map">
SELECT
ROW_NUMBER() OVER(ORDER BY SRP.REGDATE DESC) AS RNUM,
SRP.OBJID,
SRP.SALES_BOM_QTY_OBJID,
SRP.PART_OBJID,
SRP.SALES_REQUEST_MASTER_OBJID,
SRP.QTY,
SRP.ORG_QTY,
SRP.PARTNER_OBJID,
SRP.PARTNER_PRICE,
SRP.DELIVERY_REQUEST_DATE,
SRP.WRITER,
SRP.REGDATE,
SRP.STATUS,
SRP.REMARK,
SRP.PART_NAME,
PM.MATERIAL,
SRP.SPEC,
PM.PART_NO,
PM.REVISION,
PM.PART_NAME||'('||PM.MATERIAL||','||PM.SPEC||')/'||PM.PART_NO AS TARGET_TITLE,
PM.UNIT_TITLE
FROM
SALES_REQUEST_MASTER SRM
INNER JOIN SALES_REQUEST_PART SRP
ON SRM.OBJID = SRP.SALES_REQUEST_MASTER_OBJID
LEFT OUTER JOIN <include refid="partMng.partMngBase"/> PM
ON SRP.PART_OBJID = PM.OBJID::TEXT
WHERE 1=1
AND SRM.OBJID = #{SALES_REQUEST_MASTER_OBJID}
<if test="PARTNER_OBJID != null and !''.equals(PARTNER_OBJID)">
AND SRP.PARTNER_OBJID = #{PARTNER_OBJID}
</if>
</select>
<select id="getSalesRequestMasterList" parameterType="map" resultType="map">
SELECT
ROW_NUMBER() OVER(ORDER BY REGDATE DESC) AS RNUM,
AA.*
FROM (
SELECT
SRM.OBJID,
SRM.REQUEST_MNG_NO,
SRM.CATEGORY_CD,
(SELECT CODE_NAME FROM COMM_CODE CC WHERE CC.CODE_ID = SRM.CATEGORY_CD) AS CATEGORY_CD_NAME,
SRM.PRODUCT_GROUP,
(SELECT CODE_NAME FROM COMM_CODE CC WHERE CC.CODE_ID = SRM.PRODUCT_GROUP) AS PRODUCT_GROUP_NAME,
SRM.PRODUCT,
(SELECT CODE_NAME FROM COMM_CODE CC WHERE CC.CODE_ID = SRM.PRODUCT) AS PRODUCT_NAME,
SRM.PRODUCT_CODE,
(SELECT PRODUCT_CODE FROM PRODUCT_MGMT AS O WHERE O.OBJID::VARCHAR = SRM.PRODUCT_CODE::VARCHAR) AS PRODUCT_CODE_NAME,
SRM.SALES_MNG_USER_ID,
(SELECT DEPT_NAME||' '||USER_NAME FROM USER_INFO WHERE USER_ID = SRM.SALES_MNG_USER_ID) AS SALES_MNG_USER_NAME,
SRM.REQUEST_STATUS,
(SELECT CODE_NAME FROM COMM_CODE CC WHERE CC.CODE_ID = SRM.REQUEST_STATUS) AS REQUEST_STATUS_TITLE,
SRM.REQUEST_STATUS_REMARK,
SRM.TITLE,
SRM.WRITER,
(SELECT DEPT_NAME||' '||USER_NAME FROM USER_INFO WHERE USER_ID = SRM.WRITER) AS WRITER_NAME,
SRM.REGDATE,
TO_CHAR(SRM.REGDATE,'YYYY-MM-DD') AS REGDATE_TITLE,
SRM.STATUS,
CASE SRM.STATUS
WHEN 'create' THEN '등록'
WHEN 'release' THEN '제출 완료'
WHEN 'reception' THEN '의뢰 접수'
WHEN 'approvalRequest' THEN '결재중'
WHEN 'approvalComplete' THEN '조치완료'
WHEN 'reject' THEN '반려'
ELSE ''
END STATUS_TITLE,
SRP.TARGET_TITLE,
A.APPR_STATUS,
A.ROUTE_OBJID,
A.APPROVAL_OBJID,
A.ROUTE_OBJID,
SRM.CHECK_USER_ID,
(SELECT DEPT_NAME||' '||USER_NAME FROM USER_INFO WHERE USER_ID = SRM.CHECK_USER_ID) AS CHECK_USER_NAME,
TO_CHAR(SRM.CHECK_DATE,'YYYY-MM-DD') AS CHECK_DATE
FROM
SALES_REQUEST_MASTER SRM
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 ('SALES_REQUEST')
) A ON SRM.OBJID::VARCHAR = A.TARGET_OBJID::VARCHAR
LEFT OUTER JOIN(
SELECT
ROW_NUMBER() OVER(PARTITION BY SRP.SALES_REQUEST_MASTER_OBJID ORDER BY SRP.REGDATE DESC) SUB_RNUM,
SRP.OBJID,
SRP.SALES_BOM_QTY_OBJID,
SRP.PART_OBJID,
SRP.SALES_REQUEST_MASTER_OBJID,
SRP.PART_NAME,
SRP.SPEC,
SRP.QTY,
SRP.PARTNER_OBJID,
SRP.DELIVERY_REQUEST_DATE,
SRP.WRITER,
SRP.REGDATE,
SRP.STATUS,
SRP.REMARK,
PM.PART_NAME||'('||PM.MATERIAL||','||PM.SPEC||')/'||PM.PART_NO AS TARGET_TITLE,
PM.UNIT_TITLE
FROM
SALES_REQUEST_MASTER SRM
INNER JOIN SALES_REQUEST_PART SRP
ON SRM.OBJID = SRP.SALES_REQUEST_MASTER_OBJID
LEFT OUTER JOIN <include refid="partMng.partMngBase"/> PM
ON SRP.PART_OBJID = PM.OBJID::TEXT
WHERE 1=1
) SRP ON SRP.SALES_REQUEST_MASTER_OBJID::VARCHAR = SRM.OBJID::VARCHAR
AND SRP.SUB_RNUM = 1
WHERE 1=1
) AA
WHERE 1=1
<if test="title != null and !''.equals(title)">
AND title = #{title}
</if>
<if test="SEARCH_CATEGORY_CD != null and !''.equals(SEARCH_CATEGORY_CD)">
AND CATEGORY_CD = #{SEARCH_CATEGORY_CD}
</if>
<if test="SEARCH_PRODUCT_GROUP != null and !''.equals(SEARCH_PRODUCT_GROUP)">
AND PRODUCT_GROUP = #{SEARCH_PRODUCT_GROUP}
</if>
<if test="SEARCH_PRODUCT != null and !''.equals(SEARCH_PRODUCT)">
AND PRODUCT = #{SEARCH_PRODUCT}
</if>
<if test="SEARCH_PRODUCT_CODE != null and !''.equals(SEARCH_PRODUCT_CODE)">
AND PRODUCT_CODE = #{SEARCH_PRODUCT_CODE}
</if>
<if test="SEARCH_PART_NO != null and !''.equals(SEARCH_PART_NO)">
AND OBJID IN (
SELECT
SRP.SALES_REQUEST_MASTER_OBJID
FROM
SALES_REQUEST_PART SRP
LEFT OUTER JOIN PART_MNG PM
ON SRP.PART_OBJID::VARCHAR = PM.OBJID::VARCHAR
WHERE PART_NO LIKE'%${SEARCH_PART_NO}%'
)
</if>
<if test="SEARCH_PART_NAME != null and !''.equals(SEARCH_PART_NAME)">
AND OBJID IN (
SELECT
SRP.SALES_REQUEST_MASTER_OBJID
FROM
SALES_REQUEST_PART SRP
LEFT OUTER JOIN PART_MNG PM
ON SRP.PART_OBJID::VARCHAR = PM.OBJID::VARCHAR
WHERE PART_NAME LIKE'%${SEARCH_PART_NAME}%'
)
</if>
<!-- <if test="SEARCH_STATUS != null and !''.equals(SEARCH_STATUS)">
<![CDATA[ AND 0 < POSITION(STATUS || ',' IN #{SEARCH_STATUS}||',') ]]>
</if> -->
</select>
<update id="changeStatusSalesRequestMaster" parameterType="map">
UPDATE
SALES_REQUEST_MASTER
SET
STATUS = #{STATUS}
WHERE OBJID = #{OBJID}
</update>
<update id="releaseSalesRequestMaster" parameterType="map">
UPDATE
SALES_REQUEST_MASTER
SET
RELEASE_DATE = TO_CHAR(NOW(),'YYYY-MM-DD')
WHERE OBJID = #{OBJID}
</update>
<select id="getSalesPartnerInfoList" parameterType="map" resultType="map">
SELECT
A.*,
ROW_NUMBER() OVER(ORDER BY A.SEQ) AS RNUM
FROM(
SELECT
BPQ.PART_NO,
SBPQ.FIRST_PARTNER_OBJID AS PARTNER_OBJID,
(SELECT SUPPLY_NAME FROM SUPPLY_MNG WHERE 1=1 AND OBJID::VARCHAR = SBPQ.FIRST_PARTNER_OBJID) AS PARTNER_NAME,
1 AS SEQ
FROM BOM_PART_QTY BPQ
LEFT OUTER JOIN SALES_BOM_PART_QTY SBPQ
ON BPQ.BOM_REPORT_OBJID::VARCHAR = SBPQ.BOM_REPORT_OBJID
AND BPQ.OBJID::VARCHAR = SBPQ.OBJID
AND SBPQ.FIRST_PARTNER_OBJID IS NOT NULL
AND SBPQ.FIRST_PARTNER_OBJID != ''
UNION ALL
SELECT
BPQ.PART_NO,
SBPQ.SECOND_PARTNER_OBJID AS PARTNER_OBJID,
(SELECT SUPPLY_NAME FROM SUPPLY_MNG WHERE 1=1 AND OBJID::VARCHAR = SBPQ.SECOND_PARTNER_OBJID) AS PARTNER_NAME,
2 AS SEQ
FROM BOM_PART_QTY BPQ
LEFT OUTER JOIN SALES_BOM_PART_QTY SBPQ
ON BPQ.BOM_REPORT_OBJID::VARCHAR = SBPQ.BOM_REPORT_OBJID
AND BPQ.OBJID::VARCHAR = SBPQ.OBJID
AND SBPQ.SECOND_PARTNER_OBJID IS NOT NULL
AND SBPQ.SECOND_PARTNER_OBJID != ''
UNION ALL
SELECT
BPQ.PART_NO,
SBPQ.THIRD_PARTNER_OBJID AS PARTNER_OBJID,
(SELECT SUPPLY_NAME FROM SUPPLY_MNG WHERE 1=1 AND OBJID::VARCHAR = SBPQ.THIRD_PARTNER_OBJID) AS PARTNER_NAME,
3 AS SEQ
FROM BOM_PART_QTY BPQ
LEFT OUTER JOIN SALES_BOM_PART_QTY SBPQ
ON BPQ.BOM_REPORT_OBJID::VARCHAR = SBPQ.BOM_REPORT_OBJID
AND BPQ.OBJID::VARCHAR = SBPQ.OBJID
AND SBPQ.THIRD_PARTNER_OBJID IS NOT NULL
AND SBPQ.THIRD_PARTNER_OBJID != ''
)A WHERE 1=1
AND PART_NO::VARCHAR = #{PART_OBJID}
</select>
<!-- 구매 BOM을 통한 구매 의뢰 시 대상 Part 정보를 가져온다. -->
<select id="getSalesRequestTargetList" parameterType="map" resultType="map">
SELECT
OBJID,
RNUM,
PART_NAME,
SPEC,
QTY,
PARTNER_OBJID,
DELIVERY_REQUEST_DATE,
REMARK
FROM
SALES_REQUEST_PART
WHERE 1=1
AND OBJID = #{OBJID}
<!-- WITH RECURSIVE VIEW_BOM(
BOM_REPORT_OBJID,
OBJID,
PARENT_OBJID,
CHILD_OBJID,
PARENT_PART_NO,
PART_NO,
QTY,
REGDATE,
SEQ,
LEV,
PATH,
CYCLE
) AS (
SELECT
A.BOM_REPORT_OBJID,
A.OBJID,
A.PARENT_OBJID,
A.CHILD_OBJID,
A.PARENT_PART_NO,
A.PART_NO,
A.QTY,
A.REGDATE,
A.SEQ,
1,
ARRAY [A.CHILD_OBJID::TEXT],
FALSE
FROM
BOM_PART_QTY A
where 1=1
AND (A.PARENT_OBJID IS NULL OR A.PARENT_OBJID = '')
AND A.BOM_REPORT_OBJID = #{bom_report_objid}
UNION ALL
SELECT
B.BOM_REPORT_OBJID,
B.OBJID,
B.PARENT_OBJID,
B.CHILD_OBJID,
B.PARENT_PART_NO,
B.PART_NO,
B.QTY,
B.REGDATE,
B.SEQ,
LEV + 1,
PATH||B.CHILD_OBJID::TEXT,
B.PARENT_OBJID = ANY(PATH)
FROM
BOM_PART_QTY B
JOIN
VIEW_BOM
ON B.PARENT_OBJID = VIEW_BOM.CHILD_OBJID
AND VIEW_BOM.BOM_REPORT_OBJID = B.BOM_REPORT_OBJID
)
SELECT
V.BOM_REPORT_OBJID
,V.PARENT_OBJID
,V.CHILD_OBJID
,V.PARENT_PART_NO
,V.QTY
,V.LEV
,(SELECT COUNT(*) FROM BOM_PART_QTY WHERE PARENT_OBJID = V.CHILD_OBJID) AS SUB_PART_CNT
,V.SEQ
,(CASE WHEN V.CYCLE IS NULL THEN 1 ELSE 0 END) AS LEAF
,T2.OBJID AS PART_OBJID
,T2.PART_NO
,T2.PART_NAME
,T2.UNIT_TITLE
,T2.EO_NO
,T2.EO_DATE
,T2.REVISION
,T2.SPEC
,T2.MATERIAL
,T2.WEIGHT
,SBPQ.PRODUCT_TYPE_CODE
,SBPQ.FIRST_PARTNER_OBJID
,SBPQ.FIRST_PARTNER_PRICE
,SBPQ.FIRST_PARTNER_QTY
,SBPQ.SECOND_PARTNER_OBJID
,SBPQ.SECOND_PARTNER_PRICE
,SBPQ.SECOND_PARTNER_QTY
,SBPQ.THIRD_PARTNER_OBJID
,SBPQ.THIRD_PARTNER_PRICE
,SBPQ.THIRD_PARTNER_QTY
,(SELECT CC.CODE_NAME FROM COMM_CODE CC WHERE 1=1 AND CC.CODE_ID = SBPQ.PRODUCT_TYPE_CODE) AS PRODUCT_TYPE_CODE_NAME
,(SELECT SM.SUPPLY_NAME FROM SUPPLY_MNG SM WHERE 1=1 AND SM.SUPPLY_CODE = SBPQ.FIRST_PARTNER_OBJID) AS FIRST_PARTNER_NAME
,(SELECT SM.SUPPLY_NAME FROM SUPPLY_MNG SM WHERE 1=1 AND SM.SUPPLY_CODE = SBPQ.SECOND_PARTNER_OBJID) AS SECOND_PARTNER_NAME
,(SELECT SM.SUPPLY_NAME FROM SUPPLY_MNG SM WHERE 1=1 AND SM.SUPPLY_CODE = SBPQ.THIRD_PARTNER_OBJID) AS THIRD_PARTNER_NAME
,SBPQ.OBJID
,SBPQ.OBJID AS SALES_BOM_QTY_OBJID
FROM
VIEW_BOM V
LEFT OUTER JOIN <include refid="partMng.partMngBase"/> T2
ON V.PART_NO = T2.OBJID::TEXT
LEFT OUTER JOIN SALES_BOM_PART_QTY SBPQ
ON V.BOM_REPORT_OBJID::VARCHAR = SBPQ.BOM_REPORT_OBJID
AND V.OBJID::VARCHAR = SBPQ.OBJID
WHERE 1=1
AND(
(SBPQ.FIRST_PARTNER_OBJID IS NOT NULL AND SBPQ.FIRST_PARTNER_OBJID != '') OR
(SBPQ.SECOND_PARTNER_OBJID IS NOT NULL AND SBPQ.SECOND_PARTNER_OBJID != '') OR
(SBPQ.THIRD_PARTNER_OBJID IS NOT NULL AND SBPQ.THIRD_PARTNER_OBJID != '')
)
ORDER BY V.PATH,V.REGDATE -->
</select>
<update id="mergeOrderSpecMng" parameterType="map">
INSERT INTO ORDER_SPEC_MNG
(
OBJID,
SEQ,
PART_OBJID,
PARTNER_RANK,
PARTNER_OBJID,
PARTNER_QTY,
APPLY_DATE,
REMARK,
REGDATE,
IS_LAST,
WRITER
)
VALUES
(
#{OBJID},
#{SEQ},
#{PART_OBJID},
#{PARTNER_RANK},
#{PARTNER_OBJID},
#{PARTNER_QTY},
#{APPLY_DATE},
#{REMARK},
NOW(),
#{IS_LAST},
#{WRITER}
) ON CONFLICT (OBJID) DO
UPDATE
SET
SEQ = #{SEQ},
PART_OBJID = #{PART_OBJID},
PARTNER_RANK = #{PARTNER_RANK},
PARTNER_OBJID = #{PARTNER_OBJID},
PARTNER_QTY = #{PARTNER_QTY},
APPLY_DATE = #{APPLY_DATE},
REMARK = #{REMARK},
REGDATE = NOW(),
IS_LAST = #{IS_LAST},
WRITER = #{WRITER}
</update>
<delete id="deleteOrderSpecMng" parameterType="map">
DELETE FROM ORDER_SPEC_MNG WHERE 1=1 <![CDATA[ AND 0 < POSITION(OBJID::TEXT || ',' IN #{checkArr}||',') ]]>
</delete>
<update id="insertOrderSpecMngHistory" parameterType="map">
INSERT INTO ORDER_SPEC_MNG_HISTORY
SELECT
*
FROM ORDER_SPEC_MNG WHERE OBJID = #{OBJID}
</update>
<select id="getOrderSpecMngHistoryList" parameterType="map" resultType="map">
SELECT
OBJID,
SEQ,
PART_OBJID,
(SELECT SUPPLY_NAME FROM ADMIN_SUPPLY_MNG WHERE OBJID::VARCHAR = PARTNER_OBJID::VARCHAR) AS PARTNER_NAME,
PARTNER_RANK,
PARTNER_OBJID,
PARTNER_QTY,
APPLY_DATE,
REMARK,
REGDATE,
IS_LAST,
WRITER
FROM
ORDER_SPEC_MNG_HISTORY
WHERE 1=1
AND OBJID = #{OBJID}
ORDER BY REGDATE DESC
</select>
<delete id="deleteSalesRequestMaster" parameterType="map">
DELETE FROM SALES_REQUEST_MASTER WHERE OBJID = #{SALES_REQUEST_MASTER_OBJID}
</delete>
<delete id="deleteSalesRequestPart" parameterType="map">
DELETE FROM SALES_REQUEST_PART WHERE SALES_REQUEST_MASTER_OBJID = #{SALES_REQUEST_MASTER_OBJID}
</delete>
<update id="completeSalesRequestInfo" parameterType="map">
UPDATE SALES_REQUEST_MASTER
SET status = 'approvalComplete'
,CHECK_USER_ID = #{writer}
,CHECK_DATE = now()
WHERE OBJID = #{SALES_REQUEST_MASTER_OBJID}
</update>
</mapper>