MERGE INTO PMS_QUALITY_TEST_INFO USING DUAL ON (OBJID = #{objId})
WHEN MATCHED THEN
UPDATE SET
CAR_OBJID = #{carObjId}
, PROD_OBJID = #{prodObjId}
, TEST_TYPE_OBJID = #{testTypeObjId}
, STEP1 = #{step1}
, STEP2 = #{step2}
WHEN NOT MATCHED THEN
INSERT (
OBJID
, CAR_OBJID
, PROD_OBJID
, TEST_TYPE_OBJID
, STEP1
, STEP2
, WRITER
, REGDATE
, STATUS
) VALUES (
#{objId}
, #{carObjId}
, #{prodObjId}
, #{testTypeObjId}
, #{step1}
, #{step2}
, #{writer}
, SYSDATE
, 'create'
)
MERGE INTO PMS_QUALITY_TEST_REL_PART_ATTR USING DUAL ON (OBJID = #{objId})
WHEN MATCHED THEN
UPDATE SET
SCORE = #{score}
, RESULT = #{result}
, TYPE1 = #{type1}
, TYPE2 = #{type2}
WHEN NOT MATCHED THEN
INSERT (
OBJID
, TARGET_OBJID
, PART_NO
, SCORE
, RESULT
, TYPE1
, TYPE2
, WRITER
, REGDATE
, STATUS
) VALUES (
#{objId}
, #{targetObjId}
, #{partNo}
, #{score}
, #{result}
, #{type1}
, #{type2}
, #{writer}
, SYSDATE
, 'create'
)
UPDATE PMS_QUALITY_TEST_INFO SET STATUS = 'complete' WHERE OBJID = #{targetObjId}
INSERT INTO PMS_QUALITY_INSPECTION_TYPE (
OBJID
, INSPECTION_TYPE_NAME
, STATUS
, WRITER
, REG_DATE
) VALUES (
#{OBJID}
, #{INSPECTION_TYPE_NAME}
, #{STATUS}
, #{writer}
, SYSDATE
)
UPDATE PMS_QUALITY_INSPECTION_TYPE
SET INSPECTION_TYPE_NAME = #{INSPECTION_TYPE_NAME}
, STATUS = #{STATUS}
WHERE OBJID = #{OBJID}
DELETE FROM PMS_QUALITY_INSPECTION_TYPE
WHERE OBJID = #{OBJID}
INSERT INTO PMS_QUALITY_DEFECT_TYPE (
OBJID
, DEFECT_TYPE_NAME
, STATUS
, WRITER
, REG_DATE
) VALUES (
#{OBJID}
, #{DEFECT_TYPE_NAME}
, #{STATUS}
, #{writer}
, SYSDATE
)
UPDATE PMS_QUALITY_DEFECT_TYPE
SET DEFECT_TYPE_NAME = #{DEFECT_TYPE_NAME}
, STATUS = #{STATUS}
WHERE OBJID = #{OBJID}
DELETE FROM PMS_QUALITY_DEFECT_TYPE
WHERE OBJID = #{OBJID}
INSERT INTO PMS_QUALITY_DEFECT_REASON (
OBJID
, DEFECT_TYPE_OBJID
, DEFECT_REASON_NAME
, STATUS
, WRITER
, REG_DATE
) VALUES (
#{OBJID}
, #{DEFECT_TYPE_OBJID}
, #{DEFECT_REASON_NAME}
, #{STATUS}
, #{writer}
, SYSDATE
)
UPDATE PMS_QUALITY_DEFECT_REASON
SET DEFECT_REASON_NAME = #{DEFECT_REASON_NAME}
, STATUS = #{STATUS}
WHERE OBJID = #{OBJID}
DELETE FROM PMS_QUALITY_DEFECT_REASON
WHERE OBJID = #{OBJID}
DELETE FROM PMS_QUALITY_DEFECT_REASON
WHERE DEFECT_TYPE_OBJID = #{OBJID}
INSERT INTO PMS_QUALITY_INCOMING_INSPECTION (
OBJID
, PURCHASE_ORDER_MASTER_OBJID
, INSPECTOR_ID
, INSPECTION_DATE
, INSPECTION_RESULT
, INSPECTION_MEMO
, WRITER
, REG_DATE
) VALUES (
#{OBJID}
, #{PURCHASE_ORDER_MASTER_OBJID}
, #{INSPECTOR_ID}
, TO_DATE(#{INSPECTION_DATE}, 'YYYY-MM-DD')
, #{INSPECTION_RESULT}
, #{INSPECTION_MEMO}
, #{writer}
, SYSDATE
)
UPDATE PMS_QUALITY_INCOMING_INSPECTION
SET INSPECTOR_ID = #{INSPECTOR_ID}
, INSPECTION_DATE = TO_DATE(#{INSPECTION_DATE}, 'YYYY-MM-DD')
, INSPECTION_RESULT = #{INSPECTION_RESULT}
, INSPECTION_MEMO = #{INSPECTION_MEMO}
WHERE OBJID = #{OBJID}