campus_ivy 0.1.1 → 1.0.0

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.
Files changed (47) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +35 -0
  3. data/CHANGELOG.md +35 -0
  4. data/Rakefile +2 -2
  5. data/lib/campus_ivy/client.rb +190 -0
  6. data/lib/campus_ivy/object.rb +1 -1
  7. data/lib/campus_ivy/resources/attendance.rb +85 -0
  8. data/lib/campus_ivy/resources/award_and_disbursement_transmission.rb +30 -0
  9. data/lib/campus_ivy/resources/cod_log.rb +42 -0
  10. data/lib/campus_ivy/resources/cod_response_ec.rb +39 -0
  11. data/lib/campus_ivy/resources/cod_response_pn.rb +39 -0
  12. data/lib/campus_ivy/resources/cod_response_sp.rb +39 -0
  13. data/lib/campus_ivy/resources/disbursement_batch_detail.rb +36 -0
  14. data/lib/campus_ivy/resources/document_analysis.rb +39 -0
  15. data/lib/campus_ivy/resources/document_inventory.rb +36 -0
  16. data/lib/campus_ivy/resources/document_status.rb +30 -0
  17. data/lib/campus_ivy/resources/functional_area_task.rb +42 -0
  18. data/lib/campus_ivy/resources/health.rb +27 -0
  19. data/lib/campus_ivy/resources/institution_breaks_by_shift.rb +30 -0
  20. data/lib/campus_ivy/resources/net_price_calculator.rb +42 -0
  21. data/lib/campus_ivy/resources/note_type.rb +20 -0
  22. data/lib/campus_ivy/resources/packaging.rb +88 -0
  23. data/lib/campus_ivy/resources/pay_list_analysis.rb +57 -0
  24. data/lib/campus_ivy/resources/registered_student.rb +84 -0
  25. data/lib/campus_ivy/resources/service_type.rb +20 -0
  26. data/lib/campus_ivy/resources/student_award_transmission_log.rb +69 -0
  27. data/lib/campus_ivy/resources/student_awards.rb +45 -0
  28. data/lib/campus_ivy/resources/student_disbursement_transmission_log.rb +48 -0
  29. data/lib/campus_ivy/resources/student_document.rb +108 -0
  30. data/lib/campus_ivy/resources/student_document_history.rb +39 -0
  31. data/lib/campus_ivy/resources/student_document_tags.rb +36 -0
  32. data/lib/campus_ivy/resources/student_fa_progression.rb +60 -0
  33. data/lib/campus_ivy/resources/student_funding_detail.rb +66 -0
  34. data/lib/campus_ivy/resources/student_funding_estimate.rb +39 -0
  35. data/lib/campus_ivy/resources/student_isir.rb +75 -0
  36. data/lib/campus_ivy/resources/student_note.rb +72 -0
  37. data/lib/campus_ivy/resources/student_r2t4.rb +39 -0
  38. data/lib/campus_ivy/resources/student_reference.rb +75 -0
  39. data/lib/campus_ivy/resources/student_remaining_balance.rb +36 -0
  40. data/lib/campus_ivy/resources/student_selected_isir.rb +39 -0
  41. data/lib/campus_ivy/resources/user_login_option.rb +36 -0
  42. data/lib/campus_ivy/resources/user_notification.rb +48 -0
  43. data/lib/campus_ivy/resources/user_profile.rb +36 -0
  44. data/lib/campus_ivy/resources/user_role.rb +58 -0
  45. data/lib/campus_ivy/version.rb +1 -1
  46. data/lib/campus_ivy.rb +38 -0
  47. metadata +41 -1
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ module CampusIvy
4
+ module Resources
5
+ class UserLoginOption
6
+ extend T::Sig
7
+
8
+ sig { params(client: CampusIvy::Client).void }
9
+ def initialize(client)
10
+ @client = client
11
+ end
12
+
13
+ sig do
14
+ params(
15
+ user_id: T.nilable(Integer),
16
+ start_date: T.nilable(String),
17
+ end_date: T.nilable(String)
18
+ ).returns(CampusIvy::Object)
19
+ end
20
+ def list(
21
+ user_id: nil,
22
+ start_date: nil,
23
+ end_date: nil
24
+ )
25
+ params = {
26
+ 'request.userId' => user_id,
27
+ 'request.startDate' => start_date,
28
+ 'request.endDate' => end_date
29
+ }.compact
30
+
31
+ response = @client.connection.get('UserLoginOption', params)
32
+ CampusIvy::Object.new(response.body)
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,48 @@
1
+ # frozen_string_literal: true
2
+
3
+ module CampusIvy
4
+ module Resources
5
+ class UserNotification
6
+ extend T::Sig
7
+
8
+ sig { params(client: CampusIvy::Client).void }
9
+ def initialize(client)
10
+ @client = client
11
+ end
12
+
13
+ sig do
14
+ params(
15
+ user_id: T.nilable(Integer),
16
+ institution_student_id: T.nilable(Integer),
17
+ start_date: T.nilable(String),
18
+ end_date: T.nilable(String)
19
+ ).returns(CampusIvy::Object)
20
+ end
21
+ def list(
22
+ user_id: nil,
23
+ institution_student_id: nil,
24
+ start_date: nil,
25
+ end_date: nil
26
+ )
27
+ params = {
28
+ 'request.userId' => user_id,
29
+ 'request.institutionStudentId' => institution_student_id,
30
+ 'request.startDate' => start_date,
31
+ 'request.endDate' => end_date
32
+ }.compact
33
+
34
+ response = @client.connection.get('UserNotification', params)
35
+ CampusIvy::Object.new(response.body)
36
+ end
37
+
38
+ sig { params(id: Integer).returns(T.nilable(CampusIvy::Object)) }
39
+ def mark_read(id:)
40
+ response = @client.connection.post("UserNotification/Read/#{id}")
41
+ # Assuming no body or empty body, wrap if needed
42
+ return nil if response.body.nil? || response.body.empty?
43
+
44
+ CampusIvy::Object.new(response.body)
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ module CampusIvy
4
+ module Resources
5
+ class UserProfile
6
+ extend T::Sig
7
+
8
+ sig { params(client: CampusIvy::Client).void }
9
+ def initialize(client)
10
+ @client = client
11
+ end
12
+
13
+ sig do
14
+ params(
15
+ user_id: T.nilable(Integer),
16
+ start_date: T.nilable(String),
17
+ end_date: T.nilable(String)
18
+ ).returns(CampusIvy::Object)
19
+ end
20
+ def list(
21
+ user_id: nil,
22
+ start_date: nil,
23
+ end_date: nil
24
+ )
25
+ params = {
26
+ 'request.userId' => user_id,
27
+ 'request.startDate' => start_date,
28
+ 'request.endDate' => end_date
29
+ }.compact
30
+
31
+ response = @client.connection.get('UserProfile', params)
32
+ CampusIvy::Object.new(response.body)
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,58 @@
1
+ # frozen_string_literal: true
2
+
3
+ module CampusIvy
4
+ module Resources
5
+ class UserRole
6
+ extend T::Sig
7
+
8
+ sig { params(client: CampusIvy::Client).void }
9
+ def initialize(client)
10
+ @client = client
11
+ end
12
+
13
+ sig do
14
+ params(
15
+ user_role_id: T.nilable(Integer),
16
+ start_date: T.nilable(String),
17
+ end_date: T.nilable(String)
18
+ ).returns(CampusIvy::Object)
19
+ end
20
+ def list(
21
+ user_role_id: nil,
22
+ start_date: nil,
23
+ end_date: nil
24
+ )
25
+ params = {
26
+ 'request.userRoleId' => user_role_id,
27
+ 'request.startDate' => start_date,
28
+ 'request.endDate' => end_date
29
+ }.compact
30
+
31
+ response = @client.connection.get('UserRole', params)
32
+ CampusIvy::Object.new(response.body)
33
+ end
34
+
35
+ sig do
36
+ params(
37
+ user_role_id: T.nilable(Integer),
38
+ start_date: T.nilable(String),
39
+ end_date: T.nilable(String)
40
+ ).returns(CampusIvy::Object)
41
+ end
42
+ def functional_area_task_xref(
43
+ user_role_id: nil,
44
+ start_date: nil,
45
+ end_date: nil
46
+ )
47
+ params = {
48
+ 'request.userRoleId' => user_role_id,
49
+ 'request.startDate' => start_date,
50
+ 'request.endDate' => end_date
51
+ }.compact
52
+
53
+ response = @client.connection.get('UserRole_FunctionalAreaTask_XRef', params)
54
+ CampusIvy::Object.new(response.body)
55
+ end
56
+ end
57
+ end
58
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module CampusIvy
4
- VERSION = '0.1.1'
4
+ VERSION = '1.0.0'
5
5
  end
