eco-helpers 1.3.2 → 1.3.3

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
  SHA256:
3
- metadata.gz: aa39fb0038e03d65a129a3d7df06f5c3fba60518ef847cd89cfe0d973f27065e
4
- data.tar.gz: f22d6d27a952af99e4f84eb1ed29a8b930d7226f0a67d60c86f6eabb4a15715f
3
+ metadata.gz: 64ffc42a60247e70fba74a45b4cdef667d9df2060e5dade03312631e41b0a91a
4
+ data.tar.gz: 94dcaa78623fe11bde331bb71deb52664a87f50b397bc21b37ee91aedea0df95
5
5
  SHA512:
6
- metadata.gz: 070ee0c500e334ef8bf149bdf3ec24fd20480a16a3b4742f25247fccd09a8ef476a3bdfcfb45119a4fa37dc1c0dbe415cf53de2fa6ecd4722fa81f65c3762450
7
- data.tar.gz: c4456bbbfd19b4e03734f6dd9b388087c7a7aee44dba138ec2aa1dfc78ceff0024c222589d5e9857561b25ef730faf3f9e8008dfb5d4dd006cfaa47c15c197a7
6
+ metadata.gz: acf65af431eb33a3b6ba5d864b9dedf2b2cb45469354933011807d6ed8598a2b73254a07f6eaf8531c025608458e7ef211b31a324847879a93278c4029bdc322
7
+ data.tar.gz: f8975080afd8acfa445e00af5665eb2d4f8ed9bb4aecbd29038a417842012ffd52c3ad53bd7197924d285ef4f27b233e09e95723ecda308f81148eac945ca867
@@ -184,7 +184,7 @@ module Eco
184
184
  if tree_file = org["tagtree"]
185
185
  tree = []
186
186
  tree = file_manager.load_json(tree_file) unless !tree_file
187
- @tagtree = Eco::API::Organization::TagTree.new(tree, enviro: enviro)
187
+ @tagtree = Eco::API::Organization::TagTree.new(tree, enviro: enviro)
188
188
  end
189
189
  end
190
190
 
@@ -14,6 +14,7 @@ module Eco
14
14
  ResetLandingPageCase.new(self).process
15
15
  ToCsvCase.new(self).process
16
16
  ToCsvDetailedCase.new(self).process
17
+ CodesToTagsCase.new(self).process
17
18
  EmailAsIdCase.new(self).process
18
19
  NewIdCase.new(self).process
19
20
  NewEmailCase.new(self).process
@@ -43,6 +44,7 @@ end
43
44
  require_relative 'default_cases/reset_landing_page_case'
44
45
  require_relative 'default_cases/to_csv_case'
45
46
  require_relative 'default_cases/to_csv_detailed_case'
47
+ require_relative 'default_cases/codes_to_tags_case'
46
48
  require_relative 'default_cases/email_as_id_case'
47
49
  require_relative 'default_cases/new_id_case'
48
50
  require_relative 'default_cases/new_email_case'
@@ -0,0 +1,47 @@
1
+ module Eco
2
+ module API
3
+ class UseCases
4
+ class DefaultCases
5
+ class CodesToTagsCase < DefaultCase
6
+
7
+ def process
8
+ @cases.define("codes-to-tags-from", type: :other) do |session, options, usecase|
9
+ raise "You have not defined a tagtree for the organisation" unless session.tagtree
10
+
11
+ unless mapper = session.config.location_codes && session.config.locations_mapper
12
+ raise "No filter_tags parser, nor location mappings are present"
13
+ end
14
+
15
+ to_tag = Proc.new do |code|
16
+ if mapper.external?(code)
17
+ mapper.to_internal(code)
18
+ elsif session.tagtree.tag?(code)
19
+ code.upcase
20
+ else
21
+ session.logger.warn("Unknown Location Code: '#{code}'")
22
+ nil
23
+ end
24
+ end
25
+
26
+ codes_column = options.dig(:other, :file, :codes_column)
27
+ input_file = options.dig(:other, :file, :name)
28
+ output_file = "mapped_#{File.basename(input_file).gsub(/\s/, "")}"
29
+
30
+ csv_table = Eco::CSV.read(input_file)
31
+
32
+ csv_table.add_column("ecoPortalTag").tap do |csv_table|
33
+ csv_table.each do |row|
34
+ row["ecoPortalTag"] = to_tag.call(row[codes_column])
35
+ end
36
+
37
+ File.open(output_file, "w") {|fd| fd << csv_table.to_csv}
38
+ end
39
+ exit
40
+ end
41
+ end
42
+
43
+ end
44
+ end
45
+ end
46
+ end
47
+ end
@@ -10,6 +10,14 @@ ASSETS.cli.config do |cnf|
10
10
  session.usecases.case(case_name)
11
11
  end
12
12
 
13
+ cases.add("-codes-to-tags-from", :other, case_name: "codes-to-tags-from") do |session, options|
14
+ file = SCR.get_file("-codes-to-tags-from", required: true, should_exist: true)
15
+ options.deep_merge!(other: {file: {name: file, format: :csv}})
16
+
17
+ col_codes = SCR.get_arg("-column", with_param: true)
18
+ options.deep_merge!(other: {file: {codes_column: col_codes}})
19
+ end
20
+
13
21
  cases.add("-reset-landing-page", :transform, case_name: "reset-landing-page")
