require_relative '../resource' module Tickethub class Supplier::Booking < Resource path '/supplier/bookings' require_relative 'booking/ticket' require_relative 'booking/voucher' require_relative 'rate' require_relative 'order' require_relative 'answer' require_relative 'product' require_relative 'variant' require_relative 'message' require_relative 'purchase' require_relative 'fee' require_relative 'discount' require_relative 'broadcast' collection_method :broadcast do |params| Supplier::Broadcast.call self.endpoint, begin post(:broadcast, params) rescue Tickethub::ResourceInvalid => err Tickethub::Response.new(err.response).decoded end end collection :answers, Supplier::Answer collection :messages, Supplier::Message collection :purchases, Supplier::Purchase collection :fees, Supplier::Fee collection :discounts, Supplier::Discount association :order, Supplier::Order association :rate, Supplier::Rate association :coupon, Supplier::Coupon association :product, Supplier::Product association :variant, Supplier::Variant attribute :amount, type: :money attribute :discount, type: :money attribute :tax, type: :money attribute :total, type: :money attribute :currency, type: :currency attribute :created_at, type: :datetime attribute :updated_at, type: :datetime attribute :cancelled_at, type: :datetime def notify @endpoint[:notify].post end end end