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, create_time ) values ( #{code}, #{taskId}, #{backPerson}, #{backTime}, #{phone}, #{directAuditBy}, #{directAuditTime}, #{directAuditRemark}, #{createBy}, #{updateBy}, #{updateTime}, #{remark}, #{companyId}, NOW() ) insert into back_apply_details ( parent_id, type_id, pre_num, status, create_by, update_by, update_time, remark, company_id, create_time ) values ( #{parentId}, #{typeId}, #{preNum}, '0', #{createBy}, #{createBy}, NOW(), #{remark}, #{companyId}, NOW() ) 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 bai.status = #{status},bad.audit_num=bad.pre_num,bai.direct_audit_by=#{createBy},bai.direct_audit_time=NOW() WHERE bai.id = #{id} 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 bai.status = #{status},bai.direct_audit_remark=#{directAuditRemark},bad.audit_num=bad.pre_num,bai.direct_audit_by=#{createBy},bai.direct_audit_time=NOW() WHERE bai.id = #{id} SELECT bai.id, bai.status, bai.back_person as backPerson, bai.phone, bpl.lot_name as lotName, bui.unit_name as unitName, bai.back_time as backTime, bagi.plan_start_time as planStartTime, tt.task_status as taskStatus, GROUP_CONCAT(DISTINCT bad.type_id) as typeId, GROUP_CONCAT(CONCAT_WS('/', IFNULL(mt2.type_name, ''))) AS typeName, SUM(DISTINCT bad.pre_num) AS num, bai.direct_audit_remark as directAuditRemark FROM back_apply_info bai LEFT JOIN back_apply_details bad on bad.parent_id=bai.id LEFT JOIN tm_task tt on tt.task_id=bai.task_id LEFT JOIN tm_task_agreement tta on tta.task_id=tt.task_id LEFT JOIN bm_agreement_info bagi on bagi.agreement_id=tta.agreement_id LEFT JOIN bm_project_lot bpl on bpl.lot_id=bagi.project_id LEFT JOIN bm_unit_info bui on bui.unit_id=bagi.unit_id LEFT JOIN sys_user us on us.user_id=bai.create_by LEFT JOIN ma_type mt1 ON mt1.type_id=bad.type_id LEFT JOIN ma_type mt2 ON mt2.type_id=mt1.parent_id WHERE bad.type_id is not null and tt.create_by = #{createBy} GROUP BY bai.id, us.user_name, bai.phone, bpl.lot_name, bui.unit_name, bagi.plan_start_time ORDER BY bai.create_time desc 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 tt.task_status = 38 WHERE bai.id = #{id} 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} 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};