redox 1.0.2 → 1.1.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +9 -4
- data/lib/redox.rb +3 -0
- data/lib/redox/models/model.rb +3 -1
- data/lib/redox/models/patient.rb +3 -17
- data/lib/redox/models/potential_matches.rb +13 -0
- data/lib/redox/request/patient_admin.rb +24 -0
- data/lib/redox/request/patient_search.rb +13 -0
- data/lib/redox/version.rb +1 -1
- metadata +5 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 451221082b696c7421fa2feacde94c0235bbd78348c416d904cba8df3d1ff67b
|
4
|
+
data.tar.gz: 9934ade2a99d85628444a8845b15bf14c79cb595f1307da196d57d1faa2a2668
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 192db714b76ee2a5d197577e21c2907f50d211667b1d16f7ee468af71196655da67fc593771e1f713419bc5a382e8b196b315660dba62c4563ee553bc9581e8d
|
7
|
+
data.tar.gz: 2f72e880e360b4d74e6b8b27b25baf0f9a4bb867615723afa9c40089d1a4debaf42c96aa6ee5997f2bc432d315bcbd6c02d9612c9f73aa096dffed1e6cb18cb9
|
data/CHANGELOG.md
CHANGED
@@ -4,11 +4,16 @@ All notable changes to this project will be documented in this file.
|
|
4
4
|
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
|
5
5
|
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
|
6
6
|
|
7
|
-
## [1.
|
7
|
+
## [1.1.0] - 2020-06-15
|
8
8
|
### Changed
|
9
|
-
-
|
9
|
+
- Moving to Requst classes instead of mixing in logic to models (kept backwards compatibility)
|
10
|
+
- Added potential matches to responses and implemented for patient search
|
10
11
|
|
11
|
-
|
12
|
+
=======
|
13
|
+
### Added
|
14
|
+
- PotentialMatches class
|
15
|
+
|
16
|
+
## [1.0.2] - 2019-06-04
|
12
17
|
### Changed
|
13
18
|
- Added Extensions to all Redox models
|
14
19
|
- Fixed warnings in gemspec
|
@@ -89,7 +94,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
|
|
89
94
|
### Added
|
90
95
|
- Initial Release
|
91
96
|
|
92
|
-
[
|
97
|
+
[1.1.0]: https://github.com/WeInfuse/redox/compare/v1.0.2...v1.1.0
|
93
98
|
[1.0.2]: https://github.com/WeInfuse/redox/compare/v1.0.1...v1.0.2
|
94
99
|
[1.0.1]: https://github.com/WeInfuse/redox/compare/v1.0.0...v1.0.1
|
95
100
|
[1.0.0]: https://github.com/WeInfuse/redox/compare/v0.1.6...v1.0.0
|
data/lib/redox.rb
CHANGED
@@ -11,6 +11,9 @@ require 'redox/models/patient/demographics'
|
|
11
11
|
require 'redox/models/patient/identifier'
|
12
12
|
require 'redox/models/patient/insurance'
|
13
13
|
require 'redox/models/patient/p_c_p'
|
14
|
+
require 'redox/models/potential_matches'
|
15
|
+
require 'redox/request/patient_admin'
|
16
|
+
require 'redox/request/patient_search'
|
14
17
|
|
15
18
|
module Redox
|
16
19
|
class Configuration
|
data/lib/redox/models/model.rb
CHANGED
@@ -6,9 +6,11 @@ module Redox
|
|
6
6
|
|
7
7
|
property :Meta, from: :meta, required: false
|
8
8
|
property :Patient, from: :patient, required: false
|
9
|
+
property :PotentialMatches, from: :potential_matches, required: false
|
9
10
|
property :Extensions, from: :extensions, required: false
|
10
11
|
property :response, required: false
|
11
12
|
|
13
|
+
alias_method :potential_matches, :PotentialMatches
|
12
14
|
alias_method :patient, :Patient
|
13
15
|
alias_method :meta, :Meta
|
14
16
|
|
@@ -37,7 +39,7 @@ module Redox
|
|
37
39
|
model = Model.new
|
38
40
|
model.response = response
|
39
41
|
|
40
|
-
%w[Meta Patient].each do |k|
|
42
|
+
%w[Meta Patient PotentialMatches].each do |k|
|
41
43
|
begin
|
42
44
|
model.send("#{k}=", Module.const_get("Redox::Models::#{k}").new(response[k])) if response[k]
|
43
45
|
rescue
|
data/lib/redox/models/patient.rb
CHANGED
@@ -1,11 +1,6 @@
|
|
1
1
|
module Redox
|
2
2
|
module Models
|
3
3
|
class Patient < Model
|
4
|
-
QUERY_ENDPOINT = '/query'.freeze
|
5
|
-
QUERY_META = Meta.new(EventType: 'Query', DataModel: 'PatientSearch')
|
6
|
-
CREATE_META = Meta.new(EventType: 'NewPatient', DataModel: 'PatientAdmin')
|
7
|
-
UPDATE_META = Meta.new(EventType: 'PatientUpdate', DataModel: 'PatientAdmin')
|
8
|
-
|
9
4
|
property :Identifiers, from: :identifiers, required: false, default: []
|
10
5
|
property :Insurances, from: :insurances, required: false, default: []
|
11
6
|
property :Demographics, from: :demographics, required: false
|
@@ -40,25 +35,16 @@ module Redox
|
|
40
35
|
end
|
41
36
|
|
42
37
|
def update(meta: Meta.new)
|
43
|
-
|
44
|
-
return Model.from_response((RedoxClient.connection.request(body: Patient.body(self, meta))))
|
38
|
+
Redox::Request::PatientAdmin.update(patient: self, meta: meta)
|
45
39
|
end
|
46
40
|
|
47
41
|
def create(meta: Meta.new)
|
48
|
-
|
49
|
-
return Model.from_response((RedoxClient.connection.request(body: Patient.body(self, meta))))
|
42
|
+
Redox::Request::PatientAdmin.create(patient: self, meta: meta)
|
50
43
|
end
|
51
44
|
|
52
45
|
class << self
|
53
46
|
def query(params, meta: Meta.new)
|
54
|
-
|
55
|
-
return Model.from_response((RedoxClient.connection.request(endpoint: QUERY_ENDPOINT, body: Patient.body(params, meta))))
|
56
|
-
end
|
57
|
-
|
58
|
-
def body(params, meta)
|
59
|
-
meta = Meta.new.merge(meta)
|
60
|
-
|
61
|
-
return meta.to_h.merge(params.to_h)
|
47
|
+
return Redox::Request::PatientSearch.query(params, meta: meta)
|
62
48
|
end
|
63
49
|
end
|
64
50
|
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module Redox
|
2
|
+
module Request
|
3
|
+
class PatientAdmin
|
4
|
+
CREATE_META = Redox::Models::Meta.new(EventType: 'NewPatient', DataModel: 'PatientAdmin')
|
5
|
+
UPDATE_META = Redox::Models::Meta.new(EventType: 'PatientUpdate', DataModel: 'PatientAdmin')
|
6
|
+
|
7
|
+
def self.create(patient: p, meta: Redox::Models::Meta.new)
|
8
|
+
meta = CREATE_META.merge(meta)
|
9
|
+
return Redox::Models::Model.from_response((RedoxClient.connection.request(body: Redox::Request::PatientAdmin.build_body(p, meta))))
|
10
|
+
end
|
11
|
+
|
12
|
+
def self.update(patient: p, meta: Redox::Models::Meta.new)
|
13
|
+
meta = UPDATE_META.merge(meta)
|
14
|
+
return Redox::Models::Model.from_response((RedoxClient.connection.request(body: Redox::Request::PatientAdmin.build_body(p, meta))))
|
15
|
+
end
|
16
|
+
|
17
|
+
def self.build_body(params, meta)
|
18
|
+
meta = Redox::Models::Meta.new.merge(meta)
|
19
|
+
|
20
|
+
return meta.to_h.merge(params.to_h)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
module Redox
|
2
|
+
module Request
|
3
|
+
class PatientSearch
|
4
|
+
QUERY_ENDPOINT = '/query'.freeze
|
5
|
+
QUERY_META = Redox::Models::Meta.new(EventType: 'Query', DataModel: 'PatientSearch')
|
6
|
+
|
7
|
+
def self.query(params, meta: Redox::Models::Meta.new)
|
8
|
+
meta = QUERY_META.merge(meta)
|
9
|
+
return Redox::Models::Model.from_response((RedoxClient.connection.request(endpoint: QUERY_ENDPOINT, body: Redox::Request::PatientAdmin.build_body(params, meta))))
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
data/lib/redox/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: redox
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alexander Clark
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2020-06-15 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: httparty
|
@@ -152,7 +152,10 @@ files:
|
|
152
152
|
- lib/redox/models/patient/identifier.rb
|
153
153
|
- lib/redox/models/patient/insurance.rb
|
154
154
|
- lib/redox/models/patient/p_c_p.rb
|
155
|
+
- lib/redox/models/potential_matches.rb
|
155
156
|
- lib/redox/redox_exception.rb
|
157
|
+
- lib/redox/request/patient_admin.rb
|
158
|
+
- lib/redox/request/patient_search.rb
|
156
159
|
- lib/redox/version.rb
|
157
160
|
- redox.gemspec
|
158
161
|
homepage: https://github.com/WeInfuse/redox
|