po_header_id, order_no, site, item_no, part_no, status, qty, umid, convert_factor, price, base_price, want_receive_date, tax_rate, tax, additional_cost, freight, duty, arrive_qty, receive_qty, qty_returned, qty_replace, qty_scrapt, invoice_qty, approve_result, need_inspect_flag, remark, iqc_qty, last_update_by, pr_convert_note, inspect_type_db, inspect_type, inspect_qty, inspect_percent, inspection_level_no, close_tolerance, over_receive_tolerance, item, c_value, c_ship_qty, c_sum_price, c_narrival, c_crd, c_crd_ori, c_inspection, c_real_crd, c_po_place_date, c_po_promise_ready_date, c_po_actual_ready_date, c_china_office_inspection_date, c_ship_to_npc_date, c_inspection_result, c_eta, c_flexid, c_obd, c_doc_sent, c_telex_release, c_advance_payment, c_advance_paid, create_time, c_planner, c_edit, c_end_planner, c_remark_delay, c_customer, qty_cancelled, inspect_method_db, to_inv_nofity_qty, upload_date, order_ref1, order_ref5, batch_no, order_ref4, pre_pay_amount, upload_by, pur_lead_time, order_ref_type, order_ref3, need_receive_flag, upload_flag, id, pre_pay_reverse_amount, out_work_order_flag, order_ref2, qty_rbjs, pre_pay_pay_amount, need_date, inspect_method, inv_notify_qty, standard_tt
UPDATE PODetail
part_no = #{partNo},
status = #{status},
qty = #{qty},
umid = #{umid},
convert_factor = #{convertFactor},
price = #{price},
base_price = #{basePrice},
want_receive_date = #{wantReceiveDate},
tax_rate = #{taxRate},
tax = #{tax},
additional_cost = #{additionalCost},
freight = #{freight},
duty = #{duty},
arrive_qty = #{arriveQty},
receive_qty = #{receiveQty},
qty_returned = #{qtyReturned},
qty_replace = #{qtyReplace},
qty_scrapt = #{qtyScrapt},
invoice_qty = #{invoiceQty},
approve_result = #{approveResult},
need_inspect_flag = #{needInspectFlag},
remark = #{remark},
iqc_qty = #{iqcQty},
last_update_by = #{lastUpdateBy},
pr_convert_note = #{prConvertNote},
inspect_type_db = #{inspectTypeDb},
inspect_type = #{inspectType},
inspect_qty = #{inspectQty},
inspect_percent = #{inspectPercent},
inspection_level_no = #{inspectionLevelNo},
close_tolerance = #{closeTolerance},
over_receive_tolerance = #{overReceiveTolerance},
item = #{item},
c_value = #{value},
c_ship_qty = #{shipQty},
c_sum_price = #{sumPrice},
c_narrival = #{narrival},
c_crd = #{crd},
c_crd_ori = #{crdOri},
c_inspection = #{inspection},
c_real_crd = #{realCrd},
c_po_place_date = #{poPlaceDate},
c_po_promise_ready_date = #{poPromiseReadyDate},
c_po_actual_ready_date = #{poActualReadyDate},
c_china_office_inspection_date = #{chinaOfficeInspectionDate},
c_ship_to_npc_date = #{shipToNpcDate},
c_inspection_result = #{inspectionResult},
c_eta = #{eta},
c_flexid = #{flexid},
c_obd = #{obd},
c_doc_sent = #{docSent},
c_telex_release = #{telexRelease},
c_advance_payment = #{advancePayment},
c_advance_paid = #{advancePaid},
c_planner = #{planner},
c_edit = #{edit},
c_end_planner = #{endPlanner},
c_remark_delay = #{remarkDelay},
standard_tt = #{standardTt},
order_ref1 = #{orderRef1},
order_ref2 = #{orderRef2},
WHERE site = #{site}
AND order_no = #{orderNo}
AND item_no = #{itemNo}
UPDATE PODetail
SET inspect_approve_qty = CASE
WHEN COALESCE(inspect_approve_qty, 0) - #{deductQty} < 0 THEN 0
ELSE COALESCE(inspect_approve_qty, 0) - #{deductQty}
END
WHERE order_no = #{orderNo}
AND site = #{site}
AND item_no = #{itemNo}