# frozen_string_literal: true module ErpIntegration # The `ErpIntegration::CustomerShipment` exposes an uniformed API for interaction with # third-party ERP vendors. class CustomerShipment < Resource attr_accessor :acknowledged_by_3pl_at, :aes_itn, :assigned_by, :assigned_time, :attachments, :available_carrier_services, :avg_cycle_time, :avg_cycle_time_cache, :carrier, :carrier_billing_account, :carrier_cost_method, :carrier_duties_account, :carrier_service, :channel_carrier_service_code, :channel_logo_url, :channels, :checklists, :company, :consumable_moves, :consumables_cost, :consumables_cost_cache, :contact_categories, :contents_explanation, :contents_type, :cost, :cost_currency, :cost_currency_digits, :cost_invoice_line, :create_date, :create_return_label, :create_uid, :customer, :customer_location, :customs_items, :default_box_type, :delivery_address, :delivery_address_datetime, :delivery_mode, :done_by, :duties_tax_id, :duties_tax_id_type, :eel_pfc, :effective_date, :eori_number, :fedex_saturday_delivery, :full_delivery_address, :gift_message, :has_gift_message, :hold_reason, :id, :incoterm, :insurance_amount, :inventory_moves, :invoices, :is_international_shipping, :is_shippo, :last_modification, :license_plates, :messages, :metadata, :moves, :non_delivery_option, :number, :on_hold, :on_hold_until, :order_confirmation_time, :order_numbers, :origins, :outgoing_moves, :packages, :packed_at, :packed_by, :packed_date, :packer, :payment_status, :payment_transactions, :picked_at, :picked_date, :picker, :picking_started_at, :picking_status, :planned_date, :planned_datetime, :planned_time, :priority, :private_notes, :productions, :public_notes, :rec_blurb, :rec_name, :reference, :request_confirmation, :requested_delivery_date, :requested_shipping_service, :require_customs, :root_packages, :sale_date, :sales, :sent_to_3pl_at, :shipped_at, :shipper, :shipping_batch, :shipping_instructions, :shipping_label_date, :shipping_label_printed, :shipping_manifest, :sscc_code, :state, :tax_id, :total_amount_ccy, :total_cost, :total_customs_value, :total_item_cost_ccy, :total_quantity, :tpl, :tpl_status, :tracking_export_status, :tracking_number, :tracking_number_blurb, :tsv, :ups_saturday_delivery, :warehouse, :warehouse_output, :warehouse_storage, :weight, :weight_digits, :weight_uom, :weight_uom_symbol, :write_date, :write_uid # @param warehouse_ids [Array, Integer] The warehouse(s) to move the shipment to def move_to(*warehouse_ids) self.class.adapter.change_warehouse(id, *warehouse_ids) end def split(options) self.class.adapter.split(id, options) end def mark_as_packed! self.class.adapter.mark_as_packed!(id) end end end