insert into tm_task (
task_type, task_status, code, create_by, update_by, update_time, remark, company_id,
create_time
) values (
#{taskType}, #{taskStatus}, #{code}, #{createBy}, #{updateBy}, #{updateTime}, #{remark}, #{companyId},
NOW()
)
insert into tm_task_agreement
(
task_id,
agreement_id,
create_by,
update_by,
update_time,
remark,
company_id,
create_time
) values (
#{taskId},
#{agreementId},
#{createBy},
#{updateBy},
#{updateTime},
#{remark},
#{companyId},
NOW()
)
insert into back_apply_info
(
code,
task_id,
back_person,
back_time,
phone,
direct_audit_by,
direct_audit_time,
direct_audit_remark,
create_by,
update_by,
update_time,
remark,
company_id,
status,
create_time
) values (
#{code},
#{taskId},
#{backPerson},
#{backTime},
#{phone},
#{directAuditBy},
#{directAuditTime},
#{directAuditRemark},
#{createBy},
#{updateBy},
#{updateTime},
#{remark},
#{companyId},
#{status},
NOW()
)
insert into back_apply_details
(
parent_id,
type_id,
pre_num,
status,
create_by,
update_time,
remark,
company_id,
audit_num,
create_time
)
values (
#{id},
#{typeId},
#{num},
'0',
#{createBy},
NOW(),
#{remark},
#{companyId},
#{auditNum},
NOW()
)
insert into back_apply_details
(
parent_id,
type_id,
pre_num,audit_num,
status,
create_by,
update_time,
remark,
company_id,
create_time
)
values (
#{id},
#{typeId},
#{num},#{num},
'0',
#{createBy},
NOW(),
#{remark},
#{companyId},
NOW()
)
insert into back_apply_info
(
code,
task_id,
back_person,
back_time,
phone,
direct_audit_by,
direct_audit_time,
direct_audit_remark,
create_by,
update_by,
update_time,
remark,
company_id,
status,
back_source,
parent_id,
create_time
) values (
#{code},
#{taskId},
#{backPerson},
#{backTime},
#{phone},
#{directAuditBy},
#{directAuditTime},
#{directAuditRemark},
#{createBy},
#{updateBy},
#{updateTime},
#{remark},
#{companyId},
#{status},
#{backSource},
#{parentId},
NOW()
)
insert into back_apply_details
(
parent_id,
type_id,
pre_num,
status,
create_by,
update_time,
remark,
company_id,
audit_num,
create_time
)
values (
#{parentId},
#{typeId},
#{preNum},
'0',
#{createBy},
NOW(),
#{remark},
#{companyId},
#{auditNum},
NOW()
)
update back_apply_details
set pre_num =#{num}
where id = #{detailsId}
UPDATE tm_task tt
LEFT JOIN back_apply_info bai ON bai.task_id = tt.task_id
LEFT JOIN back_apply_details bad on bad.parent_id=bai.id
SET bad.audit_num=#{auditNum},bai.direct_audit_by=#{createBy},bai.status=#{status},bai.direct_audit_time=NOW()
WHERE
bai.id = #{id} and bad.type_id = #{typeId}
and bai.company_id = #{companyId}
UPDATE tm_task tt
LEFT JOIN back_apply_info bai ON bai.task_id = tt.task_id
LEFT JOIN back_apply_details bad on bad.parent_id=bai.id
SET bad.audit_num=bad.pre_num,bai.direct_audit_by=#{createBy},bai.status=#{status},bai.direct_audit_time=NOW()
WHERE
bai.id = #{id}
and bai.company_id = #{companyId}
UPDATE tm_task tt
INNER JOIN back_apply_info bai ON bai.task_id = tt.task_id
SET tt.task_status = #{taskStatus}
WHERE
bai.id = #{id}
UPDATE tm_task tt
SET tt.task_status = #{taskStatus}
WHERE
tt.task_id = #{taskId}
UPDATE tm_task tt
LEFT JOIN back_apply_info bai ON bai.task_id = tt.task_id
LEFT JOIN back_apply_details bad on bad.parent_id=bai.id
SET bad.audit_num=#{auditNum},bai.direct_audit_by=#{createBy},bai.status=#{status},bai.direct_audit_time=NOW()
WHERE
bai.id = #{innerId} and bad.type_id = #{typeId}
and bai.company_id = #{companyId}
UPDATE tm_task tt
INNER JOIN back_apply_info bai ON bai.task_id = tt.task_id
SET tt.task_status = #{taskStatus}
WHERE
bai.id = #{id}
UPDATE back_apply_details set pre_num = #{preNum} ,audit_num = #{auditNum}
WHERE parent_id = #{parentId} and type_id = #{typeId}
DELETE
FROM tm_task_agreement
WHERE task_id IN (SELECT task_id FROM back_apply_info WHERE id = #{id});
DELETE
FROM tm_task
WHERE task_id IN (SELECT task_id FROM back_apply_info WHERE id = #{id});
DELETE
FROM back_apply_details
WHERE parent_id IN (SELECT id FROM back_apply_info WHERE id = #{id});
DELETE
FROM back_apply_info
WHERE id = #{id};
DELETE
FROM tm_task_agreement
WHERE task_id IN (SELECT task_id FROM back_apply_info WHERE id = #{id});
DELETE
FROM tm_task
WHERE task_id IN (SELECT task_id FROM back_apply_info WHERE id = #{id});
DELETE
FROM back_apply_details
WHERE parent_id IN
(select id FROM back_apply_info
WHERE task_id in (SELECT task_id FROM back_apply_info WHERE id = #{id}));
DELETE bai1
FROM back_apply_info bai1
JOIN (
SELECT task_id
FROM back_apply_info
WHERE id = #{id}) bai2 ON bai1.task_id = bai2.task_id;