pur_id, pur_no, pur_type, org_id, staff_id, sup_id, contact_name, contact_phone, pickup_date, sys.f_remove_zero(sum_quantity) as sum_quantity, sum_standard, sum_amount, pur_discount, pur_status, into_status, sys.f_remove_zero(intoing_qty) as intoing_qty, intoing_amt, sys.f_remove_zero(into_qty) as into_qty, into_amt, sys.f_remove_zero(return_qty) as return_qty, return_amt, amt_payable, amt_handle, amt_residue, remarks, annex_paths, make_staff, make_time, flg_valid, cp_id, op_create_time, op_create_user_id, op_update_time, op_update_user_id, op_app_code, op_timestamp, op_db_user, flg_auto_handle,inbound_processing_flag tpp.pur_id, tpp.pur_no, tpp.pur_type, tpp.org_id, tpp.staff_id, tpp.sup_id, tpp.contact_name, tpp.contact_phone, tpp.pickup_date, sys.f_remove_zero(tpp.sum_quantity) as sum_quantity, tpp.sum_standard, tpp.sum_amount, tpp.pur_discount, tpp.pur_status, tpp.into_status, sys.f_remove_zero(tpp.intoing_qty) as intoing_qty, tpp.intoing_amt, sys.f_remove_zero(tpp.into_qty) as into_qty, tpp.into_amt, sys.f_remove_zero(tpp.return_qty) as return_qty, tpp.return_amt, tpp.amt_payable, tpp.amt_handle, tpp.amt_residue, tpp.remarks, tpp.annex_paths, tpp.make_staff, tpp.make_time, tpp.flg_valid, tpp.cp_id, tpp.op_create_time, tpp.op_create_user_id, tpp.op_update_time, tpp.op_update_user_id, tpp.op_app_code, tpp.op_timestamp, tpp.op_db_user, tpp.wh_id, tpp.from_ids, tpp.from_nos, tpp.flg_auto_handle, tpp.inbound_processing_flag AND pur_no = #{purNo} AND pur_type = #{purType} AND org_id = #{orgId} AND staff_id = #{staffId} AND sup_id = #{supId} AND contact_name = #{contactName} AND contact_phone = #{contactPhone} AND pickup_date = #{pickupDate} AND sum_quantity = #{sumQuantity} AND sum_standard = #{sumStandard} AND sum_amount = #{sumAmount} AND pur_discount = #{purDiscount} AND pur_status = #{purStatus} AND into_status = #{intoStatus} AND intoing_qty = #{intoingQty} AND intoing_amt = #{intoingAmt} AND into_qty = #{intoQty} AND into_amt = #{intoAmt} AND return_qty = #{returnQty} AND return_amt = #{returnAmt} AND amt_payable = #{amtPayable} AND amt_handle = #{amtHandle} AND amt_residue = #{amtResidue} AND remarks = #{remarks} AND annex_paths = #{annexPaths} AND make_staff = #{makeStaff} AND make_time = #{makeTime} AND flg_valid = #{flgValid} AND cp_id = #{cpId} AND op_create_time = #{opCreateTime} AND op_create_user_id = #{opCreateUserId} AND op_update_time = #{opUpdateTime} AND op_update_user_id = #{opUpdateUserId} AND op_app_code = #{opAppCode} AND op_timestamp = #{opTimestamp} AND op_db_user = #{opDbUser} AND tmo.org_name LIKE concat('%',my_ex.likequery(#{orgName}),'%') AND tms.staff_name LIKE concat('%',my_ex.likequery(#{staffName}),'%') AND tpp.pur_id = #{purId}::uuid AND tpp.pur_no like concat('%', my_ex.likequery(#{purNo}) , '%') AND tpp.pur_type = #{purType} AND tpp.org_id = #{orgId} AND tpp.staff_id = #{staffId} AND tpp.sup_id = #{supId}::uuid AND tpp.contact_name like concat('%', my_ex.likequery(#{contactName}) , '%') AND tpp.contact_phone like concat('%', my_ex.likequery(#{contactPhone}) , '%') AND tpp.pickup_date = #{pickupDate} AND tpp.sum_quantity = #{sumQuantity} AND tpp.sum_standard = #{sumStandard} AND tpp.sum_amount = #{sumAmount} AND tpp.pur_discount = #{purDiscount} AND tpp.pur_status = #{purStatus} AND tpp.into_status = #{intoStatus} AND tpp.intoing_qty = #{intoingQty} AND tpp.intoing_amt = #{intoingAmt} AND tpp.into_qty = #{intoQty} AND tpp.into_amt = #{intoAmt} AND tpp.return_qty = #{returnQty} AND tpp.return_amt = #{returnAmt} AND tpp.amt_payable = #{amtPayable} AND tpp.amt_handle = #{amtHandle} AND tpp.amt_residue = #{amtResidue} AND tpp.remarks = #{remarks} AND tpp.annex_paths = #{annexPaths} AND tpp.make_staff = #{makeStaff} AND tpp.make_time = #{makeTime} AND tpp.make_time >= #{makeTimeStart}::timestamp with time zone AND tpp.make_time < #{makeTimeEnd}::timestamp with time zone + interval '1 day' AND tpp.op_create_time = #{opCreateTime} AND tpp.op_create_user_id = #{opCreateUserId} AND tpp.op_update_time = #{opUpdateTime} AND tpp.op_update_user_id = #{opUpdateUserId} AND tpp.op_app_code = #{opAppCode} AND tpp.op_timestamp = #{opTimestamp} AND tpp.op_db_user = #{opDbUser} AND tpp.into_status = #{intoStatus} AND tpp.into_status = any(#{intoStatusList,typeHandler=StringListTypeHandler}) and exists (select 1 from dkic_b.t_psi_purchase_item tppi left join dkic_b.t_mst_goods_sku tmgs on tmgs.sku_id = tppi.sku_id where tpp.pur_id = tppi.pur_id and tppi.flg_valid AND position(#{skuName} in tmgs.sku_name) > 0 ) AND tpp.pickup_date >= #{pickupDateStart}::timestamp with time zone AND tpp.pickup_date < #{pickupDateEnd}::timestamp with time zone + interval '1 day' AND ( tmp.sup_name LIKE concat('%',my_ex.likequery(#{searchText}), '%')or tpp.pur_no LIKE concat('%',my_ex.likequery(#{searchText}), '%')) AND tpp.flg_valid = #{flgValid} AND tpp.cp_id = #{cpId} AND tpp.org_id = any(#{orgIds, typeHandler=UuidListTypeHandler}) AND tpp.staff_id = any(#{staffIds, typeHandler=uuidListTypeHandler}) WHERE pur_id in #{item} ,tppi.item_id as "List_item_id", tppi.pur_id as "List_pur_id", tpp.pur_no as "List_pur_no", tppi.item_index as "List_item_index", tppi.sku_id as "List_sku_id", sys.f_remove_zero(tppi.item_qty) as "List_item_qty", tppi.price_std as "pricePurchase", tppi.amt_std as "List_amt_std", tppi.price_pur as "List_price_pur", tppi.item_amt as "List_item_amt", tppi.price_discount as "List_price_discount", tppi.non_std_code as "List_non_std_code", tppi.into_status as "List_into_status", sys.f_remove_zero(tppi.intoing_qty) as "List_intoing_qty", tppi.intoing_amt as "List_intoing_amt", sys.f_remove_zero(tppi.into_qty) as "List_into_qty", tppi.into_amt as "List_into_amt", sys.f_remove_zero(tppi.return_qty) as "List_return_qty", tppi.return_amt as "List_return_amt", tppi.remarks as "List_remarks", tppi.flg_valid as "List_flg_valid", tppi.cp_id as "List_cp_id", tppi.op_create_time as "List_op_create_time", tppi.op_create_user_id as "List_op_create_user_id", tppi.op_update_time as "List_op_update_time", tppi.op_update_user_id as "List_op_update_user_id", tppi.op_app_code as "List_op_app_code", tppi.op_timestamp as "List_op_timestamp", tppi.op_db_user as "List_op_db_user", tmgs.sku_code AS list_sku_code, tmgs.sku_name AS list_sku_name, tmgb.short_name AS list_short_name, tmgs.sku_model AS list_sku_model, tmgs.price_purchase AS list_price_purchase, tmgs.price_standard AS list_price_standard, tmgs.sku_images AS list_sku_images, sys.f_remove_zero(tpit.usable_qty) AS list_usable_qty, sys.f_remove_zero(tpit.inv_qty) AS list_inv_qty, tpit.outing_qty AS list_outing_qty, sys.f_get_name_i18n(tdk1.kind_name_i18n, #{i18n}) as "intoStatusName", sys.f_get_name_i18n(tdk2.kind_name_i18n, #{i18n}) as "purStatusName" update dkic_b.t_psi_purchase return_qty= #{returnQty}, return_amt = #{returnAmt}, where pur_id = #{purId}::uuid update dkic_b.t_psi_purchase pur_no = #{et.purNo,jdbcType=VARCHAR}, pur_type = #{et.purType,jdbcType=VARCHAR}, org_id = #{et.orgId,typeHandler=UuidTypeHandler}, staff_id = #{et.staffId,typeHandler=UuidTypeHandler}, sup_id = #{et.supId,typeHandler=UuidTypeHandler}, contact_name = #{et.contactName,jdbcType=VARCHAR}, contact_phone = #{et.contactPhone,jdbcType=VARCHAR}, pickup_date = #{et.pickupDate,jdbcType=DATE}, sum_quantity = #{et.sumQuantity,jdbcType=NUMERIC}, sum_standard = #{et.sumStandard,jdbcType=NUMERIC}, sum_amount = #{et.sumAmount,jdbcType=NUMERIC}, pur_discount = #{et.purDiscount,jdbcType=NUMERIC}, pur_status = #{et.purStatus,jdbcType=VARCHAR}, into_status = #{et.intoStatus,jdbcType=VARCHAR}, intoing_qty = intoing_qty + #{et.intoingQty,jdbcType=NUMERIC}, intoing_amt = intoing_amt + #{et.intoingAmt,jdbcType=NUMERIC}, into_qty = into_qty + #{et.intoQty,jdbcType=NUMERIC}, into_amt = into_amt + #{et.intoAmt,jdbcType=NUMERIC}, return_qty = #{et.returnQty,jdbcType=NUMERIC}, return_amt = #{et.returnAmt,jdbcType=NUMERIC}, amt_payable = #{et.amtPayable,jdbcType=NUMERIC}, amt_handle = #{et.amtHandle,jdbcType=NUMERIC}, amt_residue = #{et.amtResidue,jdbcType=NUMERIC}, remarks = #{et.remarks,jdbcType=VARCHAR}, annex_paths = #{et.annexPaths,typeHandler=JsonTypeHandler}, make_staff = #{et.makeStaff,jdbcType=OTHER}, make_time = #{et.makeTime,jdbcType=TIMESTAMP}, flg_valid = #{et.flgValid,jdbcType=BOOLEAN}, cp_id = #{et.cpId,jdbcType=INTEGER}, wh_id = #{et.whId,typeHandler=UuidTypeHandler}, flg_auto_handle = #{et.flgAutoHandle,jdbcType=BOOLEAN}, inbound_processing_flag = #{et.inboundProcessingFlag,jdbcType=BOOLEAN}, where pur_id = #{et.purId,typeHandler=UuidTypeHandler} and sum_quantity >= ( into_qty + #{et.intoQty,jdbcType=NUMERIC} + intoing_qty + #{et.intoingQty,jdbcType=NUMERIC} )