Class: LockstepSdk::CustomerSummaryModel
- Inherits:
-
Object
- Object
- LockstepSdk::CustomerSummaryModel
- Defined in:
- lib/lockstep_sdk/models/customer_summary_model.rb
Overview
Contains summarized data for a customer
Instance Attribute Summary collapse
-
#amount_collected ⇒ Double
The total from collected payments.
-
#amount_past_due ⇒ Double
The total amount past due for this customer.
-
#closed_invoices ⇒ Int32
The number of closed invoices for this customer.
-
#company_id ⇒ Uuid
The unique ID of this company.
-
#company_name ⇒ String
The name of the company.
-
#dso ⇒ Double
Daily sales outstanding value for this Customer.
-
#group_key ⇒ Uuid
The GroupKey uniquely identifies a single Lockstep Platform account.
-
#newest_activity ⇒ Date
The date stamp for the newest Activity on this Customer.
-
#outstanding_amount ⇒ Double
The total balance of outstanding invoices.
-
#outstanding_invoices ⇒ Int32
The number of outstanding invoices for this customer.
-
#percent_of_total_ar ⇒ Double
Portion of Total AR for this Customer that is Past due.
-
#primary_contact ⇒ String
The name of the primary contact.
-
#total_invoices_open ⇒ Int32
The number of open invoices.
-
#total_invoices_past_due ⇒ Int32
The number of past due invoices.
-
#unapplied_payments ⇒ Double
The total value of unapplied Payments for this Customer.
Instance Method Summary collapse
-
#as_json(options = {}) ⇒ object
This object as a JSON key-value structure.
-
#initialize(params = {}) ⇒ CustomerSummaryModel
constructor
Initialize the CustomerSummaryModel using the provided prototype.
-
#to_json(*options) ⇒ String
This object converted to a JSON string.
Constructor Details
#initialize(params = {}) ⇒ CustomerSummaryModel
Initialize the CustomerSummaryModel using the provided prototype
27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/lockstep_sdk/models/customer_summary_model.rb', line 27 def initialize(params = {}) @group_key = params.dig(:group_key) @company_id = params.dig(:company_id) @company_name = params.dig(:company_name) @primary_contact = params.dig(:primary_contact) @outstanding_invoices = params.dig(:outstanding_invoices) @total_invoices_open = params.dig(:total_invoices_open) @total_invoices_past_due = params.dig(:total_invoices_past_due) @closed_invoices = params.dig(:closed_invoices) @amount_collected = params.dig(:amount_collected) @outstanding_amount = params.dig(:outstanding_amount) @amount_past_due = params.dig(:amount_past_due) @unapplied_payments = params.dig(:unapplied_payments) @percent_of_total_ar = params.dig(:percent_of_total_ar) @dso = params.dig(:dso) @newest_activity = params.dig(:newest_activity) end |
Instance Attribute Details
#amount_collected ⇒ Double
Returns The total from collected payments.
79 80 81 |
# File 'lib/lockstep_sdk/models/customer_summary_model.rb', line 79 def amount_collected @amount_collected end |
#amount_past_due ⇒ Double
Returns The total amount past due for this customer.
87 88 89 |
# File 'lib/lockstep_sdk/models/customer_summary_model.rb', line 87 def amount_past_due @amount_past_due end |
#closed_invoices ⇒ Int32
Returns The number of closed invoices for this customer.
75 76 77 |
# File 'lib/lockstep_sdk/models/customer_summary_model.rb', line 75 def closed_invoices @closed_invoices end |
#company_id ⇒ Uuid
Returns The unique ID of this company.
51 52 53 |
# File 'lib/lockstep_sdk/models/customer_summary_model.rb', line 51 def company_id @company_id end |
#company_name ⇒ String
Returns The name of the company.
55 56 57 |
# File 'lib/lockstep_sdk/models/customer_summary_model.rb', line 55 def company_name @company_name end |
#dso ⇒ Double
Returns Daily sales outstanding value for this Customer.
99 100 101 |
# File 'lib/lockstep_sdk/models/customer_summary_model.rb', line 99 def dso @dso end |
#group_key ⇒ Uuid
Returns The GroupKey uniquely identifies a single Lockstep Platform account. All records for this account will share the same GroupKey value. GroupKey values cannot be changed once created. For more information, see [Accounts and GroupKeys](developer.lockstep.io/docs/accounts-and-groupkeys).
47 48 49 |
# File 'lib/lockstep_sdk/models/customer_summary_model.rb', line 47 def group_key @group_key end |
#newest_activity ⇒ Date
Returns The date stamp for the newest Activity on this Customer.
103 104 105 |
# File 'lib/lockstep_sdk/models/customer_summary_model.rb', line 103 def newest_activity @newest_activity end |
#outstanding_amount ⇒ Double
Returns The total balance of outstanding invoices.
83 84 85 |
# File 'lib/lockstep_sdk/models/customer_summary_model.rb', line 83 def outstanding_amount @outstanding_amount end |
#outstanding_invoices ⇒ Int32
Returns The number of outstanding invoices for this customer.
63 64 65 |
# File 'lib/lockstep_sdk/models/customer_summary_model.rb', line 63 def outstanding_invoices @outstanding_invoices end |
#percent_of_total_ar ⇒ Double
Returns Portion of Total AR for this Customer that is Past due. (TotalPastDue / Total AR).
95 96 97 |
# File 'lib/lockstep_sdk/models/customer_summary_model.rb', line 95 def percent_of_total_ar @percent_of_total_ar end |
#primary_contact ⇒ String
Returns The name of the primary contact.
59 60 61 |
# File 'lib/lockstep_sdk/models/customer_summary_model.rb', line 59 def primary_contact @primary_contact end |
#total_invoices_open ⇒ Int32
Returns The number of open invoices.
67 68 69 |
# File 'lib/lockstep_sdk/models/customer_summary_model.rb', line 67 def total_invoices_open @total_invoices_open end |
#total_invoices_past_due ⇒ Int32
Returns The number of past due invoices.
71 72 73 |
# File 'lib/lockstep_sdk/models/customer_summary_model.rb', line 71 def total_invoices_past_due @total_invoices_past_due end |
#unapplied_payments ⇒ Double
Returns The total value of unapplied Payments for this Customer.
91 92 93 |
# File 'lib/lockstep_sdk/models/customer_summary_model.rb', line 91 def unapplied_payments @unapplied_payments end |
Instance Method Details
#as_json(options = {}) ⇒ object
Returns This object as a JSON key-value structure.
107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 |
# File 'lib/lockstep_sdk/models/customer_summary_model.rb', line 107 def as_json(={}) { 'groupKey' => @group_key, 'companyId' => @company_id, 'companyName' => @company_name, 'primaryContact' => @primary_contact, 'outstandingInvoices' => @outstanding_invoices, 'totalInvoicesOpen' => @total_invoices_open, 'totalInvoicesPastDue' => @total_invoices_past_due, 'closedInvoices' => @closed_invoices, 'amountCollected' => @amount_collected, 'outstandingAmount' => @outstanding_amount, 'amountPastDue' => @amount_past_due, 'unappliedPayments' => @unapplied_payments, 'percentOfTotalAr' => @percent_of_total_ar, 'dso' => @dso, 'newestActivity' => @newest_activity, } end |
#to_json(*options) ⇒ String
Returns This object converted to a JSON string.
129 130 131 |
# File 'lib/lockstep_sdk/models/customer_summary_model.rb', line 129 def to_json(*) "[#{as_json(*).to_json(*)}]" end |