data/lib/campus_ivy.rb CHANGED
@@ -5,6 +5,44 @@ require 'sorbet-runtime'
5
5
  require_relative 'campus_ivy/configuration'
6
6
  require_relative 'campus_ivy/object'
7
7
  require_relative 'campus_ivy/resources/account'
8
+ require_relative 'campus_ivy/resources/attendance'
9
+ require_relative 'campus_ivy/resources/award_and_disbursement_transmission'
10
+ require_relative 'campus_ivy/resources/disbursement_batch_detail'
11
+ require_relative 'campus_ivy/resources/packaging'
12
+ require_relative 'campus_ivy/resources/student_awards'
13
+ require_relative 'campus_ivy/resources/student_award_transmission_log'
14
+ require_relative 'campus_ivy/resources/student_disbursement_transmission_log'
15
+ require_relative 'campus_ivy/resources/cod_log'
16
+ require_relative 'campus_ivy/resources/cod_response_ec'
17
+ require_relative 'campus_ivy/resources/cod_response_pn'
18
+ require_relative 'campus_ivy/resources/cod_response_sp'
19
+ require_relative 'campus_ivy/resources/student_isir'
20
+ require_relative 'campus_ivy/resources/student_selected_isir'
21
+ require_relative 'campus_ivy/resources/student_r2t4'
22
+ require_relative 'campus_ivy/resources/net_price_calculator'
23
+ require_relative 'campus_ivy/resources/pay_list_analysis'
24
+ require_relative 'campus_ivy/resources/student_fa_progression'
25
+ require_relative 'campus_ivy/resources/student_funding_detail'
26
+ require_relative 'campus_ivy/resources/student_funding_estimate'
27
+ require_relative 'campus_ivy/resources/student_remaining_balance'
28
+ require_relative 'campus_ivy/resources/document_analysis'
29
+ require_relative 'campus_ivy/resources/document_inventory'
30
+ require_relative 'campus_ivy/resources/document_status'
31
+ require_relative 'campus_ivy/resources/student_document'
32
+ require_relative 'campus_ivy/resources/student_document_history'
33
+ require_relative 'campus_ivy/resources/student_document_tags'
34
+ require_relative 'campus_ivy/resources/functional_area_task'
35
+ require_relative 'campus_ivy/resources/health'
36
+ require_relative 'campus_ivy/resources/institution_breaks_by_shift'
37
+ require_relative 'campus_ivy/resources/note_type'
38
+ require_relative 'campus_ivy/resources/registered_student'
39
+ require_relative 'campus_ivy/resources/service_type'
40
+ require_relative 'campus_ivy/resources/student_note'
41
+ require_relative 'campus_ivy/resources/student_reference'
42
+ require_relative 'campus_ivy/resources/user_login_option'
43
+ require_relative 'campus_ivy/resources/user_notification'
44
+ require_relative 'campus_ivy/resources/user_profile'
45
+ require_relative 'campus_ivy/resources/user_role'
8
46
  require_relative 'campus_ivy/client'
