Sha256: 4843c6f168fdf6268156d7b04729422501daadbdc2a96507b4164fa06b33d2de

Contents?: true

Size: 1.1 KB

Versions: 4

Compression:

Stored size: 1.1 KB

Contents

module RockRMS
  module Response
    class RecurringDonation < Base
      MAP = {
        id: 'Id',
        active: 'IsActive',
        financial_gateway_id: 'FinancialGatewayId',
        foreign_key: 'ForeignKey',
        frequency: 'TransactionFrequencyValueId',
        gateway_schedule_id: 'GatewayScheduleId',
        next_payment_date: 'NextPaymentDate',
        payment_details: 'FinancialPaymentDetail',
        person_id: 'AuthorizedPersonAliasId',
        start_date: 'StartDate',
        transaction_details: 'ScheduledTransactionDetails',
        transaction_code: 'TransactionCode',
        summary: 'Summary'
      }.freeze

      def format_single(data)
        result = to_h(MAP, data)
        result[:frequency]           = find_frequency_by_id(result[:frequency])
        result[:transaction_details] = RecurringDonationDetails.format(result[:transaction_details])
        result[:payment_details]     = PaymentDetail.format(result[:payment_details])
        result
      end

      def find_frequency_by_id(type_id)
        RecurringFrequencies::RECURRING_FREQUENCIES.key(type_id)
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
rock_rms-5.10.0 lib/rock_rms/response/recurring_donation.rb
rock_rms-5.9.2 lib/rock_rms/response/recurring_donation.rb
rock_rms-5.9.1 lib/rock_rms/response/recurring_donation.rb
rock_rms-5.9.0 lib/rock_rms/response/recurring_donation.rb