From ac89be111a96c8b0fabfa7b5f98fb3daf7d366ee Mon Sep 17 00:00:00 2001 From: Martin Renvoize Date: Tue, 16 Jul 2019 17:11:26 +0100 Subject: [PATCH] Bug 23321: DBIC Classes Sponsored-by: PTFS Europe Sponsored-by: Cheshire Libraries Shared Services Signed-off-by: Maryse Simard Signed-off-by: Tomas Cohen Arazi Signed-off-by: Martin Renvoize --- Koha/Schema/Result/Accountline.pm | 28 ++++++ Koha/Schema/Result/Branch.pm | 19 +++- Koha/Schema/Result/CashRegister.pm | 153 +++++++++++++++++++++++++++++ 3 files changed, 198 insertions(+), 2 deletions(-) create mode 100644 Koha/Schema/Result/CashRegister.pm diff --git a/Koha/Schema/Result/Accountline.pm b/Koha/Schema/Result/Accountline.pm index d0f51c4b9d..41aef75070 100644 --- a/Koha/Schema/Result/Accountline.pm +++ b/Koha/Schema/Result/Accountline.pm @@ -105,6 +105,12 @@ __PACKAGE__->table("accountlines"); is_foreign_key: 1 is_nullable: 1 +=head2 register_id + + data_type: 'integer' + is_foreign_key: 1 + is_nullable: 1 + =head2 interface data_type: 'varchar' @@ -154,6 +160,8 @@ __PACKAGE__->add_columns( { data_type => "mediumtext", is_nullable => 1 }, "manager_id", { data_type => "integer", is_foreign_key => 1, is_nullable => 1 }, + "register_id", + { data_type => "integer", is_foreign_key => 1, is_nullable => 1 }, "interface", { data_type => "varchar", is_nullable => 0, size => 16 }, "branchcode", @@ -284,6 +292,26 @@ __PACKAGE__->belongs_to( }, ); +=head2 register + +Type: belongs_to + +Related object: L + +=cut + +__PACKAGE__->belongs_to( + "register", + "Koha::Schema::Result::CashRegister", + { id => "register_id" }, + { + is_deferrable => 1, + join_type => "LEFT", + on_delete => "SET NULL", + on_update => "CASCADE", + }, +); + # Created by DBIx::Class::Schema::Loader v0.07046 @ 2019-09-06 12:23:55 # DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:/8Qeh530PbLC6ryxC1Dw9w diff --git a/Koha/Schema/Result/Branch.pm b/Koha/Schema/Result/Branch.pm index bf8f6d8efc..984022f357 100644 --- a/Koha/Schema/Result/Branch.pm +++ b/Koha/Schema/Result/Branch.pm @@ -346,6 +346,21 @@ __PACKAGE__->has_many( { cascade_copy => 0, cascade_delete => 0 }, ); +=head2 cash_registers + +Type: has_many + +Related object: L + +=cut + +__PACKAGE__->has_many( + "cash_registers", + "Koha::Schema::Result::CashRegister", + { "foreign.branch" => "self.branchcode" }, + { cascade_copy => 0, cascade_delete => 0 }, +); + =head2 categories_branches Type: has_many @@ -662,8 +677,8 @@ __PACKAGE__->has_many( ); -# Created by DBIx::Class::Schema::Loader v0.07048 @ 2019-07-04 04:56:47 -# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:15/s0/8d2cNB9YLLlsEY4w +# Created by DBIx::Class::Schema::Loader v0.07046 @ 2019-07-17 07:15:23 +# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:qGiu+y4MHq5CvBQTj0m8QQ __PACKAGE__->add_columns( '+pickup_location' => { is_boolean => 1 } diff --git a/Koha/Schema/Result/CashRegister.pm b/Koha/Schema/Result/CashRegister.pm new file mode 100644 index 0000000000..ddd6d3e536 --- /dev/null +++ b/Koha/Schema/Result/CashRegister.pm @@ -0,0 +1,153 @@ +use utf8; +package Koha::Schema::Result::CashRegister; + +# Created by DBIx::Class::Schema::Loader +# DO NOT MODIFY THE FIRST PART OF THIS FILE + +=head1 NAME + +Koha::Schema::Result::CashRegister + +=cut + +use strict; +use warnings; + +use base 'DBIx::Class::Core'; + +=head1 TABLE: C + +=cut + +__PACKAGE__->table("cash_registers"); + +=head1 ACCESSORS + +=head2 id + + data_type: 'integer' + is_auto_increment: 1 + is_nullable: 0 + +=head2 name + + data_type: 'varchar' + is_nullable: 0 + size: 24 + +=head2 description + + data_type: 'longtext' + is_nullable: 0 + +=head2 branch + + data_type: 'varchar' + is_foreign_key: 1 + is_nullable: 0 + size: 10 + +=head2 branch_default + + data_type: 'tinyint' + default_value: 0 + is_nullable: 0 + +=head2 starting_float + + data_type: 'decimal' + is_nullable: 1 + size: [28,6] + +=head2 archived + + data_type: 'tinyint' + default_value: 0 + is_nullable: 0 + +=cut + +__PACKAGE__->add_columns( + "id", + { data_type => "integer", is_auto_increment => 1, is_nullable => 0 }, + "name", + { data_type => "varchar", is_nullable => 0, size => 24 }, + "description", + { data_type => "longtext", is_nullable => 0 }, + "branch", + { data_type => "varchar", is_foreign_key => 1, is_nullable => 0, size => 10 }, + "branch_default", + { data_type => "tinyint", default_value => 0, is_nullable => 0 }, + "starting_float", + { data_type => "decimal", is_nullable => 1, size => [28, 6] }, + "archived", + { data_type => "tinyint", default_value => 0, is_nullable => 0 }, +); + +=head1 PRIMARY KEY + +=over 4 + +=item * L + +=back + +=cut + +__PACKAGE__->set_primary_key("id"); + +=head1 UNIQUE CONSTRAINTS + +=head2 C + +=over 4 + +=item * L + +=item * L + +=back + +=cut + +__PACKAGE__->add_unique_constraint("name", ["name", "branch"]); + +=head1 RELATIONS + +=head2 accountlines + +Type: has_many + +Related object: L + +=cut + +__PACKAGE__->has_many( + "accountlines", + "Koha::Schema::Result::Accountline", + { "foreign.register_id" => "self.id" }, + { cascade_copy => 0, cascade_delete => 0 }, +); + +=head2 branch + +Type: belongs_to + +Related object: L + +=cut + +__PACKAGE__->belongs_to( + "branch", + "Koha::Schema::Result::Branch", + { branchcode => "branch" }, + { is_deferrable => 1, on_delete => "CASCADE", on_update => "CASCADE" }, +); + + +# Created by DBIx::Class::Schema::Loader v0.07046 @ 2019-07-23 13:14:31 +# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:TfGf0U/vWS7IviRlvDdE1w + + +# You can replace this text with custom code or comments, and it will be preserved on regeneration +1; -- 2.39.5