Friday, April 07, 2006

OFBiz Development SVN r7236

85 new commits this week. SVN r 7235 builds and installs successfully.

Significant changes this week:
  1. New implementation of gift certificates and financial accounts which allows gift certificates to be configured at the store level, purchased, authorized, and captured and refunded. The interface is similar to credit card payment gateway interfaces and plugs into the gift card at checkout.
  2. Many improvements to the screens in accounting manager.
Accounting
  • Added security and status checking to the service for removing payment application (r 7156)
  • A new UtilAccounting.addFirstEntryAmount method for adding the first entry of a list to a big decimal (r 7157)
  • New services and helper methods for creating fin accounts with codes based on store settings, getting balances and available balances, authorizing fin accounts, expiring authorizations, etc. (r 7158, 7163, 7164)
  • Refactored the createInvoicesFromShipment services into two services: createInvoicesFromShipment and createInvoicesFromShipments; the first service simply calls the second passing a List containing one shipmentId; the second one can be used to create 'summary' invoices (i.e. an invoice that can contain order items shipped in different shipments) (r 7175)
  • In the view invoice PDF, the (sales) shipment id (if available), used to ship the items to the customer, is now printed before the invoice items. Also, if the invoice item is of type SALES_TAX, if the description of the TaxAuthorityRate applied is available, it is shown under the description column. (r 7176)
  • Added messages to inform the user when a payment is applied to an invoice (r 7178)
  • Reorganized removePaymentApplication service: a number of errors solved and messages added (localization to be added later) (r 7179)
  • changed forms to add an payment application manually: did not work and invoice item/checkbox was still shown if parameters set to 'N' (r 7180)
  • Changed some styles on readonly fields of invoice forms (r 7181)
  • When an invoice is canceled, payment applications are automatically removed. (r 7165, 7182)
  • Payment applications screen will no longer list invoices with the status in_process (r 7183)
  • Updated the create and purchase gift certificate services to use ProducStoreFinActSetting and the new createFinAccountForStore service (r 7194, 7206)
  • Added a number of uilabelmap fields and message to the amount to apply in payment forms (r 7196)
  • Modified the code that computes the balance of a billing account to take into account also the payments applied to the invoices. (r 7201)
  • New gl account type for customer gift certificate balances (r 7205)
  • Re-factored .getBalance method in GiftCertificateServices to use BigDecimal FinAccountHelper available balance methods (r 7210)
  • New gift card (fin account) authorization service which uses the FinAccountAuth entity (r 7210)
  • Changed Gift Certificate release service to expire the related FinAccountAuth, instead of refunding the account (r 7219)
  • Capture payment service now checks the actual capture service to see if it uses captureAmount or processAmount and uses the right field when calling it (r 7220)
  • Gift card capture service now uses an authorization, rather than directly withdrawing balance from account (r 7221, 7222)
  • Added currencies to invoice and payment screens and made sure they fit and not overflow (r 7225)
  • Fixed all the invoice and payment lookup links on the main accounting page. (r 7226)
  • Fixed party ids which are reversed on payment overview screen (r 7227)
  • Put currency in for customer refund payments. Changed manual transaction service to lookup default currency from general.properties instead of always using USD (r 7233)
  • Update to Gift Cart processor and authorize to check for existance/expiration of gift cards. (r 7236)
Base and Framework
  • Catalina container now allows linking for webapps deployed in catalina (r 7208)
  • Added read text file method to FileUtil (r 7216, 7217)
Content
  • Changed base permission required for content manager from NONE to CONTENTMGR (r 7184)
  • processSurveyResponseInline no longer requires a login, fixing an error in adding gift certificates to shopping cart. (r 7209)
Entity Model
  • Added SalesOpportunityQuote entity to relate opportunities to quotes. (r 7162)
  • Product.fixedAmount field to describe product items with a fixed amount value, such as a gift certificate (r 7177)
  • Added the field "taxAuthorityRateSeqId" to the OrderAdjustment, ReturnAdjustment and InvoiceItem entity to maintain a reference back to the TaxAuthorityRate that created the OrderAdjustment (and possibly ReturnAdjustment and InvoiceItem); the mods to the existing services to propagate this value are also in this commit (r 7175)
  • Added new entities FinAccountAuth for fin account authorizations and two view-entities for summing up fin account balances and authorizations (r 7154, 7161, 7187, 7186)
  • A new ProductStoreFinActSetting for configuring store-level fin account (gift certificate) settings (r 7155, 7191)
  • Changed InventoryItem.unitCost and CostComponent.cost to floating-point for higher precision in the database (r 7234)
Manufacturing
  • Removed reference to data/WorkEffortData.xml that has been removed. (r 7152)
Order
  • Applied some new i18n patch (r 7168, 7169, 7171)
  • Removed a '$' character which was mistakenly committed into ship settings page of order checkout (r 7174)
  • When fulfilling digital items, will check parent item's ProductContent for fulfillment service if item does not have them defined and item itself is a variant (r 7189)
  • Removed CheckOutHelper code that was formatting a double into a string (using the format defined in the general.properties file) and then was parsing it back to a double (r 7200)
  • New ui label for Gift Card (r 7211)
  • Made sure that order items which are completed do not show up with postive quantity outstanding on the order view screen (r 7229)
  • Fixed bug in creating return items where sometimes the prices being equal causes an error. (r 7230)
  • Return PDF checks if the various fields for addresses are null or not (r 7231)
  • Got rid of some extraneous debugging messages in processRefundReturn (r 7232)
Party
  • Applied some new i18n patch (r 7168, 7169, 7171)
  • Replaces field-to-field with set to avoid possible typecast errors in user and customer event minilang methods (r 7228)
Point Of Sales
  • Two more buttons to the standard pos screen, one being "DEL" and the other "-". (r 7207)
  • StarTSP600Cutter now in the jpos.xml devices file (r 7207)
  • Added POS styles and UI labels in Chinese (r 7212, 7215)
Product
  • Fixed possible NPE when storeName is null in the find store page of catalog manager (r 7166)
  • Fixed error when creating an order for any product that does not already have a value in the entity InventoryItem, and the user login is not allowed to do this, a 'no permission' error was returned; this could happen when creating orders from the ecommerce site. Now the "system" user is used. (r 7167)
  • Some misc html cleanups. (r 7173)
  • Fixed typo in catalog manager's keyword search (r 7202)
Seed Data
  • Allow invoice status change from send/received to cancelled (r 7153)
  • Sample configuration of a store for gift certificate settings (r 7159, 7192)
  • New payment types for adding and withdrawing value to gift certificates (r 7193)
  • New gl account types for raw materials and work in progress inventory (r 7203)
  • Updated demo gift certificate store settings file to use pin code for gift certificates still, and reference gift certificate processors for gift cards (r 7218)
eCommerce
  • Applied some new i18n patch (r 7168, 7169, 7171)
  • Check against possible null values of sender and recipient name in the gift card notification email (r 7190)