aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--app/controllers/api/v1/netex_imports_controller.rb3
-rw-r--r--app/models/import/netex.rb7
2 files changed, 5 insertions, 5 deletions
diff --git a/app/controllers/api/v1/netex_imports_controller.rb b/app/controllers/api/v1/netex_imports_controller.rb
index 186ddc35c..2c9caf8fb 100644
--- a/app/controllers/api/v1/netex_imports_controller.rb
+++ b/app/controllers/api/v1/netex_imports_controller.rb
@@ -31,8 +31,7 @@ module Api
def create_netex_import
attributes = netex_import_params.merge creator: "Webservice"
@netex_import = Import::Netex.new attributes
- @netex_import.save!
- @netex_import.create_referential!
+ @netex_import.create_with_referential!
rescue ActiveRecord::RecordInvalid
render json: {errors: @netex_import.errors}, status: 406
finish_action!
diff --git a/app/models/import/netex.rb b/app/models/import/netex.rb
index 93604c5f9..7b15859fa 100644
--- a/app/models/import/netex.rb
+++ b/app/models/import/netex.rb
@@ -10,7 +10,7 @@ class Import::Netex < Import::Base
validates_presence_of :parent
- def create_referential!
+ def create_with_referential!
self.referential =
Referential.new(
name: self.name,
@@ -19,15 +19,16 @@ class Import::Netex < Import::Base
metadatas: [referential_metadata]
)
self.referential.save
- unless self.referential.valid?
+ if self.referential.invalid?
Rails.logger.info "Can't create referential for import #{self.id}: #{referential.inspect} #{referential.metadatas.inspect} #{referential.errors.messages}"
if referential.metadatas.all?{|m| m.line_ids.empty?}
parent.messages.create criticity: :error, message_key: "referential_creation_missing_lines", message_attributes: {referential_name: referential.name}
else
parent.messages.create criticity: :error, message_key: "referential_creation", message_attributes: {referential_name: referential.name}
end
+ else
+ save!
end
- save!
end
private