lockstep_rails 0.3.35 → 0.3.36

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 29be94efeb8fb9109a0f5931f8af9b8447e9c792ab85d40b5a11b9123690b9d0
4
- data.tar.gz: 5f3057f779ab7f7b5f22a60463dd80b40e6339775facb441a62f8b069b534acc
3
+ metadata.gz: 05bd7ba3de1568889d934bc0160f923ecf173f1fe5f357856a9fc221d07fe039
4
+ data.tar.gz: 4a1458573f08c1b33aa11da01487df04ca403e9bff7f9e8039f723284e47f62b
5
5
  SHA512:
6
- metadata.gz: bb89a758335e2614471e73749a13992f5e7e91f75729519398a29a16ebca377eb3e9819d1946610f647bd6e75963e47fe7bd821f16eeb7f60861dc320f442e1a
7
- data.tar.gz: df506a80d05be2153e291526a9f501cc02b5daf0451d153ab239613b570275c5f10e5de412ef7e2680f55ab4f0bc96f1eb662313577fe43be80bc76620b50b3a
6
+ metadata.gz: 887d60f6868d2d525de634193da364ff24a86447d3b1e5616421d7c4ccefcb3c5b55d55c64ff3be0c7ec6f9ad94e794e3951ada7e0e9ffb3eef3834c4da6824f
7
+ data.tar.gz: 7adadb32cc6a971a5c9e4c816cd2e12f15aa85c845a73dab446f645cb1061d9f0f38d82da34b9d30cc3c0c84c161de4170d0cb5336b7e34c1309e981a37205da
@@ -0,0 +1,32 @@
1
+ class Lockstep::ApHeader < Lockstep::ApiRecord
2
+ self.model_name_uri = "v1/Reports/ap-header"
3
+ self.id_ref = "group_key"
4
+ self.query_path= ""
5
+ load_schema(Schema::ApHeaderInfo)
6
+
7
+ end
8
+
9
+ class Lockstep::Query
10
+ # Overriding the build_params method to just add attributes in params without filter option
11
+ def build_params
12
+ params = {}
13
+ criteria[:conditions].first.each do |key|
14
+ params.merge!({ :"#{key[0].to_s.camelize(:lower)}" => key[1] })
15
+ end
16
+ return params
17
+ end
18
+
19
+ # Overrinding the get_results method to parse the single object coming from v1.
20
+ def get_results(params = {})
21
+ resp = @klass.resource.get(@klass.query_path, :params => params)
22
+
23
+ return [] if %w(404).include?(resp.code.to_s)
24
+ # TODO handle non 200 response code. Throwing an exception for now
25
+ raise StandardError.new("#{resp.code} error while fetching: #{resp.body}") unless %w(201 200).include?(resp.code.to_s)
26
+
27
+ parsed_response = JSON.parse(resp.body)
28
+
29
+ r = parsed_response.transform_keys { |key| key.underscore }
30
+ @klass.model_name.to_s.constantize.new(r, false)
31
+ end
32
+ end
@@ -0,0 +1,32 @@
1
+ class Lockstep::ArHeader < Lockstep::ApiRecord
2
+ self.model_name_uri = "v1/Reports/ar-header"
3
+ self.id_ref = "group_key"
4
+ self.query_path= ""
5
+ load_schema(Schema::ArHeaderInfo)
6
+
7
+ end
8
+
9
+ class Lockstep::Query
10
+ # Overriding the build_params method to just add attributes in params without filter option
11
+ def build_params
12
+ params = {}
13
+ criteria[:conditions].first.each do |key|
14
+ params.merge!({ :"#{key[0].to_s.camelize(:lower)}" => key[1] })
15
+ end
16
+ return params
17
+ end
18
+
19
+ # Overrinding the get_results method to parse the single object coming from v1.
20
+ def get_results(params = {})
21
+ resp = @klass.resource.get(@klass.query_path, :params => params)
22
+
23
+ return [] if %w(404).include?(resp.code.to_s)
24
+ # TODO handle non 200 response code. Throwing an exception for now
25
+ raise StandardError.new("#{resp.code} error while fetching: #{resp.body}") unless %w(201 200).include?(resp.code.to_s)
26
+
27
+ parsed_response = JSON.parse(resp.body)
28
+
29
+ r = parsed_response.transform_keys { |key| key.underscore }
30
+ @klass.model_name.to_s.constantize.new(r, false)
31
+ end
32
+ end
@@ -0,0 +1,148 @@
1
+ class Schema::ApHeaderInfo < Lockstep::ApiRecord
2
+
3
+ # ApiRecord will crash unless `id_ref` is defined
4
+ def self.id_ref
5
+ nil
6
+ end
7
+
8
+ # The GroupKey uniquely identifies a single Lockstep Platform account. All records for this
9
+ # account will share the same GroupKey value. GroupKey values cannot be changed once created.
10
+ #
11
+ # For more information, see [Accounts and GroupKeys](https://developer.lockstep.io/docs/accounts-and-groupkeys).
12
+ # @type: string
13
+ # @format: uuid
14
+ field :group_key
15
+
16
+ # The date of the report
17
+ # @type: string
18
+ # @format: date
19
+ field :report_date
20
+
21
+ # The date of the report
22
+ # @type: string
23
+ # @format: uuid
24
+ field :company_id
25
+
26
+ # The total number of vendors..
27
+ # @type: integer
28
+ # @format: int32
29
+ field :total_vendors
30
+
31
+ # The total number of bills.
32
+ # @type: integer
33
+ # @format: int32
34
+ field :total_bills
35
+
36
+ # The total amount billed.
37
+ # @type: number
38
+ # @format: double
39
+ field :total_billed_amount
40
+
41
+ # The total number of advance payments.
42
+ # @type: number
43
+ # @format: double
44
+ field :total_advance_payments
45
+
46
+ # The total amount paid.
47
+ # @type: number
48
+ # @format: double
49
+ field :total_paid
50
+
51
+ # The total accounts payable amount.
52
+ # @type: number
53
+ # @format: double
54
+ field :total_ap_amount
55
+
56
+ # The number of paid bills.
57
+ # @type: integer
58
+ # @format: int32
59
+ field :total_bills_paid
60
+
61
+ # The number of past due bills.
62
+ # @type: integer
63
+ # @format: int32
64
+ field :total_bills_past_due
65
+
66
+ # The number of bills 90+ days past due.
67
+ # @type: integer
68
+ # @format: int32
69
+ field :total_bills90_days_past_due
70
+
71
+ # The total amount past due.
72
+ # @type: number
73
+ # @format: double
74
+ field :total_past_due_amount
75
+
76
+ # The total amount for bills 90+ days past due.
77
+ # @type: number
78
+ # @format: double
79
+ field :total_past_due_amount90_days
80
+
81
+ # Portion of Total AP that is Past due.
82
+ # @type: number
83
+ # @format: double
84
+ field :percentage_of_total_ap
85
+
86
+ # The total amount billed, due this year.
87
+ # @type: number
88
+ # @format: double
89
+ field :total_billed_amount_current_year
90
+
91
+ # The total amount billed, due last year.
92
+ # @type: number
93
+ # @format: double
94
+ field :total_billed_amount_previous_year
95
+
96
+ # The total of all payments made this year.
97
+ # @type: number
98
+ # @format: double
99
+ field :total_paid_amount_current_year
100
+
101
+ # Portion of Total AP that is 90+ days Past due.
102
+ # @type: number
103
+ # @format: double
104
+ field :percentage_of_total_ap90_days_past_due
105
+
106
+ # The number of vendors who were paid within the past thirty days.
107
+ # @type: integer
108
+ # @format: int32
109
+ field :vendors_paid_past_thirty_days
110
+
111
+ # The total amount paid over the past thirty days.
112
+ # @type: number
113
+ # @format: double
114
+ field :amount_paid_past_thirty_days
115
+
116
+ # The amount in advance from the payments made over the past thirty days.
117
+ # @type: number
118
+ # @format: double
119
+ field :advance_payment_amount_past_thirty_days
120
+
121
+ # The number of bills paid over the past thirty days.
122
+ # @type: integer
123
+ # @format: int32
124
+ field :bills_paid_past_thirty_days
125
+
126
+ # The number of vendors that sent bills over the the past thirty days.
127
+ # @type: integer
128
+ # @format: int32
129
+ field :billing_vendors_past_thirty_days
130
+
131
+ # The total amount billed over the past thirty days.
132
+ # @type: number
133
+ # @format: double
134
+ field :amount_billed_past_thirty_days
135
+
136
+ # The amount outstanding on the bills received over the past thirty days.
137
+ # @type: number
138
+ # @format: double
139
+ field :amount_due_past_thirty_days
140
+
141
+ # The number of bills received over the past thirty days.
142
+ # @type: integer
143
+ # @format: int32
144
+ field :bills_past_thirty_days
145
+
146
+
147
+
148
+ end
@@ -5,9 +5,9 @@ def self.id_ref
5
5
  nil
