[freeside-commits] branch FREESIDE_3_BRANCH updated. a2ecc0866f644783f4704067ddc1f58c70dce91c

Mark Wells mark at 420.am
Mon Jul 6 15:24:36 PDT 2015


The branch, FREESIDE_3_BRANCH has been updated
       via  a2ecc0866f644783f4704067ddc1f58c70dce91c (commit)
       via  c107b91fcf2aa0522ec801760e5129d11889f29c (commit)
      from  0ec4177b088852a185b88ce3e9941a3ecbc2cb59 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit a2ecc0866f644783f4704067ddc1f58c70dce91c
Author: Mark Wells <mark at freeside.biz>
Date:   Mon Jul 6 14:30:10 2015 -0700

    optionally include discounts in daily cashflow report, #37123

diff --git a/FS/FS/Report/Table/Daily.pm b/FS/FS/Report/Table/Daily.pm
index 6673937..8d623e7 100644
--- a/FS/FS/Report/Table/Daily.pm
+++ b/FS/FS/Report/Table/Daily.pm
@@ -121,16 +121,20 @@ sub data {
     my @newdata = ();
     my @newcolors = ();
     my @newlinks = ();
+    my @indices = ();
     foreach my $item ( @{$self->{'items'}} ) {
 
-      if ( grep { $_ != 0 } @{$data{'data'}->[$col]} ) {
-        push @newitems,  $data{'items'}->[$col];
-        push @newlabels, $data{'item_labels'}->[$col];
-        push @newdata,   $data{'data'}->[$col];
-        push @newcolors, $data{'colors'}->[$col];
-        push @newlinks,  $data{'links'}->[$col];
-      }
-
+      my $is_nonzero = scalar( grep { $_ != 0 } @{ $data{'data'}->[$col] });
+      next if ($self->{'remove_empty'} and $is_nonzero == 0);
+      # no daily reports can normalize yet
+      push @newitems,  $data{'items'}->[$col];
+      push @newlabels, $data{'item_labels'}->[$col];
+      push @newdata,   $data{'data'}->[$col];
+      push @newcolors, $data{'colors'}->[$col];
+      push @newlinks,  $data{'links'}->[$col];
+      push @indices, $col;
+
+    } continue {
       $col++;
     }
 
@@ -139,7 +143,10 @@ sub data {
     $data{'data'}        = \@newdata;
     $data{'colors'}      = \@newcolors;
     $data{'links'}       = \@newlinks;
+    $data{'indices'}     = \@indices;
 
+  } else { # not doing remove_empty; report back that all columns are included
+    $data{'indices'} = [ 0 .. scalar( @{$self->{'items'}} ) - 1 ];
   }
 
   \%data;
diff --git a/httemplate/graph/money_time_daily.cgi b/httemplate/graph/money_time_daily.cgi
index 0fdbd89..95617f6 100644
--- a/httemplate/graph/money_time_daily.cgi
+++ b/httemplate/graph/money_time_daily.cgi
@@ -8,7 +8,6 @@
                 'links'        => \%link,
                 'agentnum'     => $agentnum,
                 'cust_classnum'=> \@classnums,
-                'nototal'      => scalar($cgi->param('12mo')),
                 'daily'        => 1,
                 'start_day'    => $smday,
                 'start_month'  => $smon+1,
@@ -44,19 +43,20 @@ my ($ssec,$smin,$shour,$smday,$smon,$syear,$swday,$syday,$sisdst)
 my ($esec,$emin,$ehour,$emday,$emon,$eyear,$ewday,$eyday,$eisdst) 
     = localtime($ending);
 
-my @items = qw( invoiced netsales
+my @items = ($cgi->param('exclude_discount') ? 'invoiced' : 'gross');
+push @items,
+            qw( discounted netsales
                 credits  netcredits
                 payments receipts
                 refunds  netrefunds
                 cashflow netcashflow
               );
-if ( $cgi->param('12mo') == 1 ) {
-  @items = map $_.'_12mo', @items;
-}
 
 my %label = (
-  'invoiced'    => 'Gross Sales',
+  'gross'       => 'Gross Sales',
+  'invoiced'    => 'Invoiced Sales',
   'netsales'    =>   'Net Sales',
+  'discounted'  => 'Discounts',
   'credits'     => 'Gross Credits',
   'netcredits'  =>   'Net Credits',
   'payments'    => 'Gross Receipts',
@@ -68,8 +68,10 @@ my %label = (
 );
 
 my %graph_suffix = (
- 'invoiced'    => ' (invoiced)', 
+ 'gross'       => ' (invoiced + discounts)',
+ 'invoiced'    => '',
  'netsales'    => ' (invoiced - applied credits)',
+ 'discounted'  => '',
  'credits'     => ' (credited)',
  'netcredits'  => ' (applied credits)',
  'payments'    => ' (payments)',
@@ -81,13 +83,8 @@ my %graph_suffix = (
 );
 my %graph_label = map { $_ => $label{$_}.$graph_suffix{$_} } keys %label;
 
-$label{$_.'_12mo'} = $label{$_}. " (prev 12 months)"
-  foreach keys %label;
-
-$graph_label{$_.'_12mo'} = $graph_label{$_}. " (prev 12 months)"
-  foreach keys %graph_label;
-
 my %color = (
+  'gross'       => '9999ff', #light blue
   'invoiced'    => '9999ff', #light blue
   'netsales'    => '0000cc', #blue
   'credits'     => 'ff9999', #light red
@@ -98,12 +95,12 @@ my %color = (
   'netrefunds'  => 'ff9900', #orange
   'cashflow'    => '99cc33', #light olive
   'netcashflow' => '339900', #olive
+  'discounted'  => 'cc33cc', #purple-ish?
 );
-$color{$_.'_12mo'} = $color{$_}
-  foreach keys %color;
 
 my %link = (
-  'invoiced'   => "${p}search/cust_bill.html?agentnum=$agentnum;",
+  'gross'      => "${p}search/cust_bill.html?agentnum=$agentnum;",
+  'invoiced'   => "${p}search/cust_bill.html?agentnum=$agentnum;invoiced=1;",
   'netsales'   => "${p}search/cust_bill.html?agentnum=$agentnum;net=1;",
   'credits'    => "${p}search/cust_credit.html?agentnum=$agentnum;",
   'netcredits' => "${p}search/cust_credit_bill.html?agentnum=$agentnum;",
@@ -111,7 +108,7 @@ my %link = (
   'receipts'   => "${p}search/cust_bill_pay.html?agentnum=$agentnum;",
   'refunds'    => "${p}search/cust_refund.html?magic=_date;agentnum=$agentnum;",
   'netrefunds' => "${p}search/cust_credit_refund.html?agentnum=$agentnum;",
+  'discounted' => "${p}search/cust_bill_pkg_discount.html?agentnum=$agentnum;",
 );
-# XXX link 12mo?
 
 </%init>
diff --git a/httemplate/graph/report_money_time_daily.html b/httemplate/graph/report_money_time_daily.html
index e80f586..5daa305 100644
--- a/httemplate/graph/report_money_time_daily.html
+++ b/httemplate/graph/report_money_time_daily.html
@@ -21,6 +21,18 @@
     'multiple' => 1,
 &>
 
+<tr>
+  <td />
+  <td>
+    <& /elements/checkbox.html,
+      field => 'exclude_discount',
+      value => 1,
+      curr_value => 1, #3.x only
+    &>
+    <% emt('Exclude discounts from total sales') %>
+  </td>
+</TR>
+
 </TABLE>
 
 <BR><INPUT TYPE="submit" VALUE="Display">

commit c107b91fcf2aa0522ec801760e5129d11889f29c
Author: Mark Wells <mark at freeside.biz>
Date:   Mon Jul 6 14:29:02 2015 -0700

    minor typo

diff --git a/httemplate/graph/report_money_time.html b/httemplate/graph/report_money_time.html
index 64fab14..2f6dd38 100644
--- a/httemplate/graph/report_money_time.html
+++ b/httemplate/graph/report_money_time.html
@@ -46,6 +46,7 @@
     <% emt('Show 12 month totals instead of monthly values') %>
   </td>
 </tr>
+<tr>
   <td />
   <td>
     <& /elements/checkbox.html,

-----------------------------------------------------------------------

Summary of changes:
 FS/FS/Report/Table/Daily.pm                   |   23 +++++++++++-------
 httemplate/graph/money_time_daily.cgi         |   31 +++++++++++--------------
 httemplate/graph/report_money_time.html       |    1 +
 httemplate/graph/report_money_time_daily.html |   12 ++++++++++
 4 files changed, 42 insertions(+), 25 deletions(-)




More information about the freeside-commits mailing list