Sha256: 94576ab82d687b6f89b1dc4ab58c09e783069337f1b318fefc2c156ea17978d0

Contents?: true

Size: 1.63 KB

Versions: 24

Compression:

Stored size: 1.63 KB

Contents

module Centaman
  class Object::Effect < Centaman::Object
    # rubocop:disable Metrics/MethodLength
    def dollar_discount
      effect_type == 'DiscountAmount'
    end

    def percent_discount
      effect_type == 'DiscountPercent'
    end

    def override_discount
      effect_type == 'PriceOverride'
    end

    def attributes
      [
        Centaman::Attribute.new(
          centaman_key: 'Valid',
          app_key: :valid,
          type: :boolean
        ),
        Centaman::Attribute.new(
          centaman_key: 'ProductType',
          app_key: :product_type,
          type: :string
        ),
        Centaman::Attribute.new(
          centaman_key: 'ProductCode',
          app_key: :product_code,
          type: :integer
        ),
        Centaman::Attribute.new(
          centaman_key: 'EffectType',
          app_key: :effect_type,
          type: :string
        ),
        Centaman::Attribute.new(
          centaman_key: 'Amount',
          app_key: :amount,
          type: :float
        ),
        Centaman::Attribute.new(
          centaman_key: 'ReasonInvalid',
          app_key: :reason_invalid,
          type: :string
        ),
        Centaman::Attribute.new(
          centaman_key: 'ValidFrom',
          app_key: :valid_from,
          type: :datetime
        ),
        Centaman::Attribute.new(
          centaman_key: 'ValidUntil',
          app_key: :valid_until,
          type: :datetime
        ),
        Centaman::Attribute.new(
          centaman_key: 'WaiveTicketFee',
          app_key: :waive_ticket_fee,
          type: :boolean
        )
      ]
    end
    # rubocop:enable Metrics/MethodLength
  end
end

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
centaman-5.0.3 lib/centaman/object/effect.rb
centaman-5.0.2 lib/centaman/object/effect.rb
centaman-5.0.1 lib/centaman/object/effect.rb
centaman-5.0.0 lib/centaman/object/effect.rb