|
@@ -1,6 +1,7 @@
|
|
|
package com.yonge.cooleshow.portal.service.impl;
|
|
|
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
+import com.beust.jcommander.internal.Lists;
|
|
|
import com.ym.mec.common.exception.BizException;
|
|
|
import com.yonge.cooleshow.mbg.mapper.OmsCartItemMapper;
|
|
|
import com.yonge.cooleshow.mbg.mapper.PmsProductMapper;
|
|
@@ -11,6 +12,7 @@ import com.yonge.cooleshow.portal.domain.CartProduct;
|
|
|
import com.yonge.cooleshow.portal.domain.CartPromotionItem;
|
|
|
import com.yonge.cooleshow.portal.service.OmsCartItemService;
|
|
|
import com.yonge.cooleshow.portal.service.OmsPromotionService;
|
|
|
+import com.yonge.cooleshow.portal.service.PmsPortalProductService;
|
|
|
import com.yonge.cooleshow.portal.service.UmsMemberService;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
@@ -44,6 +46,9 @@ public class OmsCartItemServiceImpl implements OmsCartItemService {
|
|
|
@Autowired
|
|
|
private PmsSkuStockMapper skuStockMapper;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private PmsPortalProductService portalProductService;
|
|
|
+
|
|
|
@Override
|
|
|
public OmsCartItem add(OmsCartItem cartItem) {
|
|
|
UmsMember currentMember;
|
|
@@ -135,6 +140,8 @@ public class OmsCartItemServiceImpl implements OmsCartItemService {
|
|
|
PmsSkuStockExample skuExample = new PmsSkuStockExample();
|
|
|
skuExample.createCriteria().andIdIn(skuIds).andDeleteStatusEqualTo(0);
|
|
|
List<PmsSkuStock> pmsSkuStocks = skuStockMapper.selectByExample(skuExample);
|
|
|
+
|
|
|
+ pmsSkuStocks = portalProductService.updateProductSkuStock(pmsSkuStocks);
|
|
|
Map<Long, List<PmsSkuStock>> collect =
|
|
|
pmsSkuStocks.stream().collect(Collectors.groupingBy(PmsSkuStock::getId));
|
|
|
for (OmsCartItem omsCartItem : omsCartItems) {
|
|
@@ -178,7 +185,8 @@ public class OmsCartItemServiceImpl implements OmsCartItemService {
|
|
|
}
|
|
|
|
|
|
PmsSkuStock pmsSkuStock = skuStockMapper.selectByPrimaryKey(omsCartItem.getProductSkuId());
|
|
|
-
|
|
|
+ List<PmsSkuStock> pmsSkuStocks = portalProductService.updateProductSkuStock(Lists.newArrayList(pmsSkuStock));
|
|
|
+ pmsSkuStock = pmsSkuStocks.get(0);
|
|
|
if (pmsSkuStock.getStock() - pmsSkuStock.getLockStock() < quantity) {
|
|
|
return pmsSkuStock.getStock() - pmsSkuStock.getLockStock();
|
|
|
}
|