Merge remote-tracking branch 'origin/release/2023.01.12' into rlsmerge/2023.01.12-to-develop

This commit is contained in:
Katie 2023-01-09 10:04:17 -05:00
commit 3e9eb27f90
4 changed files with 31 additions and 14 deletions

View file

@ -159,22 +159,15 @@ export default {
return defaultIsInsuranceSelectedValue; return defaultIsInsuranceSelectedValue;
} else { } else {
return availableLineItems return availableLineItems
? baseMixin.methods.getTierOnePackagePrice(availableLineItems) > 500 ? baseMixin.methods.getTierOnePackagePrice(
baseMixin.methods.filterOutFees(availableLineItems)
) > 500
: null; : null;
} }
}, },
vapsItemsSelectedAction(vapsItemsSelected) { vapsItemsSelectedAction(vapsItemsSelected) {
this.selectedVaps = vapsItemsSelected; this.selectedVaps = vapsItemsSelected;
}, },
filterOutFees(currentSupportingItems) {
const filteredSupportingItems = currentSupportingItems.filter((item) => {
return (
!item.partType.includes("FEE") ||
(item.partType === "REPAIR FEE" && item.partNumber != "SUPPLIES-REPAIR")
);
});
return filteredSupportingItems;
},
backButtonAction() { backButtonAction() {
vehicleQuestionsMixin.methods.navigateBack(this); vehicleQuestionsMixin.methods.navigateBack(this);
}, },

View file

@ -165,7 +165,9 @@ export default {
getPackagePrice(packageName) { getPackagePrice(packageName) {
let priceFloat = this.isInsuranceSelected let priceFloat = this.isInsuranceSelected
? 0 ? 0
: baseMixin.methods.getTierOnePackagePrice(this.nullSafeAvailableLineItems); : baseMixin.methods.getTierOnePackagePrice(
baseMixin.methods.filterOutFees(this.nullSafeAvailableLineItems)
);
if (packageName === packageNames.TIER_TWO) { if (packageName === packageNames.TIER_TWO) {
priceFloat += this.getTierTwoPackageVapsPrice(); priceFloat += this.getTierTwoPackageVapsPrice();
} else if (packageName === packageNames.TIER_THREE) { } else if (packageName === packageNames.TIER_THREE) {

View file

@ -77,6 +77,15 @@ export default {
}); });
return totalPrice; return totalPrice;
}, },
filterOutFees(lineItems) {
const filteredLineItems = lineItems.filter((item) => {
return (
!item.partType.includes("FEE") ||
(item.partType === "REPAIR FEE" && item.partNumber != "SUPPLIES-REPAIR")
);
});
return filteredLineItems;
},
getTotalLineItemPrice(lineItem) { getTotalLineItemPrice(lineItem) {
return lineItem.kitPrice + lineItem.laborAmount + lineItem.sellingPrice; return lineItem.kitPrice + lineItem.laborAmount + lineItem.sellingPrice;
}, },

View file

@ -1407,9 +1407,8 @@ export const actions = {
}, },
// Price order actions // Price order actions
async priceOrderItems(context, availableLineItems) { async priceOrderItems(context, availableLineItems) {
const availableLineItemsFormattedForRequest = availableLineItems const availableLineItemsFormattedForRequest =
.map((lineItem) => `&LineItems=${lineItem.partNumber}`) getLineItemQueryStringForPricing(availableLineItems);
.join("");
const vehicle = context.getters.order.vehicle; const vehicle = context.getters.order.vehicle;
let queryString = let queryString =
`ParentAccountNumber=${applicationConfig.CASH_ACCOUNT_NUMBER}` + `ParentAccountNumber=${applicationConfig.CASH_ACCOUNT_NUMBER}` +
@ -1589,6 +1588,9 @@ function addPricesToLineItems(lineItems, pricingLineItems) {
let lineItemIndex = pricingLineItems.findIndex( let lineItemIndex = pricingLineItems.findIndex(
(pricingLineItem) => pricingLineItem.partNumber === lineItem.partNumber (pricingLineItem) => pricingLineItem.partNumber === lineItem.partNumber
); );
if (lineItem.childParts) {
addPricesToLineItems(lineItem.childParts, pricingLineItems);
}
let pricedLineItem = pricingLineItems.splice(lineItemIndex, 1)[0]; let pricedLineItem = pricingLineItems.splice(lineItemIndex, 1)[0];
lineItem.laborAmount = pricedLineItem.laborAmount; lineItem.laborAmount = pricedLineItem.laborAmount;
lineItem.sellingPrice = pricedLineItem.sellingPrice; lineItem.sellingPrice = pricedLineItem.sellingPrice;
@ -1596,3 +1598,14 @@ function addPricesToLineItems(lineItems, pricingLineItems) {
}); });
return lineItems; return lineItems;
} }
function getLineItemQueryStringForPricing(lineItems) {
return lineItems
.map((lineItem) => {
let queryStringSnippet = `&LineItems=${lineItem.partNumber}`;
if (lineItem.childParts) {
queryStringSnippet += getLineItemQueryStringForPricing(lineItem.childParts);
}
return queryStringSnippet;
})
.join("");
}