MERGE INTO PMS_PROBLEM_GROUP USING DUAL ON (OBJID = #{objId})
WHEN MATCHED THEN
UPDATE SET
REGION = #{region}
, STEP1 = #{step1}
, STEP2 = #{step2}
, CAR_OBJID = #{carObjId}
, PROD_OBJID = #{prodObjId}
, TEST_TYPE_OBJID = #{testTypeObjId}
, TITLE = #{title}
, RES_PIC = #{resPIC}
WHEN NOT MATCHED THEN
INSERT (
OBJID
, REGION
, STEP1
, STEP2
, CAR_OBJID
, PROD_OBJID
, TEST_TYPE_OBJID
, TITLE
, RES_PIC
, WRITER
, REGDATE
, STATUS
) VALUES (
#{objId}
, #{region}
, #{step1}
, #{step2}
, #{carObjId}
, #{prodObjId}
, #{testTypeObjId}
, #{title}
, #{resPIC}
, #{writer}
, SYSDATE
, 'create'
)
UPDATE PMS_PROBLEM_GROUP SET DISTRIBUTE_DATE = SYSDATE WHERE OBJID = #{targetObjId}
UPDATE PMS_PROBLEM_GROUP SET RES_DISTRIBUTE_DATE = SYSDATE WHERE OBJID = #{targetObjId}
MERGE INTO PMS_PROBLEM_INFO USING DUAL ON (OBJID = #{objId})
WHEN MATCHED THEN
UPDATE SET
TYPE1 = #{type1}
, TYPE2 = #{type2}
, IMPUTATION = #{imputation}
, PART_NO = #{partNo}
, REQ_DATE = TO_DATE(#{reqDate}, 'YYYY-MM-DD')
, RES_PLAN_DATE = TO_DATE(#{resPlanDate}, 'YYYY-MM-DD')
, SUBJECT = #{subject}
, PROBLEM_CONTENTS = #{problemContents}
, PROBLEM_REASON_CONTENTS = #{problemReasonContents}
, UNMANAGE_TYPE = #{unManageType}
, RESPONSE_CONTENTS = #{responseContents}
, RES_MODIFY_DATE = TO_DATE(#{resModifyDate}, 'YYYY-MM-DD')
, REFLECT_PLAN_DATE = TO_DATE(#{reflectPlanDate}, 'YYYY-MM-DD')
, REFLECT_RESULT = #{reflectResult}
, CONTINUAL_MNG_TYPE = #{continualMngType}
WHEN NOT MATCHED THEN
INSERT (
OBJID
, TARGET_OBJID
, TYPE1
, TYPE2
, IMPUTATION
, REQ_DATE
, PART_NO
, RES_PLAN_DATE
, SUBJECT
, PROBLEM_CONTENTS
, PROBLEM_REASON_CONTENTS
, UNMANAGE_TYPE
, RESPONSE_CONTENTS
, RES_MODIFY_DATE
, REFLECT_PLAN_DATE
, REFLECT_RESULT
, CONTINUAL_MNG_TYPE
, WRITER
, REGDATE
, STATUS
) VALUES (
#{objId}
, #{targetObjId}
, #{type1}
, #{type2}
, #{imputation}
, TO_DATE(#{reqDate}, 'YYYY-MM-DD')
, #{partNo}
, TO_DATE(#{resPlanDate}, 'YYYY-MM-DD')
, #{subject}
, #{problemContents}
, #{problemReasonContents}
, #{unManageType}
, #{responseContents}
, #{resModifyDate}
, #{reflectPlanDate}
, #{reflectResult}
, #{continualMngType}
, #{writer}
, SYSDATE
, 'create'
)
UPDATE PMS_PROBLEM_INFO SET STATUS = #{status} WHERE OBJID = #{objId}
UPDATE PMS_PROBLEM_GROUP SET STATUS = 'complete' WHERE OBJID = #{targetObjId}
UPDATE PMS_PROBLEM_INFO SET CONTINUAL_MNG_TYPE = #{type} WHERE OBJID = #{objId}
UPDATE PMS_PROBLEM_INFO SET CONTINUAL_MNG_TYPE_RESULT = '' WHERE OBJID = #{objId}
INSERT INTO PMS_PROBLEM_CONTINUAL_HISTORY(
OBJID
, TARGET_OBJID
, RESULT_COMMENT
, RESULT
, WRITER
, REGDATE
, TARGET_TYPE
) VALUES (
#{objId}
, #{targetObjId}
, #{resultComment}
, #{result}
, #{writer}
, SYSDATE
, #{targetType}
)
UPDATE PMS_PROBLEM_INFO A SET
A.CONTINUAL_MNG_TYPE = #{result}
, A.CONTINUAL_MNG_TYPE_RESULT = #{result}
, A.CONTINUAL_MNG_REVIEW_TYPE = #{continualMngReviewType}
, A.CONTINUAL_MNG_RECHOICE_TYPE = #{continualMngRechoiceType}
, A.CONTINUAL_MNG_TYPE1 = #{continualMngType1}
, A.CONTINUAL_MNG_TYPE2 = #{continualMngType2}
, A.CONTINUAL_MNG_TYPE1 = A.TYPE1
, A.CONTINUAL_MNG_TYPE2 = A.TYPE2
WHERE OBJID = #{targetObjId}
MERGE INTO PMS_PROBLEM_CONTINUAL_REFLECT USING DUAL ON (OBJID = #{objId})
WHEN MATCHED THEN
UPDATE
SET
OEM_OBJID = #{oemObjId}
, CAR_OBJID = #{carObjId}
, PART_NO = #{partNo}
, STEP1 = #{step1}
, STEP2 = #{step2}
, REFLECT_DATE = TO_DATE(#{reflectDate}, 'yyyy-mm-dd')
, REFLECT_RESULT = #{reflectResult}
, REFLECT_CONTENTS = #{reflectContents}
WHEN NOT MATCHED THEN
INSERT (
OBJID
, TARGET_OBJID
, OEM_OBJID
, CAR_OBJID
, PART_NO
, STEP1
, STEP2
, REFLECT_DATE
, REFLECT_RESULT
, REFLECT_CONTENTS
, WRITER
, REGDATE
) VALUES (
#{objId}
, #{targetObjId}
, #{oemObjId}
, #{carObjId}
, #{partNo}
, #{step1}
, #{step2}
, TO_DATE(#{reflectDate}, 'YYYY-MM-DD')
, #{reflectResult}
, #{reflectContents}
, #{writer}
, sysdate
)