Commit a716e420 by ping.wu

活动键位编号对接

parent 6f54fa80
...@@ -100,6 +100,7 @@ public class ShoppingCartConvertAdapter { ...@@ -100,6 +100,7 @@ public class ShoppingCartConvertAdapter {
cartGoodsDetailDto.setCategoryName(cartGoods.getCategoryName()); cartGoodsDetailDto.setCategoryName(cartGoods.getCategoryName());
cartGoodsDetailDto.setCouponCode(cartGoods.getCouponCode()); cartGoodsDetailDto.setCouponCode(cartGoods.getCouponCode());
cartGoodsDetailDto.setStockLimit(cartGoods.isStockLimit()); cartGoodsDetailDto.setStockLimit(cartGoods.isStockLimit());
cartGoodsDetailDto.setProductCode(cartGoods.getCustomerCode());
cartGoodsDetailDto.setCustomerCode(cartGoods.getCustomerCode()); cartGoodsDetailDto.setCustomerCode(cartGoods.getCustomerCode());
cartGoodsDetailDto.setWeight(cartGoods.getWeight()); cartGoodsDetailDto.setWeight(cartGoods.getWeight());
cartGoodsDetailDto.setUnit(cartGoods.getUnit()); cartGoodsDetailDto.setUnit(cartGoods.getUnit());
......
...@@ -187,6 +187,11 @@ public class ActivityCalculationDiscountResponseDto { ...@@ -187,6 +187,11 @@ public class ActivityCalculationDiscountResponseDto {
private Integer actualGoodsNumber; private Integer actualGoodsNumber;
private List<GoodsDiscount> discounts; private List<GoodsDiscount> discounts;
/**
* 活动键位编号
*/
private String artNo;
@Data @Data
public static class GoodsDiscount { public static class GoodsDiscount {
......
...@@ -21,4 +21,9 @@ public class ActivityDiscountsDto { ...@@ -21,4 +21,9 @@ public class ActivityDiscountsDto {
private String activityName; private String activityName;
private Integer discountAmount; private Integer discountAmount;
private Integer activityType; private Integer activityType;
/**
* 实际参与活动商品数量
*/
private Integer actualActivityGoodsNumber;
} }
...@@ -20,7 +20,7 @@ public class ShoppingCartGoodsDto { ...@@ -20,7 +20,7 @@ public class ShoppingCartGoodsDto {
/** /**
* 购物车实际选择商品,包含加价购商品 * 购物车实际选择商品,包含加价购商品
*/ */
List<CartGoodsDetailDto> products; private List<CartGoodsDetailDto> products;
/** /**
* 购物车版本号 * 购物车版本号
*/ */
...@@ -68,7 +68,7 @@ public class ShoppingCartGoodsDto { ...@@ -68,7 +68,7 @@ public class ShoppingCartGoodsDto {
/** /**
* 请求计算的商品均摊信息 * 请求计算的商品均摊信息
*/ */
List<ShareDiscountActivityDto> shareDiscountActivityDtos; private List<ShareDiscountActivityDto> shareDiscountActivityDtos;
/** /**
* 第一次使用会员卡需多支付的金额 单位为分 * 第一次使用会员卡需多支付的金额 单位为分
...@@ -203,6 +203,10 @@ public class ShoppingCartGoodsDto { ...@@ -203,6 +203,10 @@ public class ShoppingCartGoodsDto {
*/ */
private boolean isStockLimit; private boolean isStockLimit;
/** /**
* 商品货号
*/
private String productCode;
/**
* 第三方商品编码 * 第三方商品编码
*/ */
private String customerCode; private String customerCode;
......
...@@ -196,6 +196,7 @@ public class CalculationServiceImpl { ...@@ -196,6 +196,7 @@ public class CalculationServiceImpl {
} }
} }
//订单级别券优惠
for (ActivityCalculationDiscountResponseDto.CalculationDiscountResult.CouponResults discount : calculationDiscountResult.getCouponDiscounts()) { for (ActivityCalculationDiscountResponseDto.CalculationDiscountResult.CouponResults discount : calculationDiscountResult.getCouponDiscounts()) {
int discountAmount = (discount.getDiscountAmount() == null) ? 0 : discount.getDiscountAmount(); int discountAmount = (discount.getDiscountAmount() == null) ? 0 : discount.getDiscountAmount();
Integer discountType = discount.getActivityType(); Integer discountType = discount.getActivityType();
......
...@@ -8,6 +8,8 @@ import cn.freemud.entities.vo.CreateOrderVo; ...@@ -8,6 +8,8 @@ import cn.freemud.entities.vo.CreateOrderVo;
import cn.freemud.entities.vo.ShoppingCartGoodsResponseVo; import cn.freemud.entities.vo.ShoppingCartGoodsResponseVo;
import cn.freemud.entities.vo.ShoppingCartInfoRequestVo; import cn.freemud.entities.vo.ShoppingCartInfoRequestVo;
import cn.freemud.enums.ActivityTypeEnum; import cn.freemud.enums.ActivityTypeEnum;
import cn.freemud.enums.ResponseResult;
import cn.freemud.interceptor.ServiceException;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang.ObjectUtils; import org.apache.commons.lang.ObjectUtils;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
...@@ -113,6 +115,10 @@ public class TimeSaleCalculation { ...@@ -113,6 +115,10 @@ public class TimeSaleCalculation {
if ((goods = goodsMap.get(cartGoods.getSkuId())) == null || ObjectUtils.equals(ActivityTypeEnum.TYPE_81.getCode(), cartGoods.getActivityType())) { if ((goods = goodsMap.get(cartGoods.getSkuId())) == null || ObjectUtils.equals(ActivityTypeEnum.TYPE_81.getCode(), cartGoods.getActivityType())) {
continue; continue;
} }
// if(goods.getArtNo() == null){
// throw new ServiceException(ResponseResult.OPERATE_TOO_OFTEN);
// }
// cartGoods.setCustomerCode(goods.getArtNo());
ActivityCalculationDiscountResponseDto.CalculationDiscountResult.Goods.GoodsDiscount goodsDiscount = getGoodsDiscount(goods.getDiscounts(), Arrays.asList(ActivityTypeEnum.TYPE_21.getCode(), ActivityTypeEnum.TYPE_2.getCode())); ActivityCalculationDiscountResponseDto.CalculationDiscountResult.Goods.GoodsDiscount goodsDiscount = getGoodsDiscount(goods.getDiscounts(), Arrays.asList(ActivityTypeEnum.TYPE_21.getCode(), ActivityTypeEnum.TYPE_2.getCode()));
if (goodsDiscount == null) { if (goodsDiscount == null) {
continue; continue;
...@@ -126,6 +132,7 @@ public class TimeSaleCalculation { ...@@ -126,6 +132,7 @@ public class TimeSaleCalculation {
Long totalDiscountAmount = cartGoods.getQty() > actualGoodsNumber ? goods.getDiscountAmount() * actualGoodsNumber / goods.getActualGoodsNumber() : goods.getDiscountAmount() * cartGoods.getQty() / goods.getActualGoodsNumber(); Long totalDiscountAmount = cartGoods.getQty() > actualGoodsNumber ? goods.getDiscountAmount() * actualGoodsNumber / goods.getActualGoodsNumber() : goods.getDiscountAmount() * cartGoods.getQty() / goods.getActualGoodsNumber();
ActivityDiscountsDto activityDiscountsDto = new ActivityDiscountsDto(); ActivityDiscountsDto activityDiscountsDto = new ActivityDiscountsDto();
activityDiscountsDto.setActivityCode(goodsDiscount.getActivityCode()); activityDiscountsDto.setActivityCode(goodsDiscount.getActivityCode());
activityDiscountsDto.setActualActivityGoodsNumber(goodsDiscount.getActualGoodsNumber());
activityDiscountsDto.setActivityName(goodsDiscount.getActivityName()); activityDiscountsDto.setActivityName(goodsDiscount.getActivityName());
activityDiscountsDto.setActivityType(ActivityTypeEnum.TYPE_2.getCode()); activityDiscountsDto.setActivityType(ActivityTypeEnum.TYPE_2.getCode());
activityDiscountsDto.setDiscountAmount(totalDiscountAmount.intValue()); activityDiscountsDto.setDiscountAmount(totalDiscountAmount.intValue());
......
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