diff options
Diffstat (limited to 'app/models')
| -rw-r--r-- | app/models/concerns/iev_interfaces/task.rb | 5 | ||||
| -rw-r--r-- | app/models/export/base.rb | 2 | ||||
| -rw-r--r-- | app/models/export/workbench.rb | 7 | ||||
| -rw-r--r-- | app/models/import/base.rb | 3 | ||||
| -rw-r--r-- | app/models/workbench.rb | 1 |
5 files changed, 13 insertions, 5 deletions
diff --git a/app/models/concerns/iev_interfaces/task.rb b/app/models/concerns/iev_interfaces/task.rb index b142850fb..c84c588b6 100644 --- a/app/models/concerns/iev_interfaces/task.rb +++ b/app/models/concerns/iev_interfaces/task.rb @@ -7,7 +7,6 @@ module IevInterfaces::Task belongs_to :referential mount_uploader :file, ImportUploader - validates :file, presence: true has_many :children, foreign_key: :parent_id, class_name: self.name, dependent: :destroy @@ -17,8 +16,8 @@ module IevInterfaces::Task validates :name, presence: true validates_presence_of :workbench, :creator - has_many :messages, class_name: messages_class_name, dependent: :destroy, foreign_key: :import_id - has_many :resources, class_name: resources_class_name, dependent: :destroy, foreign_key: :import_id + has_many :messages, class_name: messages_class_name, dependent: :destroy, foreign_key: "#{messages_class_name.split('::').first.downcase}_id" + has_many :resources, class_name: resources_class_name, dependent: :destroy, foreign_key: "#{resources_class_name.split('::').first.downcase}_id" scope :where_started_at_in, ->(period_range) do where('started_at BETWEEN :begin AND :end', begin: period_range.begin, end: period_range.end) diff --git a/app/models/export/base.rb b/app/models/export/base.rb index d809055db..844c66d82 100644 --- a/app/models/export/base.rb +++ b/app/models/export/base.rb @@ -12,7 +12,7 @@ class Export::Base < ActiveRecord::Base include IevInterfaces::Task def self.model_name - ActiveModel::Name.new Export::Base, Export::Base, "Export::Base" + ActiveModel::Name.new Export::Base, Export::Base, "Export" end private diff --git a/app/models/export/workbench.rb b/app/models/export/workbench.rb new file mode 100644 index 000000000..a4b14cf55 --- /dev/null +++ b/app/models/export/workbench.rb @@ -0,0 +1,7 @@ +class Export::Workbench < Export::Base + after_commit :launch_worker, :on => :create + + def launch_worker + # WorkbenchImportWorker.perform_async(id) + end +end diff --git a/app/models/import/base.rb b/app/models/import/base.rb index e2ae129be..73d06d968 100644 --- a/app/models/import/base.rb +++ b/app/models/import/base.rb @@ -1,5 +1,6 @@ class Import::Base < ActiveRecord::Base self.table_name = "imports" + validates :file, presence: true def self.messages_class_name "Import::Message" @@ -12,7 +13,7 @@ class Import::Base < ActiveRecord::Base include IevInterfaces::Task def self.model_name - ActiveModel::Name.new Import::Base, Import::Base, "Import::Base" + ActiveModel::Name.new Import::Base, Import::Base, "Import" end def child_change diff --git a/app/models/workbench.rb b/app/models/workbench.rb index 44415f102..b5f4673bb 100644 --- a/app/models/workbench.rb +++ b/app/models/workbench.rb @@ -14,6 +14,7 @@ class Workbench < ActiveRecord::Base has_many :group_of_lines, through: :line_referential has_many :stop_areas, through: :stop_area_referential has_many :imports, class_name: Import::Base + has_many :exports, class_name: Export::Base has_many :workbench_imports, class_name: Import::Workbench has_many :compliance_check_sets has_many :compliance_control_sets |
