diff --git a/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ShopSyncServiceImpl.java b/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ShopSyncServiceImpl.java index 85c72d6d5..cabe79964 100644 --- a/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ShopSyncServiceImpl.java +++ b/cash-service/product-service/src/main/java/com/czg/service/product/service/impl/ShopSyncServiceImpl.java @@ -423,12 +423,16 @@ public class ShopSyncServiceImpl implements ShopSyncService { public Map syncProduct(Long sourceShopId, Long pointShopId, Map unitMap, Map specMap, Map cateGoryMap, List> mainMapList) { - List pointProducts = productService.queryChain() - .select(Product::getSyncId) + Map proMap = new HashMap<>(); + List pointProducts = new ArrayList<>(); + List pointList = productService.queryChain() .eq(Product::getShopId, pointShopId) .isNotNull(Product::getSyncId) - .listAs(Long.class); - Map proMap = new HashMap<>(); + .list(); + for (Product product : pointList) { + pointProducts.add(product.getSyncId()); + proMap.put(product.getSyncId(), product.getId()); + } List products = productService.queryChain().eq(Product::getShopId, sourceShopId).list(); if (CollectionUtil.isNotEmpty(products)) { unitService.queryChain().eq(ShopProdUnit::getIsSystem, 1).list().forEach(tbShopUnit -> { @@ -452,8 +456,8 @@ public class ShopSyncServiceImpl implements ShopSyncService { } } } - log.info("商品同步,源{}个,已有{}个,同步{}个", products.size(), pointProducts.size(), proMap.size()); - buildNotice(mainMapList, "商品同步", proMap.size(), null, null); + log.info("商品同步,源{}个,已有{}个,同步{}个", products.size(), pointProducts.size(), proMap.size() - pointProducts.size()); + buildNotice(mainMapList, "商品同步", proMap.size() - pointProducts.size(), null, null); return proMap; } @@ -833,10 +837,15 @@ public class ShopSyncServiceImpl implements ShopSyncService { // 耗材 public Map syncConsInfo(Long sourceShopId, Long pointShopId, Map consGroupMap, List> mainMapList) { Map consMap = new HashMap<>(); - List pointConsInfo = consInfoService.queryChain().select(ConsInfo::getSyncId) + List pointConsInfo = new ArrayList<>(); + List pointList = consInfoService.queryChain() .eq(ConsInfo::getShopId, pointShopId) .isNotNull(ConsInfo::getSyncId) - .listAs(Long.class); + .list(); + for (ConsInfo consInfo : pointList) { + pointConsInfo.add(consInfo.getSyncId()); + consMap.put(consInfo.getSyncId(), consInfo.getId()); + } List list = consInfoService.queryChain().eq(ConsInfo::getShopId, sourceShopId).list(); for (ConsInfo cons : list) { if (CollUtil.isEmpty(pointConsInfo) || !pointConsInfo.contains(cons.getId())) { @@ -850,8 +859,8 @@ public class ShopSyncServiceImpl implements ShopSyncService { consMap.put(cons.getId(), conInfo.getId()); } } - log.info("耗材同步,源{}个,已有{}个,同步{}个", list.size(), pointConsInfo.size(), consMap.size()); - buildNotice(mainMapList, "耗材信息同步", consMap.size(), null, null); + log.info("耗材同步,源{}个,已有{}个,同步{}个", list.size(), pointConsInfo.size(), consMap.size() - pointConsInfo.size()); + buildNotice(mainMapList, "耗材信息同步", consMap.size() - pointConsInfo.size(), null, null); return consMap; }