diff options
| -rw-r--r-- | app/controllers/file_validations_controller.rb | 14 | ||||
| -rw-r--r-- | app/models/file_validation.rb | 3 | ||||
| -rw-r--r-- | app/models/organisation.rb | 1 | ||||
| -rw-r--r-- | db/migrate/20120905125251_add_organisation_id_to_file_validation.rb | 12 | ||||
| -rw-r--r-- | db/schema.rb | 5 | ||||
| -rw-r--r-- | spec/factories.rb | 11 |
6 files changed, 40 insertions, 6 deletions
diff --git a/app/controllers/file_validations_controller.rb b/app/controllers/file_validations_controller.rb index f56cf8ceb..cc50a7499 100644 --- a/app/controllers/file_validations_controller.rb +++ b/app/controllers/file_validations_controller.rb @@ -18,9 +18,15 @@ class FileValidationsController < InheritedResources::Base end protected - - def collection - @file_validations ||= end_of_association_chain.paginate(:page => params[:page]) + def resource + @file_validation ||= current_organisation.file_validations.find_by_id(params[:id]) end - + def collection + @file_validations ||= current_organisation.file_validations.paginate(:page => params[:page]) + end + def create_resource(file_validation) + file_validation.organisation = current_organisation + super + end + end diff --git a/app/models/file_validation.rb b/app/models/file_validation.rb index 30569a092..a4c76ebf0 100644 --- a/app/models/file_validation.rb +++ b/app/models/file_validation.rb @@ -6,6 +6,9 @@ class FileValidation < ActiveRecord::Base attr_accessor :resources,:uncheck_count,:ok_count,:warning_count,:error_count,:fatal_count,:log_message_tree attr_accessor :validator + belongs_to :organisation + validates_presence_of :organisation + has_many :log_messages, :class_name => "FileValidationLogMessage", :order => :position, :dependent => :destroy serialize :options diff --git a/app/models/organisation.rb b/app/models/organisation.rb index a57d9f5a5..2cc6a9c3c 100644 --- a/app/models/organisation.rb +++ b/app/models/organisation.rb @@ -2,6 +2,7 @@ class Organisation < ActiveRecord::Base has_many :users, :dependent => :destroy has_many :referentials, :dependent => :destroy + has_many :file_validations, :dependent => :destroy validates_presence_of :name validates_uniqueness_of :name diff --git a/db/migrate/20120905125251_add_organisation_id_to_file_validation.rb b/db/migrate/20120905125251_add_organisation_id_to_file_validation.rb new file mode 100644 index 000000000..996bf8dba --- /dev/null +++ b/db/migrate/20120905125251_add_organisation_id_to_file_validation.rb @@ -0,0 +1,12 @@ +class AddOrganisationIdToFileValidation < ActiveRecord::Migration + def change + change_table :file_validations do |f| + f.belongs_to :organisation + end + + FileValidation.reset_column_information + organisation = Organisation.find_or_create_by_name!("Chouette") + FileValidation.update_all :organisation_id => organisation.id + + end +end diff --git a/db/schema.rb b/db/schema.rb index 044415bce..2895423a1 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -10,7 +10,7 @@ # # It's strongly recommended to check this file into your version control system. -ActiveRecord::Schema.define(:version => 20120830095442) do +ActiveRecord::Schema.define(:version => 20120905125251) do create_table "access_links", :force => true do |t| t.integer "access_point_id", :limit => 8 @@ -192,11 +192,12 @@ ActiveRecord::Schema.define(:version => 20120830095442) do create_table "file_validations", :force => true do |t| t.string "status" - t.string "options", :limit => 2000 + t.string "options", :limit => 2000 t.string "file_name" t.string "file_type" t.datetime "created_at" t.datetime "updated_at" + t.integer "organisation_id" end create_table "group_of_lines", :force => true do |t| diff --git a/spec/factories.rb b/spec/factories.rb index 87387f3f5..cbdb97440 100644 --- a/spec/factories.rb +++ b/spec/factories.rb @@ -44,4 +44,15 @@ FactoryGirl.define do f.duration 1 end + factory :file_validation do |f| + f.resources { Rack::Test::UploadedFile.new 'spec/fixtures/neptune.zip', 'application/zip', false } + f.association :organisation + end + + factory :file_validation_log_message do |f| + f.association :file_validation + f.sequence(:key) { "key_#{n}" } + end + + end |
