aeries-api 1.0.0 → 1.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/aeries-api/client.rb +13 -7
- data/lib/aeries-api/client/contacts.rb +0 -4
- data/lib/aeries-api/client/schools.rb +1 -5
- data/lib/aeries-api/client/student_groups.rb +0 -4
- data/lib/aeries-api/client/student_pictures.rb +0 -4
- data/lib/aeries-api/client/student_programs.rb +0 -4
- data/lib/aeries-api/client/students.rb +0 -4
- data/lib/aeries-api/client/supplemental.rb +24 -0
- data/lib/aeries-api/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5769f47b9398392bf09682a8af92d464ebd319c5132e46d8e9d8339b93a1d4bd
|
4
|
+
data.tar.gz: 3d0608985d45651e4f7b9c6116c332ea8b8e7ef5e7b465e58f9a1f2e914c1a48
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 10080122370c9ad4295b97f80fdd5d16c18021a8aac7cd96e84919af9fe0ac6d9cfc617273ef66ac3a9b30de9ab309af77881bc5fbd0ba75bfa0f3e1efeb9621
|
7
|
+
data.tar.gz: 25847d47ba664b5bd69a6cfd5f7d4d2d3028ad8fbb0e701b25f0a1ebfc635b143230af5589b4643afc74a245789f8f2f9c1a95a523183bd006cf6de5933ab91d
|
data/lib/aeries-api/client.rb
CHANGED
@@ -8,6 +8,7 @@ require 'aeries-api/client/students'
|
|
8
8
|
require 'aeries-api/client/student_groups'
|
9
9
|
require 'aeries-api/client/student_pictures'
|
10
10
|
require 'aeries-api/client/student_programs'
|
11
|
+
require 'aeries-api/client/supplemental'
|
11
12
|
|
12
13
|
module AeriesApi
|
13
14
|
class Client
|
@@ -18,6 +19,7 @@ module AeriesApi
|
|
18
19
|
include AeriesApi::Client::StudentGroups
|
19
20
|
include AeriesApi::Client::StudentPictures
|
20
21
|
include AeriesApi::Client::StudentPrograms
|
22
|
+
include AeriesApi::Client::Supplemental
|
21
23
|
|
22
24
|
format :json
|
23
25
|
|
@@ -25,19 +27,23 @@ module AeriesApi
|
|
25
27
|
aeries_cert ||= ENV['AERIES_CERT']
|
26
28
|
base_uri ||= ENV['AERIES_BASE_URI']
|
27
29
|
|
28
|
-
self.class.default_options.merge!(headers: { 'AERIES-CERT': aeries_cert }, base_uri: base_uri)
|
30
|
+
self.class.default_options.merge!(headers: { 'AERIES-CERT': aeries_cert, 'Content-Type': 'application/json' }, base_uri: base_uri)
|
29
31
|
end
|
30
32
|
|
31
33
|
private
|
32
34
|
|
33
|
-
def
|
34
|
-
|
35
|
-
|
36
|
-
r.deep_transform_keys! { |k| k.to_s.underscore }
|
37
|
-
a << Hashie::Mash.new(r)
|
35
|
+
def camelize_keys(payload)
|
36
|
+
payload.each do |p|
|
37
|
+
p.deep_transform_keys! { |k| k.to_s.camelize }
|
38
38
|
end
|
39
|
-
return new_response
|
40
39
|
end
|
41
40
|
|
41
|
+
def mash_and_underscore_keys(parsed_response)
|
42
|
+
return Hashie::Mash.new(parsed_response.deep_transform_keys! { |k| k.underscore }) if parsed_response.is_a?(Hash)
|
43
|
+
parsed_response.each do |k, v|
|
44
|
+
v.is_a?(Array) ? mash_and_underscore_keys(v) : k.deep_transform_keys! { |k| k.underscore }
|
45
|
+
end
|
46
|
+
parsed_response.map! { |r| Hashie::Mash.new(r) }
|
47
|
+
end
|
42
48
|
end
|
43
49
|
end
|
@@ -1,14 +1,10 @@
|
|
1
1
|
module AeriesApi
|
2
2
|
class Client
|
3
|
-
|
4
3
|
module Contacts
|
5
|
-
|
6
4
|
def contacts(school_code:, student_id:)
|
7
5
|
response = self.class.get("/schools/#{school_code}/contacts/#{student_id}")
|
8
6
|
mash_and_underscore_keys(response.parsed_response)
|
9
7
|
end
|
10
|
-
|
11
8
|
end
|
12
|
-
|
13
9
|
end
|
14
10
|
end
|
@@ -1,19 +1,15 @@
|
|
1
1
|
module AeriesApi
|
2
2
|
class Client
|
3
|
-
|
4
3
|
module Schools
|
5
|
-
|
6
4
|
def school(school_code:)
|
7
5
|
response = self.class.get("/schools/#{school_code}")
|
8
6
|
mash_and_underscore_keys(response.parsed_response)
|
9
7
|
end
|
10
8
|
|
11
9
|
def schools
|
12
|
-
response = self.class.get(
|
10
|
+
response = self.class.get('/schools')
|
13
11
|
mash_and_underscore_keys(response.parsed_response)
|
14
12
|
end
|
15
|
-
|
16
13
|
end
|
17
|
-
|
18
14
|
end
|
19
15
|
end
|
@@ -1,8 +1,6 @@
|
|
1
1
|
module AeriesApi
|
2
2
|
class Client
|
3
|
-
|
4
3
|
module StudentPictures
|
5
|
-
|
6
4
|
def student_picture(school_code:, student_id:)
|
7
5
|
response = self.class.get("/schools/#{school_code}/studentpictures/#{student_id}")
|
8
6
|
mash_and_underscore_keys(response.parsed_response)
|
@@ -12,8 +10,6 @@ module AeriesApi
|
|
12
10
|
response = self.class.get("/schools/#{school_code}/studentpictures")
|
13
11
|
mash_and_underscore_keys(response.parsed_response)
|
14
12
|
end
|
15
|
-
|
16
13
|
end
|
17
|
-
|
18
14
|
end
|
19
15
|
end
|
@@ -1,14 +1,10 @@
|
|
1
1
|
module AeriesApi
|
2
2
|
class Client
|
3
|
-
|
4
3
|
module StudentPrograms
|
5
|
-
|
6
4
|
def student_programs(school_code:, student_id:)
|
7
5
|
response = self.class.get("/schools/#{school_code}/students/#{student_id}/programs")
|
8
6
|
mash_and_underscore_keys(response.parsed_response)
|
9
7
|
end
|
10
|
-
|
11
8
|
end
|
12
|
-
|
13
9
|
end
|
14
10
|
end
|
@@ -1,8 +1,6 @@
|
|
1
1
|
module AeriesApi
|
2
2
|
class Client
|
3
|
-
|
4
3
|
module Students
|
5
|
-
|
6
4
|
def student(school_code:, student_id:)
|
7
5
|
response = self.class.get("/schools/#{school_code}/students/#{student_id}")
|
8
6
|
mash_and_underscore_keys(response.parsed_response)
|
@@ -17,8 +15,6 @@ module AeriesApi
|
|
17
15
|
response = self.class.get(endpoint)
|
18
16
|
mash_and_underscore_keys(response.parsed_response)
|
19
17
|
end
|
20
|
-
|
21
18
|
end
|
22
|
-
|
23
19
|
end
|
24
20
|
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module AeriesApi
|
2
|
+
class Client
|
3
|
+
module Supplemental
|
4
|
+
def school_supplemental(school_code:, student_id:)
|
5
|
+
response = self.class.get("/schools/#{school_code}/schoolsupplemental/#{student_id}")
|
6
|
+
mash_and_underscore_keys(response.parsed_response)
|
7
|
+
end
|
8
|
+
|
9
|
+
def district_supplemental(school_code:, student_id:)
|
10
|
+
response = self.class.get("/schools/#{school_code}/districtsupplemental/#{student_id}")
|
11
|
+
mash_and_underscore_keys(response.parsed_response)
|
12
|
+
end
|
13
|
+
|
14
|
+
def update_school_supplemental(school_code:, student_number:, columns:)
|
15
|
+
options = {
|
16
|
+
body: { Columns: camelize_keys(columns) }.to_json,
|
17
|
+
}
|
18
|
+
|
19
|
+
response = self.class.post("/updateschoolsupplemental/#{school_code}/#{student_number}", options)
|
20
|
+
mash_and_underscore_keys(response.parsed_response)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
data/lib/aeries-api/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aeries-api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Derek Povah
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-05-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -161,6 +161,7 @@ files:
|
|
161
161
|
- lib/aeries-api/client/student_pictures.rb
|
162
162
|
- lib/aeries-api/client/student_programs.rb
|
163
163
|
- lib/aeries-api/client/students.rb
|
164
|
+
- lib/aeries-api/client/supplemental.rb
|
164
165
|
- lib/aeries-api/version.rb
|
165
166
|
homepage: https://github.com/derekpovah/aeries-api
|
166
167
|
licenses:
|