details:   https://code.openbravo.com/erp/devel/pi/rev/ba0d445a51cf
changeset: 22343:ba0d445a51cf
user:      Sandra Huguet <sandra.huguet <at> openbravo.com>
date:      Tue Mar 04 13:42:29 2014 +0100
summary:   Fixed bug 25895 impossible to pay a invoice with generated credit

diffstat:

 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/dao/AdvPaymentMngtDao.java
          |  11 ++++-----
 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_PaymentProcess.java
     |   4 ++-
 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_TransactionProcess.java
 |   1 +
 3 files changed, 9 insertions(+), 7 deletions(-)

diffs (49 lines):

diff -r 5ccb08d7767d -r ba0d445a51cf 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/dao/AdvPaymentMngtDao.java
--- 
a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/dao/AdvPaymentMngtDao.java
  Tue Mar 04 20:56:47 2014 +0530
+++ 
b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/dao/AdvPaymentMngtDao.java
  Tue Mar 04 13:42:29 2014 +0100
@@ -1926,15 +1926,14 @@
       obcPayment.add(Restrictions.in("organization.id", orgIds));
       obcPayment.addOrderBy(FIN_Payment.PROPERTY_PAYMENTDATE, true);
       obcPayment.addOrderBy(FIN_Payment.PROPERTY_DOCUMENTNO, true);
+
       List<FIN_Payment> paymentList = new ArrayList<FIN_Payment>();
       for (FIN_Payment fp : obcPayment.list()) {
-        for (FIN_PaymentDetail fpd : fp.getFINPaymentDetailList()) {
-          for (FIN_PaymentScheduleDetail fpsd : 
fpd.getFINPaymentScheduleDetailList()) {
-            if (fpsd.isInvoicePaid()) {
-              paymentList.add(fp);
-            }
-          }
+        if ((FIN_Utility.seqnumberpaymentstatus(fp.getStatus())) >= 
(FIN_Utility
+            .seqnumberpaymentstatus(FIN_Utility.invoicePaymentStatus(fp)))) {
+          paymentList.add(fp);
         }
+
       }
       return paymentList;
     } finally {
diff -r 5ccb08d7767d -r ba0d445a51cf 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_PaymentProcess.java
--- 
a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_PaymentProcess.java
     Tue Mar 04 20:56:47 2014 +0530
+++ 
b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_PaymentProcess.java
     Tue Mar 04 13:42:29 2014 +0100
@@ -384,7 +384,9 @@
                     : "PPM")) >= 
(FIN_Utility.seqnumberpaymentstatus(FIN_Utility
                     .invoicePaymentStatus(payment)));
                 paymentScheduleDetail.setInvoicePaid(false);
-                if (invoicePaidAmounts) {
+                // Payment = 0 when the payment is generated by a invoice that 
consume credit
+                if (invoicePaidAmounts
+                    | (payment.getAmount().compareTo(new BigDecimal("0.00")) 
== 0)) {
                   if (paymentScheduleDetail.getInvoicePaymentSchedule() != 
null) {
                     // BP SO_CreditUsed
                     businessPartner = 
paymentScheduleDetail.getInvoicePaymentSchedule()
diff -r 5ccb08d7767d -r ba0d445a51cf 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_TransactionProcess.java
--- 
a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_TransactionProcess.java
 Tue Mar 04 20:56:47 2014 +0530
+++ 
b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_TransactionProcess.java
 Tue Mar 04 13:42:29 2014 +0100
@@ -110,6 +110,7 @@
                   if (psd.isInvoicePaid()) {
                     FIN_Utility.updatePaymentAmounts(psd);
                   }
+                  OBDal.getInstance().save(psd);
                 }
               }
             }

------------------------------------------------------------------------------
Subversion Kills Productivity. Get off Subversion & Make the Move to Perforce.
With Perforce, you get hassle-free workflows. Merge that actually works. 
Faster operations. Version large binaries.  Built-in WAN optimization and the
freedom to use Git, Perforce or both. Make the move to Perforce.
http://pubads.g.doubleclick.net/gampad/clk?id=122218951&iu=/4140/ostg.clktrk
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to