Adding BillItem to database

This commit is contained in:
Rob Harrington
2015-06-25 15:25:15 +08:00
parent 2fa217df56
commit 083d7327bc
3 changed files with 43 additions and 0 deletions

15
app/models/bill_item.rb Normal file
View File

@@ -0,0 +1,15 @@
class BillItem < ActiveRecord::Base
belongs_to :enterprise
belongs_to :owner, class_name: 'Spree::User', foreign_key: :owner_id
def bill
# Will make this more sophisicated in the future in that it will use global config variables to calculate
return 0 if trial?
if ['own', 'any'].include? sells
bill = (turnover * 0.02)
bill > 50 ? 50 : bill
else
0
end
end
end

View File

@@ -0,0 +1,15 @@
class CreateBillItems < ActiveRecord::Migration
def change
create_table :bill_items do |t|
t.references :enterprise, nil: false
t.references :owner, nil: false
t.datetime :begins_at, default: nil
t.datetime :ends_at, default: nil
t.string :sells, default: nil
t.boolean :trial, default: false
t.decimal :turnover, default: 0.0
t.foreign_key :enterprises
t.foreign_key :spree_users, column: :owner_id
end
end
end

View File

@@ -24,6 +24,16 @@ ActiveRecord::Schema.define(:version => 20150730160010) do
add_index "adjustment_metadata", ["adjustment_id"], :name => "index_adjustment_metadata_on_adjustment_id"
add_index "adjustment_metadata", ["enterprise_id"], :name => "index_adjustment_metadata_on_enterprise_id"
create_table "bill_items", :force => true do |t|
t.integer "enterprise_id"
t.integer "owner_id"
t.datetime "begins_at"
t.datetime "ends_at"
t.string "sells"
t.boolean "trial", :default => false
t.decimal "turnover", :default => 0.0
end
create_table "carts", :force => true do |t|
t.integer "user_id"
end
@@ -1140,6 +1150,9 @@ ActiveRecord::Schema.define(:version => 20150730160010) do
add_foreign_key "adjustment_metadata", "enterprises", name: "adjustment_metadata_enterprise_id_fk"
add_foreign_key "adjustment_metadata", "spree_adjustments", name: "adjustment_metadata_adjustment_id_fk", column: "adjustment_id", dependent: :delete
add_foreign_key "bill_items", "enterprises", name: "bill_items_enterprise_id_fk"
add_foreign_key "bill_items", "spree_users", name: "bill_items_owner_id_fk", column: "owner_id"
add_foreign_key "carts", "spree_users", name: "carts_user_id_fk", column: "user_id"
add_foreign_key "cms_blocks", "cms_pages", name: "cms_blocks_page_id_fk", column: "page_id"