apidae 1.3.13 → 1.3.16

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: bf56887dfb66e43d40e27502ee04927cc5464aec4d0338fe047f35572ed08e55
4
- data.tar.gz: 25bd439610b4315b8cdcd6ecc3d9050b7f2572ff805dae27e1baaf964e861841
3
+ metadata.gz: a6e092adead9d8f84f1d6de9b4029bdec48188bfa085dd265adbc8b1a8b57124
4
+ data.tar.gz: 22717992328c5a0a585a4762f33d9e33cfc7a3704157ab51098b8d53716e3a36
5
5
  SHA512:
6
- metadata.gz: e42811c794c15006dad38b8f6809d197d1d2c749b86a3cdbe4609a8213783c5fc725d8231c94a70ddff458b014b883225043f105d07b2d72824927ea9d000377
7
- data.tar.gz: df8b7b6dddcfbe31746fc1a36ab807de31832f008790b168176431a33cfc85cfa9de0ef29ce0714445c3df57af927fce4228d8871acdd1c1f8b421f42b793d6d
6
+ metadata.gz: 6b8c334f666305fc53f485a2bb68a867c2280b30f09233e320a03f5d28b2fc302a950260879c1e9900b26c5e00ed9ac48dd3d553b118c78597f7ed072313d89c
7
+ data.tar.gz: 0d9c5826b752fab4f0802d3a574c970b9bb58f7594c31ec9efd4b6310a750fc5150d1d2e1affa2032f9e25c5eda67bec74c1354a632314c913271c9e47eef64f
@@ -37,10 +37,10 @@ module Apidae
37
37
  def run
38
38
  success = true
39
39
  Export.pending.each do |e|
40
- logger.info "Running import for Apidae export #{e.id} - Project #{e.project.id}"
40
+ logger.info "Running import for Apidae export #{e.id} - Project #{e.project_id}"
41
41
  e.update(status: Export::IN_PROGRESS)
42
- success &&= e.import_data
43
- logger.info "Apidae export #{e.id} import run complete - Project #{e.project.id}"
42
+ success = e.import_data && success
43
+ logger.info "Apidae export #{e.id} import run complete - Project #{e.project_id}"
44
44
  end
45
45
  success ? head(:ok) : head(:internal_server_error)
46
46
  end
@@ -174,7 +174,7 @@ module Apidae
174
174
  SelectionObject.where(apidae_selection_id: apidae_selection_ids).delete_all
175
175
  Selection.where(id: apidae_selection_ids).delete_all
176
176
  selections_hashes.each do |selection_data|
177
- logger.info "Updating selection #{selection_data[:id]}"
177
+ logger.debug "Updating selection #{selection_data[:id]}"
178
178
  Selection.add_or_update(selection_data, project.id)
179
179
  end
180
180
  result[:selections] = Selection.where(apidae_project_id: project.id)
@@ -12,15 +12,17 @@ module Apidae
12
12
  def self.import(refs_json)
13
13
  locales = Rails.application.config.respond_to?(:apidae_locales) ? Rails.application.config.apidae_locales : [DEFAULT_LOCALE]
14
14
  locales_map = Hash[locales.map {|loc| ["libelle#{loc.camelize.gsub('-', '')}".to_sym, loc]}]
15
- refs_hashes = JSON.parse(refs_json, symbolize_names: true)
16
- if refs_hashes.length != where("apidae_type != ?", INTERNAL).count
17
- refs_hashes.each do |ref_data|
18
- ref = Reference.find_or_initialize_by(apidae_id: ref_data[:id], apidae_type: ref_data[:elementReferenceType])
19
- ref.label_data = ref_data.slice(*locales_map.keys).transform_keys {|k| locales_map[k]}
20
- ref.parent = ref_data[:parent][:id] if ref_data[:parent]
21
- ref.category = ref_data[:familleCritere] ? ref_data[:familleCritere][:id] : (ref_data[:typeLabel] ? ref_data[:typeLabel][:id] : nil)
22
- ref.is_active = ref_data[:actif]
23
- ref.save!
15
+ if count == 0 || Time.current > (maximum(:updated_at) + 1.day)
16
+ refs_hashes = JSON.parse(refs_json, symbolize_names: true)
17
+ if refs_hashes.length != where("apidae_type != ?", INTERNAL).count
18
+ refs_hashes.each do |ref_data|
19
+ ref = Reference.find_or_initialize_by(apidae_id: ref_data[:id], apidae_type: ref_data[:elementReferenceType])
20
+ ref.label_data = ref_data.slice(*locales_map.keys).transform_keys {|k| locales_map[k]}
21
+ ref.parent = ref_data[:parent][:id] if ref_data[:parent]
22
+ ref.category = ref_data[:familleCritere] ? ref_data[:familleCritere][:id] : (ref_data[:typeLabel] ? ref_data[:typeLabel][:id] : nil)
23
+ ref.is_active = ref_data[:actif]
24
+ ref.save!
25
+ end
24
26
  end
25
27
  end
26
28
  end
@@ -53,7 +53,7 @@ module Apidae
53
53
  .select("COUNT(id), apidae_object_id, ARRAY_AGG(id) AS so_ids")
54
54
  .having("COUNT(id) > ?", 1).map {|so| so.so_ids}
55
55
  dups_count = apidae_selection_objects.where(id: dups.map {|d| d.sort[1..-1]}.flatten).delete_all
56
- logger.info "Cleaned up #{dups_count} duplicate selection-objects associations for selection #{apidae_id}"
56
+ logger.debug "Cleaned up #{dups_count} duplicate selection-objects associations for selection #{apidae_id}"
57
57
  end
58
58
 
59
59
  def results(where_clause, offset, size)
@@ -1,3 +1,3 @@
1
1
  module Apidae
2
- VERSION = "1.3.13"
2
+ VERSION = "1.3.16"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: apidae
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.13
4
+ version: 1.3.16
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jean-Baptiste Vilain
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-07-01 00:00:00.000000000 Z
11
+ date: 2022-07-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails