[Koha-patches] [PATCH] Bug 7908 Acquisitions: Maintain payment details against vendors

Amit Gupta amit.gupta at osslabs.biz
Mon Jun 11 12:34:16 CEST 2012


New payments button against each vendor. Capture payment details - cheque no, date and notes against one or more invoices that show under section "Pending payments". Once invoices are paid the invoices move to the section "Already paid".

Screens are very similar to invoice receiving screens.

Currently the "order_receive" permission is used to allow access to this feature, this will be changed in a subsequent patch.
---
 C4/Acquisition.pm                                  |   82 +++++++++++++
 acqui/payment.pl                                   |   84 +++++++++++++
 acqui/payments.pl                                  |  110 +++++++++++++++++
 installer/data/mysql/kohastructure.sql             |   13 ++
 installer/data/mysql/updatedatabase.pl             |   13 ++
 .../prog/en/includes/acquisitions-toolbar.inc      |    1 +
 .../prog/en/modules/acqui/booksellers.tt           |    1 +
 .../intranet-tmpl/prog/en/modules/acqui/payment.tt |  105 ++++++++++++++++
 .../prog/en/modules/acqui/payments.tt              |  128 ++++++++++++++++++++
 9 files changed, 537 insertions(+), 0 deletions(-)
 create mode 100755 acqui/payment.pl
 create mode 100755 acqui/payments.pl
 create mode 100644 koha-tmpl/intranet-tmpl/prog/en/modules/acqui/payment.tt
 create mode 100644 koha-tmpl/intranet-tmpl/prog/en/modules/acqui/payments.tt

diff --git a/C4/Acquisition.pm b/C4/Acquisition.pm
index 9e077bd..af81244 100644
--- a/C4/Acquisition.pm
+++ b/C4/Acquisition.pm
@@ -56,6 +56,9 @@ BEGIN {
         &SearchOrder &GetHistory &GetRecentAcqui
         &ModReceiveOrder &ModOrderBiblioitemNumber
         &GetCancelledOrders
+        &GetPayments
+        &GetPendingpayments
+        &AddPayments
 
         &NewOrderItem &ModOrderItem &ModItemOrder
 
@@ -158,6 +161,85 @@ sub GetBasket {
     return ( $basket );
 }
 
+
+=head3 GetPayments
+
+  $aqpayment = &GetPayments($bookseller,$order, $code, $chequeno);
+
+get all payments informations in aqpayments for a given vendor
+
+
+=cut
+
+sub GetPayments {
+    my ($bookseller,$code, $chequeno) = @_;
+    my $dbh    = C4::Context->dbh;
+    my @query_params = ();
+    my $strsth ="
+       SELECT aqpayments.booksellerinvoicenumber, aqpayments.chequeno,aqpayments.chequedate, aqpayments.notes FROM aqpayments LEFT JOIN aqorders ON aqpayments.booksellerinvoicenumber = aqorders.booksellerinvoicenumber LEFT JOIN aqbasket ON aqorders.basketno = aqbasket.basketno WHERE aqbasket.booksellerid = ?
+    ";
+    push @query_params, $bookseller;
+
+    if ( defined $code ) {
+        $strsth .= " AND aqpayments.booksellerinvoicenumber LIKE ? ";        
+        push @query_params, "$code%";
+    }
+    
+    if ( defined $chequeno ) {
+        $strsth .= " AND aqpayments.chequeno LIKE ? ";    
+        push @query_params, "$chequeno%";
+    }
+    
+    $strsth .= "GROUP BY aqpayments.booksellerinvoicenumber ";    
+
+    my $sth = $dbh->prepare($strsth);
+
+    $sth->execute( @query_params );
+    my $results = $sth->fetchall_arrayref({});
+    $sth->finish;
+    return @$results;
+}
+
+=head3 GetPendingpayments
+
+  $aqpendingpayment = &GetPendingpayments($supplierid);
+
+get all pending payments informations in aqpayments for a given vendor
+
+=cut
+
+sub GetPendingpayments {
+    my ($supplierid) = @_;
+    my $dbh = C4::Context->dbh;
+    my $strsth = "
+         SELECT DISTINCT(aqorders.booksellerinvoicenumber) AS booksellerinvoicenumber, aqorders.datereceived FROM aqorders LEFT JOIN aqbasket ON aqorders.basketno= aqbasket.basketno LEFT JOIN aqpayments ON aqorders.booksellerinvoicenumber = aqpayments.booksellerinvoicenumber
+         WHERE aqbasket.booksellerid=? and aqorders.booksellerinvoicenumber IS NOT NULL AND aqpayments.booksellerinvoicenumber IS NULL";
+    my @query_params = ( $supplierid );     
+    my $sth = $dbh->prepare($strsth);
+    $sth->execute( @query_params );
+    my $results = $sth->fetchall_arrayref({});
+    $sth->finish;
+    return $results;
+}
+
+=head3 AddPayments
+
+  $aqaddpayment = &GetPendingpayments($booksellerinvoicenumber,$chequeno,$chequedate,$notes);
+
+save all the payments in aqpayments table for a given vendor
+
+=cut
+
+sub AddPayments {
+    my ( $booksellerinvoicenumber, $chequeno,$chequedate,$notes)  = @_;
+    my $dbh = C4::Context->dbh;
+    my $query = qq|
+            INSERT INTO aqpayments
+                (booksellerinvoicenumber,chequeno,chequedate,notes)
+            VALUES (?,?,?,?)    |;
+    my $sth = $dbh->prepare($query);
+    $sth->execute( $booksellerinvoicenumber,$chequeno,$chequedate,$notes);
+}
 #------------------------------------------------------------#
 
 =head3 NewBasket
diff --git a/acqui/payment.pl b/acqui/payment.pl
new file mode 100755
index 0000000..66d6af5
--- /dev/null
+++ b/acqui/payment.pl
@@ -0,0 +1,84 @@
+#!/usr/bin/perl
+
+#script to Payment Capture against vendor
+#written by amit.gupta at osslabs.biz 09/06/2012
+
+# Copyright 2012 Nucsoft Osslabs
+#
+# This file is part of Koha.
+#
+# Koha is free software; you can redistribute it and/or modify it under the
+# terms of the GNU General Public License as published by the Free Software
+# Foundation; either version 2 of the License, or (at your option) any later
+# version.
+#
+# Koha is distributed in the hope that it will be useful, but WITHOUT ANY
+# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+# A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with Koha; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+=head1 NAME
+
+payments.pl
+
+This script is used to capture payments against vendor.
+
+=cut
+
+use strict;
+use warnings;
+use CGI;
+use C4::Auth;
+use C4::Output;
+
+use C4::Dates qw/format_date/;
+use C4::Acquisition;
+use C4::Bookseller qw/ GetBookSellerFromId /;
+
+my $input          = CGI->new;
+my $booksellerid     = $input->param('booksellerid');
+my $startfrom      = $input->param('startfrom');
+my $code           = $input->param('filter');
+my $chequeno           = $input->param('chequeno');
+
+
+my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
+    {   template_name   => 'acqui/payment.tmpl',
+        query           => $input,
+        type            => 'intranet',
+        authnotrequired => 0,
+        flagsrequired   => { acquisition => 'order_receive' },
+        debug           => 1,
+    }
+);
+
+my $bookseller = GetBookSellerFromId($booksellerid);
+my @payments = GetPayments( $booksellerid, $code, $chequeno);
+my $count_payments = @payments;
+my @loop_received = ();
+
+for (my $i = 0 ; $i < $count_payments ; $i++) {
+    my %line;
+    %line          = %{ $payments[$i] };
+    $line{booksellerid} = $booksellerid;
+    $line{chequedate} = format_date($line{chequedate});
+    push @loop_received, \%line;
+    
+}
+
+if ($count_payments) {
+    $template->param( searchresults => \@loop_received, count => $count_payments, );
+}
+$template->param(    
+    chequeno                 => $chequeno,
+    name                     => $bookseller->{'name'},    
+    datereceived_today       => C4::Dates->new()->output(),
+    booksellerid             => $booksellerid,    
+);
+
+output_html_with_http_headers $input, $cookie, $template->output;
+
+
diff --git a/acqui/payments.pl b/acqui/payments.pl
new file mode 100755
index 0000000..d5fe4de
--- /dev/null
+++ b/acqui/payments.pl
@@ -0,0 +1,110 @@
+#!/usr/bin/perl
+
+#script to Payment Capture against vendor
+#written by amit.gupta at osslabs.biz 09/06/2012
+
+# Copyright 2012 Nucsoft Osslabs
+#
+# This file is part of Koha.
+#
+# Koha is free software; you can redistribute it and/or modify it under the
+# terms of the GNU General Public License as published by the Free Software
+# Foundation; either version 2 of the License, or (at your option) any later
+# version.
+#
+# Koha is distributed in the hope that it will be useful, but WITHOUT ANY
+# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+# A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with Koha; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+=head1 NAME
+
+payments.pl
+
+This script is used to capture payments against vendor.
+
+=cut
+
+use strict;
+use warnings; 
+use C4::Auth;
+use C4::Acquisition;
+use C4::Bookseller qw/ GetBookSellerFromId /;
+use CGI;
+use C4::Output;
+use C4::Dates qw/format_date format_date_in_iso/;
+
+
+my $input=new CGI;
+my $booksellerid=$input->param('booksellerid');
+my $bookseller=GetBookSellerFromId($booksellerid);
+my $chequeno=$input->param('chequeno') || '';
+my $notes=$input->param('notes') || '';
+my $op = $input->param('op');
+
+my $datereceived =  ($input->param('op') eq 'new') ? C4::Dates->new($input->param('datereceived')) :  C4::Dates->new($input->param('datereceived'), 'iso') ;
+$datereceived = C4::Dates->new() unless $datereceived;
+
+my ($template, $loggedinuser, $cookie)
+    = get_template_and_user({template_name => "acqui/payments.tmpl",
+                query => $input,
+                type => "intranet",
+                authnotrequired => 0,
+                flagsrequired => {acquisition => 'order_receive'},
+                debug => 1,
+});
+
+my @parcelitems   = GetPayments($booksellerid);
+my $countlines    = scalar @parcelitems;
+my @loop_received = ();
+
+for (my $i = 0 ; $i < $countlines ; $i++) {
+    my %line;
+    %line          = %{ $parcelitems[$i] };
+    $line{booksellerid} = $booksellerid;
+    $line{chequedate} = format_date($line{chequedate});
+    push @loop_received, \%line;
+    
+}
+
+my $pendingpayments = GetPendingpayments($booksellerid);
+my $countpendings = scalar @$pendingpayments;
+
+
+my @loop_orders = ();
+for (my $i = 0 ; $i < $countpendings ; $i++) {
+    my %line;
+    %line = %{$pendingpayments->[$i]};    
+    $line{datereceived} = format_date($line{datereceived});    
+    push @loop_orders, \%line;
+}
+
+
+if ($op eq "saveall"){
+    my @booksellerinvoicenumber = $input->param( 'booksellerinvoicenumber');
+    my $chequedate = $input->param('date');
+        foreach my $invoiceno(@booksellerinvoicenumber){
+            next unless $invoiceno;
+            AddPayments( $invoiceno, $chequeno,$chequedate,$notes);     
+        }
+    my $date = format_date($chequedate);
+    print  $input->redirect("payments.pl?booksellerid=$booksellerid&op=new&notes=$notes&chequeno=$chequeno&datereceived=$date");
+}
+
+
+$template->param(
+    chequeno               => $chequeno,
+    notes                 => $notes,
+    datereceived          => $datereceived->output('iso'),
+    formatteddatereceived => $datereceived->output(),    
+    booksellerid            => $booksellerid,
+    name                  => $bookseller->{'name'},       
+    loop_received         => \@loop_received,
+    loop_orders           => \@loop_orders,
+
+);
+output_html_with_http_headers $input, $cookie, $template->output;
+ 
diff --git a/installer/data/mysql/kohastructure.sql b/installer/data/mysql/kohastructure.sql
index 54498c3..0ddd0fb 100644
--- a/installer/data/mysql/kohastructure.sql
+++ b/installer/data/mysql/kohastructure.sql
@@ -2846,6 +2846,19 @@ CREATE TABLE `quotes` (
   PRIMARY KEY (`id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
+--
+-- Table structure for table `aqpayments`
+--
+
+DROP TABLE IF EXISTS aqpayments;
+CREATE TABLE `aqpayments` (
+  `booksellerinvoicenumber` mediumtext,
+  `chequeno` varchar(80) default NULL,
+  `chequedate` date default NULL, 
+  `notes` varchar(80) default NULL,
+  `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP   
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
 /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
 /*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
 /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
diff --git a/installer/data/mysql/updatedatabase.pl b/installer/data/mysql/updatedatabase.pl
index 62b4372..cfc52ee 100755
--- a/installer/data/mysql/updatedatabase.pl
+++ b/installer/data/mysql/updatedatabase.pl
@@ -5343,6 +5343,19 @@ if ( C4::Context->preference("Version") < TransformToNum($DBversion) ) {
     SetVersion($DBversion);
 }
 
+$DBversion ="3.09.00.XXX";
+if ( C4::Context->preference("Version") < TransformToNum($DBversion) ) {   
+    $dbh->do("CREATE TABLE `aqpayments` (
+        `booksellerinvoicenumber` mediumtext,
+        `chequeno` varchar(80) default NULL,
+        `chequedate` date default NULL, 
+        `notes` varchar(80) default NULL,
+        `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP   
+    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;");
+    print "Upgrade to $DBversion done (New table structure for aqpayments)\n";
+    SetVersion ($DBversion); 
+}
+
 =head1 FUNCTIONS
 
 =head2 TableExists($table)
diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/acquisitions-toolbar.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/acquisitions-toolbar.inc
index 11d7b39..5e2d542 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/includes/acquisitions-toolbar.inc
+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/acquisitions-toolbar.inc
@@ -26,6 +26,7 @@
                 { text: _("New basket"), url: "/cgi-bin/koha/acqui/basketheader.pl?booksellerid=[% booksellerid %]&op=add_form"},
                 { text: _("Baskets"), url: "/cgi-bin/koha/acqui/booksellers.pl?booksellerid=[% booksellerid %]"},
                 { text: _("Basket groups"), url: "/cgi-bin/koha/acqui/basketgroup.pl?booksellerid=[% booksellerid %]"},
+                { text: _("Payment"), url: "/cgi-bin/koha/acqui/payment.pl?booksellerid=[% booksellerid %]"},
             [% END %]
             { text: _("Receive shipments"), url: "/cgi-bin/koha/acqui/parcels.pl?booksellerid=[% booksellerid %]" },
             [% IF ( basketno ) %]
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/booksellers.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/booksellers.tt
index 4077b5d..bc6ea77 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/booksellers.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/booksellers.tt
@@ -81,6 +81,7 @@ $(document).ready(function() {
                         [% END %]
                     [% END %]
                     <input type="button" value="Receive shipment" onclick="window.location.href='/cgi-bin/koha/acqui/parcels.pl?booksellerid=[% supplier.booksellerid %]'" />
+                    <input type="button" value="Payment" onclick="window.location.href='/cgi-bin/koha/acqui/payment.pl?booksellerid=[% supplier.booksellerid %]'" />
                 </span>
                 <div class="baskets">
                     [% IF ( supplier.loop_basket.size ) %]
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/payment.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/payment.tt
new file mode 100644
index 0000000..c4a20f8
--- /dev/null
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/payment.tt
@@ -0,0 +1,105 @@
+[% INCLUDE 'doc-head-open.inc' %]
+<title>Koha &rsaquo; Acquisitions &rsaquo; Payments Details for vendor [% name %]</title>
+[% INCLUDE 'doc-head-close.inc' %]
+[% INCLUDE 'calendar.inc' %]
+</head>
+<body id="acq_payment" class="acq">
+[% INCLUDE 'header.inc' %]
+[% INCLUDE 'acquisitions-search.inc' %]
+
+<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/acqui/acqui-home.pl">Acquisitions</a>  &rsaquo; <a href="/cgi-bin/koha/acqui/supplier.pl?booksellerid=[% booksellerid %]">[% name %]</a> &rsaquo; Payments Details for vendor [% name %]</div>
+
+[% IF ( count ) %]<div id="doc3" class="yui-t2">[% ELSE %]<div id="doc" class="yui-t7">[% END %]
+   
+<div id="bd">
+<div id="yui-main">
+<div class="yui-b">
+
+<h1>Payments Details for vendor <a href="/cgi-bin/koha/acqui/supplier.pl?booksellerid=[% booksellerid %]">[% name %]</a></h1>
+
+[% IF ( count ) %]
+
+<div id="resultlist">
+<!-- Search Results Table -->
+
+<table class="small">
+    <tr>        
+        <th>Transaction Date</th>
+        <th>Invoice number</th>
+        <th>Chq No./DD No.</th>            
+    </tr>
+<!-- Actual Search Results -->
+[% FOREACH searchresult IN searchresults %]
+[% UNLESS ( loop.odd ) %]
+    <tr class="highlight">
+    [% ELSE %]
+    <tr>
+    [% END %]
+    <td>[% searchresult.chequedate %]</td>
+    <td>[% searchresult.booksellerinvoicenumber %]</td>
+    <td>[% searchresult.chequeno %]</td>        
+    </tr>
+[% END %]
+</table>
+</div>
+[% END %]
+    <div id="payments_new_payment">
+    <form method="get" action="payments.pl">
+    <fieldset class="rows">
+    <legend>Payment Details</legend>
+    <ol><li>
+        <label for="chequeno">Chq No./DD No</label>
+        <input type="hidden" name="booksellerid" value="[% booksellerid %]" />
+        <input type="hidden" name="op" value="new" />
+        <input type="text" size="20" id="chequeno" name="chequeno" />
+        </li>
+        <li>
+        <label for="notes">Notes </label>                        
+        <input type="text" size="20" id="notes" name="notes" />
+        </li> 
+        <li><label for="datereceived">Transaction 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" />
+        <script language="JavaScript" type="text/javascript">
+            Calendar.setup(
+                 {
+                        inputField : "datereceived",
+                        ifFormat : "[% DHTMLcalendar_dateformat %]",
+                        button : "datereceived_button"          }
+            );
+        </script>
+        <div class="hint">[% INCLUDE 'date-format.inc' %]</div>	</li>
+        </ol>
+        </fieldset>
+        <fieldset class="action"><input type="submit" class="button" value="Next" /> <a class="cancel" href="/cgi-bin/koha/acqui/supplier.pl?booksellerid=[% booksellerid %]">Cancel</a></fieldset>
+        </form>
+    </div>
+</div>
+</div>
+<div class="yui-b">
+[% IF ( count ) %]<form method="get" action="payment.pl">
+    <fieldset class="brief">
+    <h4>Filter</h4>
+        <ol>
+            <li> <input type="hidden" name="booksellerid" value="[% booksellerid %]" /></li>
+            <li><label for="filter">Invoice number:</label><input type="text" size="20" name="filter" value="[% filter %]" id="filter" /></li>
+            <li><label for="chequeno">Chq No./DD No:</label><input type="text" size="20" name="chequeno" value="[% chequeno %]" id="chequeno" /></li>               
+            <li><label for="orderby">Sort by :</label><select name="orderby" id="orderby">
+                <option value="aqpayments.booksellerinvoicenumber">Invoice number</option>
+                <option value="aqpayments.chequeno">Chq No./DD No number</option>
+                <option value="aqpayments.booksellerinvoicenumber desc"> Invoice number reverse</option>
+                <option value="aqpayments.chequeno desc"> Chq No./DD No reverse</option>
+                </select><br />
+                <label for="resultsperpage">Results per page :</label><select name="resultsperpage" id="resultsperpage">
+                <option value="20">20</option>
+                <option value="30">30</option>
+                <option value="50">50</option>
+                <option value="100">100</option>
+                </select></li>
+        </ol>
+        <fieldset class="action"><input type="submit" class="button" value="Filter" /> <a href="/cgi-bin/koha/acqui/payment.pl?booksellerid=[% booksellerid %]">Clear</a></fieldset>
+    </fieldset>
+</form>[% END %]
+</div>
+</div>
+[% INCLUDE 'intranet-bottom.inc' %]
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/payments.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/payments.tt
new file mode 100644
index 0000000..836602e
--- /dev/null
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/payments.tt
@@ -0,0 +1,128 @@
+[% INCLUDE 'doc-head-open.inc' %]
+<title>Koha &rsaquo; Acquisitions &rsaquo; [% IF ( date ) %]
+            Receipt summary for [% name %] [% IF ( chequeno ) %]invoice [% chequeno %][% END %] on [% formatteddatereceived %][% ELSE %]Receive orders from [% name %][% END %]</title>
+[% INCLUDE 'doc-head-close.inc' %]
+[% INCLUDE 'greybox.inc' %]
+<script type="text/javascript">
+function selectAll () {
+    $(".selection").attr("checked", "checked");
+}
+function clearAll () {
+    $(".selection").removeAttr("checked");
+}
+function checkCheckBoxes() {
+    var checkedItems = $(".selection:checked");
+    if ($(checkedItems).size() == 0) {
+        alert('Please select atleast one order.');
+        return false;
+    } else{     
+   return true;
+   }
+}
+</script>
+
+</head>
+<body id="acq_payment" class="acq">
+[% INCLUDE 'header.inc' %]
+[% INCLUDE 'acquisitions-search.inc' %]
+
+<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/acqui/acqui-home.pl">Acquisitions</a> &rsaquo;  [% IF ( datereceived ) %]
+            Payments summary for <i>[% name %]</i> [% IF ( chequeno ) %]<i>[ [% chequeno %] ]</i>[% END %] on <i>[% formatteddatereceived %]</i>
+        [% ELSE %]
+            Receive orders from [% name %]
+        [% END %]</div>
+
+<div id="doc3" class="yui-t2">
+<div id="bd">
+<div id="yui-main">
+<div class="yui-b">
+
+<div id="acqui_payment_summary">
+<p><strong>Chq No./DD No:</strong> [% chequeno %] <strong>Received by:</strong> [% loggedinusername %] <strong>Transaction Date:</strong> [% formatteddatereceived %]</p>
+</div>
+<div id="acqui_payment_search">
+<h3>Pending Payments</h3>
+[% IF ( loop_orders ) %]<table id="pendingp">
+
+<form id="myform" action="/cgi-bin/koha/acqui/payments.pl" method="post" onsubmit="return checkCheckBoxes();">
+<input type="hidden" name="op" value="saveall" />
+<input type="hidden" name="booksellerid" value="[% booksellerid %]" />
+<input type="hidden" name="booksellerinvoicenumber" value="[% loop_order.booksellerinvoicenumber %]" />
+<input type="hidden" name="chequeno" value="[% chequeno %]" />
+<input type="hidden" name="notes" value="[% notes %]" />
+<input type="hidden" name="date" value="[% datereceived %]" />
+<div id="toolbar"><a href="#" onclick="selectAll(); return false;">Select All</a> |
+<a href="#" onclick="clearAll(); return false;">Clear All</a></div>
+<thead>
+    <tr>
+        <th>&nbsp;</th>  
+        <th>Invoice Number</th>
+        <th>Invoice Date</th>                        
+    </tr>
+</thead>
+
+    <tbody class="filterclass">
+        [% FOREACH loop_order IN loop_orders %]
+        [% UNLESS ( loop.odd ) %]
+            <tr class="highlight">
+        [% ELSE %]
+            <tr>
+        [% END %]
+        <td><input type="checkbox" class="selection" name="booksellerinvoicenumber" value="[% loop_order.booksellerinvoicenumber %]"/></td>
+        <td>[% loop_order.booksellerinvoicenumber %]</td>
+        <td>[% loop_order.datereceived %]</td>                       
+    </tr>
+        [% END %]
+    </tbody>
+     </table><br />
+<input type="submit" value="Save"/>
+   </form>
+[% ELSE %]There are no pending payments.[% END %]
+</div>
+<div id="acqui_paymentlist">
+    <h3>Already Paid</h3>
+   [% IF ( loop_received ) %]
+   <form action="/cgi-bin/koha/acqui/payments.pl" method="get" name="orderform">
+    <table id="paymentt">
+    <thead>
+    <tr>
+    <th>Invoice Number</th>
+        <th>Chq No./DD No </th>                       
+        <th>Transaction Date</th>                       
+        <th>Notes</th> 
+    </tr>
+    </thead>
+    <tbody class="filterclass">
+    [% FOREACH loop_receive IN loop_received %]
+        [% UNLESS ( loop.odd ) %]
+            <tr class="highlight">
+        [% ELSE %]
+            <tr>
+        [% END %]
+                <td>[% loop_receive.booksellerinvoicenumber %]</a>
+                <td>[% loop_receive.chequeno %]</td>                                
+                <td>[% loop_receive.chequedate %]</td>                                
+                <td>[% loop_receive.notes %]</td>
+            </tr>
+    [% END %]
+    </tbody>
+    </table>
+    </form>
+    [% ELSE %]There are no received payments.[% END %]
+</div>
+
+<form action="payment.pl?booksellerid=[% booksellerid %]" method="post">
+    <input type="hidden" name="booksellerid" value="[% booksellerid %]" />
+    <fieldset class="action">
+        <input type="submit" value="Finish Payment" />
+    </fieldset>
+</form>
+
+</div>
+</div>
+<div class="yui-b">
+[% INCLUDE 'acquisitions-menu.inc' %]
+</div>
+</div>
+[% INCLUDE 'intranet-bottom.inc' %]
+ 
-- 
1.6.4.2



More information about the Koha-patches mailing list