select t.task_id, t.task_code, t.task_type, t.task_status, t.task_description,
t.departure_address, t.destination_address, t.departure_longitude, t.departure_latitude,
t.destination_longitude, t.destination_latitude, t.estimated_distance,
t.planned_start_time, t.planned_end_time,
t.actual_start_time, t.actual_end_time, t.creator_id, t.assignee_id, t.dept_id,
t.create_time, t.update_time, t.create_by, t.update_by, t.remark, t.del_flag, t.legacy_synced,
u1.nick_name as creator_name, u2.nick_name as assignee_name, d.dept_name,
(
select v2.vehicle_no
from sys_task_vehicle tv2
left join tb_vehicle_info v2 on tv2.vehicle_id = v2.vehicle_id
where tv2.task_id = t.task_id
order by tv2.assign_time asc
limit 1
) as vehicle_no,
tv.id as tv_id, tv.task_id as tv_task_id, tv.vehicle_id as tv_vehicle_id,
v.vehicle_no as tv_vehicle_no, v.vehicle_type as tv_vehicle_type,
v.vehicle_brand as tv_vehicle_brand, v.vehicle_model as tv_vehicle_model,
tv.assign_time as tv_assign_time, tv.assign_by as tv_assign_by,
tv.status as tv_status, tv.remark as tv_remark
from sys_task t
left join sys_user u1 on t.creator_id = u1.user_id
left join sys_user u2 on t.assignee_id = u2.user_id
left join sys_dept d on t.dept_id = d.dept_id
left join sys_task_vehicle tv on t.task_id = tv.task_id
left join tb_vehicle_info v on tv.vehicle_id = v.vehicle_id
select t.task_id, t.task_code, t.task_type, t.task_status, t.task_description,
t.departure_address, t.destination_address, t.departure_longitude, t.departure_latitude,
t.destination_longitude, t.destination_latitude, t.estimated_distance,
t.planned_start_time, t.planned_end_time,
t.actual_start_time, t.actual_end_time, t.creator_id, t.assignee_id, t.dept_id,
t.create_time, t.update_time, t.create_by, t.update_by, t.remark, t.del_flag, t.legacy_synced,
u1.nick_name as creator_name, u2.nick_name as assignee_name, d.dept_name,
(
select v2.vehicle_no
from sys_task_vehicle tv2
left join tb_vehicle_info v2 on tv2.vehicle_id = v2.vehicle_id
where tv2.task_id = t.task_id
order by tv2.assign_time asc
limit 1
) as vehicle_no,
tv.id as tv_id, tv.task_id as tv_task_id, tv.vehicle_id as tv_vehicle_id,
v.vehicle_no as tv_vehicle_no, v.vehicle_type as tv_vehicle_type,
v.vehicle_brand as tv_vehicle_brand, v.vehicle_model as tv_vehicle_model,
tv.assign_time as tv_assign_time, tv.assign_by as tv_assign_by,
tv.status as tv_status, tv.remark as tv_remark,
CASE
WHEN e.legacy_dispatch_ord_class IS NOT NULL
AND e.legacy_dispatch_ns_time IS NOT NULL
AND e.legacy_dispatch_ord_no IS NOT NULL
THEN CONCAT(e.legacy_dispatch_ord_class,
DATE_FORMAT(e.legacy_dispatch_ns_time, '%Y%m%d'),
'-',
LPAD(CAST(e.legacy_dispatch_ord_no AS CHAR), 3, '0'))
ELSE NULL
END AS dispatch_code,
CASE
WHEN e.legacy_service_ord_class IS NOT NULL
AND e.legacy_service_ns_time IS NOT NULL
AND e.legacy_service_ord_no IS NOT NULL
THEN CONCAT(e.legacy_service_ord_class,
DATE_FORMAT(e.legacy_service_ns_time, '%Y%m%d'),
'-',
LPAD(CAST(e.legacy_service_ord_no AS CHAR), 3, '0'))
ELSE NULL
END AS service_code
from sys_task t
left join sys_user u1 on t.creator_id = u1.user_id
left join sys_user u2 on t.assignee_id = u2.user_id
left join sys_dept d on t.dept_id = d.dept_id
left join sys_task_vehicle tv on t.task_id = tv.task_id
left join tb_vehicle_info v on tv.vehicle_id = v.vehicle_id
left join sys_task_emergency e on t.task_id = e.task_id
insert into sys_task
task_code,task_type,task_status,task_description,departure_address,destination_address,departure_longitude,departure_latitude,destination_longitude,destination_latitude,estimated_distance,planned_start_time,planned_end_time,actual_start_time,actual_end_time,creator_id,assignee_id,dept_id,create_time,
update_time,
create_by,update_by,remark,del_flag,#{taskCode},#{taskType},#{taskStatus},#{taskDescription},#{departureAddress},#{destinationAddress},#{departureLongitude},#{departureLatitude},#{destinationLongitude},#{destinationLatitude},#{estimatedDistance},#{plannedStartTime},#{plannedEndTime},#{actualStartTime},#{actualEndTime},#{creatorId},#{assigneeId},#{deptId},#{createTime},
now(),
#{createBy},#{updateBy},#{remark},#{delFlag},
update sys_task
task_code = #{taskCode},task_type = #{taskType},task_status = #{taskStatus},task_description = #{taskDescription},departure_address = #{departureAddress},destination_address = #{destinationAddress},departure_longitude = #{departureLongitude},departure_latitude = #{departureLatitude},destination_longitude = #{destinationLongitude},destination_latitude = #{destinationLatitude},estimated_distance = #{estimatedDistance},planned_start_time = #{plannedStartTime},planned_end_time = #{plannedEndTime},actual_start_time = #{actualStartTime},actual_end_time = #{actualEndTime},creator_id = #{creatorId},assignee_id = #{assigneeId},dept_id = #{deptId},update_time = #{updateTime},update_by = #{updateBy},remark = #{remark},del_flag = #{delFlag},
where task_id = #{taskId}
update sys_task set
task_status = #{taskStatus},
actual_start_time = #{actualStartTime},actual_end_time = #{actualEndTime},
update_time = #{updateTime},
update_by = #{updateBy}
where task_id = #{taskId}
update sys_task set
assignee_id = #{assigneeId},
update_time = #{updateTime},
update_by = #{updateBy}
where task_id = #{taskId}
update sys_task set del_flag = '2', update_time = now() where task_id = #{taskId}
update sys_task set del_flag = '2', update_time = now() where task_id in
#{taskId}