Commit ac99e041 by 徐康

阶梯运费

parent faa278b6
......@@ -3162,7 +3162,7 @@ public class OrderSdkAdapter {
if (StringUtils.isNotBlank(product.getSplitIndex())){
extInfo.setSplitIndex(product.getSplitIndex());
}
if (product.getIsSendGoods()){
if (null != product.getIsSendGoods() && product.getIsSendGoods()){
extInfo.setIsSendGoods(true);
}
extInfo.setStapleFood(product.getStapleFood());
......
......@@ -43,7 +43,7 @@ public class ActivityList {
private String deduct;
//最高扣减金额
private String maxDeduct;
//最高扣减金额
//已减
private String alreadyDecut;
//还差
private String missing;
......
......@@ -89,6 +89,8 @@ public class CalculationServiceImpl {
private ShoppingCartMccafeAdapter shoppingCartMccafeAdapter;
@Autowired
private BuySendCalculation buySendCalculation;
@Autowired
private FreightCalculation freightCalculation;
/**
* 更新购物车行优惠信息
......@@ -123,7 +125,8 @@ public class CalculationServiceImpl {
//买赠
buySendCalculation.updateBuySendActivityTip(calculationDiscount, shoppingCartGoodsResponseVo, cartSendGoodsList);
//运费
freightCalculation.updateBuySendActivityTip(calculationDiscount, shoppingCartGoodsResponseVo);
return calculationDiscount;
}
......
package cn.freemud.service.impl.mcoffee.calculation;
import cn.freemud.entities.dto.ActivityCalculationDiscountResponseDto;
import cn.freemud.entities.vo.ActivityList;
import cn.freemud.entities.vo.ActivityTip;
import cn.freemud.entities.vo.CartGoods;
import cn.freemud.entities.vo.ShoppingCartGoodsResponseVo;
import cn.freemud.enums.ActivityTypeEnum;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
@Service
public class FreightCalculation {
public void updateBuySendActivityTip(ActivityCalculationDiscountResponseDto.CalculationDiscountResult calculationDiscountResult, ShoppingCartGoodsResponseVo shoppingCartGoodsResponseVo) {
if(CollectionUtils.isNotEmpty(calculationDiscountResult.getActivityPrompts())) {
List<ActivityCalculationDiscountResponseDto.CalculationDiscountResult.ActivityPrompt> activityPromptList = calculationDiscountResult.getActivityPrompts().stream().filter(o -> ActivityTypeEnum.TYPE_14.getCode().equals(o.getActivityType())).collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(activityPromptList)) {
ActivityCalculationDiscountResponseDto.CalculationDiscountResult.ActivityPrompt activityPrompt = activityPromptList.get(0);
ActivityTip activityTip = shoppingCartGoodsResponseVo.getActivityTip();
if (activityTip == null) {
activityTip = new ActivityTip();
shoppingCartGoodsResponseVo.setActivityTip(activityTip);
}
if (CollectionUtils.isEmpty(activityTip.getActivityList())) {
activityTip.setActivityList(new ArrayList<ActivityList>());
}
ActivityList activityList = new ActivityList();
activityList.setTipType(activityPrompt.getActivityType());
activityList.setSatisfy(activityPrompt.getThresholdAmount().toString());
activityList.setAlreadyDecut(activityPrompt.getAlreadyDiscountAmount().toString());
activityList.setDeduct(activityPrompt.getAlreadyDiscountAmount().toString());
activityList.setAgianDeduct(String.valueOf(activityPrompt.getDiscountAmout() - activityPrompt.getAlreadyDiscountAmount()));
if(activityPrompt.getThresholdAmount() > activityPrompt.getTotalAmount()) {
activityList.setMissing(String.valueOf(activityPrompt.getThresholdAmount() - activityPrompt.getTotalAmount()));
activityList.setAgainBuy(String.valueOf(activityPrompt.getThresholdAmount() - activityPrompt.getTotalAmount()));
}
activityTip.getActivityList().add(activityList);
}
}
}
}
\ No newline at end of file
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