redox 1.7.2 → 1.8.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ca16f2f2e1c41513d99874f9a04b6372d7749f740b11f0d6bb9b883baf548a23
4
- data.tar.gz: 199d2165dbbbfe657de361bdbe61b612503997c61455f582587ffd4ef3beac27
3
+ metadata.gz: 88791977c730199ad0ec972507960fcd27031e56e44d273b2e980be5cee9d987
4
+ data.tar.gz: e5caa1e1d61aca98b349887511c7e1362ac9b250b78d9f5a644d10ac1da2af77
5
5
  SHA512:
6
- metadata.gz: a066a300059376e6ed20b64c90b07b81602527757c3976a9f54ef02c3bfe476e92c851a232e01b15820b482636330bfbbea485c53ab273465af3ffc465c7cda0
7
- data.tar.gz: 63b5ddc7ca3ef660537dc517be4c00866d90ce617b75967927306c215ea29a163ccc6c986ee56e687dbb0e8d091da864e016f2e4eedcf4a59c700bf1aa9c6aa6
6
+ metadata.gz: e56c9dc18523cd5128d3e80c8dae9b6f99689836aea2c9c824cf4e1f544dac2ea5dd10fa5df16624c8569621c02375ff4ca5a541cf291a229f55c22a91548e2d
7
+ data.tar.gz: 44fbe989c5fddca411d3aba316141d04e82b6aa9cbbb8aaa3a1083a6d7ab47f30a7a539c3aee70d6e3db09c0c7b69d231f582613c94160caa6a200de3695bd18
data/CHANGELOG.md CHANGED
@@ -4,6 +4,23 @@ 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.8.1] - 2022-1-25
8
+ ### Added
9
+ - Components, OrderedBy, Indications, and AdministeringProvider to Medication Model
10
+
11
+ ## [1.8.0] - 2021-12-13
12
+ ### Added
13
+ - Medications Model
14
+ - Medications#administration
15
+
16
+ ## [1.7.4] - 2021-12-2
17
+ ### Added
18
+ - Component Model ID Property Changed
19
+
20
+ ## [1.7.3] - 2021-11-24
21
+ ### Added
22
+ - Visit#AttendingProvider and helpers for ID, IDType, FirstName, LastName
23
+
7
24
  ## [1.7.2] - 2021-11-18
8
25
  ### Added
9
26
  - Component Model
@@ -170,6 +187,10 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
170
187
  ### Added
171
188
  - Initial Release
172
189
 
190
+ [1.8.1]: https://github.com/WeInfuse/redox/compare/v1.8.0...v1.8.1
191
+ [1.8.0]: https://github.com/WeInfuse/redox/compare/v1.7.4...v1.8.0
192
+ [1.7.4]: https://github.com/WeInfuse/redox/compare/v1.7.3...v1.7.4
193
+ [1.7.3]: https://github.com/WeInfuse/redox/compare/v1.7.2...v1.7.3
173
194
  [1.7.2]: https://github.com/WeInfuse/redox/compare/v1.7.1...v1.7.2
174
195
  [1.7.1]: https://github.com/WeInfuse/redox/compare/v1.7...v1.7.1
175
196
  [1.7]: https://github.com/WeInfuse/redox/compare/v1.6.1...v1.7
@@ -0,0 +1,15 @@
1
+ module Redox
2
+ module Models
3
+ class Administration < AbstractModel
4
+ property :Status, required: false, from: :status
5
+ property :Medication, required: false, from: :medication, default: Redox::Models::Medication.new
6
+ property :StartDate, required: false, from: :start_date
7
+ property :EndDate, required: false, from: :end_date
8
+
9
+ alias_method :status, :Status
10
+ alias_method :medication, :Medication
11
+ alias_method :start_date, :StartDate
12
+ alias_method :end_date, :EndDate
13
+ end
14
+ end
15
+ end
@@ -1,11 +1,11 @@
1
1
  module Redox
2
2
  module Models
3
3
  class Component < AbstractModel
4
- property :Id, required: false, from: :id
4
+ property :ID, required: false, from: :id
5
5
  property :Name, required: false, from: :name
6
6
  property :Value, required: false, from: :value
7
7
 
8
- alias_method :id, :Id
8
+ alias_method :id, :ID
9
9
  alias_method :name, :Name
10
10
  alias_method :value, :Value
11
11
  end
@@ -0,0 +1,27 @@
1
+ module Redox
2
+ module Models
3
+ class Medication < AbstractModel
4
+ property :Order, required: false, from: :order, default: {}
5
+ property :LotNumber, required: false, from: :lot_number
6
+ property :Dose, required: false, from: :dose, default: {}
7
+ property :Rate, required: false, from: :rate, default: {}
8
+ property :Route, required: false, from: :route, default: {}
9
+ property :Product, required: false, from: :product, default: {}
10
+ property :Components, required: false, from: :components, default: []
11
+ property :OrderedBy, required: false, from: :ordered_by, default: {}
12
+ property :Indications, required: false, from: :indications, default: []
13
+ property :AdministeringProvider, required: false, from: :administering_provider, default: {}
14
+
15
+ alias_method :order, :Order
16
+ alias_method :lot_number, :LotNumber
17
+ alias_method :dose, :Dose
18
+ alias_method :rate, :Rate
19
+ alias_method :route, :Route
20
+ alias_method :product, :Product
21
+ alias_method :components, :Components
22
+ alias_method :ordered_by, :OrderedBy
23
+ alias_method :indications, :Indications
24
+ alias_method :administering_provider, :AdministeringProvider
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,18 @@
1
+ module Redox
2
+ module Models
3
+ class Medications < 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 :Administrations, required: false, from: :administrations, default: []
7
+
8
+ alias_method :patient, :Patient
9
+ alias_method :visit, :Visit
10
+ alias_method :administrations, :Administrations
11
+
12
+ def create(meta: Meta.new)
13
+ Redox::Request::Medications.administration(patient: self, meta: meta)
14
+ end
15
+
16
+ end
17
+ end
18
+ end
@@ -11,6 +11,12 @@ module Redox
11
11
  FirstName: nil,
