delete fees, RT#81713
[freeside.git] / FS / FS / did_order_item.pm
index 4408c50..d1f906f 100644 (file)
@@ -37,32 +37,19 @@ primary key
 
 =item ordernum
 
-ordernum
-
-=item msa
-
-msa
+=item msanum - foreign key to msa table
 
 =item npa
 
-npa
-
-=item latanum
-
-latanum
+=item latanum - foreign key to lata table
 
-=item rate_center
-
-rate_center
+=item ratecenternum - foreign key to rate_center table
 
 =item state
 
-state
-
 =item quantity
 
-quantity
-
+=item custnum - foreign key to cust_main table, optional
 
 =back
 
@@ -126,23 +113,36 @@ sub check {
   my $error = 
     $self->ut_numbern('orderitemnum')
     || $self->ut_number('ordernum')
-    || $self->ut_textn('msa')
+    || $self->ut_foreign_keyn('msanum', 'msa', 'msanum')
     || $self->ut_numbern('npa')
     || $self->ut_foreign_keyn('latanum', 'lata', 'latanum')
-    || $self->ut_textn('rate_center')
+    || $self->ut_foreign_keyn('ratecenternum', 'rate_center', 'ratecenternum')
     || $self->ut_textn('state')
     || $self->ut_number('quantity')
+    || $self->ut_foreign_keyn('custnum', 'cust_main', 'custnum')
   ;
   return $error if $error;
 
   $self->SUPER::check;
 }
 
+=item rate_center
+
+Returns the rate_center for this order item.
+
+=cut
+
+sub rate_center {
+    my $self = shift;
+    return '' unless $self->ratecenternum;
+    qsearchs('rate_center', { 'ratecenternum' => $self->ratecenternum });
+}
+
 =back
 
 =head1 SEE ALSO
 
-L<FS::Record>, schema.html from the base documentation.
+L<FS::did_order>, <FS::Record>, schema.html from the base documentation.
 
 =cut