Commit 4a4298ef by xiaoer.li@freemud.com

Merge remote-tracking branch 'remotes/origin/feature/促销算价基于最新master的分支' into qa

parents 501dd3d4 22f96c3d
......@@ -99,12 +99,6 @@ public class CalculationSharingCartService {
/**
* 可选搭配的价格累加到套餐的成交价上
* this.combineGroupRowAmount(cartGoodsList);
*/
/**
* 特价类型超出部分提示
*/
calculationCommonService.drawSurpassDiscountInfo(discountResult, shoppingCartGoodsResponseVo);
......@@ -116,92 +110,4 @@ public class CalculationSharingCartService {
}
}
/**
* 初始化价格
*/
private void initShoppingCart(CalculationSharingDiscountResponseDto.CalculationDiscountResult discountResult
, List<CartGoods> cartGoodsList
, ShoppingCartGoodsResponseVo shoppingCartGoodsResponseVo) {
/**
* 使用促销算价赋值行记录
*/
List<CalculationSharingDiscountResponseDto.CalculationDiscountResult.Goods> goods = discountResult.getGoods();
long totalOriginalAmount = 0L,totalAmount = 0L,totalPackageAmount = 0L;
long originalAmount = 0L,amount = 0L,packageAmount =0L;
for (CartGoods cartGoods : cartGoodsList) {
originalAmount = 0L;
amount = 0L;
packageAmount =0L;
CalculationSharingDiscountResponseDto.CalculationDiscountResult.Goods find = goods.stream().filter((k) -> k.getCartGoodsUid().equals(cartGoods.getCartGoodsUid())).findFirst().get();
if (find==null) continue;
//成交价行记录
amount += find.getRealAmount()*cartGoods.getQty();
cartGoods.setAmount(amount);
totalAmount += amount;
//原价行记录
originalAmount = cartGoods.getOriginalPrice() * cartGoods.getQty();
cartGoods.setOriginalAmount(originalAmount);
totalOriginalAmount += originalAmount;
//包装费行记录
packageAmount = cartGoods.getPackPrice() * cartGoods.getQty();
cartGoods.setPackPrice(packageAmount);
totalPackageAmount += packageAmount;
}
shoppingCartGoodsResponseVo.setOriginalTotalAmount(discountResult == null ? totalOriginalAmount : discountResult.getOriginalTotalAmount());
shoppingCartGoodsResponseVo.setTotalAmount(discountResult == null ? totalAmount : discountResult.getTotalAmount());
shoppingCartGoodsResponseVo.setNewPackAmount(totalPackageAmount);
shoppingCartGoodsResponseVo.setTotalDiscountAmount(discountResult == null ? 0L : discountResult.getTotalDiscountAmount());
}
/**
* 套餐\可选搭配\小料成交价
* productGroupList->可选搭配
* productComboList->固定套餐搭配
*/
public void buildCombination(CalculationSharingDiscountResponseDto.CalculationDiscountResult.Goods goods, CartGoods cartGoods) {
/*小料
if (cartGoods.getProductMaterialList().size()>0 && goods.getSmallMaterial().size()>0) {
for (CartGoods.MaterialGoods mg : cartGoods.getProductMaterialList()) {
for (CalculationSharingDiscountResponseDto.CalculationDiscountResult.Goods.SmallMaterial mt : goods.getSmallMaterial()) {
if (1==mt.getType() && mg.getSpuId().equals(mt.getGoodsId())) {
mg.setAmount(mt.getRealAmount().longValue());
break;
}
}
}
}
*/
// 将可选搭配的价格还原到主行记录
if (cartGoods.getProductGroupList().size()>0 && goods.getSmallMaterial().size()>0) {
long a = 0L;
for (CartGoods.ComboxGoods comBox : cartGoods.getProductGroupList()) {
for (CalculationSharingDiscountResponseDto.CalculationDiscountResult.Goods.SmallMaterial mt : goods.getSmallMaterial()) {
if (2==mt.getType() && comBox.getGoodsId().equals(mt.getGoodsId())) {
//mt
}
}
}
}
}
/**
* 可选搭配的成交价合并到主商品上
* @param cartGoodsList
*/
private void combineGroupRowAmount(List<CartGoods> cartGoodsList) {
if (CollectionUtils.isEmpty(cartGoodsList)) return;
for (CartGoods cartGoods : cartGoodsList) {
long row = 0L;
if (CollectionUtils.isEmpty(cartGoods.getProductGroupList())) continue;
for (CartGoods.ComboxGoods com : cartGoods.getProductGroupList()) {
row += com.getAmount() * com.getQty();
}
cartGoods.setAmount(cartGoods.getAmount()+row);
}
}
}
......@@ -136,7 +136,7 @@ public class GiftSharingService {
cartGood.setSkuId(goods.getGoodsId());
cartGood.setOriginalPrice(product.getFinalPrice());
cartGood.setPackPrice(product.getPackPrice());
cartGood.setOriginalAmount(goods.getOriginalPrice());
cartGood.setOriginalAmount(goods.getOriginalPrice() * goods.getGoodsQuantity());
cartGood.setAmount(goods.getRealAmount());
cartGood.setName(product.getName());
cartGood.setSpuName(product.getName());
......@@ -218,7 +218,7 @@ public class GiftSharingService {
cartGoodsDetailDto.setActivityDiscountsDtos(new ArrayList<>());
cartGoodsDetailDto.setClassificationId(product.getCategory());
cartGoodsDetailDto.setClassificationName(product.getCategoryName());
cartGoodsDetailDto.setOriginalPrice(product.getOriginalPrice());
cartGoodsDetailDto.setOriginalPrice(product.getOriginalPrice() * goods.getGoodsQuantity());
cartGoodsDetailDto.setTotalDiscountAmount(goods.getDiscountAmount().intValue());
List<ActivityDiscountsDto> activityDto = new ArrayList<>();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment