select pps.id, (select max(mp.id) from pro_plan_schedule mp where mp.project_id = pps.project_id and mp.is_del=0) as max_id, pps.com_id, sd.dept_name as com_name, pps.project_id, pi.project_name, pps.plan_id, pps.task_id, pps.task_unique_id, pps.task_name, pps.bim_id, pps.schedule_percent, pp.task_duation, pp.plan_start_date, pp.plan_finish_date, pps.finish_date, pps.description, pps.images, pps.is_del, pps.create_by, pps.create_user_id, pps.create_date, pps.update_by, pps.update_date, pps.total_schedule
from pro_plan_schedule pps
left join pro_project_info pi on pi.id = pps.project_id
left join sys_dept sd on sd.dept_id = pps.com_id
left join pro_plan pp on pp.id = pps.plan_id
insert into pro_plan_schedule
com_id,project_id,plan_id,task_id,task_unique_id,task_name,bim_id,schedule_percent,finish_date,description,images,is_del,create_by,create_user_id,create_date,update_by,update_date,total_schedule,#{comId},#{projectId},#{planId},#{taskId},#{taskUniqueId},#{taskName},#{bimId},#{schedulePercent},#{finishDate},#{description},#{images},#{isDel},#{createBy},#{createUserId},#{createDate},#{updateBy},#{updateDate},#{totalSchedule},
update pro_plan_schedule
com_id = #{comId},project_id = #{projectId},plan_id = #{planId},task_id = #{taskId},task_unique_id = #{taskUniqueId},task_name = #{taskName},bim_id = #{bimId},schedule_percent = #{schedulePercent},finish_date = #{finishDate},description = #{description},images = #{images},is_del = #{isDel},create_by = #{createBy},create_user_id = #{createUserId},create_date = #{createDate},update_by = #{updateBy},update_date = #{updateDate},total_schedule = #{totalSchedule},
where id = #{id}
update pro_plan_schedule set is_del = 2 where id = #{id}
update pro_plan_schedule set is_del = 2 where id in
#{id}
update pro_plan_schedule as a
join (
select max(id) as max_id
from pro_plan_schedule
where project_id = #{proId}
and is_del = '0'
) as b on a.id = b.max_id
set a.total_schedule = #{totalSchedule}