Lines 31-36
use C4::Log; # logaction
Link Here
|
31 |
use C4::Debug; |
31 |
use C4::Debug; |
32 |
use C4::Serials::Frequency; |
32 |
use C4::Serials::Frequency; |
33 |
use C4::Serials::Numberpattern; |
33 |
use C4::Serials::Numberpattern; |
|
|
34 |
use Koha::Database; |
34 |
|
35 |
|
35 |
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS); |
36 |
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS); |
36 |
|
37 |
|
Lines 1245-1256
sub ModSerialStatus {
Link Here
|
1245 |
# next date (calculated from actual date & frequency parameters) |
1246 |
# next date (calculated from actual date & frequency parameters) |
1246 |
my $nextpublisheddate = GetNextDate($subscription, $publisheddate, 1); |
1247 |
my $nextpublisheddate = GetNextDate($subscription, $publisheddate, 1); |
1247 |
my $nextpubdate = $nextpublisheddate; |
1248 |
my $nextpubdate = $nextpublisheddate; |
1248 |
NewIssue( $newserialseq, $subscriptionid, $subscription->{'biblionumber'}, 1, $nextpubdate, $nextpubdate ); |
|
|
1249 |
$query = "UPDATE subscription SET lastvalue1=?, lastvalue2=?, lastvalue3=?, innerloop1=?, innerloop2=?, innerloop3=? |
1249 |
$query = "UPDATE subscription SET lastvalue1=?, lastvalue2=?, lastvalue3=?, innerloop1=?, innerloop2=?, innerloop3=? |
1250 |
WHERE subscriptionid = ?"; |
1250 |
WHERE subscriptionid = ?"; |
1251 |
$sth = $dbh->prepare($query); |
1251 |
$sth = $dbh->prepare($query); |
1252 |
$sth->execute( $newlastvalue1, $newlastvalue2, $newlastvalue3, $newinnerloop1, $newinnerloop2, $newinnerloop3, $subscriptionid ); |
1252 |
$sth->execute( $newlastvalue1, $newlastvalue2, $newlastvalue3, $newinnerloop1, $newinnerloop2, $newinnerloop3, $subscriptionid ); |
1253 |
|
1253 |
|
|
|
1254 |
NewIssue( $newserialseq, $subscriptionid, $subscription->{'biblionumber'}, 1, $nextpubdate, $nextpubdate ); |
1255 |
|
1254 |
# check if an alert must be sent... (= a letter is defined & status became "arrived" |
1256 |
# check if an alert must be sent... (= a letter is defined & status became "arrived" |
1255 |
if ( $subscription->{letter} && $status == 2 && $oldstatus != 2 ) { |
1257 |
if ( $subscription->{letter} && $status == 2 && $oldstatus != 2 ) { |
1256 |
require C4::Letters; |
1258 |
require C4::Letters; |
Lines 1502-1514
sub NewSubscription {
Link Here
|
1502 |
|
1504 |
|
1503 |
# calculate issue number |
1505 |
# calculate issue number |
1504 |
my $serialseq = GetSeq($subscription, $pattern) || q{}; |
1506 |
my $serialseq = GetSeq($subscription, $pattern) || q{}; |
1505 |
$query = qq| |
1507 |
|
1506 |
INSERT INTO serial |
1508 |
my $serial_rs = Koha::Database->new()->schema()->resultset('Serial'); |
1507 |
(serialseq,subscriptionid,biblionumber,status, planneddate, publisheddate) |
1509 |
$serial_rs->create( |
1508 |
VALUES (?,?,?,?,?,?) |
1510 |
{ |
1509 |
|; |
1511 |
serialseq => $serialseq, |
1510 |
$sth = $dbh->prepare($query); |
1512 |
serialseq_x => $subscription->{'lastvalue1'}, |
1511 |
$sth->execute( $serialseq, $subscriptionid, $biblionumber, 1, $firstacquidate, $firstacquidate ); |
1513 |
serialseq_y => $subscription->{'lastvalue2'}, |
|
|
1514 |
serialseq_z => $subscription->{'lastvalue3'}, |
1515 |
subscriptionid => $subscriptionid, |
1516 |
biblionumber => $biblionumber, |
1517 |
status => 1, |
1518 |
planneddate => $firstacquidate, |
1519 |
publisheddate => $firstacquidate, |
1520 |
} |
1521 |
); |
1512 |
|
1522 |
|
1513 |
logaction( "SERIAL", "ADD", $subscriptionid, "" ) if C4::Context->preference("SubscriptionLog"); |
1523 |
logaction( "SERIAL", "ADD", $subscriptionid, "" ) if C4::Context->preference("SubscriptionLog"); |
1514 |
|
1524 |
|
Lines 1605-1625
sub NewIssue {
Link Here
|
1605 |
|
1615 |
|
1606 |
return unless ($subscriptionid); |
1616 |
return unless ($subscriptionid); |
1607 |
|
1617 |
|
|
|
1618 |
my $schema = Koha::Database->new()->schema(); |
1619 |
|
1620 |
my $subscription = $schema->resultset('Subscription')->find( $subscriptionid ); |
1621 |
|
1622 |
my $serial = $schema->resultset('Serial')->create( |
1623 |
{ |
1624 |
serialseq => $serialseq, |
1625 |
serialseq_x => $subscription->lastvalue1(), |
1626 |
serialseq_y => $subscription->lastvalue2(), |
1627 |
serialseq_z => $subscription->lastvalue3(), |
1628 |
subscriptionid => $subscriptionid, |
1629 |
biblionumber => $biblionumber, |
1630 |
status => $status, |
1631 |
planneddate => $planneddate, |
1632 |
publisheddate => $publisheddate, |
1633 |
notes => $notes, |
1634 |
} |
1635 |
); |
1636 |
|
1608 |
my $dbh = C4::Context->dbh; |
1637 |
my $dbh = C4::Context->dbh; |
|
|
1638 |
my $serialid = $serial->serialid(); |
1639 |
|
1609 |
my $query = qq| |
1640 |
my $query = qq| |
1610 |
INSERT INTO serial |
|
|
1611 |
(serialseq,subscriptionid,biblionumber,status,publisheddate,planneddate,notes) |
1612 |
VALUES (?,?,?,?,?,?,?) |
1613 |
|; |
1614 |
my $sth = $dbh->prepare($query); |
1615 |
$sth->execute( $serialseq, $subscriptionid, $biblionumber, $status, $publisheddate, $planneddate, $notes ); |
1616 |
my $serialid = $dbh->{'mysql_insertid'}; |
1617 |
$query = qq| |
1618 |
SELECT missinglist,recievedlist |
1641 |
SELECT missinglist,recievedlist |
1619 |
FROM subscriptionhistory |
1642 |
FROM subscriptionhistory |
1620 |
WHERE subscriptionid=? |
1643 |
WHERE subscriptionid=? |
1621 |
|; |
1644 |
|; |
1622 |
$sth = $dbh->prepare($query); |
1645 |
my $sth = $dbh->prepare($query); |
1623 |
$sth->execute($subscriptionid); |
1646 |
$sth->execute($subscriptionid); |
1624 |
my ( $missinglist, $recievedlist ) = $sth->fetchrow; |
1647 |
my ( $missinglist, $recievedlist ) = $sth->fetchrow; |
1625 |
|
1648 |
|
1626 |
- |
|
|