[Koha-cvs] koha bull/statecollection.pl C4/Bull.pm [rel_2_2]
Henri-Damien LAURENT
laurenthdl at alinto.com
Tue Aug 8 21:52:23 CEST 2006
CVSROOT: /sources/koha
Module name: koha
Branch: rel_2_2
Changes by: Henri-Damien LAURENT <hdl> 06/08/08 19:52:23
Modified files:
bull : statecollection.pl
C4 : Bull.pm
Log message:
Bug Fixing :
1144 and 1140
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/koha/bull/statecollection.pl?cvsroot=koha&only_with_tag=rel_2_2&r1=1.3.2.18&r2=1.3.2.19
http://cvs.savannah.gnu.org/viewcvs/koha/C4/Bull.pm?cvsroot=koha&only_with_tag=rel_2_2&r1=1.6.2.30&r2=1.6.2.31
Patches:
Index: bull/statecollection.pl
===================================================================
RCS file: /sources/koha/koha/bull/statecollection.pl,v
retrieving revision 1.3.2.18
retrieving revision 1.3.2.19
diff -u -b -r1.3.2.18 -r1.3.2.19
--- bull/statecollection.pl 8 Aug 2006 10:01:41 -0000 1.3.2.18
+++ bull/statecollection.pl 8 Aug 2006 19:52:23 -0000 1.3.2.19
@@ -63,9 +63,13 @@
}
} else {
# add a special issue
+ my $planneddate = ($planneddates[$i]?format_date_in_iso($planneddates[$i]):format_date_in_iso("today")) if ($status[$i]==2);
if ($serialseqs[$i]) {
- newissue($serialseqs[$i],$subscriptionid,$subscription->{biblionumber},$status[$i],format_date_in_iso($publisheddates[$i]),($planneddates[$i]?format_date_in_iso($planneddates[$i]):format_date_in_iso(localtime(time()))));
- }
+ newissue($serialseqs[$i],$subscriptionid,$subscription->{bibnum},$status[$i],format_date_in_iso($publisheddates[$i]),$planneddate);
+ my $rq=$dbh->prepare("SELECT LAST_INSERT_ID()");
+ $rq->execute;
+ my $newserialid=$rq->fetchrow;
+# warn "serialid =".$newserialid;
if (($status[$i]==2) && C4::Context->preference("serialsadditems") && !hassubscriptionexpired($subscriptionid)){
my %info;
$info{branch}=$homebranches[$i];
@@ -74,7 +78,8 @@
$info{location}=$locations[$i];
$info{status}=$itemstatus[$i];
$info{notes}=$serialseqs[$i];
- my ($status, @errors)= serialsitemize($serialids[$i],\%info);
+ my ($status, @errors)= serialsitemize($newserialid,\%info);
+ }
}
}
Index: C4/Bull.pm
===================================================================
RCS file: /sources/koha/koha/C4/Attic/Bull.pm,v
retrieving revision 1.6.2.30
retrieving revision 1.6.2.31
diff -u -b -r1.6.2.30 -r1.6.2.31
--- C4/Bull.pm 8 Aug 2006 10:01:41 -0000 1.6.2.30
+++ C4/Bull.pm 8 Aug 2006 19:52:23 -0000 1.6.2.31
@@ -150,7 +150,7 @@
sub getsubscription {
my ($subscriptionid) = @_;
my $dbh = C4::Context->dbh;
- my $sth = $dbh->prepare('SELECT subscription.*,subscriptionhistory.*,aqbudget.bookfundid,aqbooksellers.name as aqbooksellername,biblio.title as bibliotitle
+ my $sth = $dbh->prepare('SELECT subscription.*,subscriptionhistory.*,aqbudget.bookfundid,aqbooksellers.name as aqbooksellername,biblio.title as bibliotitle, biblio.biblionumber as bibnum
from subscription
left join subscriptionhistory on subscription.subscriptionid=subscriptionhistory.subscriptionid
left join aqbudget on subscription.aqbudgetid=aqbudget.aqbudgetid
@@ -373,7 +373,7 @@
SELECT serialid, serialseq, status, publisheddate, planneddate, notes
FROM serial
WHERE subscriptionid = ? AND (status IN (2,4,5))
- ORDER BY serialid DESC");
+ ORDER BY IF(serial.publisheddate=\"00-00-0000\",serial.planneddate,serial.publisheddate) DESC");
$sth->execute($subscriptionid);
my $counter=0;
my @serials;
@@ -408,13 +408,14 @@
my ($subscriptionid,$limit) =@_;
my $dbh = C4::Context->dbh;
# status = 2 is "arrived"
- my $strsth="SELECT serialid,serialseq, status, planneddate FROM serial WHERE subscriptionid = ? AND (status =2 or status=4) ORDER BY planneddate DESC LIMIT 0,$limit";
+ my $strsth="SELECT serialid,serialseq, status, publisheddate, planneddate FROM serial WHERE subscriptionid = ? AND (status =2 or status=4) ORDER BY IF(serial.publisheddate=\"00-00-0000\",serial.planneddate,serial.publisheddate) DESC LIMIT 0,$limit";
my $sth=$dbh->prepare($strsth);
$sth->execute($subscriptionid);
my @serials;
while(my $line = $sth->fetchrow_hashref) {
$line->{"status".$line->{status}} = 1; # fills a "statusX" value, used for template status select list
$line->{"planneddate"} = format_date($line->{"planneddate"});
+ $line->{"publisheddate"} = format_date($line->{"publisheddate"});
push @serials,$line;
}
$sth=$dbh->prepare("SELECT count(*) from serial where subscriptionid=?");
@@ -468,12 +469,7 @@
sub newissue {
my ($serialseq,$subscriptionid,$biblionumber,$status, $publisheddate, $planneddate) = @_;
my $dbh = C4::Context->dbh;
- my $sth = $dbh->prepare("
- INSERT INTO serial
- (serialseq,subscriptionid,biblionumber,status,publisheddate,planneddate)
- VALUES (?,?,?,?,?,?)");
- $sth->execute($serialseq,$subscriptionid,$biblionumber,$status,$publisheddate, $planneddate);
- $sth = $dbh->prepare("SELECT missinglist,recievedlist from subscriptionhistory where subscriptionid=?");
+ my $sth = $dbh->prepare("SELECT missinglist,recievedlist from subscriptionhistory where subscriptionid=?");
$sth->execute($subscriptionid);
my ($missinglist,$recievedlist) = $sth->fetchrow;
if ($status eq 2) {
@@ -484,6 +480,11 @@
}
$sth=$dbh->prepare("update subscriptionhistory set recievedlist=?, missinglist=? where subscriptionid=?");
$sth->execute($recievedlist,$missinglist,$subscriptionid);
+ $sth = $dbh->prepare("
+ INSERT INTO serial
+ (serialseq,subscriptionid,biblionumber,status,publisheddate,planneddate)
+ VALUES (?,?,?,?,?,?)");
+ $sth->execute($serialseq,$subscriptionid,$biblionumber,$status,$publisheddate, $planneddate);
}
=head2 serialsitemize
@@ -499,6 +500,7 @@
my $sth=$dbh->prepare("SELECT * from serial WHERE serialid=?");
$sth->execute($serialid);
my $data=$sth->fetchrow_hashref;
+# warn "biblionumber : ".$data->{biblionumber};
my $bibid=MARCfind_MARCbibid_from_oldbiblionumber($dbh,$data->{biblionumber});
my $fwk=MARCfind_frameworkcode($dbh,$bibid);
if ($info->{barcode}){
More information about the Koha-cvs
mailing list