14
22
  cases.add("-email-as-id", :transform, case_name: "email-as-id")
15
23
  cases.add("-new-id-from", :sync, case_name: "new-id")
@@ -25,6 +33,7 @@ ASSETS.cli.config do |cnf|
25
33
  session.logger.error(msg)
26
34
  exit(1)
27
35
  end
36
+
28
37
  options.deep_merge!(super: {old: old_id})
29
38
 
30
39
  unless new_id = SCR.get_arg("-new-super", with_param: true)
data/lib/eco/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Eco
2
- VERSION = "1.3.2"
2
+ VERSION = "1.3.3"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eco-helpers
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.2
4
+ version: 1.3.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Oscar Segura
@@ -82,22 +82,22 @@ dependencies:
82
82
  name: redcarpet
83
83
  requirement: !ruby/object:Gem::Requirement
84
84
  requirements:
85
- - - "~>"
86
- - !ruby/object:Gem::Version
87
- version: '3.5'
88
85
  - - ">="
89
86
  - !ruby/object:Gem::Version
90
87
  version: 3.5.0
88
+ - - "~>"
89
+ - !ruby/object:Gem::Version
90
+ version: '3.5'
91
91
  type: :development
92
92
  prerelease: false
93
93
  version_requirements: !ruby/object:Gem::Requirement
94
94
  requirements:
95
- - - "~>"
96
- - !ruby/object:Gem::Version
97
- version: '3.5'
98
95
  - - ">="
99
96
  - !ruby/object:Gem::Version
100
97
  version: 3.5.0
98
+ - - "~>"
99
+ - !ruby/object:Gem::Version
100
+ version: '3.5'
101
101
  - !ruby/object:Gem::Dependency
102
102
  name: ecoportal-api
103
103
  requirement: !ruby/object:Gem::Requirement
@@ -142,42 +142,42 @@ dependencies:
142
142
  name: aws-sdk-ses
143
143
  requirement: !ruby/object:Gem::Requirement
144
144
  requirements:
145
- - - "~>"
146
- - !ruby/object:Gem::Version
147
- version: '1.14'
148
145
  - - ">="
149
146
  - !ruby/object:Gem::Version
150
147
  version: 1.14.0
148
+ - - "~>"
149
+ - !ruby/object:Gem::Version
150
+ version: '1.14'
151
151
  type: :runtime
152
152
  prerelease: false
153
153
  version_requirements: !ruby/object:Gem::Requirement
154
154
  requirements:
155
- - - "~>"
156
- - !ruby/object:Gem::Version
157
- version: '1.14'
158
155
  - - ">="
159
156
  - !ruby/object:Gem::Version
160
157
  version: 1.14.0
158
+ - - "~>"
159
+ - !ruby/object:Gem::Version
160
+ version: '1.14'
161
161
  - !ruby/object:Gem::Dependency
162
162
  name: dotenv
163
163
  requirement: !ruby/object:Gem::Requirement
164
164
  requirements:
165
- - - "~>"
166
- - !ruby/object:Gem::Version
167
- version: '2.6'
168
165
  - - ">="
169
166
  - !ruby/object:Gem::Version
170
167
  version: 2.6.0
168
+ - - "~>"
169
+ - !ruby/object:Gem::Version
170
+ version: '2.6'
171
171
  type: :runtime
172
172
  prerelease: false
173
173
  version_requirements: !ruby/object:Gem::Requirement
174
174
  requirements:
175
- - - "~>"
176
- - !ruby/object:Gem::Version
177
- version: '2.6'
178
175
  - - ">="
179
176
  - !ruby/object:Gem::Version
180
177
  version: 2.6.0
178
+ - - "~>"
179
+ - !ruby/object:Gem::Version
180
+ version: '2.6'
181
181
  - !ruby/object:Gem::Dependency
182
182
  name: net-sftp
183
183
  requirement: !ruby/object:Gem::Requirement
@@ -300,6 +300,7 @@ files:
300
300
  - lib/eco/api/usecases/default_case.rb
301
301
  - lib/eco/api/usecases/default_cases.rb
302
302
  - lib/eco/api/usecases/default_cases/change_email_case.rb
303
+ - lib/eco/api/usecases/default_cases/codes_to_tags_case.rb
303
304
  - lib/eco/api/usecases/default_cases/create_case.rb
304
305
  - lib/eco/api/usecases/default_cases/create_details_case.rb
305
306
  - lib/eco/api/usecases/default_cases/create_details_with_supervisor_case.rb
@@ -387,8 +388,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
387
388
  - !ruby/object:Gem::Version
388
389
  version: '0'
389
390
  requirements: []
390
- rubyforge_project:
391
- rubygems_version: 2.7.6.2
391
+ rubygems_version: 3.0.3
392
392
  signing_key:
393
393
  specification_version: 4
394
394
  summary: eco-helpers to manage people api cases