9
47
 
10
48
  module CampusIvy
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: campus_ivy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - marcus.salinas
@@ -115,6 +115,7 @@ executables: []
115
115
  extensions: []
116
116
  extra_rdoc_files: []
117
117
  files:
118
+ - ".rubocop.yml"
118
119
  - AGENTS.md
119
120
  - CHANGELOG.md
120
121
  - CODE_OF_CONDUCT.md
@@ -128,6 +129,44 @@ files:
128
129
  - lib/campus_ivy/object.rb
129
130
  - lib/campus_ivy/resources/.keep
130
131
  - lib/campus_ivy/resources/account.rb
132
+ - lib/campus_ivy/resources/attendance.rb
133
+ - lib/campus_ivy/resources/award_and_disbursement_transmission.rb
134
+ - lib/campus_ivy/resources/cod_log.rb
135
+ - lib/campus_ivy/resources/cod_response_ec.rb
136
+ - lib/campus_ivy/resources/cod_response_pn.rb
137
+ - lib/campus_ivy/resources/cod_response_sp.rb
138
+ - lib/campus_ivy/resources/disbursement_batch_detail.rb
139
+ - lib/campus_ivy/resources/document_analysis.rb
140
+ - lib/campus_ivy/resources/document_inventory.rb
141
+ - lib/campus_ivy/resources/document_status.rb
142
+ - lib/campus_ivy/resources/functional_area_task.rb
143
+ - lib/campus_ivy/resources/health.rb
144
+ - lib/campus_ivy/resources/institution_breaks_by_shift.rb
145
+ - lib/campus_ivy/resources/net_price_calculator.rb
146
+ - lib/campus_ivy/resources/note_type.rb
147
+ - lib/campus_ivy/resources/packaging.rb
148
+ - lib/campus_ivy/resources/pay_list_analysis.rb
149
+ - lib/campus_ivy/resources/registered_student.rb
150
+ - lib/campus_ivy/resources/service_type.rb
151
+ - lib/campus_ivy/resources/student_award_transmission_log.rb
152
+ - lib/campus_ivy/resources/student_awards.rb
153
+ - lib/campus_ivy/resources/student_disbursement_transmission_log.rb
154
+ - lib/campus_ivy/resources/student_document.rb
155
+ - lib/campus_ivy/resources/student_document_history.rb
156
+ - lib/campus_ivy/resources/student_document_tags.rb
157
+ - lib/campus_ivy/resources/student_fa_progression.rb
158
+ - lib/campus_ivy/resources/student_funding_detail.rb
159
+ - lib/campus_ivy/resources/student_funding_estimate.rb
160
+ - lib/campus_ivy/resources/student_isir.rb
161
+ - lib/campus_ivy/resources/student_note.rb
162
+ - lib/campus_ivy/resources/student_r2t4.rb
163
+ - lib/campus_ivy/resources/student_reference.rb
164
+ - lib/campus_ivy/resources/student_remaining_balance.rb
165
+ - lib/campus_ivy/resources/student_selected_isir.rb
166
+ - lib/campus_ivy/resources/user_login_option.rb
167
+ - lib/campus_ivy/resources/user_notification.rb
168
+ - lib/campus_ivy/resources/user_profile.rb
169
+ - lib/campus_ivy/resources/user_role.rb
131
170
  - lib/campus_ivy/version.rb
132
171
  - sig/campus_ivy.rbs
133
172
  homepage: https://github.com/jippylong12/campus_ivy
@@ -138,6 +177,7 @@ metadata:
138
177
  homepage_uri: https://github.com/jippylong12/campus_ivy
139
178
  source_code_uri: https://github.com/jippylong12/campus_ivy
140
179
  changelog_uri: https://github.com/jippylong12/campus_ivy/blob/main/CHANGELOG.md
180
+ rubygems_mfa_required: 'true'
141
181
  rdoc_options: []
142
182
  require_paths:
143
183
  - lib