invoice DID summary performance enhancement, RT10886
[freeside.git] / FS / FS / svc_phone.pm
index 56f3f3c..19bef94 100644 (file)
@@ -79,6 +79,14 @@ Voicemail PIN
 
 Optional svcnum from svc_pbx
 
+=item forwarddst
+
+Forwarding destination
+
+=item email
+
+Email address for virtual fax (fax-to-email) services
+
 =item lnp_status
 
 LNP Status (can be null, native, portedin, portingin, portin-reject,
@@ -163,6 +171,12 @@ sub table_info {
                            disable_inventory => 1,
                            disable_select    => 1,
                          },
+       'forwarddst' => {       label => 'Forward Destination', 
+                               %dis2,
+                       },
+       'email' => {            label => 'Email',
+                               %dis2,
+                   },
        'lnp_status' => {       label => 'LNP Status',
                                type => 'select-lnp_status.html',
                                %dis2,
@@ -456,6 +470,8 @@ sub check {
     || $self->ut_foreign_keyn('pbxsvc', 'svc_pbx',    'svcnum' )
     || $self->ut_foreign_keyn('domsvc', 'svc_domain', 'svcnum' )
     || $self->ut_foreign_keyn('locationnum', 'cust_location', 'locationnum')
+    || $self->ut_numbern('forwarddst')
+    || $self->ut_textn('email')
     || $self->ut_numbern('lrn')
     || $self->ut_numbern('lnp_desired_due_date')
     || $self->ut_numbern('lnp_due_date')
@@ -711,7 +727,8 @@ sub get_cdrs {
       'table'      => 'cdr',
       'hashref'    => \%hash,
       'extra_sql'  => $extra_sql,
-      'order_by'   => "ORDER BY startdate $for_update",
+      'order_by'   => $options{'billsec_sum'} ? '' : "ORDER BY startdate $for_update",
+      'select'     => $options{'billsec_sum'} ? 'sum(billsec) as billsec_sum' : '*',
     } );
 
   @cdrs;