summaryrefslogtreecommitdiff
path: root/FS
diff options
context:
space:
mode:
authorivan <ivan>2002-04-20 02:06:38 +0000
committerivan <ivan>2002-04-20 02:06:38 +0000
commite5f29642854dbdb606aa5763213e944ca449fc8a (patch)
tree566c3ded21a71e3fece364122136624f22939b66 /FS
parentad19e00a6f978d76fcb5e7f97b4169469c731c0f (diff)
fix problem with edge case where there *is* a pkg_svc record with quantity 0,
when changing packages and using the special case new service code
Diffstat (limited to 'FS')
-rw-r--r--FS/FS/cust_pkg.pm12
-rw-r--r--FS/FS/cust_svc.pm6
2 files changed, 14 insertions, 4 deletions
diff --git a/FS/FS/cust_pkg.pm b/FS/FS/cust_pkg.pm
index f858a999d..0fc21478a 100644
--- a/FS/FS/cust_pkg.pm
+++ b/FS/FS/cust_pkg.pm
@@ -577,7 +577,9 @@ sub order {
push @cust_svc, [
map {
( $svcnum{$_} && @{ $svcnum{$_} } ) ? shift @{ $svcnum{$_} } : ();
- } map { $_->svcpart } qsearch('pkg_svc', { 'pkgpart' => $pkgpart })
+ } map { $_->svcpart }
+ qsearch('pkg_svc', { pkgpart => $pkgpart,
+ quantity => { op=>'>', value=>'0', } } )
];
}
@@ -597,7 +599,11 @@ sub order {
#find an empty place to put one
my $i = 0;
foreach my $pkgpart ( @{$pkgparts} ) {
- my @pkg_svc = qsearch('pkg_svc', { pkgpart=>$pkgpart } );
+ my @pkg_svc =
+ qsearch('pkg_svc', { pkgpart => $pkgpart,
+ quantity => { op=>'>', value=>'0', } } );
+ #my @pkg_svc =
+ # grep { $_->quantity > 0 } qsearch('pkg_svc', { pkgpart=>$pkgpart } );
if ( ! @{$cust_svc[$i]} #find an empty place to put them with
&& grep { $svcdb eq $_->part_svc->svcdb } #with appropriate svcdb
@pkg_svc
@@ -689,7 +695,7 @@ sub order {
=head1 VERSION
-$Id: cust_pkg.pm,v 1.17 2002-04-12 15:14:58 ivan Exp $
+$Id: cust_pkg.pm,v 1.18 2002-04-20 02:06:38 ivan Exp $
=head1 BUGS
diff --git a/FS/FS/cust_svc.pm b/FS/FS/cust_svc.pm
index 23a3980ef..e6194b5b7 100644
--- a/FS/FS/cust_svc.pm
+++ b/FS/FS/cust_svc.pm
@@ -159,6 +159,10 @@ sub check {
'pkgpart' => $cust_pkg->pkgpart,
'svcpart' => $self->svcpart,
});
+ # or new FS::pkg_svc ( { 'pkgpart' => $cust_pkg->pkgpart,
+ # 'svcpart' => $self->svcpart,
+ # 'quantity' => 0 } );
+
my @cust_svc = qsearch('cust_svc', {
'pkgnum' => $self->pkgnum,
'svcpart' => $self->svcpart,
@@ -282,7 +286,7 @@ sub seconds_since {
=head1 VERSION
-$Id: cust_svc.pm,v 1.13 2002-04-12 15:14:58 ivan Exp $
+$Id: cust_svc.pm,v 1.14 2002-04-20 02:06:38 ivan Exp $
=head1 BUGS