[EMAIL PROTECTED] wrote: > Modified: > ofbiz/trunk/applications/accounting/src/org/ofbiz/accounting/invoice/InvoiceServices.java > URL: > http://svn.apache.org/viewvc/ofbiz/trunk/applications/accounting/src/org/ofbiz/accounting/invoice/InvoiceServices.java?rev=714185&r1=714184&r2=714185&view=diff > ============================================================================== > --- > ofbiz/trunk/applications/accounting/src/org/ofbiz/accounting/invoice/InvoiceServices.java > (original) > +++ > ofbiz/trunk/applications/accounting/src/org/ofbiz/accounting/invoice/InvoiceServices.java > Fri Nov 14 15:10:13 2008 > @@ -774,19 +774,17 @@ > currentPayments.addAll(payments); > } > if (currentPayments.size() > 0) { > - // apply these payments to the invoice; only if they haven't > already been applied > + // apply these payments to the invoice if they have any > remaining amount to apply > Iterator cpi = currentPayments.iterator(); > while (cpi.hasNext()) { > GenericValue payment = (GenericValue) cpi.next(); > - List currentApplications = null; > - currentApplications = > payment.getRelated("PaymentApplication"); > - if (currentApplications == null || > currentApplications.size() == 0) { > - // no applications; okay to apply > + BigDecimal notApplied = > PaymentWorker.getPaymentNotAppliedBd(payment); > + if (notApplied.signum() > 0) { > Map appl = new HashMap(); > appl.put("paymentId", payment.get("paymentId")); > appl.put("invoiceId", invoiceId); > appl.put("billingAccountId", billingAccountId); > - appl.put("amountApplied", payment.get("amount")); > + appl.put("amountApplied", new > Double(notApplied.doubleValue()));
Haven't mentioned this 'til now, but let's not use new Number() going foward; the pattern should be Number.valueOf. Keeping the new HashMap for now is fine. I'm just saying if new code is added, use java 1.5 features for it. ps: I have patches that fix new Number, convert all collections to javolution, etc, just haven't applied them, while I wait for the product generification to settle.
