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 1241-1252
sub ModSerialStatus {
Link Here
|
1241 |
# next date (calculated from actual date & frequency parameters) |
1242 |
# next date (calculated from actual date & frequency parameters) |
1242 |
my $nextpublisheddate = GetNextDate($subscription, $publisheddate, 1); |
1243 |
my $nextpublisheddate = GetNextDate($subscription, $publisheddate, 1); |
1243 |
my $nextpubdate = $nextpublisheddate; |
1244 |
my $nextpubdate = $nextpublisheddate; |
1244 |
NewIssue( $newserialseq, $subscriptionid, $subscription->{'biblionumber'}, 1, $nextpubdate, $nextpubdate ); |
|
|
1245 |
$query = "UPDATE subscription SET lastvalue1=?, lastvalue2=?, lastvalue3=?, innerloop1=?, innerloop2=?, innerloop3=? |
1245 |
$query = "UPDATE subscription SET lastvalue1=?, lastvalue2=?, lastvalue3=?, innerloop1=?, innerloop2=?, innerloop3=? |
1246 |
WHERE subscriptionid = ?"; |
1246 |
WHERE subscriptionid = ?"; |
1247 |
$sth = $dbh->prepare($query); |
1247 |
$sth = $dbh->prepare($query); |
1248 |
$sth->execute( $newlastvalue1, $newlastvalue2, $newlastvalue3, $newinnerloop1, $newinnerloop2, $newinnerloop3, $subscriptionid ); |
1248 |
$sth->execute( $newlastvalue1, $newlastvalue2, $newlastvalue3, $newinnerloop1, $newinnerloop2, $newinnerloop3, $subscriptionid ); |
1249 |
|
1249 |
|
|
|
1250 |
NewIssue( $newserialseq, $subscriptionid, $subscription->{'biblionumber'}, 1, $nextpubdate, $nextpubdate ); |
1251 |
|
1250 |
# check if an alert must be sent... (= a letter is defined & status became "arrived" |
1252 |
# check if an alert must be sent... (= a letter is defined & status became "arrived" |
1251 |
if ( $subscription->{letter} && $status == 2 && $oldstatus != 2 ) { |
1253 |
if ( $subscription->{letter} && $status == 2 && $oldstatus != 2 ) { |
1252 |
require C4::Letters; |
1254 |
require C4::Letters; |
Lines 1498-1510
sub NewSubscription {
Link Here
|
1498 |
|
1500 |
|
1499 |
# calculate issue number |
1501 |
# calculate issue number |
1500 |
my $serialseq = GetSeq($subscription, $pattern) || q{}; |
1502 |
my $serialseq = GetSeq($subscription, $pattern) || q{}; |
1501 |
$query = qq| |
1503 |
|
1502 |
INSERT INTO serial |
1504 |
my $serial_rs = Koha::Database->new()->schema()->resultset('Serial'); |
1503 |
(serialseq,subscriptionid,biblionumber,status, planneddate, publisheddate) |
1505 |
$serial_rs->create( |
1504 |
VALUES (?,?,?,?,?,?) |
1506 |
{ |
1505 |
|; |
1507 |
serialseq => $serialseq, |
1506 |
$sth = $dbh->prepare($query); |
1508 |
serialseq_x => $subscription->{'lastvalue1'}, |
1507 |
$sth->execute( $serialseq, $subscriptionid, $biblionumber, 1, $firstacquidate, $firstacquidate ); |
1509 |
serialseq_y => $subscription->{'lastvalue2'}, |
|
|
1510 |
serialseq_z => $subscription->{'lastvalue3'}, |
1511 |
subscriptionid => $subscriptionid, |
1512 |
biblionumber => $biblionumber, |
1513 |
status => 1, |
1514 |
planneddate => $firstacquidate, |
1515 |
publisheddate => $firstacquidate, |
1516 |
} |
1517 |
); |
1508 |
|
1518 |
|
1509 |
logaction( "SERIAL", "ADD", $subscriptionid, "" ) if C4::Context->preference("SubscriptionLog"); |
1519 |
logaction( "SERIAL", "ADD", $subscriptionid, "" ) if C4::Context->preference("SubscriptionLog"); |
1510 |
|
1520 |
|
Lines 1601-1621
sub NewIssue {
Link Here
|
1601 |
|
1611 |
|
1602 |
return unless ($subscriptionid); |
1612 |
return unless ($subscriptionid); |
1603 |
|
1613 |
|
|
|
1614 |
my $schema = Koha::Database->new()->schema(); |
1615 |
|
1616 |
my $subscription = $schema->resultset('Subscription')->find( $subscriptionid ); |
1617 |
|
1618 |
my $serial = $schema->resultset('Serial')->create( |
1619 |
{ |
1620 |
serialseq => $serialseq, |
1621 |
serialseq_x => $subscription->lastvalue1(), |
1622 |
serialseq_y => $subscription->lastvalue2(), |
1623 |
serialseq_z => $subscription->lastvalue3(), |
1624 |
subscriptionid => $subscriptionid, |
1625 |
biblionumber => $biblionumber, |
1626 |
status => $status, |
1627 |
planneddate => $planneddate, |
1628 |
publisheddate => $publisheddate, |
1629 |
notes => $notes, |
1630 |
} |
1631 |
); |
1632 |
|
1604 |
my $dbh = C4::Context->dbh; |
1633 |
my $dbh = C4::Context->dbh; |
|
|
1634 |
my $serialid = $serial->serialid(); |
1635 |
|
1605 |
my $query = qq| |
1636 |
my $query = qq| |
1606 |
INSERT INTO serial |
|
|
1607 |
(serialseq,subscriptionid,biblionumber,status,publisheddate,planneddate,notes) |
1608 |
VALUES (?,?,?,?,?,?,?) |
1609 |
|; |
1610 |
my $sth = $dbh->prepare($query); |
1611 |
$sth->execute( $serialseq, $subscriptionid, $biblionumber, $status, $publisheddate, $planneddate, $notes ); |
1612 |
my $serialid = $dbh->{'mysql_insertid'}; |
1613 |
$query = qq| |
1614 |
SELECT missinglist,recievedlist |
1637 |
SELECT missinglist,recievedlist |
1615 |
FROM subscriptionhistory |
1638 |
FROM subscriptionhistory |
1616 |
WHERE subscriptionid=? |
1639 |
WHERE subscriptionid=? |
1617 |
|; |
1640 |
|; |
1618 |
$sth = $dbh->prepare($query); |
1641 |
my $sth = $dbh->prepare($query); |
1619 |
$sth->execute($subscriptionid); |
1642 |
$sth->execute($subscriptionid); |
1620 |
my ( $missinglist, $recievedlist ) = $sth->fetchrow; |
1643 |
my ( $missinglist, $recievedlist ) = $sth->fetchrow; |
1621 |
|
1644 |
|
1622 |
- |
|
|