dhis2 2.3.3 → 2.3.4

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 23a68a6e9121453b5f029afc363dae6e4b2acf85
4
- data.tar.gz: e6f31c8d2d40edbfbdeea5136a28ca7f08defa1c
3
+ metadata.gz: 66cf5849a25c1a4f9dc97664e086a02cdb30fb9e
4
+ data.tar.gz: c4695d707a8b06dbaad62fb98047374100116ea0
5
5
  SHA512:
6
- metadata.gz: 86bc17621e4f32b5dee4fbb350a5bfc5d0a82445cb468a8c7160450ae8f3bc72cfc0046a8a68463ef11219766b41741a30d97f1e7e4110e46fe2436402b4a9a5
7
- data.tar.gz: 707583e0ed6e6c6af41573b49f68d7749f3dbb5f4b1161f2ab14fd45acfd95c8951ddbcbce6fc63f72583f7aba87732586e31edaf5717cdb52790afc914ce0fc
6
+ metadata.gz: 6b6b5229099449c13c93b7674125e6f6ddbb5df84f49b1b5ee7bb957077511317151b48920913639d127925f029cd9d947712b40a582865a713d5fc2ea494c86
7
+ data.tar.gz: e1517df7e484908f8278cd45d8188fd4de111fb376617eab171f55eaf532a3fe258fff21ec597833340535894908fdeeea343957a78990ceb0d4490ac6dc6791
data/.gitignore CHANGED
@@ -7,3 +7,5 @@
7
7
  /pkg/
8
8
  /spec/reports/
9
9
  /tmp/
10
+ .byebug_history
11
+ .rake_tasks~
data/README.md CHANGED
@@ -104,6 +104,16 @@ If you have an equality condition or set of equality conditions that should retu
104
104
  # Just do:
105
105
  data_element = Dhis2.client.data_elements.find_by(code: "C27")
106
106
 
107
+ ### Manage relations
108
+
109
+ You can add or remove items in collections using `add_relation` and `remove_relation`:
110
+
111
+ data_set = Dhis2.client.data_sets.list(page_size:1).first
112
+ data_element = Dhis2.client.data_elements.list(page_size: 1).first
113
+ data_set.add_relation(:dataSetElements, data_element.id)
114
+ ...
115
+ data_set.remove_relation(:dataSetElements, data_element.id)
116
+
107
117
  ### Values
108
118
 
109
119
  You can retreive data values this way:
data/dhis2.gemspec CHANGED
@@ -26,4 +26,6 @@ Gem::Specification.new do |spec|
26
26
  spec.add_development_dependency "minitest", "~> 5.0"
27
27
  spec.add_development_dependency "minitest-reporters"
28
28
  spec.add_development_dependency "faker", "~> 1.6", ">= 1.6.3"
29
+ spec.add_development_dependency "byebug"
30
+
29
31
  end
@@ -92,6 +92,16 @@ module Dhis2
92
92
  self
93
93
  end
94
94
 
95
+ def add_relation(relation, relation_id)
96
+ client.post("#{self.class.resource_name}/#{id}/#{relation}/#{relation_id}",{})
97
+ self
98
+ end
99
+
100
+ def remove_relation(relation, relation_id)
101
+ client.delete("#{self.class.resource_name}/#{id}/#{relation}/#{relation_id}",{})
102
+ self
103
+ end
104
+
95
105
  def delete
96
106
  client.delete("#{self.class.resource_name}/#{id}")
97
107
  true
@@ -6,19 +6,21 @@ module Dhis2
6
6
  def create(client, sets)
7
7
  sets = [sets].flatten
8
8
 
9
- category_combo_id = client.category_combos.find_by(name: "default").id
9
+ category_combo = client.category_combos.find_by(name: "default")
10
10
 
11
11
  data_set = {
12
12
  data_sets: sets.map do |set|
13
- {
13
+ dataset = {
14
14
  name: set[:name],
15
15
  short_name: set[:short_name],
16
16
  code: set[:code],
17
17
  period_type: "Monthly",
18
- data_elements: set[:data_element_ids] ? set[:data_element_ids].map { |id| { id: id } } : [],
18
+ data_elements: set[:data_element_ids] ? set[:data_element_ids].map { |id| { id: id } } : [],
19
19
  organisation_units: set[:organisation_unit_ids] ? set[:organisation_unit_ids].map { |id| { id: id } } : [],
20
- category_combo: { id: category_combo_id }
20
+ category_combo: { id: category_combo.id, name: category_combo.name }
21
21
  }
22
+
23
+ dataset
22
24
  end
23
25
  }
24
26
  response = client.post("metadata", data_set)
data/lib/dhis2/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Dhis2
2
- VERSION = "2.3.3"
2
+ VERSION = "2.3.4"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dhis2
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.3
4
+ version: 2.3.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Martin Van Aken
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-03-01 00:00:00.000000000 Z
11
+ date: 2017-03-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client
@@ -100,6 +100,20 @@ dependencies:
100
100
  - - ">="
101
101
  - !ruby/object:Gem::Version
102
102
  version: 1.6.3
103
+ - !ruby/object:Gem::Dependency
104
+ name: byebug
105
+ requirement: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - ">="
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
110
+ type: :development
111
+ prerelease: false
112
+ version_requirements: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - ">="
115
+ - !ruby/object:Gem::Version
116
+ version: '0'
103
117
  description: Allows to retreive items from a DHIS2 server in a more "Ruby way".
104
118
  email:
105
119
  - mvanaken@bluesquare.org