select d.dept_id, 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, d.invoice_name, d.invoice_num, d.rate_value, d.open_bank, d.bank_account, d.company_address, d.dept_code from sys_dept d insert into sys_dept( dept_id, parent_id, dept_name, ancestors, order_num, leader, phone, email, status, create_by, invoice_name, invoice_num, rate_value, open_bank, bank_account, company_address, #{deptCode}, create_time )values( #{deptId}, #{parentId}, #{deptName}, #{ancestors}, #{orderNum}, #{leader}, #{phone}, #{email}, #{status}, #{createBy}, #{invoiceName}, #{invoiceNum}, #{rateValue}, #{openBank}, #{bankAccount}, #{companyAddress}, #{deptCode}, sysdate() ) update sys_dept parent_id = #{parentId}, dept_name = #{deptName}, ancestors = #{ancestors}, order_num = #{orderNum}, leader = #{leader}, phone = #{phone}, email = #{email}, status = #{status}, update_by = #{updateBy}, invoice_name = #{invoiceName}, invoice_num = #{invoiceNum}, rate_value = #{rateValue}, open_bank = #{openBank}, bank_account = #{bankAccount}, company_address = #{companyAddress}, dept_code = #{deptCode}, 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 status = '0' where dept_id in #{deptId} update sys_dept set del_flag = '2' where dept_id = #{deptId}