chiark / gitweb /
Show overall total cash flow
authorIan Jackson <ian@liberator.relativity.greenend.org.uk>
Wed, 26 Aug 2009 00:10:29 +0000 (01:10 +0100)
committerIan Jackson <ian@liberator.relativity.greenend.org.uk>
Wed, 26 Aug 2009 00:10:29 +0000 (01:10 +0100)
yarrg/TODO
yarrg/web/routetrade

index ad3e1fc..d086250 100644 (file)
@@ -29,8 +29,6 @@ use POST for routetrade update
 
 dropdowns are broken sometimes
 
-display net cash flow
-
 initial/final stocks feature
 
 adjustable potential cost of losses (rather than fixed 1e-BIG per league)
index 6fe34fe..4d8cd9f 100644 (file)
@@ -551,6 +551,7 @@ $addcols->({ Total => 0, DoReverse => 1 }, qw(
 % my $iquery= $dbh->prepare('SELECT islandname FROM islands
 %                              WHERE islandid = ?');
 % my %da_ages;
+% my $total_total= 0;
 %
 <h1>Voyage trading plan</h1>
 <table rules=groups>
@@ -647,25 +648,32 @@ Sail to <% $islandname |h %>
 %      }
 %    };
 %    my $show_total= sub {
-%      my ($totaldesc)= @_;
+%      my ($totaldesc, $sign)= @_;
 %      if (defined $total) {
 <tr>
 <td colspan=3>
 <td colspan=2 align=right><% $totaldesc %>
 <td align=right><% $total |h %> total
+%              $total_total += $sign * $total;
 %      }
 %      $total= undef;
 %      $dline= 0;
 <%perl>
      };
 
-     $show_flows->('dst',0,'Deliver');  $show_total->('Proceeds');
-     $show_flows->('org',1,'Collect');  $show_total->('(Arbitrage) outlay');
-     $show_flows->('dst',1,'Deliver');  $show_total->('(Arbitrage) proceeds');
-     $show_flows->('org',0,'Collect');  $show_total->('Outlay');
+     $show_flows->('dst',0,'Deliver'); $show_total->('Proceeds',1);
+     $show_flows->('org',1,'Collect'); $show_total->('(Arbitrage) outlay',-1);
+     $show_flows->('dst',1,'Deliver'); $show_total->('(Arbitrage) proceeds',1);
+     $show_flows->('org',0,'Collect'); $show_total->('Outlay',-1);
 
 }
 </%perl>
+<tbody><tr>
+<td colspan=2>
+<td colspan=3 align=right>Overall net cash flow
+<td align=right><strong><%
+  $total_total < 0 ? -$total_total." loss" : $total_total." gain"
+ %></strong>
 </table>
 <& query_age:dataages, id2age => \%da_ages &>
 %