Bug 14187: branchtransfer needs a primary key (id) for DBIx and common sense.
* C4/Circulation.pm (GetTransfers, GetTransfersFromTo): Also return branchtransfer_id in return columns. * installer/data/mysql/atomicupdate/14187.perl: New file. * installer/data/mysql/kohastructure.sql: Modify branchtransfers structure. * t/db_dependent/Circulation/transfers.t: Update tests to expect branchtransfer_id. Signed-off-by: Owen Leonard <oleonard@myacpl.org> Test plan successful on all steps. Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Amended patch: Remove Schema changes from this patch Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
This commit is contained in:
parent
fe3194d4d1
commit
292b9df914
4 changed files with 22 additions and 9 deletions
|
@ -3205,7 +3205,8 @@ sub GetTransfers {
|
|||
my $query = '
|
||||
SELECT datesent,
|
||||
frombranch,
|
||||
tobranch
|
||||
tobranch,
|
||||
branchtransfer_id
|
||||
FROM branchtransfers
|
||||
WHERE itemnumber = ?
|
||||
AND datearrived IS NULL
|
||||
|
@ -3229,7 +3230,7 @@ sub GetTransfersFromTo {
|
|||
return unless ( $frombranch && $tobranch );
|
||||
my $dbh = C4::Context->dbh;
|
||||
my $query = "
|
||||
SELECT itemnumber,datesent,frombranch
|
||||
SELECT branchtransfer_id,itemnumber,datesent,frombranch
|
||||
FROM branchtransfers
|
||||
WHERE frombranch=?
|
||||
AND tobranch=?
|
||||
|
|
8
installer/data/mysql/atomicupdate/14187.perl
Normal file
8
installer/data/mysql/atomicupdate/14187.perl
Normal file
|
@ -0,0 +1,8 @@
|
|||
$DBversion = 'XXX'; # will be replaced by the RM
|
||||
if( CheckVersion( $DBversion ) ) {
|
||||
$dbh->do("ALTER TABLE branchtransfers ADD COLUMN branchtransfer_id int(12) NOT NULL auto_increment FIRST, ADD CONSTRAINT PRIMARY KEY (branchtransfer_id);");
|
||||
|
||||
# Always end with this (adjust the bug info)
|
||||
SetVersion( $DBversion );
|
||||
print "Upgrade to $DBversion done (Bug 14187 - branchtransfer needs a primary key (id) for DBIx and common sense.)\n";
|
||||
}
|
|
@ -1003,12 +1003,14 @@ CREATE TABLE `default_branch_item_rules` (
|
|||
|
||||
DROP TABLE IF EXISTS `branchtransfers`;
|
||||
CREATE TABLE `branchtransfers` ( -- information for items that are in transit between branches
|
||||
`branchtransfer_id` int(12) NOT NULL auto_increment, -- primary key
|
||||
`itemnumber` int(11) NOT NULL default 0, -- the itemnumber that it is in transit (items.itemnumber)
|
||||
`datesent` datetime default NULL, -- the date the transfer was initialized
|
||||
`frombranch` varchar(10) NOT NULL default '', -- the branch the transfer is coming from
|
||||
`datearrived` datetime default NULL, -- the date the transfer arrived at its destination
|
||||
`tobranch` varchar(10) NOT NULL default '', -- the branch the transfer was going to
|
||||
`comments` mediumtext, -- any comments related to the transfer
|
||||
PRIMARY KEY (`branchtransfer_id`),
|
||||
KEY `frombranch` (`frombranch`),
|
||||
KEY `tobranch` (`tobranch`),
|
||||
KEY `itemnumber` (`itemnumber`),
|
||||
|
|
|
@ -125,7 +125,7 @@ is(CreateBranchTransferLimit(undef,$branchcode_2),undef,
|
|||
my @transfers = GetTransfers($item_id1);
|
||||
cmp_deeply(
|
||||
\@transfers,
|
||||
[ re('^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$'), $branchcode_1, $branchcode_2 ],
|
||||
[ re('^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$'), $branchcode_1, $branchcode_2, re('[0-9]*') ],
|
||||
"Transfers of the item1"
|
||||
); #NOTE: Only the first transfer is returned
|
||||
@transfers = GetTransfers;
|
||||
|
@ -142,14 +142,16 @@ cmp_deeply(
|
|||
\@transferfrom1to2,
|
||||
[
|
||||
{
|
||||
itemnumber => $item_id1,
|
||||
datesent => re('^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$'),
|
||||
frombranch => $branchcode_1
|
||||
branchtransfer_id => re('[0-9]*'),
|
||||
itemnumber => $item_id1,
|
||||
datesent => re('^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$'),
|
||||
frombranch => $branchcode_1
|
||||
},
|
||||
{
|
||||
itemnumber => $item_id2,
|
||||
datesent => re('^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$'),
|
||||
frombranch => $branchcode_1
|
||||
branchtransfer_id => re('[0-9]*'),
|
||||
itemnumber => $item_id2,
|
||||
datesent => re('^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$'),
|
||||
frombranch => $branchcode_1
|
||||
}
|
||||
],
|
||||
"Item1 and Item2 has been transferred from branch1 to branch2"
|
||||
|
|
Loading…
Reference in a new issue