From 3afd542b1a9b3f8e1a91296341cef71690d33ef3 Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Sun, 7 May 2017 00:03:10 +0300 Subject: [PATCH] Improve "account_activities" DB table structure #475 --- ...t_activity_log_pricelist_id_to_price_id.rb | 6 +++ ...account_activity_account_id_foreign_key.rb | 6 +++ ...5356_add_account_activity_invoice_id_fk.rb | 5 +++ ...account_activity_bank_transaction_id_fk.rb | 5 +++ db/structure.sql | 44 ++++++++++++++++++- 5 files changed, 64 insertions(+), 2 deletions(-) create mode 100644 db/migrate/20170506155009_rename_account_activity_log_pricelist_id_to_price_id.rb create mode 100644 db/migrate/20170506162952_add_account_activity_account_id_foreign_key.rb create mode 100644 db/migrate/20170506205356_add_account_activity_invoice_id_fk.rb create mode 100644 db/migrate/20170506205946_add_account_activity_bank_transaction_id_fk.rb diff --git a/db/migrate/20170506155009_rename_account_activity_log_pricelist_id_to_price_id.rb b/db/migrate/20170506155009_rename_account_activity_log_pricelist_id_to_price_id.rb new file mode 100644 index 000000000..28969059d --- /dev/null +++ b/db/migrate/20170506155009_rename_account_activity_log_pricelist_id_to_price_id.rb @@ -0,0 +1,6 @@ +class RenameAccountActivityLogPricelistIdToPriceId < ActiveRecord::Migration + def change + rename_column :account_activities, :log_pricelist_id, :price_id + add_foreign_key :account_activities, :prices + end +end diff --git a/db/migrate/20170506162952_add_account_activity_account_id_foreign_key.rb b/db/migrate/20170506162952_add_account_activity_account_id_foreign_key.rb new file mode 100644 index 000000000..8d40e8041 --- /dev/null +++ b/db/migrate/20170506162952_add_account_activity_account_id_foreign_key.rb @@ -0,0 +1,6 @@ +class AddAccountActivityAccountIdForeignKey < ActiveRecord::Migration + def change + change_column :account_activities, :account_id, :integer, null: false + add_foreign_key :account_activities, :accounts + end +end diff --git a/db/migrate/20170506205356_add_account_activity_invoice_id_fk.rb b/db/migrate/20170506205356_add_account_activity_invoice_id_fk.rb new file mode 100644 index 000000000..43a54fde2 --- /dev/null +++ b/db/migrate/20170506205356_add_account_activity_invoice_id_fk.rb @@ -0,0 +1,5 @@ +class AddAccountActivityInvoiceIdFk < ActiveRecord::Migration + def change + add_foreign_key :account_activities, :invoices + end +end diff --git a/db/migrate/20170506205946_add_account_activity_bank_transaction_id_fk.rb b/db/migrate/20170506205946_add_account_activity_bank_transaction_id_fk.rb new file mode 100644 index 000000000..c0e69aabe --- /dev/null +++ b/db/migrate/20170506205946_add_account_activity_bank_transaction_id_fk.rb @@ -0,0 +1,5 @@ +class AddAccountActivityBankTransactionIdFk < ActiveRecord::Migration + def change + add_foreign_key :account_activities, :bank_transactions + end +end diff --git a/db/structure.sql b/db/structure.sql index 858909103..429b23f73 100644 --- a/db/structure.sql +++ b/db/structure.sql @@ -287,7 +287,7 @@ SET default_with_oids = false; CREATE TABLE account_activities ( id integer NOT NULL, - account_id integer, + account_id integer NOT NULL, invoice_id integer, sum numeric(10,2), currency character varying, @@ -298,7 +298,7 @@ CREATE TABLE account_activities ( creator_str character varying, updator_str character varying, activity_type character varying, - log_pricelist_id integer + price_id integer ); @@ -4776,6 +4776,38 @@ ALTER TABLE ONLY prices ADD CONSTRAINT fk_rails_78c376257f FOREIGN KEY (zone_id) REFERENCES zones(id); +-- +-- Name: fk_rails_86cd2b09f5; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY account_activities + ADD CONSTRAINT fk_rails_86cd2b09f5 FOREIGN KEY (account_id) REFERENCES accounts(id); + + +-- +-- Name: fk_rails_b80dbb973d; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY account_activities + ADD CONSTRAINT fk_rails_b80dbb973d FOREIGN KEY (bank_transaction_id) REFERENCES bank_transactions(id); + + +-- +-- Name: fk_rails_ce38d749f6; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY account_activities + ADD CONSTRAINT fk_rails_ce38d749f6 FOREIGN KEY (invoice_id) REFERENCES invoices(id); + + +-- +-- Name: fk_rails_d2cc3c2fa9; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY account_activities + ADD CONSTRAINT fk_rails_d2cc3c2fa9 FOREIGN KEY (price_id) REFERENCES prices(id); + + -- -- PostgreSQL database dump complete -- @@ -5258,3 +5290,11 @@ INSERT INTO schema_migrations (version) VALUES ('20170424115801'); INSERT INTO schema_migrations (version) VALUES ('20170506144743'); +INSERT INTO schema_migrations (version) VALUES ('20170506155009'); + +INSERT INTO schema_migrations (version) VALUES ('20170506162952'); + +INSERT INTO schema_migrations (version) VALUES ('20170506205356'); + +INSERT INTO schema_migrations (version) VALUES ('20170506205946'); +