Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # @attr [integer] id
- # @attr [string] number
- # @attr [integer] item_count
- # @attr [float] total
- # @attr [string] state
- # @attr [boolean] use_billing
- # @attr [integer] state_lock_version
- # @attr [float] item_total
- # @attr [float] shipment_total
- # @attr [string] currency
- # @attr [string] display_total
- # @attr [string] display_item_total
- # @attr [string] display_shipment_total
- # @attr [date-time] completed_at
- # @attr [string] email
- # @attr [boolean] guest
- # @attr [boolean] approved
- # @attr [boolean] can_approve
- # @attr [boolean] can_cancel
- # @attr [boolean] can_resume
- # @attr [boolean] can_ship
- # @attr [string] payment_state
- # @attr [string] shipment_state
- # @attr [float] included_tax_total
- # @attr [float] outstanding_balance
- # @attr [UserSerializer] user
- # @attr [StoreSerializer] stores
- # @attr [AddressSerializer] billing_address
- # @attr [AddressSerializer] shipping_address
- # @attr [Array<LineItemSerializer>] line_items
- # @attr [Array<ShipmentSerializer>] shipments
- # @attr [Array<PaymentSourceSerializer>] payments
- # @attr [Array<ShipmentAdjustmentsSerializer>] shipment_adjustments
- # @attr [Array<TaxAdjustmentSerializer>] tax_adjustments
- # @attr [Array<TaxAdjustmentSerializer>] details_adjustments
- class Admin::OrderSerializer < ::OrderSerializer
- attribute :completed_at
- attribute :email
- attribute :guest
- attribute :payment_state
- attribute :shipment_state
- attribute :included_tax_total
- attribute :approved?, key: :approved
- attribute :approved?, key: :approved
- attribute :can_approve?, key: :can_approve
- attribute :can_cancel?, key: :can_cancel
- attribute :can_resume?, key: :can_resume
- attribute :can_ship?, key: :can_ship
- attribute :payment_state
- attribute :shipment_state
- attribute :outstanding_balance
- has_one :user, serializer: UserSerializer
- has_one :store, serializer: StoreSerializer
- has_one :billing_address, serializer: AddressSerializer
- has_one :shipping_address, serializer: AddressSerializer
- has_many :line_items, serializer: LineItemSerializer
- has_many :shipments, serializer: ShipmentSerializer
- has_many :payments, serializer: PaymentSerializer
- has_many :shipment_adjustments, serializer: ShipmentAdjustmentsSerializer
- has_many :tax_adjustments, serializer: Admin::TaxAdjustmentsSerializer
- has_many :details_adjustments, serializer: Admin::TaxAdjustmentsSerializer
- def completed_at
- # We need to reload the model in order to get the correct completed_at.
- # TODO: find a way to avoid this.
- object.reload
- return unless object.completed_at
- object.completed_at.utc.iso8601
- end
- def guest
- object.user && object.user.guest?
- end
- # NOTE: in the future we can change the name to 'line_item_tax_adjustments'
- def tax_adjustments
- object.line_item_adjustments.tax
- end
- def details_adjustments
- get_details_adjustments(object)
- end
- def shipment_adjustments
- object.shipments
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement