redox 1.1.0 → 1.4.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 +32 -0
- data/lib/redox.rb +8 -0
- data/lib/redox/models/financial.rb +13 -0
- data/lib/redox/models/model.rb +77 -22
- data/lib/redox/models/ordering_provider.rb +15 -0
- data/lib/redox/models/patient/demographics.rb +1 -1
- data/lib/redox/models/patient/identifier.rb +1 -1
- data/lib/redox/models/patient/p_c_p.rb +1 -5
- data/lib/redox/models/provider.rb +21 -0
- data/lib/redox/models/transaction.rb +75 -0
- data/lib/redox/models/visit.rb +53 -0
- data/lib/redox/request/financial.rb +12 -0
- data/lib/redox/request/patient_admin.rb +4 -10
- data/lib/redox/request/patient_search.rb +1 -1
- data/lib/redox/request/provider.rb +12 -0
- data/lib/redox/request/request.rb +9 -0
- data/lib/redox/version.rb +1 -1
- data/redox.gemspec +3 -3
- metadata +19 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e2c926b510dc2e56b85369003ee89caf82292929308a18775df049e4a57e1d95
|
4
|
+
data.tar.gz: 9799c173cb24daa74f3dfe02eefb3f8c2a456557dafa819fb7ca2760621a3b4e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1499bf55b2c53f0a0dafc2d68d3b420bc5a0a0760d4258103360d32526b32e4f418a59fddb50afb3feb80ac45a979045b943018d24a717129e7db072c7233faf
|
7
|
+
data.tar.gz: 2b2eeebee1f5a35c028cee6c77f582e0dff10734cec40ce620fdc02617c01daf42f73d62e4960ec7a7b77ed4290f733c3fb0ce46f408566f826fa86f1d71a970
|
data/CHANGELOG.md
CHANGED
@@ -4,6 +4,33 @@ 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.4.0] - 2020-10-13
|
8
|
+
### Added
|
9
|
+
- AbstractModel that does not add top level key
|
10
|
+
- OrderingProvider that is the base for PCP
|
11
|
+
- Provider model
|
12
|
+
- Provider#query
|
13
|
+
- Created new method that can add helpers dynamically from response
|
14
|
+
|
15
|
+
## [1.3.1] - 2020-10-02
|
16
|
+
### Added
|
17
|
+
- Transaction#as\_json
|
18
|
+
- Visit#as\_json
|
19
|
+
|
20
|
+
## [1.3.0] - 2020-09-17
|
21
|
+
### Added
|
22
|
+
- Transaction model
|
23
|
+
- Financial#create
|
24
|
+
|
25
|
+
## [1.2.0] - 2020-07-30
|
26
|
+
### Added
|
27
|
+
- Visit model
|
28
|
+
- Model#insurances helper for Patient.Insurances || Visit.Insurances
|
29
|
+
|
30
|
+
## [1.1.1] - 2020-06-15
|
31
|
+
### Changed
|
32
|
+
- Bugfix with patient param in update
|
33
|
+
|
7
34
|
## [1.1.0] - 2020-06-15
|
8
35
|
### Changed
|
9
36
|
- Moving to Requst classes instead of mixing in logic to models (kept backwards compatibility)
|
@@ -94,6 +121,11 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
|
|
94
121
|
### Added
|
95
122
|
- Initial Release
|
96
123
|
|
124
|
+
[1.4.0]: https://github.com/WeInfuse/redox/compare/v1.3.1...v1.4.0
|
125
|
+
[1.3.1]: https://github.com/WeInfuse/redox/compare/v1.3.0...v1.3.1
|
126
|
+
[1.3.0]: https://github.com/WeInfuse/redox/compare/v1.2.0...v1.3.0
|
127
|
+
[1.2.0]: https://github.com/WeInfuse/redox/compare/v1.1.1...v1.2.0
|
128
|
+
[1.1.1]: https://github.com/WeInfuse/redox/compare/v1.1.0...v1.1.1
|
97
129
|
[1.1.0]: https://github.com/WeInfuse/redox/compare/v1.0.2...v1.1.0
|
98
130
|
[1.0.2]: https://github.com/WeInfuse/redox/compare/v1.0.1...v1.0.2
|
99
131
|
[1.0.1]: https://github.com/WeInfuse/redox/compare/v1.0.0...v1.0.1
|
data/lib/redox.rb
CHANGED
@@ -6,14 +6,22 @@ require 'redox/connection'
|
|
6
6
|
require 'redox/authentication'
|
7
7
|
require 'redox/models/model'
|
8
8
|
require 'redox/models/meta'
|
9
|
+
require 'redox/models/ordering_provider'
|
9
10
|
require 'redox/models/patient'
|
11
|
+
require 'redox/models/provider'
|
12
|
+
require 'redox/models/visit'
|
13
|
+
require 'redox/models/transaction'
|
14
|
+
require 'redox/models/financial'
|
10
15
|
require 'redox/models/patient/demographics'
|
11
16
|
require 'redox/models/patient/identifier'
|
12
17
|
require 'redox/models/patient/insurance'
|
13
18
|
require 'redox/models/patient/p_c_p'
|
14
19
|
require 'redox/models/potential_matches'
|
20
|
+
require 'redox/request/request'
|
21
|
+
require 'redox/request/financial'
|
15
22
|
require 'redox/request/patient_admin'
|
16
23
|
require 'redox/request/patient_search'
|
24
|
+
require 'redox/request/provider'
|
17
25
|
|
18
26
|
module Redox
|
19
27
|
class Configuration
|
@@ -0,0 +1,13 @@
|
|
1
|
+
module Redox
|
2
|
+
module Models
|
3
|
+
class Financial < AbstractModel
|
4
|
+
property :Visit, required: false, from: :visit, default: Redox::Models::Visit.new
|
5
|
+
property :Patient, required: false, from: :patient, default: Redox::Models::Patient.new
|
6
|
+
property :Transactions, required: false, from: :transactions, default: []
|
7
|
+
|
8
|
+
alias_method :patient, :Patient
|
9
|
+
alias_method :visit, :Visit
|
10
|
+
alias_method :transactions, :Transactions
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
data/lib/redox/models/model.rb
CHANGED
@@ -1,19 +1,95 @@
|
|
1
1
|
module Redox
|
2
2
|
module Models
|
3
|
-
|
3
|
+
def self.format_datetime(d)
|
4
|
+
if d.respond_to?(:strftime)
|
5
|
+
d.strftime(Redox::Models::Meta::TO_DATETIME_FORMAT)
|
6
|
+
else
|
7
|
+
d
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
class AbstractModel < Hashie::Trash
|
4
12
|
include Hashie::Extensions::IgnoreUndeclared
|
5
13
|
include Hashie::Extensions::IndifferentAccess
|
6
14
|
|
15
|
+
HIGH_LEVEL_KEYS = %w[Meta Patient Visit PotentialMatches]
|
16
|
+
|
7
17
|
property :Meta, from: :meta, required: false
|
8
18
|
property :Patient, from: :patient, required: false
|
19
|
+
property :Visit, from: :visit, required: false
|
9
20
|
property :PotentialMatches, from: :potential_matches, required: false
|
10
21
|
property :Extensions, from: :extensions, required: false
|
11
22
|
property :response, required: false
|
12
23
|
|
13
24
|
alias_method :potential_matches, :PotentialMatches
|
14
25
|
alias_method :patient, :Patient
|
26
|
+
alias_method :visit, :Visit
|
15
27
|
alias_method :meta, :Meta
|
16
28
|
|
29
|
+
def to_json(args = {})
|
30
|
+
return self.to_h.to_json
|
31
|
+
end
|
32
|
+
|
33
|
+
def insurances
|
34
|
+
(self.patient&.insurances || []) + (self.visit&.insurances || [])
|
35
|
+
end
|
36
|
+
|
37
|
+
def self.from_response(response)
|
38
|
+
model = Model.new
|
39
|
+
model.response = response
|
40
|
+
|
41
|
+
HIGH_LEVEL_KEYS.each do |k|
|
42
|
+
begin
|
43
|
+
model.send("#{k}=", Module.const_get("Redox::Models::#{k}").new(response[k])) if response[k]
|
44
|
+
rescue
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
return model
|
49
|
+
end
|
50
|
+
|
51
|
+
def self.from_response_inflected(response)
|
52
|
+
model = self.from_response(response)
|
53
|
+
|
54
|
+
if (model.response.ok?)
|
55
|
+
data = model.response.parsed_response
|
56
|
+
|
57
|
+
if data.respond_to?(:keys)
|
58
|
+
model_class = nil
|
59
|
+
|
60
|
+
if model.meta&.data_model
|
61
|
+
model_class = "Redox::Models::#{model.meta.data_model}"
|
62
|
+
|
63
|
+
begin
|
64
|
+
model_class = Object.const_get(model_class)
|
65
|
+
rescue NameError
|
66
|
+
model_class = nil
|
67
|
+
end
|
68
|
+
end
|
69
|
+
|
70
|
+
data.keys.each do |key|
|
71
|
+
next if HIGH_LEVEL_KEYS.include?(key.to_s)
|
72
|
+
|
73
|
+
helper_name = key.to_s.downcase.to_sym
|
74
|
+
|
75
|
+
if model_class.nil?
|
76
|
+
model.define_singleton_method(helper_name) { data[key] }
|
77
|
+
else
|
78
|
+
if data[key].is_a?(Array)
|
79
|
+
model.define_singleton_method(helper_name) { data[key].map {|obj| model_class.new(obj) } }
|
80
|
+
else
|
81
|
+
model.define_singleton_method(helper_name) { model_class.new(data[key]) }
|
82
|
+
end
|
83
|
+
end
|
84
|
+
end
|
85
|
+
end
|
86
|
+
end
|
87
|
+
|
88
|
+
return model
|
89
|
+
end
|
90
|
+
end
|
91
|
+
|
92
|
+
class Model < AbstractModel
|
17
93
|
def initialize(data = {})
|
18
94
|
if data.is_a?(Hash)
|
19
95
|
if data.include?(key)
|
@@ -30,28 +106,7 @@ module Redox
|
|
30
106
|
return { key => super.to_h }
|
31
107
|
end
|
32
108
|
|
33
|
-
def to_json
|
34
|
-
return self.to_h.to_json
|
35
|
-
end
|
36
|
-
|
37
|
-
class << self
|
38
|
-
def from_response(response)
|
39
|
-
model = Model.new
|
40
|
-
model.response = response
|
41
|
-
|
42
|
-
%w[Meta Patient PotentialMatches].each do |k|
|
43
|
-
begin
|
44
|
-
model.send("#{k}=", Module.const_get("Redox::Models::#{k}").new(response[k])) if response[k]
|
45
|
-
rescue
|
46
|
-
end
|
47
|
-
end
|
48
|
-
|
49
|
-
return model
|
50
|
-
end
|
51
|
-
end
|
52
|
-
|
53
109
|
private
|
54
|
-
|
55
110
|
def key
|
56
111
|
return self.class.to_s.split('::').last.to_s
|
57
112
|
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
module Redox
|
2
|
+
module Models
|
3
|
+
class OrderingProvider < AbstractModel
|
4
|
+
property :ID, required: false, from: :id
|
5
|
+
property :IDType, required: false, from: :id_type
|
6
|
+
property :FirstName, required: false, from: :first_name
|
7
|
+
property :LastName, required: false, from: :last_name
|
8
|
+
|
9
|
+
alias_method :first_name, :FirstName
|
10
|
+
alias_method :last_name, :LastName
|
11
|
+
alias_method :id, :ID
|
12
|
+
alias_method :id_type, :IDType
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
module Redox
|
2
2
|
module Models
|
3
|
-
class Demographics <
|
3
|
+
class Demographics < AbstractModel
|
4
4
|
property :FirstName, required: false, from: :first_name
|
5
5
|
property :MiddleName, required: false, from: :middle_name
|
6
6
|
property :LastName, required: false, from: :last_name
|
@@ -1,13 +1,9 @@
|
|
1
1
|
module Redox
|
2
2
|
module Models
|
3
|
-
class PCP <
|
3
|
+
class PCP < OrderingProvider
|
4
4
|
property :NPI, from: :npi
|
5
|
-
property :FirstName, required: false, from: :first_name
|
6
|
-
property :LastName, required: false, from: :last_name
|
7
5
|
|
8
6
|
alias_method :npi, :NPI
|
9
|
-
alias_method :first_name, :FirstName
|
10
|
-
alias_method :last_name, :LastName
|
11
7
|
end
|
12
8
|
end
|
13
9
|
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
module Redox
|
2
|
+
module Models
|
3
|
+
class Provider < Model
|
4
|
+
property :Identifiers, from: :identifiers, required: false, default: []
|
5
|
+
property :Demographics, from: :demographics, required: false
|
6
|
+
|
7
|
+
alias_method :identifiers, :Identifiers
|
8
|
+
|
9
|
+
def demographics
|
10
|
+
self[:Demographics] = Demographics.new(self[:Demographics]) unless self[:Demographics].is_a?(Redox::Models::Demographics)
|
11
|
+
self[:Demographics] ||= Demographics.new
|
12
|
+
end
|
13
|
+
|
14
|
+
def add_identifier(type: , value: )
|
15
|
+
self[:Identifiers] << Identifier.new({'ID' => value, 'IDType' => type})
|
16
|
+
|
17
|
+
return self
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,75 @@
|
|
1
|
+
module Redox
|
2
|
+
module Models
|
3
|
+
class Transaction < AbstractModel
|
4
|
+
property :Chargeable, required: false, from: :chargeable, default: {}
|
5
|
+
property :DateTimeOfService, required: false, from: :start
|
6
|
+
property :Department, required: false, from: :department, default: {}
|
7
|
+
property :Diagnoses, required: false, from: :diagnoses, default: []
|
8
|
+
property :EndDateTime, required: false, from: :end
|
9
|
+
property :Extensions, required: false, from: :extensions, default: {}
|
10
|
+
property :ID, required: false, from: :id
|
11
|
+
property :NDC, required: false, from: :ndc, default: {}
|
12
|
+
property :OrderID, required: false, from: :order_id
|
13
|
+
property :OrderingProviders, required: false, from: :ordering_providers, default: []
|
14
|
+
property :Performers, required: false, from: :performers, default: []
|
15
|
+
property :Procedure, required: false, from: :procedure, default: {}
|
16
|
+
property :Type, required: false, from: :type
|
17
|
+
|
18
|
+
alias_method :chargeable, :Chargeable
|
19
|
+
alias_method :start, :DateTimeOfService
|
20
|
+
alias_method :department, :Department
|
21
|
+
alias_method :diagnoses, :Diagnoses
|
22
|
+
alias_method :end, :EndDateTime
|
23
|
+
alias_method :extensions, :Extensions
|
24
|
+
alias_method :id, :ID
|
25
|
+
alias_method :ndc, :NDC
|
26
|
+
alias_method :order_id, :OrderID
|
27
|
+
alias_method :ordering_providers, :OrderingProviders
|
28
|
+
alias_method :performers, :Performers
|
29
|
+
alias_method :procedure, :Procedure
|
30
|
+
alias_method :type, :Type
|
31
|
+
|
32
|
+
def add_medication(ndc_code: nil, quantity: nil, magnitude: nil, unit: nil, description: nil)
|
33
|
+
self[:NDC] = { Code: ndc_code, Description: description }
|
34
|
+
self[:Extensions] = {
|
35
|
+
'ndc-quantity' => {
|
36
|
+
integer: quantity&.to_s
|
37
|
+
},
|
38
|
+
'ndc-units-measure' => {
|
39
|
+
coding: {
|
40
|
+
code: magnitude&.to_s,
|
41
|
+
display: unit
|
42
|
+
}
|
43
|
+
}
|
44
|
+
}
|
45
|
+
self
|
46
|
+
end
|
47
|
+
|
48
|
+
def add_ordering_provider(**kwargs)
|
49
|
+
self[:OrderingProviders] ||= []
|
50
|
+
self[:OrderingProviders] << OrderingProvider.new(kwargs)
|
51
|
+
self
|
52
|
+
end
|
53
|
+
|
54
|
+
def add_performer(**kwargs)
|
55
|
+
self[:Performers] ||= []
|
56
|
+
self[:Performers] << OrderingProvider.new(kwargs)
|
57
|
+
self
|
58
|
+
end
|
59
|
+
|
60
|
+
def to_h
|
61
|
+
result = super.to_h
|
62
|
+
|
63
|
+
%w[EndDateTime DateTimeOfService].each do |k|
|
64
|
+
result[k] = Redox::Models.format_datetime(result[k])
|
65
|
+
end
|
66
|
+
|
67
|
+
result
|
68
|
+
end
|
69
|
+
|
70
|
+
def as_json(args)
|
71
|
+
self.to_h
|
72
|
+
end
|
73
|
+
end
|
74
|
+
end
|
75
|
+
end
|
@@ -0,0 +1,53 @@
|
|
1
|
+
module Redox
|
2
|
+
module Models
|
3
|
+
class Visit < Model
|
4
|
+
DEFAULT_LOCATION = {
|
5
|
+
Department: nil,
|
6
|
+
Facility: nil
|
7
|
+
}
|
8
|
+
|
9
|
+
property :Insurances, from: :insurances, required: false, default: []
|
10
|
+
property :Location, from: :location, required: false, default: DEFAULT_LOCATION
|
11
|
+
property :VisitDateTime, from: :start, required: false
|
12
|
+
property :VisitNumber, from: :visit_number, required: false
|
13
|
+
property :AccountNumber, from: :account_number, required: false
|
14
|
+
|
15
|
+
alias_method :insurances, :Insurances
|
16
|
+
alias_method :start, :VisitDateTime
|
17
|
+
|
18
|
+
def department=(v)
|
19
|
+
self[:Location] ||= DEFAULT_LOCATION
|
20
|
+
self[:Location][:Department] = v
|
21
|
+
self
|
22
|
+
end
|
23
|
+
|
24
|
+
def facility=(v)
|
25
|
+
self[:Location] ||= DEFAULT_LOCATION
|
26
|
+
self[:Location][:Facility] = v
|
27
|
+
self
|
28
|
+
end
|
29
|
+
|
30
|
+
def insurances
|
31
|
+
self[:Insurances] = self[:Insurances].map {|ins| ins.is_a?(Redox::Models::Insurance) ? ins : Insurance.new(ins) }
|
32
|
+
end
|
33
|
+
|
34
|
+
def to_h
|
35
|
+
result = super.to_h
|
36
|
+
|
37
|
+
%w[VisitDateTime].each do |k|
|
38
|
+
result[key][k] = Redox::Models.format_datetime(result[key][k])
|
39
|
+
end
|
40
|
+
|
41
|
+
result
|
42
|
+
end
|
43
|
+
|
44
|
+
def to_json(args = {})
|
45
|
+
self.to_h.to_json
|
46
|
+
end
|
47
|
+
|
48
|
+
def as_json(args = {})
|
49
|
+
self.to_h.dig('Visit')
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
module Redox
|
2
|
+
module Request
|
3
|
+
class Financial
|
4
|
+
TRANSACTION_META = Redox::Models::Meta.new(EventType: 'Transaction', DataModel: 'Financial')
|
5
|
+
|
6
|
+
def self.create(financial, meta: Redox::Models::Meta.new)
|
7
|
+
meta = TRANSACTION_META.merge(meta)
|
8
|
+
return Redox::Models::Model.from_response((RedoxClient.connection.request(body: Redox::Request.build_body(financial, meta))))
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
@@ -4,20 +4,14 @@ module Redox
|
|
4
4
|
CREATE_META = Redox::Models::Meta.new(EventType: 'NewPatient', DataModel: 'PatientAdmin')
|
5
5
|
UPDATE_META = Redox::Models::Meta.new(EventType: 'PatientUpdate', DataModel: 'PatientAdmin')
|
6
6
|
|
7
|
-
def self.create(patient:
|
7
|
+
def self.create(patient: , meta: Redox::Models::Meta.new)
|
8
8
|
meta = CREATE_META.merge(meta)
|
9
|
-
return Redox::Models::Model.from_response((RedoxClient.connection.request(body: Redox::Request
|
9
|
+
return Redox::Models::Model.from_response((RedoxClient.connection.request(body: Redox::Request.build_body(patient, meta))))
|
10
10
|
end
|
11
11
|
|
12
|
-
def self.update(patient:
|
12
|
+
def self.update(patient: , meta: Redox::Models::Meta.new)
|
13
13
|
meta = UPDATE_META.merge(meta)
|
14
|
-
return Redox::Models::Model.from_response((RedoxClient.connection.request(body: Redox::Request
|
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)
|
14
|
+
return Redox::Models::Model.from_response((RedoxClient.connection.request(body: Redox::Request.build_body(patient, meta))))
|
21
15
|
end
|
22
16
|
end
|
23
17
|
end
|
@@ -6,7 +6,7 @@ module Redox
|
|
6
6
|
|
7
7
|
def self.query(params, meta: Redox::Models::Meta.new)
|
8
8
|
meta = QUERY_META.merge(meta)
|
9
|
-
return Redox::Models::Model.from_response((RedoxClient.connection.request(endpoint: QUERY_ENDPOINT, body: Redox::Request
|
9
|
+
return Redox::Models::Model.from_response((RedoxClient.connection.request(endpoint: QUERY_ENDPOINT, body: Redox::Request.build_body(params, meta))))
|
10
10
|
end
|
11
11
|
end
|
12
12
|
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
module Redox
|
2
|
+
module Request
|
3
|
+
class Provider
|
4
|
+
QUERY_META = Redox::Models::Meta.new(EventType: 'ProviderQuery', DataModel: 'Provider')
|
5
|
+
|
6
|
+
def self.query(provider, meta: Redox::Models::Meta.new)
|
7
|
+
meta = QUERY_META.merge(meta)
|
8
|
+
return Redox::Models::Model.from_response_inflected((RedoxClient.connection.request(body: Redox::Request.build_body(provider, meta))))
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
data/lib/redox/version.rb
CHANGED
data/redox.gemspec
CHANGED
@@ -5,8 +5,8 @@ require 'redox/version'
|
|
5
5
|
Gem::Specification.new do |spec|
|
6
6
|
spec.name = 'redox'
|
7
7
|
spec.version = Redox::VERSION
|
8
|
-
spec.authors = ['Alexander Clark', 'Mike Crockett']
|
9
|
-
spec.email = ['alexander.clark@weinfuse.com', 'mike.crockett@weinfuse.com']
|
8
|
+
spec.authors = ['Alexander Clark', 'Mike Crockett', 'Mike Carr']
|
9
|
+
spec.email = ['alexander.clark@weinfuse.com', 'mike.crockett@weinfuse.com', 'michael.carr@weinfuse.com']
|
10
10
|
|
11
11
|
spec.summary = 'Ruby wrapper for the Redox Engine API'
|
12
12
|
spec.homepage = 'https://github.com/WeInfuse/redox'
|
@@ -28,7 +28,7 @@ Gem::Specification.new do |spec|
|
|
28
28
|
spec.require_paths = ['lib']
|
29
29
|
spec.licenses = ['MIT']
|
30
30
|
|
31
|
-
spec.add_dependency 'httparty', '~> 0.
|
31
|
+
spec.add_dependency 'httparty', '~> 0.18'
|
32
32
|
spec.add_dependency 'hashie', '~> 3.5'
|
33
33
|
spec.add_development_dependency 'bundler', '>=1', '<3'
|
34
34
|
spec.add_development_dependency 'byebug', '~> 11'
|
metadata
CHANGED
@@ -1,15 +1,16 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: redox
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alexander Clark
|
8
8
|
- Mike Crockett
|
9
|
-
|
9
|
+
- Mike Carr
|
10
|
+
autorequire:
|
10
11
|
bindir: exe
|
11
12
|
cert_chain: []
|
12
|
-
date: 2020-
|
13
|
+
date: 2020-10-13 00:00:00.000000000 Z
|
13
14
|
dependencies:
|
14
15
|
- !ruby/object:Gem::Dependency
|
15
16
|
name: httparty
|
@@ -17,14 +18,14 @@ dependencies:
|
|
17
18
|
requirements:
|
18
19
|
- - "~>"
|
19
20
|
- !ruby/object:Gem::Version
|
20
|
-
version: '0.
|
21
|
+
version: '0.18'
|
21
22
|
type: :runtime
|
22
23
|
prerelease: false
|
23
24
|
version_requirements: !ruby/object:Gem::Requirement
|
24
25
|
requirements:
|
25
26
|
- - "~>"
|
26
27
|
- !ruby/object:Gem::Version
|
27
|
-
version: '0.
|
28
|
+
version: '0.18'
|
28
29
|
- !ruby/object:Gem::Dependency
|
29
30
|
name: hashie
|
30
31
|
requirement: !ruby/object:Gem::Requirement
|
@@ -129,10 +130,11 @@ dependencies:
|
|
129
130
|
- - "~>"
|
130
131
|
- !ruby/object:Gem::Version
|
131
132
|
version: '0.9'
|
132
|
-
description:
|
133
|
+
description:
|
133
134
|
email:
|
134
135
|
- alexander.clark@weinfuse.com
|
135
136
|
- mike.crockett@weinfuse.com
|
137
|
+
- michael.carr@weinfuse.com
|
136
138
|
executables: []
|
137
139
|
extensions: []
|
138
140
|
extra_rdoc_files: []
|
@@ -145,17 +147,25 @@ files:
|
|
145
147
|
- lib/redox.rb
|
146
148
|
- lib/redox/authentication.rb
|
147
149
|
- lib/redox/connection.rb
|
150
|
+
- lib/redox/models/financial.rb
|
148
151
|
- lib/redox/models/meta.rb
|
149
152
|
- lib/redox/models/model.rb
|
153
|
+
- lib/redox/models/ordering_provider.rb
|
150
154
|
- lib/redox/models/patient.rb
|
151
155
|
- lib/redox/models/patient/demographics.rb
|
152
156
|
- lib/redox/models/patient/identifier.rb
|
153
157
|
- lib/redox/models/patient/insurance.rb
|
154
158
|
- lib/redox/models/patient/p_c_p.rb
|
155
159
|
- lib/redox/models/potential_matches.rb
|
160
|
+
- lib/redox/models/provider.rb
|
161
|
+
- lib/redox/models/transaction.rb
|
162
|
+
- lib/redox/models/visit.rb
|
156
163
|
- lib/redox/redox_exception.rb
|
164
|
+
- lib/redox/request/financial.rb
|
157
165
|
- lib/redox/request/patient_admin.rb
|
158
166
|
- lib/redox/request/patient_search.rb
|
167
|
+
- lib/redox/request/provider.rb
|
168
|
+
- lib/redox/request/request.rb
|
159
169
|
- lib/redox/version.rb
|
160
170
|
- redox.gemspec
|
161
171
|
homepage: https://github.com/WeInfuse/redox
|
@@ -163,7 +173,7 @@ licenses:
|
|
163
173
|
- MIT
|
164
174
|
metadata:
|
165
175
|
allowed_push_host: https://rubygems.org
|
166
|
-
post_install_message:
|
176
|
+
post_install_message:
|
167
177
|
rdoc_options: []
|
168
178
|
require_paths:
|
169
179
|
- lib
|
@@ -178,9 +188,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
178
188
|
- !ruby/object:Gem::Version
|
179
189
|
version: '0'
|
180
190
|
requirements: []
|
181
|
-
rubyforge_project:
|
191
|
+
rubyforge_project:
|
182
192
|
rubygems_version: 2.7.6
|
183
|
-
signing_key:
|
193
|
+
signing_key:
|
184
194
|
specification_version: 4
|
185
195
|
summary: Ruby wrapper for the Redox Engine API
|
186
196
|
test_files: []
|