Commit e1d46985 by 刘鹏飞

Merge remote-tracking branch 'origin/feature/materia-刘鹏飞'

# Conflicts:
#	shopping-cart-application-service/src/main/java/cn/freemud/enums/ResponseResult.java
parents cf7cbe57 4e680a7a
......@@ -381,18 +381,19 @@ public class ShoppingCartAdapter {
ProductBeanDTO.ProductGroupType.GroupDetailType detail = materialHash.get(materialGoods.getSpuId());
if (detail == null) continue;
CartGoods.MaterialGoods material = new CartGoods.MaterialGoods();
material.setQty(materialGoods.getQty());
material.setSpuName(detail.getProductName());
material.setSpuId(detail.getProductId());
//行单价 \ 行总价
material.setFinalPrice(detail.getProductFinalPrice().longValue());
material.setAmount(detail.getProductFinalPrice().longValue() * cartGoods.getQty());
material.setAmount(detail.getProductFinalPrice().longValue() * materialGoods.getQty() * cartGoods.getQty());
//原行单价*数量
material.setOriginalAmount(detail.getProductFinalPrice().longValue() * cartGoods.getQty());
material.setOriginalAmount(detail.getProductFinalPrice().longValue() * materialGoods.getQty() * cartGoods.getQty());
material.setOriginalPrice(detail.getProductFinalPrice().longValue());
material.setCustomerCode(detail.getCustomerCode());
materialGoodsList.add(material);
materialAmount += detail.getProductFinalPrice().longValue() * cartGoods.getQty();
originalMaterAmount += detail.getProductFinalPrice().longValue() * cartGoods.getQty();
materialAmount += detail.getProductFinalPrice().longValue() * materialGoods.getQty() * cartGoods.getQty();
originalMaterAmount += detail.getProductFinalPrice().longValue() * materialGoods.getQty() * cartGoods.getQty();
;
materialSubName = materialSubName + "/" + detail.getProductName();
}
......
......@@ -451,5 +451,10 @@ public class CartGoods {
* 麦咖啡入机键位
*/
private String customerCode;
/**
* 数量
*/
private Integer qty;
}
}
......@@ -144,7 +144,7 @@ public class ShoppingCartConvertAdapter {
goods.setSalePrice(materialGoods.getFinalPrice());
goods.setCustomerCode(materialGoods.getCustomerCode());
goods.setProductCode(materialGoods.getCustomerCode());
goods.setQty(cartGoods.getQty());
goods.setQty(materialGoods.getQty());
goods.setTotalDiscountAmount(0);
materialList.add(goods);
}
......@@ -454,6 +454,7 @@ public class ShoppingCartConvertAdapter {
for (MaterialRequestVo materialRequestVo : addShoppingCartGoodsRequestVo.getProductMaterialList()) {
CartGoods.MaterialGoods materialGoods = new CartGoods.MaterialGoods();
materialGoods.setSpuId(materialRequestVo.getSpuId());
materialGoods.setQty(materialRequestVo.getQty() == null ? 1 : materialRequestVo.getQty());
materialGoodsList.add(materialGoods);
}
}
......
......@@ -123,6 +123,16 @@ public class GetMenuResponseDto {
private String category;
private String categoryName;
private String companyId;
/**
* 加料最大限购
*/
private Integer maxNum;
/**
* 加料最小限购
*/
private Integer minNum;
private String customerCode;
/**
* 最终价格 单位分
......@@ -163,7 +173,10 @@ public class GetMenuResponseDto {
* 是否是称重商品 1、表示为称重
*/
private Integer weightType;
/**
* 重量,最多四位小数,单位kg
*/
private Double weight;
private String unit;
private int updateStatus;
private boolean valid;
......
......@@ -274,6 +274,7 @@ public class CartGoods {
* 属性名
*/
private String attributeName;
}
@Data
......@@ -457,7 +458,8 @@ public class CartGoods {
}
}
if (CollectionUtils.isNotEmpty(productMaterialList)) {
productMaterialList.stream().sorted(Comparator.comparing(MaterialGoods::getSpuId)).forEach(e -> originalString.append(e.getSpuId()));
// 小料的数量也要比较
productMaterialList.stream().sorted(Comparator.comparing(MaterialGoods::getSpuId)).forEach(e -> {originalString.append(e.getSpuId());originalString.append(e.getQty());});
}
if (CollectionUtils.isNotEmpty(specialExtra)) {
specialExtra.stream().sorted(Comparator.comparing(SpecialExtra::getAttributeId)).forEach(e -> originalString.append(e.getAttributeId()));
......@@ -493,7 +495,7 @@ public class CartGoods {
}
}
if (CollectionUtils.isNotEmpty(cartGoods.getProductMaterialList())) {
cartGoods.getProductMaterialList().stream().sorted(Comparator.comparing(MaterialGoods::getSpuId)).forEach(e -> currentString.append(e.getSpuId()));
cartGoods.getProductMaterialList().stream().sorted(Comparator.comparing(MaterialGoods::getSpuId)).forEach(e -> {currentString.append(e.getSpuId());currentString.append(e.getQty());});
}
if (CollectionUtils.isNotEmpty(cartGoods.getSpecialExtra())) {
cartGoods.getSpecialExtra().stream().sorted(Comparator.comparing(SpecialExtra::getAttributeId)).forEach(e -> currentString.append(e.getAttributeId()));
......@@ -576,5 +578,10 @@ public class CartGoods {
* 麦咖啡入机键位
*/
private String customerCode;
/**
* 数量
*/
private Integer qty;
}
}
......@@ -26,6 +26,11 @@ public class MaterialRequestVo {
private String groupId;
/**
* 数量
*/
private Integer qty;
/**
* 麦咖啡入机键位
*/
private String customerCode;
......
......@@ -103,6 +103,7 @@ public enum ResponseResult {
SHOPPING_CART_COUPON_MIX_NOT_EXIST("44034", "券商品不存在"),
SHOPPING_CART_QTY_LIMIT_ERR("44035", "该商品单次购买数量限制为10,请知晓"),
SHOPPING_CART_SEED_COUPON_VALID("44037","券商品数量不可大于券数量"),
SHOPPING_CART_MATERIA_QTY_LIMIT_ERR("44038", "商品加料超过最大限制"),
/**
* 订单状态码
......
......@@ -2,30 +2,36 @@ package cn.freemud.service.impl;
import ch.qos.logback.classic.Level;
import cn.freemud.base.entity.BaseResponse;
import cn.freemud.constant.ResponseCodeConstant;
import cn.freemud.entities.dto.GetProductInfoDto;
import cn.freemud.entities.dto.ProductInfosDto;
import cn.freemud.entities.vo.CartGoods;
import cn.freemud.entities.vo.ShoppingCartGoodsBaseResponseVo;
import cn.freemud.enums.ResponseResult;
import cn.freemud.interceptor.ServiceException;
import cn.freemud.utils.LogUtil;
import com.alibaba.fastjson.JSON;
import cn.freemud.service.thirdparty.StoreItemClient;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.freemud.application.sdk.api.base.SDKCommonBaseContextWare;
import com.freemud.application.sdk.api.constant.ResponseResultEnum;
import com.freemud.application.sdk.api.log.ApiLog;
import com.freemud.application.sdk.api.log.ErrorLog;
import com.freemud.application.sdk.api.log.LogThreadLocal;
import com.freemud.application.sdk.api.productcenter.domain.ProductBeanDTO;
import com.freemud.sdk.api.assortment.shoppingcart.constant.CommonsConstant;
import com.freemud.sdk.api.assortment.shoppingcart.enums.BusinessTypeEnum;
import com.freemud.sdk.api.assortment.shoppingcart.request.CheckCartRequest;
import com.freemud.sdk.api.assortment.shoppingcart.request.GetProductInfoRequest;
import com.freemud.sdk.api.assortment.shoppingcart.service.ShoppingCartBaseService;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import cn.freemud.entities.dto.GetMenuResponseDto.DataBean.RootNodeBean.ChildrenBeanFirst.ChildrenBeanSecond.ProductBean;
import javax.naming.Name;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
/**
* All rights Reserved, Designed By www.freemud.cn
......@@ -42,6 +48,9 @@ import java.util.List;
@Service
public class AssortmentSdkService {
@Autowired
private StoreItemClient storeItemClient;
/**
* 调用聚合sdk获取单个商品行信息
*
......@@ -245,6 +254,35 @@ public class AssortmentSdkService {
}
/**
* 调用获取商品详情
*
* @param partnerId
* @param storeId
* @param goodsIds
* @return
*/
public List<ProductBean> getProductsInfo(String partnerId, String storeId, List<String> goodsIds, String menuType, ShoppingCartBaseService shoppingCartService) {
//移除空的goodsId及spq的商品券
goodsIds = goodsIds.parallelStream().filter(StringUtils::isNotEmpty).filter(goodsId -> !goodsId.startsWith(CommonsConstant.COUPON_PREFIX)).collect(Collectors.toList());
GetProductInfoDto getProductInfoDto = new GetProductInfoDto();
getProductInfoDto.setPartnerId(partnerId);
getProductInfoDto.setShopId(storeId);
getProductInfoDto.setProductInfoType(2);
getProductInfoDto.setProductIds(goodsIds);
getProductInfoDto.setChannel(BusinessTypeEnum.getByType(menuType).getCode());
ProductInfosDto productInfosDto = storeItemClient.listProductInfos(getProductInfoDto);
if (!ResponseCodeConstant.RESPONSE_SUCCESS.equals(productInfosDto.getErrcode()) || CollectionUtils.isEmpty(productInfosDto.getData().getProducts())) {
ApiLog.info("查询商品信息失败,getProductInfoDto,baseResponse",getProductInfoDto,productInfosDto);
return null;
}
return productInfosDto.getData().getProducts();
}
/**
* 组装CartParamDto信息
*
* @param partnerId
......
......@@ -650,8 +650,8 @@ public class CouponServiceImpl implements CouponService {
// todo :小料价格累加到主商品上
if (CollectionUtils.isNotEmpty(cartGood.getProductMaterialList())) {
for (CartGoods.MaterialGoods materialGoods : cartGood.getProductMaterialList()) {
product.setAmount(product.getAmount() + Integer.valueOf(materialGoods.getOriginalPrice() + ""));
totalAmount = totalAmount + materialGoods.getOriginalPrice() * cartGood.getQty();
product.setAmount(product.getAmount() + Integer.valueOf(materialGoods.getOriginalPrice() * materialGoods.getQty() * cartGood.getQty() + ""));
totalAmount = totalAmount + materialGoods.getOriginalPrice() * materialGoods.getQty() * cartGood.getQty();
}
}
// 数量
......
......@@ -58,8 +58,11 @@ public class MaterialPromotionService implements IPromotionService {
for (CartGoods.MaterialGoods materialGoods : cartGoods.getProductMaterialList()) {
//materialAmount += materialGoods.getFinalPrice()*cartGoods.getQty();
//materialOriginal += materialGoods.getOriginalPrice() * cartGoods.getQty();
materialGoods.setAmount(materialGoods.getFinalPrice() * cartGoods.getQty());
materialGoods.setOriginalAmount(materialGoods.getOriginalPrice() * cartGoods.getQty());
materialGoods.setQty(materialGoods.getQty() * cartGoods.getQty());
materialGoods.setAmount(materialGoods.getFinalPrice() * materialGoods.getQty());
materialGoods.setOriginalAmount(materialGoods.getOriginalPrice() * materialGoods.getQty());
}
//设置商品行现总价\行原价 商品总价+小料商品总价
//cartGoods.setAmount(cartGoods.getAmount() + materialAmount);
......@@ -117,7 +120,7 @@ public class MaterialPromotionService implements IPromotionService {
if (CollectionUtils.isEmpty(product.getMaterialList())) continue;
for (ShoppingCartGoodsDto.CartGoodsDetailDto.MaterialGoods materialGoods : product.getMaterialList()) {
product.setSalePrice(product.getSalePrice() + materialGoods.getSalePrice());//现金
product.setOriginalPrice(product.getOriginalPrice() + materialGoods.getOriginalPrice());
product.setOriginalPrice(product.getOriginalPrice() + materialGoods.getOriginalPrice() * (materialGoods.getQty()/product.getQty()));
product.setTotalDiscountAmount(product.getTotalDiscountAmount() + materialGoods.getTotalDiscountAmount());
product.setProductType(GoodsTypeEnum.MATERIAL.getGoodsType());
}
......
......@@ -15,10 +15,8 @@ package cn.freemud.service.impl;
import cn.freemud.adapter.ActivityAdapter;
import cn.freemud.adapter.CouponAdapter;
import cn.freemud.adapter.ShoppingCartConvertAdapter;
import cn.freemud.base.constant.Version;
import cn.freemud.base.entity.BaseResponse;
import cn.freemud.base.util.DateUtil;
import cn.freemud.constant.CustomerScoreConstant;
import cn.freemud.constant.ResponseCodeConstant;
import cn.freemud.constant.ShoppingCartConstant;
import cn.freemud.entities.dto.*;
......@@ -28,6 +26,7 @@ import cn.freemud.entities.dto.calculate.CalculationSharingDiscountRequestDto;
import cn.freemud.entities.dto.calculate.CalculationSharingDiscountResponseDto;
import cn.freemud.entities.dto.openplatform.WeixinProductRequestDto;
import cn.freemud.entities.dto.openplatform.WeixinProductResponseDto;
import cn.freemud.entities.dto.GetMenuResponseDto.DataBean.RootNodeBean.ChildrenBeanFirst.ChildrenBeanSecond.ProductBean;
import cn.freemud.entities.dto.shoppingCart.SendPoint;
import cn.freemud.entities.dto.shoppingCart.ShoppingCartGoodsDto;
import cn.freemud.entities.dto.user.GetSessionUserInfoDto;
......@@ -52,15 +51,12 @@ import com.alibaba.fastjson.JSONObject;
import com.freemud.api.assortment.datamanager.entity.db.AssortmentOpenPlatformPartnerStoreDeliveryConfig;
import com.freemud.api.assortment.datamanager.manager.AssortmentOpenPlatformPartnerStoreDeliveryConfigManager;
import com.freemud.api.assortment.datamanager.manager.customer.AssortmentCustomerInfoManager;
import com.freemud.application.sdk.api.constant.FMStatusCode;
import com.freemud.application.sdk.api.log.ApiLog;
import com.freemud.application.sdk.api.log.ErrorLog;
import com.freemud.application.sdk.api.log.LogThreadLocal;
import com.freemud.application.sdk.api.membercenter.request.GetMemberByMobileRequest;
import com.freemud.application.sdk.api.membercenter.request.QueryReceiveAddressRequest;
import com.freemud.application.sdk.api.membercenter.request.StatisticalPropertyRequest;
import com.freemud.application.sdk.api.membercenter.request.StatisticalScoreRequest;
import com.freemud.application.sdk.api.membercenter.response.GetMemberByMobileResponse;
import com.freemud.application.sdk.api.membercenter.response.GetSvcInfoByMemberIdResponse;
import com.freemud.application.sdk.api.membercenter.response.QueryReceiveAddressResponse;
import com.freemud.application.sdk.api.membercenter.response.StatisticalScoreResponse;
......@@ -79,7 +75,6 @@ import com.freemud.sdk.api.assortment.shoppingcart.request.CheckCartRequest;
import com.freemud.sdk.api.assortment.shoppingcart.service.ShoppingCartBaseService;
import com.freemud.sdk.api.assortment.shoppingcart.service.impl.ShoppingCartBaseServiceImpl;
import com.google.common.collect.Lists;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang.ObjectUtils;
......@@ -305,10 +300,20 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
}
}
// 获取商品详细信息
List<ProductBeanDTO> productBeanListSpuClass = assortmentSdkService.getProductsInfoSdk(partnerId, storeId
List<ProductBean> productBeanListSpuClass = assortmentSdkService.getProductsInfo(partnerId, storeId
, Collections.singletonList(spuId2),addShoppingCartGoodsRequestVo.getMenuType(), this.shoppingCartBaseService);
LogUtil.info("productBeanListSpuClass", spuId2,JSON.toJSONString(productBeanListSpuClass));
// 没有查到商品
if(productBeanListSpuClass == null || productBeanListSpuClass.isEmpty()){
throw new ServiceException(ResponseResult.SHOPPING_CART_PRODUCT_NOT_EXIST);
}
// 检查商品小料数量
if(checkMaterialQty(addShoppingCartGoodsRequestVo,productBeanListSpuClass)){
throw new ServiceException(ResponseResult.SHOPPING_CART_MATERIA_QTY_LIMIT_ERR);
}
//缓存中获取购物车商品信息
// 注意,围餐和点餐redis数据结构不一样
List<CartGoods> allCartGoodsList = assortmentSdkService.getShoppingCart(partnerId, storeId, userId, addShoppingCartGoodsRequestVo.getSessionId(), null, shoppingCartBaseService);
......@@ -1327,7 +1332,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
ActivityCalculationDiscountRequestDto.CalculationDiscountGoods.Material material = new ActivityCalculationDiscountRequestDto.CalculationDiscountGoods.Material();
material.setType(1);
material.setGoodsId(materialGoods.getSpuId());
material.setGoodsQuantity(1);
material.setGoodsQuantity(materialGoods.getQty());
material.setOriginalPrice(materialGoods.getFinalPrice());
materials.add(material);
}
......@@ -1691,7 +1696,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
*/
private void addProductGoods(AddShoppingCartGoodsRequestVo addShoppingCartGoodsRequestVo
, CartGoods cartGoods, String spuId2, String userId, ShoppingCartGoodsResponseVo shoppingCartGoodsResponseVo, String spuId
, List<CartGoods> allCartGoodsList, List<ProductBeanDTO> productBeanListSpuClass, CouponProductDto couponProductDto) {
, List<CartGoods> allCartGoodsList, List<ProductBean> productBeanListSpuClass, CouponProductDto couponProductDto) {
// 商品券商品list
List<CartGoods> tmpCartGoods = allCartGoodsList.parallelStream().filter(k -> k.getCartGoodsUid().startsWith(CommonsConstant.COUPON_PREFIX)).collect(Collectors.toList());
// 当已有商品券时,不得添加(暂时的限制)
......@@ -1713,7 +1718,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
cartGoods.setOriginalPrice(0L);
cartGoods.setOriginalAmount(0L);
cartGoods.setAmount(0L);
cartGoods.setPackPrice(productBeanListSpuClass.get(0).getPackPrice());
cartGoods.setPackPrice(productBeanListSpuClass.get(0).getPackPrice().longValue());
cartGoods.setPic(productBeanListSpuClass.get(0).getPicture());
cartGoods.setWeight(productBeanListSpuClass.get(0).getWeight());
cartGoods.setUnit(productBeanListSpuClass.get(0).getUnit());
......@@ -1722,7 +1727,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
&& productBeanListSpuClass.get(0).getStockLimit() == 1) {
stockLimit = true;
} else {
for (ProductBeanDTO.SkuProductBean skuProductBean : productBeanListSpuClass.get(0).getSkuList()) {
for (ProductBean.SkuProductBean skuProductBean : productBeanListSpuClass.get(0).getSkuList()) {
if (spuId2.equals(skuProductBean.getSkuId()) && skuProductBean.getStockLimit() == 1) {
stockLimit = true;
break;
......@@ -1753,7 +1758,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
* @param skuId
*/
private void queryManyGoodsStocks(AddShoppingCartGoodsRequestVo addShoppingCartGoodsRequestVo, List<Long> productIds
, List<ProductBeanDTO> productBeanListSpuClass, String skuId, Integer qty) {
, List<ProductBean> productBeanListSpuClass, String skuId, Integer qty) {
GetProductStockRequestDto requestDto = new GetProductStockRequestDto();
requestDto.setChannel(BusinessTypeEnum.getByType(addShoppingCartGoodsRequestVo.getMenuType()).getCode());
requestDto.setPartnerId(addShoppingCartGoodsRequestVo.getPartnerId());
......@@ -1764,7 +1769,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
&& productBeanListSpuClass.get(0).getStockLimit() == 1) {
availableStocks = stockClient.getAvailableStocks(requestDto);
} else {
for (ProductBeanDTO.SkuProductBean skuProductBean : productBeanListSpuClass.get(0).getSkuList()) {
for (ProductBean.SkuProductBean skuProductBean : productBeanListSpuClass.get(0).getSkuList()) {
if (skuId.equals(skuProductBean.getSkuId()) && skuProductBean.getStockLimit() == 1) {
availableStocks = stockClient.getAvailableStocks(requestDto);
break;
......@@ -2430,4 +2435,29 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
}
return null;
}
/**
* 校验小料的数量
* @param addShoppingCartGoodsRequestVo
* @return
*/
public Boolean checkMaterialQty(AddShoppingCartGoodsRequestVo addShoppingCartGoodsRequestVo,List<ProductBean> products) {
Integer materialMaxQty = products.get(0).getMaxNum();
Integer addProductqty = 0;
if(addShoppingCartGoodsRequestVo.getProductMaterialList() != null && !addShoppingCartGoodsRequestVo.getProductMaterialList().isEmpty()){
for(MaterialRequestVo materialRequestVo : addShoppingCartGoodsRequestVo.getProductMaterialList()){
addProductqty = addProductqty + (materialRequestVo.getQty() == null ? 0 : materialRequestVo.getQty());
}
}
if(materialMaxQty == null || ObjectUtils.equals(materialMaxQty,0) || addProductqty == null || ObjectUtils.equals(addProductqty,0)){
return Boolean.FALSE;
}
if(materialMaxQty.intValue() < addProductqty.intValue()){
return Boolean.TRUE;
}
return Boolean.FALSE;
}
}
......@@ -116,7 +116,8 @@ public class TimeSalePromotionService implements IPromotionService {
}
Integer actualGoodsNumber = numberMap.get(cartGoods.getSkuId());
if (actualGoodsNumber > 0) {
Long totalDiscountAmount = cartGoods.getQty() > actualGoodsNumber ? goods.getDiscountAmount() * actualGoodsNumber / goods.getActualGoodsNumber() : goods.getDiscountAmount() * cartGoods.getQty() / goods.getActualGoodsNumber();
Long totalDiscountAmount = cartGoods.getQty() > actualGoodsNumber ? goodsDiscount.getDiscount() * actualGoodsNumber / goodsDiscount.getActualGoodsNumber() : goodsDiscount.getDiscount() * cartGoods.getQty() / goodsDiscount.getActualGoodsNumber();
//Long totalDiscountAmount = cartGoods.getQty() > actualGoodsNumber ? goods.getDiscountAmount() * actualGoodsNumber / goods.getActualGoodsNumber() : goods.getDiscountAmount() * cartGoods.getQty() / goods.getActualGoodsNumber();
ActivityDiscountsDto activityDiscountsDto = new ActivityDiscountsDto();
activityDiscountsDto.setActivityCode(goodsDiscount.getActivityCode());
activityDiscountsDto.setActivityName(goodsDiscount.getActivityName());
......
......@@ -160,6 +160,9 @@ public class CalculationCommonService {
if (sm != null) {
mg.setAmount(sm.getRealAmount().longValue());
}
mg.setQty(mg.getQty() * cartGoods.getQty());
mg.setOriginalAmount(mg.getFinalPrice() * mg.getQty());
}
}
if (GoodsTypeEnum.SET_MEAL_GOODS.getGoodsType().equals(cartGoods.getGoodsType())) {
......@@ -392,7 +395,7 @@ public class CalculationCommonService {
goods.setSpuId(mg.getSpuId());
goods.setSpuName(mg.getSpuName());
goods.setSalePrice(mg.getFinalPrice());
goods.setQty(cartGoods.getQty());
goods.setQty(mg.getQty());
goods.setCustomerCode(cartGoods.getCustomerCode());
goods.setOriginalPrice(mg.getOriginalPrice());
//提前当前行促销
......@@ -407,7 +410,7 @@ public class CalculationCommonService {
goods.setActivityDiscountsDtos(smDiscount);
}
materialList.add(goods);
cartGoodsDetailDto.setOriginalPrice(cartGoodsDetailDto.getOriginalPrice() + goods.getOriginalPrice());
cartGoodsDetailDto.setOriginalPrice(cartGoodsDetailDto.getOriginalPrice() + goods.getOriginalPrice() * (goods.getQty()/cartGoodsDetailDto.getQty()));
cartGoodsDetailDto.setTotalDiscountAmount(cartGoodsDetailDto.getTotalDiscountAmount() + goods.getTotalDiscountAmount());
}
cartGoodsDetailDto.setProductType(ProductType.MATERIAL.getCode());
......
......@@ -253,7 +253,7 @@ public class CalculationSharingDiscountService {
CalculationSharingDiscountRequestDto.CalculationDiscountGoods.Material material = new CalculationSharingDiscountRequestDto.CalculationDiscountGoods.Material();
material.setType(1);
material.setGoodsId(materialGoods.getSpuId());
material.setGoodsQuantity(1);
material.setGoodsQuantity(materialGoods.getQty());
material.setOriginalPrice(materialGoods.getFinalPrice());
materials.add(material);
}
......
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