Openbravo Issue Tracking System - Retail Modules
View Issue Details
0035862Retail ModulesWeb POSpublic2017-04-27 13:262017-06-19 12:59
0035862: When applying more than 2 discounts to the same line the information about them is generated wrongly.
If you apply more than 2 discounts to the same line and finish the transaction, if you go to the ERP and check the information related to them you will see that the values are not correctly generated so the information stored in the database is not correct.
1.- In the ERP go to discounts and promotions and generate (for eg) 4 Discretionary Fixed Amount discounts.
2.- In WebPOS buy something and apply all the discounts to it.
3.- Finish the transaction
4.- Go to the ERP to the Sales order window, select the order and line and check the values in Base Gross Unit Price displayed in discounts and promotions.
The following code seems wrong since it applies twice the discounts due accumulators.

base = line.get('price');
        _.forEach(line.get('promotions') || [], function (discount) {
          var discountAmt = discount.actualAmt || discount.amt || 0;
          discount.basePrice = base;
          discount.unitDiscount = OB.DEC.div(discountAmt, line.get('qtyToApplyDisc') || line.get('qty'));
          totalDiscount = OB.DEC.add(totalDiscount, discountAmt);
          base = OB.DEC.sub(base, totalDiscount);
        }, this);
No tags attached.
blocks defect 0035858pi closed jorge-garcia When applying more than 2 discounts to the same line the information about them is generated wrongly. 
Issue History
2017-04-27 13:45marvintmTypedefect => backport
2017-04-27 13:45marvintmTarget Versionpi => RR17Q1.2
2017-06-14 08:52jorge-garciaAssigned ToRetail => jorge-garcia
2017-06-15 09:51jorge-garciaNote Added: 0097406
2017-06-15 09:51jorge-garciaStatusscheduled => resolved
2017-06-15 09:51jorge-garciaResolutionopen => fixed
2017-06-19 12:59marvintmReview Assigned To => marvintm
2017-06-19 12:59marvintmStatusresolved => closed
2017-06-19 12:59marvintmFixed in Version => RR17Q1.2

2017-06-15 09:51   
Fixed by the changeset [^]