use strict;
use vars qw(@ISA $disable_agentcheck $DEBUG);
+use List::Util qw(max);
use Tie::IxHash;
use FS::UID qw( getotaker dbh );
use FS::Misc qw( send_email );
my $cust_pkg_reason = qsearchs( {
'table' => 'cust_pkg_reason',
'hashref' => { 'pkgnum' => $self->pkgnum, },
- 'extra_sql'=> 'ORDER BY date DESC',
+ 'extra_sql'=> 'ORDER BY date DESC LIMIT 1',
} );
qsearchs ( 'reason', { 'reasonnum' => $cust_pkg_reason->reasonnum } )
if $cust_pkg_reason;
my $part_svc = $pkg_svc->part_svc;
my $num_cust_svc = $self->num_cust_svc($part_svc->svcpart);
$part_svc->{'Hash'}{'num_cust_svc'} = $num_cust_svc; #more evil
- $part_svc->{'Hash'}{'num_avail'} = $pkg_svc->quantity - $num_cust_svc;
+ $part_svc->{'Hash'}{'num_avail'} =
+ max( 0, $pkg_svc->quantity - $num_cust_svc );
$part_svc->{'Hash'}{'cust_pkg_svc'} = [ $self->cust_svc($part_svc->svcpart) ];
$part_svc;
} $self->part_pkg->pkg_svc;