---
 C4/Acquisition.pm                                  |    1 +
 acqui/addorder.pl                                  |    3 +++
 acqui/neworderempty.pl                             |    1 +
 acqui/parcel.pl                                    |   16 +++++-----------
 .../prog/en/modules/acqui/neworderempty.tt         |    6 ++++++
 .../prog/en/modules/acqui/orderreceive.tt          |    2 +-
 .../intranet-tmpl/prog/en/modules/acqui/parcels.tt |    3 +--
 7 files changed, 18 insertions(+), 14 deletions(-)

diff --git a/C4/Acquisition.pm b/C4/Acquisition.pm
index f682256..4227830 100644
--- a/C4/Acquisition.pm
+++ b/C4/Acquisition.pm
@@ -1264,6 +1264,7 @@ sub GetParcel {
                 aqorders.listprice,
                 aqorders.rrp,
                 aqorders.ecost,
+                aqorders.freight,
                 biblio.title
         FROM aqorders
         LEFT JOIN aqbasket ON aqbasket.basketno=aqorders.basketno
diff --git a/acqui/addorder.pl b/acqui/addorder.pl
index e321d2c..a20c79c 100755
--- a/acqui/addorder.pl
+++ b/acqui/addorder.pl
@@ -103,6 +103,8 @@ budget_id used to pay this order.
 
 =item C<cost>
 
+=item C<freight>
+
 =item C<sub>
 
 =item C<invoice>
@@ -174,6 +176,7 @@ $orderinfo->{'uncertainprice'} ||= 0;
 #my $gst           = $input->param('GST');
 #my $budget        = $input->param('budget');
 #my $cost          = $input->param('cost');
+#my $freight       = $input->param('freight');
 #my $sub           = $input->param('sub');
 #my $purchaseorder = $input->param('purchaseordernumber');
 #my $invoice       = $input->param('invoice');
diff --git a/acqui/neworderempty.pl b/acqui/neworderempty.pl
index e99eeb0..2c528b7 100755
--- a/acqui/neworderempty.pl
+++ b/acqui/neworderempty.pl
@@ -380,6 +380,7 @@ $template->param(
     quantityrec      => $data->{'quantity'},
     rrp              => $data->{'rrp'},
     listprice        => sprintf("%.2f", 
$data->{'listprice'}||$data->{'price'}||$listprice),
+    freight          => sprintf("%.2f", $data->{'freight'}||0),
     total            => sprintf("%.2f", 
($data->{'ecost'}||0)*($data->{'quantity'}||0) ),
     ecost            => $data->{'ecost'},
     notes            => $data->{'notes'},
diff --git a/acqui/parcel.pl b/acqui/parcel.pl
index ec5071b..ae937fd 100755
--- a/acqui/parcel.pl
+++ b/acqui/parcel.pl
@@ -216,19 +216,14 @@ for (my $i = 0 ; $i < $countlines ; $i++) {
     $totalprice += $parcelitems[$i]->{'unitprice'};
     $line{unitprice} = sprintf($cfstr, $parcelitems[$i]->{'unitprice'});
 
-    #double FIXME - totalfreight is redefined later.
-
-# FIXME - each order in a  parcel holds the freight for the whole parcel. This 
means if you receive a parcel with items from multiple budgets, you'll see the 
freight charge in each budget..
-    if ($i > 0 && $totalfreight != $parcelitems[$i]->{'freight'}) {
-        warn "FREIGHT CHARGE MISMATCH!!";
-    }
-    $totalfreight = $parcelitems[$i]->{'freight'};
+    $totalfreight  += $parcelitems[$i]->{'freight'};
     $totalquantity += $parcelitems[$i]->{'quantityreceived'};
     $tototal       += $total;
 }
 
 my $pendingorders = GetPendingOrders($supplierid);
 my $countpendings = scalar @$pendingorders;
+my $freight_per_order = $freight && $countpendings ? $freight/$countpendings : 
0;
 
 # pending orders totals
 my ($totalPunitprice, $totalPquantity, $totalPecost, $totalPqtyrcvd);
@@ -247,6 +242,7 @@ for (my $i = 0 ; $i < $countpendings ; $i++) {
     $line{ecost} = sprintf("%.2f",$line{ecost});
     $line{ordertotal} = sprintf("%.2f",$line{ecost}*$line{quantity});
     $line{unitprice} = sprintf("%.2f",$line{unitprice});
+    $line{freight} = sprintf("%.2f",$freight_per_order);
     $line{invoice} = $invoice;
     $line{gst} = $gst;
     $line{total} = $total;
@@ -254,7 +250,6 @@ for (my $i = 0 ; $i < $countpendings ; $i++) {
     $ordergrandtotal += $line{ecost} * $line{quantity};
     push @loop_orders, \%line if ($i >= $startfrom and $i < $startfrom + 
$resultsperpage);
 }
-$freight = $totalfreight unless $freight;
 
 my $count = $countpendings;
 
@@ -289,8 +284,7 @@ if ($count>$resultsperpage){
                     );
 }
 
-#$totalfreight=$freight;
-$tototal = $tototal + $freight;
+$tototal = $tototal + $totalfreight;
 
 $template->param(
     invoice               => $invoice,
@@ -307,7 +301,7 @@ $template->param(
     countpending          => $countpendings,
     loop_orders           => \@loop_orders,
     totalprice            => sprintf($cfstr, $totalprice),
-    totalfreight          => $totalfreight,
+    totalfreight          => sprintf($cfstr, $totalfreight),
     totalquantity         => $totalquantity,
     tototal               => sprintf($cfstr, $tototal),
     ordergrandtotal       => sprintf($cfstr, $ordergrandtotal),
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/neworderempty.tt 
b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/neworderempty.tt
index 39e9ca2..73fbb58 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/neworderempty.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/neworderempty.tt
@@ -422,6 +422,12 @@ $(document).ready(function()
                 <input type="text" id="cost" size="20" name="cost" value="[% 
ecost %]" />
                 [% END %]
             </li>
+            [% IF ( quantityrec ) %]
+            <li>
+                <label for="freight">Freight: </label>
+                <input type="text" id="freight" size="20" name="freight" 
value="[% freight %]" [% IF close %] readonly="readonly" [% END %]/>
+            </li>
+            [% END %]
             <li>
                 <label for="notes">Notes: </label>
                 <textarea id="notes" cols="30" rows="3" name="notes" >[% notes 
%]</textarea>
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/orderreceive.tt 
b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/orderreceive.tt
index 746155f..0e20e39 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/orderreceive.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/orderreceive.tt
@@ -82,7 +82,6 @@
     <input type="hidden" name="biblioitemnumber" value="[% biblioitemnumber 
%]" />
     <input type="hidden" name="supplierid" value="[% supplierid %]" />
     <input type="hidden" name="datereceived" value="[% datereceived_iso %]" />
-    <input type="hidden" name="freight" value="[% freight %]" />
     <input type="hidden" name="gst" value="[% gst %]" />
        </div>
        <div class="yui-u">
@@ -127,6 +126,7 @@
         [% ELSE %]
             <input type="text" size="20" name="cost" id="cost" value="[% ecost 
%]" />
         [% END %]</li></ol>
+        <li><label for="freight">Freight: </label><input type="text" size="20" 
name="freight" id="freight" value="[% freight %]" /></li>
         <label for="note">Notes: </label><textarea name="note" width="40" 
rows="8" >[% notes %]</textarea>
         <input type="hidden" name="invoice" value="[% invoice %]" />
     </fieldset>
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/parcels.tt 
b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/parcels.tt
index a7d704d..53d44d7 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/parcels.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/parcels.tt
@@ -96,11 +96,10 @@
             <input type="text" size="20" id="gst" name="gst" />
         </li>
                [% END %]
-      <!--  // Removing freight input until shipping can be proplerly handled .
          <li>
             <label for="freight">Shipping:</label>
             <input type="text" size="20" id="freight" name="freight" />
-        </li> -->
+        </li>
          <li><label for="datereceived">Shipment date: </label>
             <input type="text" id="datereceived" name="datereceived"  
maxlength="10" size="10"  value="[% datereceived_today %]" />
             <img src="[% themelang %]/lib/calendar/cal.gif" 
id="datereceived_button" alt="Show Calendar" />
-- 
1.6.5

_______________________________________________
Koha-patches mailing list
[email protected]
http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-patches
website : http://www.koha-community.org/
git : http://git.koha-community.org/
bugs : http://bugs.koha-community.org/

Reply via email to