Advertisement
Guest User

Untitled

a guest
Nov 25th, 2015
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.84 KB | None | 0 0
  1. # @attr [integer] id
  2. # @attr [string] number
  3. # @attr [integer] item_count
  4. # @attr [float] total
  5. # @attr [string] state
  6. # @attr [boolean] use_billing
  7. # @attr [integer] state_lock_version
  8. # @attr [float] item_total
  9. # @attr [float] shipment_total
  10. # @attr [string] currency
  11. # @attr [string] display_total
  12. # @attr [string] display_item_total
  13. # @attr [string] display_shipment_total
  14. # @attr [date-time] completed_at
  15. # @attr [string] email
  16. # @attr [boolean] guest
  17. # @attr [boolean] approved
  18. # @attr [boolean] can_approve
  19. # @attr [boolean] can_cancel
  20. # @attr [boolean] can_resume
  21. # @attr [boolean] can_ship
  22. # @attr [string] payment_state
  23. # @attr [string] shipment_state
  24. # @attr [float] included_tax_total
  25. # @attr [float] outstanding_balance
  26. # @attr [UserSerializer] user
  27. # @attr [StoreSerializer] stores
  28. # @attr [AddressSerializer] billing_address
  29. # @attr [AddressSerializer] shipping_address
  30. # @attr [Array<LineItemSerializer>] line_items
  31. # @attr [Array<ShipmentSerializer>] shipments
  32. # @attr [Array<PaymentSourceSerializer>] payments
  33. # @attr [Array<ShipmentAdjustmentsSerializer>] shipment_adjustments
  34. # @attr [Array<TaxAdjustmentSerializer>] tax_adjustments
  35. # @attr [Array<TaxAdjustmentSerializer>] details_adjustments
  36. class Admin::OrderSerializer < ::OrderSerializer
  37.  
  38. attribute :completed_at
  39. attribute :email
  40. attribute :guest
  41. attribute :payment_state
  42. attribute :shipment_state
  43. attribute :included_tax_total
  44. attribute :approved?, key: :approved
  45. attribute :approved?, key: :approved
  46. attribute :can_approve?, key: :can_approve
  47. attribute :can_cancel?, key: :can_cancel
  48. attribute :can_resume?, key: :can_resume
  49. attribute :can_ship?, key: :can_ship
  50. attribute :payment_state
  51. attribute :shipment_state
  52. attribute :outstanding_balance
  53.  
  54. has_one :user, serializer: UserSerializer
  55. has_one :store, serializer: StoreSerializer
  56. has_one :billing_address, serializer: AddressSerializer
  57. has_one :shipping_address, serializer: AddressSerializer
  58.  
  59. has_many :line_items, serializer: LineItemSerializer
  60. has_many :shipments, serializer: ShipmentSerializer
  61. has_many :payments, serializer: PaymentSerializer
  62. has_many :shipment_adjustments, serializer: ShipmentAdjustmentsSerializer
  63. has_many :tax_adjustments, serializer: Admin::TaxAdjustmentsSerializer
  64. has_many :details_adjustments, serializer: Admin::TaxAdjustmentsSerializer
  65.  
  66. def completed_at
  67. # We need to reload the model in order to get the correct completed_at.
  68. # TODO: find a way to avoid this.
  69. object.reload
  70.  
  71. return unless object.completed_at
  72.  
  73. object.completed_at.utc.iso8601
  74. end
  75.  
  76. def guest
  77. object.user && object.user.guest?
  78. end
  79.  
  80. # NOTE: in the future we can change the name to 'line_item_tax_adjustments'
  81. def tax_adjustments
  82. object.line_item_adjustments.tax
  83. end
  84.  
  85. def details_adjustments
  86. get_details_adjustments(object)
  87. end
  88.  
  89. def shipment_adjustments
  90. object.shipments
  91. end
  92.  
  93. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement