git-svn-id: https://192.168.0.254/svn/Rodax.redmine_rodax_crm/trunk@2 ff88604e-da85-c949-a72f-fc3aa3ba3724
47 lines
1.7 KiB
Ruby
47 lines
1.7 KiB
Ruby
class CreateDealsRelations < ActiveRecord::Migration
|
|
def self.up
|
|
create_table :deal_categories do |t|
|
|
t.string :name, :null => false
|
|
t.integer :project_id
|
|
end
|
|
add_index :deal_categories, :project_id
|
|
|
|
create_table :deal_processes do |t|
|
|
t.integer :deal_id, :null => false
|
|
t.integer :author_id, :null => false
|
|
t.integer :old_value
|
|
t.integer :value, :null => false
|
|
t.datetime :created_at
|
|
end
|
|
add_index :deal_processes, [:author_id]
|
|
add_index :deal_processes, [:deal_id]
|
|
|
|
create_table :deal_statuses do |t|
|
|
t.string :name, :null => false
|
|
t.integer :position
|
|
t.boolean :is_default, :default => false, :null => false
|
|
t.boolean :is_closed, :default => false, :null => false
|
|
t.integer :color, :default => 11184810, :null => false
|
|
end
|
|
add_index :deal_statuses, [:is_closed]
|
|
DealStatus.create(:name => "Pending", :is_closed => false, :is_default => true, :color => "AAAAAA".hex)
|
|
DealStatus.create(:name => "Won", :is_closed => true, :is_default => false, :color => "008000".hex)
|
|
DealStatus.create(:name => "Lost", :is_closed =>true, :is_default => false, :color => "FF0000".hex)
|
|
|
|
|
|
create_table :deal_statuses_projects, :id => false do |t|
|
|
t.integer :project_id, :default => 0, :null => false
|
|
t.integer :deal_status_id, :default => 0, :null => false
|
|
end
|
|
add_index :deal_statuses_projects, [:project_id, :deal_status_id]
|
|
|
|
end
|
|
|
|
def self.down
|
|
drop_table :deal_categories
|
|
drop_table :deal_processes
|
|
drop_table :deal_statuses
|
|
drop_table :deal_statuses_projects
|
|
end
|
|
end
|