6
6
  end
7
7
 
8
- # The GroupKey uniquely identifies a single Lockstep Platform account. All records for this
9
- # account will share the same GroupKey value. GroupKey values cannot be changed once created.
10
- #
8
+ # The GroupKey uniquely identifies a single Lockstep Platform account. All records for this
9
+ # account will share the same GroupKey value. GroupKey values cannot be changed once created.
10
+ #
11
11
  # For more information, see [Accounts and GroupKeys](https://developer.lockstep.io/docs/accounts-and-groupkeys).
12
12
  # @type: string
13
13
  # @format: uuid
@@ -16,7 +16,12 @@ end
16
16
  # The date of the report
17
17
  # @type: string
18
18
  # @format: date
19
- field :report_period
19
+ field :report_date
20
+
21
+ # The date of the report
22
+ # @type: string
23
+ # @format: uuid
24
+ field :company_id
20
25
 
21
26
  # The total number of customers.
22
27
  # @type: integer
@@ -1,3 +1,3 @@
1
1
  module LockstepRails
2
- VERSION = "0.3.35"
2
+ VERSION = "0.3.36"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lockstep_rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.35
4
+ version: 0.3.36
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vivek AG
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-08-30 00:00:00.000000000 Z
11
+ date: 2022-09-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -46,8 +46,10 @@ files:
46
46
  - app/concepts/lockstep/relation_array.rb
47
47
  - app/helpers/types.rb
48
48
  - app/models/lockstep/account.rb
49
+ - app/models/lockstep/ap_header.rb
49
50
  - app/models/lockstep/api_key.rb
50
51
  - app/models/lockstep/app_enrollment.rb
52
+ - app/models/lockstep/ar_header.rb
51
53
  - app/models/lockstep/connection.rb
52
54
  - app/models/lockstep/contact.rb
53
55
  - app/models/lockstep/customer_summary.rb
@@ -78,6 +80,7 @@ files:
78
80
  - app/platform_api/schema/activity_x_ref.rb
79
81
  - app/platform_api/schema/aging.rb
80
82
  - app/platform_api/schema/ap_aging_header_info.rb
83
+ - app/platform_api/schema/ap_header_info.rb
81
84
  - app/platform_api/schema/api_key.rb
82
85
  - app/platform_api/schema/api_key_fetch_result.rb
83
86
  - app/platform_api/schema/app_enrollment.rb