fix problem with edge case where there *is* a pkg_svc record with quantity 0,
authorivan <ivan>
Sat, 20 Apr 2002 02:06:38 +0000 (02:06 +0000)
committerivan <ivan>
Sat, 20 Apr 2002 02:06:38 +0000 (02:06 +0000)
when changing packages and using the special case new service code

FS/FS/cust_pkg.pm
FS/FS/cust_svc.pm

index f858a99..0fc2147 100644 (file)
@@ -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
 
index 23a3980..e6194b5 100644 (file)
@@ -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