Author: jleroux
Date: Thu Nov 29 13:09:53 2018
New Revision: 1847715
URL: http://svn.apache.org/viewvc?rev=1847715&view=rev
Log:
Fixed: Tax not added for order shipping or promotion
(OFBIZ-4160)
Removes AccountingTaxAuthorityCategoryAdvice and usage, now useless
Fixes possible "BigInteger divide by zero" in rateProductTaxCalc
Modified:
ofbiz/ofbiz-framework/trunk/applications/accounting/config/AccountingUiLabels.xml
ofbiz/ofbiz-framework/trunk/applications/accounting/src/main/java/org/apache/ofbiz/accounting/tax/TaxAuthorityServices.java
ofbiz/ofbiz-framework/trunk/applications/accounting/widget/TaxAuthorityScreens.xml
Modified:
ofbiz/ofbiz-framework/trunk/applications/accounting/config/AccountingUiLabels.xml
URL:
http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/applications/accounting/config/AccountingUiLabels.xml?rev=1847715&r1=1847714&r2=1847715&view=diff
==============================================================================
---
ofbiz/ofbiz-framework/trunk/applications/accounting/config/AccountingUiLabels.xml
(original)
+++
ofbiz/ofbiz-framework/trunk/applications/accounting/config/AccountingUiLabels.xml
Thu Nov 29 13:09:53 2018
@@ -14811,16 +14811,6 @@
<value xml:lang="zh">ç¨å¡æºå
³</value>
<value xml:lang="zh-TW">ç¨
åæ©é</value>
</property>
- <property key="AccountingTaxAuthorityCategoryAdvice">
- <value xml:lang="ar">Ø£ÙØªØ¨Ù: ÙØ§ تستخدÙ
Ø£ÙØ«Ø± Ù
Ù
سطر ÙØ§ØØ¯ ÙÙ "Ø´ØÙ Ø§ÙØ¶Ø±Ø§Ø¦Ø¨" Ù/Ø£Ù "Ø¹Ø±ÙØ¶ Ø§ÙØ¶Ø±Ø§Ø¦Ø¨"
باÙÙÙÙ
ة = "ص"</value>
- <value xml:lang="de">Achtung: verwenden Sie nicht mehr als eine Zeile
mit "Steuer Lieferung" und/oder "Steuer Promotions" Wert = "Y"</value>
- <value xml:lang="en">Beware: don't use more than one line with "Tax
Shipping" and/or "Tax Promotions" value = "Y"</value>
- <value xml:lang="fr">Attention: n'utilisez pas plus d'une ligne avec
"Taxes sur livraison" et/ou "Taxes sur promotions" = "Y"</value>
- <value xml:lang="ja">注æ:
"çºéç¨"ããã³/ã¾ãã¯"ããã¢ã¼ã·ã§ã³ç¨"ã«å¤="Y"ã®è¡ãè¤æ°ä½¿ç¨ããªãã§ãã
ãã</value>
- <value xml:lang="vi">Lưu ý: bạn không sá» dụng nhiá»u hÆ¡n
má»t dòng vá»i "Thuế chuyá»n hà ng" và /hoặc "Thuế khuyến mãi giá
trá»"= "Y"</value>
- <value
xml:lang="zh">注æï¼"èªè¿ç¨"ä¸è½å¤äºä¸è¡ï¼ä¸/æ"ä¸å¡æ¨å¹¿ç¨"çå¼
= "Y"</value>
- <value xml:lang="zh-TW">注æ:"èªéç¨
"ä¸è½å¤æ¼ä¸è¡,ä¸/æ"æ¥åæ¨å»£ç¨
"çå¼ = "Y"</value>
- </property>
<property key="AccountingTaxAuthorityGeo">
<value xml:lang="ar">جÙÙØºØ±Ø§ÙÙØ© Ù
ØµÙØØ©
Ø§ÙØ¶Ø±Ø§Ø¦Ø¨</value>
<value xml:lang="de">Steuerbehörde Geo</value>
Modified:
ofbiz/ofbiz-framework/trunk/applications/accounting/src/main/java/org/apache/ofbiz/accounting/tax/TaxAuthorityServices.java
URL:
http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/applications/accounting/src/main/java/org/apache/ofbiz/accounting/tax/TaxAuthorityServices.java?rev=1847715&r1=1847714&r2=1847715&view=diff
==============================================================================
---
ofbiz/ofbiz-framework/trunk/applications/accounting/src/main/java/org/apache/ofbiz/accounting/tax/TaxAuthorityServices.java
(original)
+++
ofbiz/ofbiz-framework/trunk/applications/accounting/src/main/java/org/apache/ofbiz/accounting/tax/TaxAuthorityServices.java
Thu Nov 29 13:09:53 2018
@@ -248,7 +248,7 @@ public class TaxAuthorityServices {
BigDecimal totalPrice = ZERO_BASE;
Map<GenericValue,BigDecimal> productWeight = new HashMap<>();
// Loop through the products; get the taxCategory; and lookup each in
the cache.
- for (int i = 0; i < itemProductList.size(); i++) {
+ for (int i = 0; i < itemProductList.size(); i++) {
GenericValue product = itemProductList.get(i);
BigDecimal itemAmount = itemAmountList.get(i);
BigDecimal itemPrice = itemPriceList.get(i);
@@ -272,8 +272,10 @@ public class TaxAuthorityServices {
// converts the totals of the products into percent weights
for (GenericValue prod : productWeight.keySet()) {
BigDecimal value = productWeight.get(prod);
- BigDecimal weight = value.divide(totalPrice, 100,
salestaxRounding);
- productWeight.put(prod, weight);
+ if (totalPrice.compareTo(BigDecimal.ZERO) > 0) {
+ BigDecimal weight = value.divide(totalPrice, 100,
salestaxRounding);
+ productWeight.put(prod, weight);
+ }
}
if (orderShippingAmount != null &&
orderShippingAmount.compareTo(BigDecimal.ZERO) > 0) {
@@ -391,8 +393,6 @@ public class TaxAuthorityServices {
EntityCondition productCategoryCond;
productCategoryCond = setProductCategoryCond(delegator, product);
- // FIXME handles shipping and promo tax. Simple solution, see
- // https://issues.apache.org/jira/browse/OFBIZ-4160 for a better
one
if (product == null && shippingAmount != null) {
EntityCondition taxShippingCond =
EntityCondition.makeCondition(
EntityCondition.makeCondition("taxShipping",
EntityOperator.EQUALS, null),
Modified:
ofbiz/ofbiz-framework/trunk/applications/accounting/widget/TaxAuthorityScreens.xml
URL:
http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/applications/accounting/widget/TaxAuthorityScreens.xml?rev=1847715&r1=1847714&r2=1847715&view=diff
==============================================================================
---
ofbiz/ofbiz-framework/trunk/applications/accounting/widget/TaxAuthorityScreens.xml
(original)
+++
ofbiz/ofbiz-framework/trunk/applications/accounting/widget/TaxAuthorityScreens.xml
Thu Nov 29 13:09:53 2018
@@ -193,10 +193,8 @@ under the License.
<decorator-screen name="CommonTaxAuthorityDecorator"
location="${parameters.taxAuthDecoratorLocation}">
<decorator-section name="body">
<screenlet id="TaxAuthorityCategoryPanel"
title="${uiLabelMap.PageTitleAddTaxAuthorityCategory}" collapsible="true">
- <label
style="h3">${uiLabelMap.AccountingTaxAuthorityCategoryAdvice}</label>
<include-form name="AddTaxAuthorityRateProduct"
location="component://accounting/widget/TaxAuthorityForms.xml"/>
</screenlet>
- <label
style="h3">${uiLabelMap.AccountingTaxAuthorityCategoryAdvice}</label>
<include-form name="ListTaxAuthorityRateProducts"
location="component://accounting/widget/TaxAuthorityForms.xml"/>
</decorator-section>
</decorator-screen>