class Gemgento::API::SOAP::Sales::OrderShipment
Public Class Methods
add_comment(shipment_comment, email = nil, include_in_email = nil)
click to toggle source
# File lib/gemgento/api/soap/sales/order_shipment.rb, line 7 def self.add_comment(shipment_comment, email = nil, include_in_email = nil) message = { shipment_increment_id: shipment_comment.shipment.increment_id, comment: shipment_comment.comment, email: email, include_in_email: include_in_email } response = MagentoApi.create_call(:sales_order_shipment_add_comment, message) return response.success? end
add_track(shipment_track)
click to toggle source
# File lib/gemgento/api/soap/sales/order_shipment.rb, line 19 def self.add_track(shipment_track) message = { shipment_increment_id: shipment_track.shipment.increment_id, carrier: shipment_track.carrier_code, title: shipment_track.title, track_number: shipment_track.number } response = MagentoApi.create_call(:sales_order_shipment_add_track, message) return response.success? end
create(shipment)
click to toggle source
# File lib/gemgento/api/soap/sales/order_shipment.rb, line 31 def self.create(shipment) message = { order_increment_id: shipment.order.increment_id, email: shipment.email ? 1 : 0, comment: shipment.comment, include_comment: shipment.include_comment ? 1 : 0 } if shipment.shipment_items.any? message[:items_qty] = { item: compose_items_qty(shipment.shipment_items) } end response = MagentoApi.create_call(:sales_order_shipment_create, message) if response.success? return response.body[:shipment_increment_id] else return false end end
get_carriers(order_increment_id)
click to toggle source
# File lib/gemgento/api/soap/sales/order_shipment.rb, line 52 def self.get_carriers(order_increment_id) message = { order_increment_id: order_increment_id, } response = MagentoApi.create_call(:sales_order_shipment_get_carriers, message) if response.success? if response.body[:result][:item].nil? return response.body[:result] else response.body[:result][:item] end else return false end end
info(shipment_increment_id)
click to toggle source
# File lib/gemgento/api/soap/sales/order_shipment.rb, line 69 def self.info(shipment_increment_id) MagentoApi.create_call(:sales_order_shipment_info, shipment_increment_id: shipment_increment_id) end
list()
click to toggle source
# File lib/gemgento/api/soap/sales/order_shipment.rb, line 73 def self.list response = MagentoApi.create_call(:sales_order_shipment_list) if response.success? return response.body[:result] else return false end end
remove_track(shipment_increment_id, track_id)
click to toggle source
# File lib/gemgento/api/soap/sales/order_shipment.rb, line 83 def self.remove_track(shipment_increment_id, track_id) message = { shipment_increment_id: shipment_increment_id, track_id: track_id } response = MagentoApi.create_call(:sales_order_shipment_remove_track, message) return response.success? end
send_info(shipment_increment_id, comment = '')
click to toggle source
# File lib/gemgento/api/soap/sales/order_shipment.rb, line 93 def self.send_info(shipment_increment_id, comment = '') message = { shipment_increment_id: shipment_increment_id, comment: comment } response = MagentoApi.create_call(:sales_order_shipment_send_info, message) return response.success? end
Private Class Methods
compose_items_qty(shipment_items)
click to toggle source
# File lib/gemgento/api/soap/sales/order_shipment.rb, line 105 def self.compose_items_qty(shipment_items) items_qty = [] shipment_items.each do |shipment_item| items_qty << { 'line_item_id' => shipment_item.line_item.magento_id, qty: shipment_item.quantity } end return items_qty end