12
12
  LastName: nil
13
13
  }
14
+ DEFAULT_ATTENDING_PROVIDER = {
15
+ ID: nil,
16
+ IDType: nil,
17
+ FirstName: nil,
18
+ LastName: nil
19
+ }
14
20
 
15
21
  property :Insurances, from: :insurances, required: false, default: []
16
22
  property :Location, from: :location, required: false, default: DEFAULT_LOCATION
@@ -25,11 +31,13 @@ module Redox
25
31
  property :CancelReason, from: :cancel_reason, required: false
26
32
  property :DischargeDateTime, from: :end, required: false
27
33
  property :ReferringProvider, from: :referring_provider, required: false, default: DEFAULT_REFERRING_PROVIDER
34
+ property :AttendingProvider, from: :attending_provider, required: false, default: DEFAULT_ATTENDING_PROVIDER
28
35
 
29
36
  alias_method :insurances, :Insurances
30
37
  alias_method :start, :VisitDateTime
31
38
  alias_method :end, :DischargeDateTime
32
39
  alias_method :referring_provider, :ReferringProvider
40
+ alias_method :attending_provider, :AttendingProvider
33
41
 
34
42
  def department=(v)
35
43
  self[:Location] ||= DEFAULT_LOCATION
@@ -43,6 +51,26 @@ module Redox
43
51
  self
44
52
  end
45
53
 
54
+ def attending_provider_id=(v)
55
+ self[:AttendingProvider] ||= DEFAULT_ATTENDING_PROVIDER
56
+ self[:AttendingProvider][:ID] = v
57
+ end
58
+
59
+ def attending_provider_id_type=(v)
60
+ self[:AttendingProvider] ||= DEFAULT_ATTENDING_PROVIDER
61
+ self[:AttendingProvider][:IDType] = v
62
+ end
63
+
64
+ def attending_provider_first_name=(v)
65
+ self[:AttendingProvider] ||= DEFAULT_ATTENDING_PROVIDER
66
+ self[:AttendingProvider][:FirstName] = v
67
+ end
68
+
69
+ def attending_provider_last_name=(v)
70
+ self[:AttendingProvider] ||= DEFAULT_ATTENDING_PROVIDER
71
+ self[:AttendingProvider][:LastName] = v
72
+ end
73
+
46
74
  def referring_provider_id=(v)
47
75
  self[:ReferringProvider] ||= DEFAULT_REFERRING_PROVIDER
48
76
  self[:ReferringProvider][:ID] = v
@@ -0,0 +1,12 @@
1
+ module Redox
2
+ module Request
3
+ class Medications
4
+ ADMINISTRATION_META = Redox::Models::Meta.new(EventType: 'Administration', DataModel: 'Medications')
5
+
6
+ def self.administration(model, meta: Redox::Models::Meta.new)
7
+ meta = ADMINISTRATION_META.merge(meta)
8
+ return Redox::Models::Model.from_response((RedoxClient.connection.request(body: Redox::Request.build_body(model, meta))))
9
+ end
10
+ end
11
+ end
12
+ end
data/lib/redox/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Redox
2
- VERSION = '1.7.2'.freeze
2
+ VERSION = '1.8.1'.freeze
3
3
  end
data/lib/redox.rb CHANGED
@@ -16,6 +16,9 @@ require 'redox/models/notes'
16
16
  require 'redox/models/note'
17
17
  require 'redox/models/media'
18
18
  require 'redox/models/media_upload'
19
+ require 'redox/models/medication'
20
+ require 'redox/models/medications'
21
+ require 'redox/models/administration'
19
22
  require 'redox/models/patient/demographics'
20
23
  require 'redox/models/patient/contacts'
21
24
  require 'redox/models/patient/identifier'
@@ -32,6 +35,7 @@ require 'redox/request/patient_search'
32
35
  require 'redox/request/provider'
33
36
  require 'redox/request/scheduling'
34
37
  require 'redox/request/media'
38
+ require 'redox/request/medications'
35
39
 
36
40
  module Redox
37
41
  class Configuration
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.7.2
4
+ version: 1.8.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexander Clark
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: exe
12
12
  cert_chain: []
13
- date: 2021-11-18 00:00:00.000000000 Z
13
+ date: 2022-01-25 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: httparty
@@ -147,10 +147,13 @@ files:
147
147
  - lib/redox.rb
148
148
  - lib/redox/authentication.rb
149
149
  - lib/redox/connection.rb
150
+ - lib/redox/models/administration.rb
150
151
  - lib/redox/models/component.rb
151
152
  - lib/redox/models/financial.rb
152
153
  - lib/redox/models/media.rb
153
154
  - lib/redox/models/media_upload.rb
155
+ - lib/redox/models/medication.rb
156
+ - lib/redox/models/medications.rb
154
157
  - lib/redox/models/meta.rb
155
158
  - lib/redox/models/model.rb
156
159
  - lib/redox/models/note.rb
@@ -170,6 +173,7 @@ files:
170
173
  - lib/redox/redox_exception.rb
171
174
  - lib/redox/request/financial.rb
172
175
  - lib/redox/request/media.rb
176
+ - lib/redox/request/medications.rb
173
177
  - lib/redox/request/notes.rb
174
178
  - lib/redox/request/patient_admin.rb
175
179
  - lib/redox/request/patient_search.rb