add table Champs

This commit is contained in:
Xavier J 2015-11-03 10:48:40 +01:00
parent 2050465a75
commit 56eccf55df
10 changed files with 45 additions and 2 deletions

6
app/models/champs.rb Normal file
View file

@ -0,0 +1,6 @@
class Champs < ActiveRecord::Base
belongs_to :dossier
belongs_to :type_de_champs
delegate :libelle, :type_champs, :order_place, to: :type_de_champs
end

View file

@ -11,6 +11,7 @@ class Dossier < ActiveRecord::Base
has_one :entreprise, dependent: :destroy
has_one :cerfa, dependent: :destroy
has_many :pieces_justificatives, dependent: :destroy
has_many :champs, dependent: :destroy
belongs_to :procedure
belongs_to :user
has_many :commentaires, dependent: :destroy

View file

@ -5,7 +5,6 @@ class PieceJustificative < ActiveRecord::Base
alias_attribute :type, :type_de_piece_justificative_id
mount_uploader :content, PieceJustificativeUploader
def empty?
content.blank?
end

View file

@ -6,6 +6,7 @@ class TypeDeChamps < ActiveRecord::Base
}
belongs_to :procedure
has_many :champs
validates :libelle, presence: true, allow_blank: false, allow_nil: false
validates :type_champs, presence: true, allow_blank: false, allow_nil: false

View file

@ -11,6 +11,7 @@ ActiveSupport::Inflector.inflections(:en) do |inflect|
inflect.acronym 'API'
inflect.irregular 'piece_justificative', 'pieces_justificatives'
inflect.irregular 'type_de_piece_justificative', 'types_de_piece_justificative'
inflect.irregular 'champs', 'champs'
inflect.irregular 'type_de_champs', 'types_de_champs'
end

View file

@ -0,0 +1,9 @@
class CreateChamps < ActiveRecord::Migration
def change
create_table :champs do |t|
t.string :value
end
add_reference :champs, :type_de_champs, references: :types_de_champs
add_reference :champs, :dossier, references: :dossiers
end
end

View file

@ -11,7 +11,7 @@
#
# It's strongly recommended that you check this file into your version control system.
ActiveRecord::Schema.define(version: 20151102163051) do
ActiveRecord::Schema.define(version: 20151103091603) do
# These are extensions that must be enabled in order to support this database
enable_extension "plpgsql"
@ -41,6 +41,12 @@ ActiveRecord::Schema.define(version: 20151102163051) do
add_index "cerfas", ["dossier_id"], name: "index_cerfas_on_dossier_id", using: :btree
create_table "champs", force: :cascade do |t|
t.string "value"
t.integer "type_de_champs_id"
t.integer "dossier_id"
end
create_table "commentaires", force: :cascade do |t|
t.string "email"
t.datetime "created_at", null: false

View file

@ -0,0 +1,18 @@
require 'spec_helper'
describe Champs do
describe 'database columns' do
it { is_expected.to have_db_column(:value) }
end
describe 'associations' do
it { is_expected.to belong_to(:dossier) }
it { is_expected.to belong_to(:type_de_champs) }
end
describe 'delegation' do
it { is_expected.to delegate_method(:libelle).to(:type_de_champs) }
it { is_expected.to delegate_method(:type_champs).to(:type_de_champs) }
it { is_expected.to delegate_method(:order_place).to(:type_de_champs) }
end
end

View file

@ -16,6 +16,7 @@ describe Dossier do
describe 'associations' do
it { is_expected.to belong_to(:procedure) }
it { is_expected.to have_many(:pieces_justificatives) }
it { is_expected.to have_many(:champs) }
it { is_expected.to have_many(:commentaires) }
it { is_expected.to have_one(:cerfa) }
it { is_expected.to have_one(:etablissement) }

View file

@ -10,6 +10,7 @@ describe TypeDeChamps do
describe 'associations' do
it { is_expected.to belong_to(:procedure) }
it { is_expected.to have_many(:champs) }
end
describe 'validation' do