Bug 19166: DBRev 18.06.00.009
authorNick Clemens <nick@bywatersolutions.com>
Thu, 19 Jul 2018 17:33:55 +0000 (17:33 +0000)
committerNick Clemens <nick@bywatersolutions.com>
Thu, 19 Jul 2018 17:33:55 +0000 (17:33 +0000)
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Koha.pm
Koha/Schema/Result/AqinvoiceAdjustment.pm [new file with mode: 0644]
Koha/Schema/Result/MarcModificationTemplateAction.pm
installer/data/mysql/atomicupdate/bug_19166.perl [deleted file]
installer/data/mysql/updatedatabase.pl

diff --git a/Koha.pm b/Koha.pm
index 25e5f9f..4b2d1ab 100644 (file)
--- a/Koha.pm
+++ b/Koha.pm
@@ -29,7 +29,7 @@ use vars qw{ $VERSION };
 # - #4 : the developer version. The 4th number is the database subversion.
 #        used by developers when the database changes. updatedatabase take care of the changes itself
 #        and is automatically called by Auth.pm when needed.
-$VERSION = "18.06.00.008";
+$VERSION = "18.06.00.009";
 
 sub version {
     return $VERSION;
diff --git a/Koha/Schema/Result/AqinvoiceAdjustment.pm b/Koha/Schema/Result/AqinvoiceAdjustment.pm
new file mode 100644 (file)
index 0000000..cbdbb2e
--- /dev/null
@@ -0,0 +1,155 @@
+use utf8;
+package Koha::Schema::Result::AqinvoiceAdjustment;
+
+# Created by DBIx::Class::Schema::Loader
+# DO NOT MODIFY THE FIRST PART OF THIS FILE
+
+=head1 NAME
+
+Koha::Schema::Result::AqinvoiceAdjustment
+
+=cut
+
+use strict;
+use warnings;
+
+use base 'DBIx::Class::Core';
+
+=head1 TABLE: C<aqinvoice_adjustments>
+
+=cut
+
+__PACKAGE__->table("aqinvoice_adjustments");
+
+=head1 ACCESSORS
+
+=head2 adjustment_id
+
+  data_type: 'integer'
+  is_auto_increment: 1
+  is_nullable: 0
+
+=head2 invoiceid
+
+  data_type: 'integer'
+  is_foreign_key: 1
+  is_nullable: 0
+
+=head2 adjustment
+
+  data_type: 'decimal'
+  is_nullable: 1
+  size: [28,6]
+
+=head2 reason
+
+  data_type: 'varchar'
+  is_nullable: 1
+  size: 80
+
+=head2 note
+
+  data_type: 'mediumtext'
+  is_nullable: 1
+
+=head2 budget_id
+
+  data_type: 'integer'
+  is_foreign_key: 1
+  is_nullable: 1
+
+=head2 encumber_open
+
+  data_type: 'smallint'
+  default_value: 1
+  is_nullable: 0
+
+=head2 timestamp
+
+  data_type: 'timestamp'
+  datetime_undef_if_invalid: 1
+  default_value: current_timestamp
+  is_nullable: 0
+
+=cut
+
+__PACKAGE__->add_columns(
+  "adjustment_id",
+  { data_type => "integer", is_auto_increment => 1, is_nullable => 0 },
+  "invoiceid",
+  { data_type => "integer", is_foreign_key => 1, is_nullable => 0 },
+  "adjustment",
+  { data_type => "decimal", is_nullable => 1, size => [28, 6] },
+  "reason",
+  { data_type => "varchar", is_nullable => 1, size => 80 },
+  "note",
+  { data_type => "mediumtext", is_nullable => 1 },
+  "budget_id",
+  { data_type => "integer", is_foreign_key => 1, is_nullable => 1 },
+  "encumber_open",
+  { data_type => "smallint", default_value => 1, is_nullable => 0 },
+  "timestamp",
+  {
+    data_type => "timestamp",
+    datetime_undef_if_invalid => 1,
+    default_value => \"current_timestamp",
+    is_nullable => 0,
+  },
+);
+
+=head1 PRIMARY KEY
+
+=over 4
+
+=item * L</adjustment_id>
+
+=back
+
+=cut
+
+__PACKAGE__->set_primary_key("adjustment_id");
+
+=head1 RELATIONS
+
+=head2 budget
+
+Type: belongs_to
+
+Related object: L<Koha::Schema::Result::Aqbudget>
+
+=cut
+
+__PACKAGE__->belongs_to(
+  "budget",
+  "Koha::Schema::Result::Aqbudget",
+  { budget_id => "budget_id" },
+  {
+    is_deferrable => 1,
+    join_type     => "LEFT",
+    on_delete     => "SET NULL",
+    on_update     => "CASCADE",
+  },
+);
+
+=head2 invoiceid
+
+Type: belongs_to
+
+Related object: L<Koha::Schema::Result::Aqinvoice>
+
+=cut
+
+__PACKAGE__->belongs_to(
+  "invoiceid",
+  "Koha::Schema::Result::Aqinvoice",
+  { invoiceid => "invoiceid" },
+  { is_deferrable => 1, on_delete => "CASCADE", on_update => "CASCADE" },
+);
+
+
+# Created by DBIx::Class::Schema::Loader v0.07042 @ 2018-07-19 17:32:57
+# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:jl0qxkZWVs2D1pi3kaRjpg
+
+
+# You can replace this text with custom code or comments, and it will be preserved on regeneration
+1;
index a69b459..6523850 100644 (file)
@@ -43,7 +43,7 @@ __PACKAGE__->table("marc_modification_template_actions");
 =head2 action
 
   data_type: 'enum'
-  extra: {list => ["delete_field","update_field","move_field","copy_field","copy_and_replace_field"]}
+  extra: {list => ["delete_field","add_field","update_field","move_field","copy_field","copy_and_replace_field"]}
   is_nullable: 0
 
 =head2 field_number
@@ -154,6 +154,7 @@ __PACKAGE__->add_columns(
     extra => {
       list => [
         "delete_field",
+        "add_field",
         "update_field",
         "move_field",
         "copy_field",
@@ -234,8 +235,8 @@ __PACKAGE__->belongs_to(
 );
 
 
-# Created by DBIx::Class::Schema::Loader v0.07042 @ 2018-02-16 17:54:54
-# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:uRkJ8yckBiNtsYgUt8BpEw
+# Created by DBIx::Class::Schema::Loader v0.07042 @ 2018-07-19 17:32:57
+# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:dAUr9aGlNZleldYbjJHdmw
 
 
 # You can replace this text with custom code or comments, and it will be preserved on regeneration
diff --git a/installer/data/mysql/atomicupdate/bug_19166.perl b/installer/data/mysql/atomicupdate/bug_19166.perl
deleted file mode 100644 (file)
index 5a3794e..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-$DBversion = 'XXX';  # will be replaced by the RM
-if( CheckVersion( $DBversion ) ) {
-    $dbh->do( "
-        CREATE TABLE IF NOT EXISTS aqinvoice_adjustments (
-            adjustment_id int(11) NOT NULL AUTO_INCREMENT,
-            invoiceid int(11) NOT NULL,
-            adjustment decimal(28,6),
-            reason varchar(80) default NULL,
-            note mediumtext default NULL,
-            budget_id int(11) default NULL,
-            encumber_open smallint(1) NOT NULL default 1,
-            timestamp timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
-            PRIMARY KEY (adjustment_id),
-            CONSTRAINT aqinvoice_adjustments_fk_invoiceid FOREIGN KEY (invoiceid) REFERENCES aqinvoices (invoiceid) ON DELETE CASCADE ON UPDATE CASCADE,
-            CONSTRAINT aqinvoice_adjustments_fk_budget_id FOREIGN KEY (budget_id) REFERENCES aqbudgets (budget_id) ON DELETE SET NULL ON UPDATE CASCADE
-        ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
-        " );
-    $dbh->do("INSERT IGNORE INTO authorised_value_categories (category_name) VALUES ('ADJ_REASON')");
-    SetVersion( $DBversion );
-    print "Upgrade to $DBversion done (Bug 19166 - Add the ability to add adjustments to an invoice)\n";
-}
index d92191c..59ce064 100755 (executable)
@@ -16162,6 +16162,28 @@ if( CheckVersion( $DBversion ) ) {
     print "Upgrade to $DBversion done (Bug 13560 - need an add option in marc modification templates)\n";
 }
 
+$DBversion = '18.06.00.009';  # will be replaced by the RM
+if( CheckVersion( $DBversion ) ) {
+    $dbh->do( "
+        CREATE TABLE IF NOT EXISTS aqinvoice_adjustments (
+            adjustment_id int(11) NOT NULL AUTO_INCREMENT,
+            invoiceid int(11) NOT NULL,
+            adjustment decimal(28,6),
+            reason varchar(80) default NULL,
+            note mediumtext default NULL,
+            budget_id int(11) default NULL,
+            encumber_open smallint(1) NOT NULL default 1,
+            timestamp timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+            PRIMARY KEY (adjustment_id),
+            CONSTRAINT aqinvoice_adjustments_fk_invoiceid FOREIGN KEY (invoiceid) REFERENCES aqinvoices (invoiceid) ON DELETE CASCADE ON UPDATE CASCADE,
+            CONSTRAINT aqinvoice_adjustments_fk_budget_id FOREIGN KEY (budget_id) REFERENCES aqbudgets (budget_id) ON DELETE SET NULL ON UPDATE CASCADE
+        ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
+        " );
+    $dbh->do("INSERT IGNORE INTO authorised_value_categories (category_name) VALUES ('ADJ_REASON')");
+    SetVersion( $DBversion );
+    print "Upgrade to $DBversion done (Bug 19166 - Add the ability to add adjustments to an invoice)\n";
+}
+
 # SEE bug 13068
 # if there is anything in the atomicupdate, read and execute it.