select d.dept_id, d.post_id, (select post_name from sys_post where post_id = d.post_id) postName, d.dept_type, d.layer_id, d.datasource_name, d.dataset_name, d.centerpoint_lon, d.centerpoint_lat, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.phone, d.email, d.status, d.del_flag, d.create_by, d.create_time
from sys_dept d
insert into sys_dept(
dept_id,
post_id,
dept_type,
layer_id,
dataset_name,
datasource_name,
centerpoint_lon,
centerpoint_lat,
parent_id,
dept_name,
ancestors,
order_num,
leader,
phone,
email,
status,
create_by,
create_time
)values(
#{deptId},
#{postId},
#{deptType},
#{layerId},
#{datasetName},
#{datasourceName},
#{centerpointLon},
#{centerpointLat},
#{parentId},
#{deptName},
#{ancestors},
#{orderNum},
#{leader},
#{phone},
#{email},
#{status},
#{createBy},
sysdate()
)
update sys_dept
post_id = #{postId},
dept_type = #{deptType},
layer_id = #{layerId},
dataset_name = #{datasetName},
datasource_name = #{datasourceName},
centerpoint_lon = #{centerpointLon},
centerpoint_lat = #{centerpointLat},
parent_id = #{parentId},
dept_name = #{deptName},
ancestors = #{ancestors},
order_num = #{orderNum},
leader = #{leader},
phone = #{phone},
email = #{email},
status = #{status},
update_by = #{updateBy},
update_time = sysdate()
where dept_id = #{deptId}
update sys_dept set ancestors =
when #{item.deptId} then #{item.ancestors}
where dept_id in
#{item.deptId}
update sys_dept set del_flag = '2' where dept_id = #{deptId}
update sys_dept
status = #{status},
update_by = #{updateBy},
update_time = sysdate()
where dept_id in (${ancestors})