刘俊驰 1 vuosi sitten
vanhempi
commit
de0a53b86e

+ 4 - 4
mec-application/src/main/java/com/ym/mec/web/controller/APIController.java

@@ -243,14 +243,14 @@ public class APIController extends BaseController {
 	}
 
 	// 组合商品状态同步
-	@PostMapping("/api/goodsStatusSynchronize")
-	public HttpResponseResult<Boolean> goodsStatusSynchronize(List<GoodsSubModel> goodsSubModelList) {
+	@PostMapping("/goodsStatusSynchronize")
+	public HttpResponseResult<Boolean> goodsStatusSynchronize(@RequestBody List<GoodsSubModel> goodsSubModelList) {
 		return succeed(goodsService.goodsStatusSynchronize(goodsSubModelList));
 	}
 
 	// 组合商品库存同步
-	@PostMapping("/api/goodsStockCountSynchronize")
-	public HttpResponseResult<Boolean> goodsStockCountSynchronize(List<GoodsSubStockModel> goodsSubStockModels) {
+	@PostMapping("/goodsStockCountSynchronize")
+	public HttpResponseResult<Boolean> goodsStockCountSynchronize(@RequestBody List<GoodsSubStockModel> goodsSubStockModels) {
 		return succeed(goodsService.goodsStockCountSynchronize(goodsSubStockModels));
 	}
 }

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/mapper/GoodsSubMapper.java

@@ -17,5 +17,5 @@ public interface GoodsSubMapper extends BaseMapper<GoodsSub> {
 
     void saveBatch(@Param("goodsSubs") List<GoodsSub> goodsSubs);
 
-    void updateStatus(@Param("goodsSubList") List<Integer> goodsSubIdList, @Param("status") Boolean status);
+    void updateStatus(@Param("goodsSubIdList") List<Integer> goodsSubIdList, @Param("status") Boolean status);
 }

+ 3 - 10
mec-biz/src/main/java/com/ym/mec/biz/service/impl/GoodsServiceImpl.java

@@ -926,21 +926,15 @@ public class GoodsServiceImpl extends BaseServiceImpl<Integer, Goods>  implement
 		if(goodsSubStockModels.isEmpty()){
 			return false;
 		}
-		List<Integer> mallGoodIds = goodsSubStockModels.stream().map(GoodsSubStockModel::getMallGoodsId).distinct().collect(Collectors.toList());
 		List<Integer> skus = goodsSubStockModels.stream().map(GoodsSubStockModel::getSku).distinct().collect(Collectors.toList());
 
 		QueryWrapper<GoodsSub> queryWrapper = new QueryWrapper<>();
-		queryWrapper.in("mall_goods_id_", mallGoodIds).in("sku_", skus);
+		queryWrapper.in("sku_", skus);
 		List<GoodsSub> goodsSubs = goodsSubMapper.selectList(queryWrapper);
 		if (CollectionUtils.isEmpty(goodsSubs)) {
 			return true;
 		}
-		Map<String, Integer> stockMap = goodsSubStockModels.stream().collect(Collectors.toMap(next -> next.getMallGoodsId() + "_" + next.getSku(), next -> next.getStock()));
-		Set<String> keys = stockMap.keySet();
-		goodsSubs.removeIf(next -> !keys.contains(next.getMallGoodsId() + "_" + next.getSku()));
-		if (CollectionUtils.isEmpty(goodsSubs)) {
-			return true;
-		}
+		Map<Integer, Integer> stockMap = goodsSubStockModels.stream().collect(Collectors.toMap(GoodsSubStockModel::getSku, GoodsSubStockModel::getStock));
 		List<Integer> goodIds = goodsSubs.stream().map(GoodsSub::getGoodsId).distinct().collect(Collectors.toList());
 		goodsDao.lockGoods(goodIds);
 		List<Goods> goodsList = goodsDao.findGoodsByIds(goodIds.stream().map(String::valueOf).collect(Collectors.joining(",")));
@@ -949,8 +943,7 @@ public class GoodsServiceImpl extends BaseServiceImpl<Integer, Goods>  implement
 		List<Goods> updateGoods = new ArrayList<>();
 		for (GoodsSub goodsSub : goodsSubs) {
 			Integer goodsId = goodsSub.getGoodsId();
-			String key = goodsSub.getMallGoodsId() + "_" + goodsSub.getSku();
-			Integer stock = stockMap.get(key);
+			Integer stock = stockMap.get(goodsSub.getSku());
 			int updateStock = Math.min(goodStockMap.get(goodsId), stock);
 
 			Goods goods = new Goods();

+ 1 - 1
mec-client-api/src/main/java/com/ym/mec/web/WebFeignService.java

@@ -96,7 +96,7 @@ public interface WebFeignService {
 
 	// 商城商品库存更新,同步商品库存
 	@PostMapping("/api/goodsStockCountSynchronize")
-	HttpResponseResult<Boolean> goodsStockCountSynchronize(List<GoodsSubStockModel> goodsSubStockModels);
+	HttpResponseResult<Boolean> goodsStockCountSynchronize(@RequestBody List<GoodsSubStockModel> goodsSubStockModels);
 
 
     // 商城商品库存更新,同步商品库存