oddb2xml 2.9.4 → 2.9.6
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/lib/oddb2xml/builder.rb +20 -14
- data/lib/oddb2xml/extractor.rb +1 -1
- data/lib/oddb2xml/version.rb +1 -1
- metadata +6 -6
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: b2ab5b371ce3a8b15cebb3c454571086567f340a3ea70bc36f32ac9b77a65832
|
|
4
|
+
data.tar.gz: d2801aae2bdcb1d30381900b9a98de99522e85f8721119ec7128e3f4aefc4e48
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: f9198f5f6de7e6a3d163585b8e33ccc98d38ef5ff1517a8a44c0fddffdb25600951cbb31d621238a17c355440a69199f0268bd82a533add740ab69616f9de57b
|
|
7
|
+
data.tar.gz: cb5c8c93a780f44245edb74cc891e9819328e21dddf2f59d511619ed4530347fe10320e4cefcaba82bed0d2f88a4d63fae84efec038ae8f8a0d2877c8e40dfeb
|
data/lib/oddb2xml/builder.rb
CHANGED
|
@@ -605,6 +605,7 @@ module Oddb2xml
|
|
|
605
605
|
add_missing_products_from_swissmedic
|
|
606
606
|
add_products_from_bag_preparations(true)
|
|
607
607
|
nbr_products = 0
|
|
608
|
+
added_gtin = Set.new
|
|
608
609
|
Oddb2xml.log "build_product #{@products.size + @missing.size} products"
|
|
609
610
|
a_builder = Nokogiri::XML::Builder.new(encoding: "utf-8") do |xml|
|
|
610
611
|
xml.doc.tag_suffix = @tag_suffix
|
|
@@ -614,6 +615,7 @@ module Oddb2xml
|
|
|
614
615
|
ean = obj[:ean13]
|
|
615
616
|
next unless check_name(obj, :de)
|
|
616
617
|
next unless check_name(obj, :fr)
|
|
618
|
+
next if added_gtin.include?(ean)
|
|
617
619
|
next if /^Q/i.match?(obj[:atc])
|
|
618
620
|
if obj[:prodno]
|
|
619
621
|
next if emitted.index(obj[:prodno])
|
|
@@ -634,26 +636,14 @@ module Oddb2xml
|
|
|
634
636
|
xml.CompositionSwissmedic obj[:composition_swissmedic] if obj[:composition_swissmedic]
|
|
635
637
|
}
|
|
636
638
|
end
|
|
637
|
-
@firstbase.each do |ean13, obj|
|
|
638
|
-
description = obj[:trade_item_description_de]
|
|
639
|
-
if description.empty?
|
|
640
|
-
description = obj[:trade_item_description_en]
|
|
641
|
-
end
|
|
642
|
-
if !description.empty? || !obj[:trade_item_description_fr].empty?
|
|
643
|
-
xml.PRD("DT" => "") {
|
|
644
|
-
xml.GTIN obj[:gtin]
|
|
645
|
-
xml.CPT
|
|
646
|
-
xml.DSCRD description
|
|
647
|
-
xml.DSCRF obj[:trade_item_description_fr]
|
|
648
|
-
}
|
|
649
|
-
end
|
|
650
|
-
end
|
|
651
639
|
@products.sort.to_h.each do |ean13, obj|
|
|
652
640
|
next if /^Q/i.match?(obj[:atc])
|
|
653
641
|
seq = obj[:seq]
|
|
654
642
|
ean = obj[:ean13]
|
|
655
643
|
next unless check_name(obj, :de)
|
|
656
644
|
next unless check_name(obj, :fr)
|
|
645
|
+
next if added_gtin.include?(ean)
|
|
646
|
+
added_gtin.add(ean)
|
|
657
647
|
xml.PRD("DT" => obj[:last_change]) do
|
|
658
648
|
nbr_products += 1
|
|
659
649
|
xml.GTIN ean
|
|
@@ -766,6 +756,22 @@ module Oddb2xml
|
|
|
766
756
|
xml.CompositionSwissmedic obj[:comp] unless obj[:comp].empty?
|
|
767
757
|
end
|
|
768
758
|
end
|
|
759
|
+
@firstbase.each do |ean13, obj|
|
|
760
|
+
description = obj[:trade_item_description_de]
|
|
761
|
+
if description.empty?
|
|
762
|
+
description = obj[:trade_item_description_en]
|
|
763
|
+
end
|
|
764
|
+
next if added_gtin.include?(obj[:gtin])
|
|
765
|
+
if !description.empty? || !obj[:trade_item_description_fr].empty?
|
|
766
|
+
added_gtin.add(obj[:gtin])
|
|
767
|
+
xml.PRD("DT" => "") {
|
|
768
|
+
xml.GTIN obj[:gtin]
|
|
769
|
+
xml.CPT
|
|
770
|
+
xml.DSCRD description
|
|
771
|
+
xml.DSCRF obj[:trade_item_description_fr]
|
|
772
|
+
}
|
|
773
|
+
end
|
|
774
|
+
end
|
|
769
775
|
xml.RESULT {
|
|
770
776
|
xml.OK_ERROR "OK"
|
|
771
777
|
xml.NBR_RECORD nbr_products
|
data/lib/oddb2xml/extractor.rb
CHANGED
|
@@ -610,7 +610,7 @@ module Oddb2xml
|
|
|
610
610
|
gtin = row[0].value.to_s.gsub(/^0+/, '')
|
|
611
611
|
data[gtin] = {
|
|
612
612
|
gtin: gtin,
|
|
613
|
-
|
|
613
|
+
gtin: row[1]&.value.to_s,
|
|
614
614
|
target_market: row[2] ? row[2].value.to_s: "",
|
|
615
615
|
gpc: row[3] ? row[3].value.to_s: "",
|
|
616
616
|
trade_item_description_de: row[4] ? row[4].value.to_s: "",
|
data/lib/oddb2xml/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: oddb2xml
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.9.
|
|
4
|
+
version: 2.9.6
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Yasuhiro Asaka, Zeno R.R. Davatz, Niklaus Giger
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2025-02-14 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: rubyzip
|
|
@@ -550,7 +550,7 @@ homepage: https://github.com/zdavatz/oddb2xml
|
|
|
550
550
|
licenses:
|
|
551
551
|
- GPL-3.0
|
|
552
552
|
metadata: {}
|
|
553
|
-
post_install_message:
|
|
553
|
+
post_install_message:
|
|
554
554
|
rdoc_options: []
|
|
555
555
|
require_paths:
|
|
556
556
|
- lib
|
|
@@ -565,8 +565,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
565
565
|
- !ruby/object:Gem::Version
|
|
566
566
|
version: '0'
|
|
567
567
|
requirements: []
|
|
568
|
-
rubygems_version: 3.5.
|
|
569
|
-
signing_key:
|
|
568
|
+
rubygems_version: 3.5.22
|
|
569
|
+
signing_key:
|
|
570
570
|
specification_version: 4
|
|
571
571
|
summary: oddb2xml creates xml files.
|
|
572
572
|
test_files:
|