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 1140-1151
sub ModSerialStatus {
Link Here
|
1140 |
# next date (calculated from actual date & frequency parameters) |
1141 |
# next date (calculated from actual date & frequency parameters) |
1141 |
my $nextpublisheddate = GetNextDate($subscription, $publisheddate, 1); |
1142 |
my $nextpublisheddate = GetNextDate($subscription, $publisheddate, 1); |
1142 |
my $nextpubdate = $nextpublisheddate; |
1143 |
my $nextpubdate = $nextpublisheddate; |
1143 |
NewIssue( $newserialseq, $subscriptionid, $subscription->{'biblionumber'}, 1, $nextpubdate, $nextpubdate ); |
|
|
1144 |
$query = "UPDATE subscription SET lastvalue1=?, lastvalue2=?, lastvalue3=?, innerloop1=?, innerloop2=?, innerloop3=? |
1144 |
$query = "UPDATE subscription SET lastvalue1=?, lastvalue2=?, lastvalue3=?, innerloop1=?, innerloop2=?, innerloop3=? |
1145 |
WHERE subscriptionid = ?"; |
1145 |
WHERE subscriptionid = ?"; |
1146 |
$sth = $dbh->prepare($query); |
1146 |
$sth = $dbh->prepare($query); |
1147 |
$sth->execute( $newlastvalue1, $newlastvalue2, $newlastvalue3, $newinnerloop1, $newinnerloop2, $newinnerloop3, $subscriptionid ); |
1147 |
$sth->execute( $newlastvalue1, $newlastvalue2, $newlastvalue3, $newinnerloop1, $newinnerloop2, $newinnerloop3, $subscriptionid ); |
1148 |
|
1148 |
|
|
|
1149 |
NewIssue( $newserialseq, $subscriptionid, $subscription->{'biblionumber'}, 1, $nextpubdate, $nextpubdate ); |
1150 |
|
1149 |
# check if an alert must be sent... (= a letter is defined & status became "arrived" |
1151 |
# check if an alert must be sent... (= a letter is defined & status became "arrived" |
1150 |
if ( $subscription->{letter} && $status == ARRIVED && $oldstatus != ARRIVED ) { |
1152 |
if ( $subscription->{letter} && $status == ARRIVED && $oldstatus != ARRIVED ) { |
1151 |
require C4::Letters; |
1153 |
require C4::Letters; |
Lines 1397-1409
sub NewSubscription {
Link Here
|
1397 |
|
1399 |
|
1398 |
# calculate issue number |
1400 |
# calculate issue number |
1399 |
my $serialseq = GetSeq($subscription, $pattern) || q{}; |
1401 |
my $serialseq = GetSeq($subscription, $pattern) || q{}; |
1400 |
$query = qq| |
1402 |
|
1401 |
INSERT INTO serial |
1403 |
my $serial_rs = Koha::Database->new()->schema()->resultset('Serial'); |
1402 |
(serialseq,subscriptionid,biblionumber,status, planneddate, publisheddate) |
1404 |
$serial_rs->create( |
1403 |
VALUES (?,?,?,?,?,?) |
1405 |
{ |
1404 |
|; |
1406 |
serialseq => $serialseq, |
1405 |
$sth = $dbh->prepare($query); |
1407 |
serialseq_x => $subscription->{'lastvalue1'}, |
1406 |
$sth->execute( $serialseq, $subscriptionid, $biblionumber, EXPECTED, $firstacquidate, $firstacquidate ); |
1408 |
serialseq_y => $subscription->{'lastvalue2'}, |
|
|
1409 |
serialseq_z => $subscription->{'lastvalue3'}, |
1410 |
subscriptionid => $subscriptionid, |
1411 |
biblionumber => $biblionumber, |
1412 |
status => EXPECTED, |
1413 |
planneddate => $firstacquidate, |
1414 |
publisheddate => $firstacquidate, |
1415 |
} |
1416 |
); |
1407 |
|
1417 |
|
1408 |
logaction( "SERIAL", "ADD", $subscriptionid, "" ) if C4::Context->preference("SubscriptionLog"); |
1418 |
logaction( "SERIAL", "ADD", $subscriptionid, "" ) if C4::Context->preference("SubscriptionLog"); |
1409 |
|
1419 |
|
Lines 1500-1520
sub NewIssue {
Link Here
|
1500 |
|
1510 |
|
1501 |
return unless ($subscriptionid); |
1511 |
return unless ($subscriptionid); |
1502 |
|
1512 |
|
|
|
1513 |
my $schema = Koha::Database->new()->schema(); |
1514 |
|
1515 |
my $subscription = $schema->resultset('Subscription')->find( $subscriptionid ); |
1516 |
|
1517 |
my $serial = $schema->resultset('Serial')->create( |
1518 |
{ |
1519 |
serialseq => $serialseq, |
1520 |
serialseq_x => $subscription->lastvalue1(), |
1521 |
serialseq_y => $subscription->lastvalue2(), |
1522 |
serialseq_z => $subscription->lastvalue3(), |
1523 |
subscriptionid => $subscriptionid, |
1524 |
biblionumber => $biblionumber, |
1525 |
status => $status, |
1526 |
planneddate => $planneddate, |
1527 |
publisheddate => $publisheddate, |
1528 |
notes => $notes, |
1529 |
} |
1530 |
); |
1531 |
|
1503 |
my $dbh = C4::Context->dbh; |
1532 |
my $dbh = C4::Context->dbh; |
|
|
1533 |
my $serialid = $serial->serialid(); |
1534 |
|
1504 |
my $query = qq| |
1535 |
my $query = qq| |
1505 |
INSERT INTO serial |
|
|
1506 |
(serialseq,subscriptionid,biblionumber,status,publisheddate,planneddate,notes) |
1507 |
VALUES (?,?,?,?,?,?,?) |
1508 |
|; |
1509 |
my $sth = $dbh->prepare($query); |
1510 |
$sth->execute( $serialseq, $subscriptionid, $biblionumber, $status, $publisheddate, $planneddate, $notes ); |
1511 |
my $serialid = $dbh->{'mysql_insertid'}; |
1512 |
$query = qq| |
1513 |
SELECT missinglist,recievedlist |
1536 |
SELECT missinglist,recievedlist |
1514 |
FROM subscriptionhistory |
1537 |
FROM subscriptionhistory |
1515 |
WHERE subscriptionid=? |
1538 |
WHERE subscriptionid=? |
1516 |
|; |
1539 |
|; |
1517 |
$sth = $dbh->prepare($query); |
1540 |
my $sth = $dbh->prepare($query); |
1518 |
$sth->execute($subscriptionid); |
1541 |
$sth->execute($subscriptionid); |
1519 |
my ( $missinglist, $recievedlist ) = $sth->fetchrow; |
1542 |
my ( $missinglist, $recievedlist ) = $sth->fetchrow; |
1520 |
|
1543 |
|
1521 |
- |
|
|