商品耗材关联关系 问题
This commit is contained in:
parent
6838854209
commit
03f40c4ae7
|
|
@ -1139,25 +1139,14 @@ public class ShopSyncServiceImpl implements ShopSyncService {
|
|||
for (Long shopId : shopIds) {
|
||||
Product product = productService.queryChain().eq(Product::getSyncId, sourceProdId).eq(Product::getShopId, shopId).one();
|
||||
if (product != null) {
|
||||
List<ConsInfo> newCons = new ArrayList<>();
|
||||
if (CollUtil.isEmpty(list)) {
|
||||
newCons = consInfoService.queryChain()
|
||||
.isNotNull(ConsInfo::getSyncId).eq(ConsInfo::getShopId, shopId).list();
|
||||
if (CollUtil.isNotEmpty(newCons)) {
|
||||
prodConsRelationService.remove(QueryWrapper.create()
|
||||
.eq(ProdConsRelation::getShopId, shopId)
|
||||
.eq(ProdConsRelation::getProductId, product.getId())
|
||||
.in(ProdConsRelation::getConsInfoId, newCons.stream().map(ConsInfo::getId).collect(Collectors.toList())));
|
||||
}
|
||||
} else {
|
||||
prodConsRelationService.remove(QueryWrapper.create()
|
||||
.eq(ProdConsRelation::getShopId, shopId)
|
||||
.eq(ProdConsRelation::getProductId, product.getId()));
|
||||
if(CollUtil.isNotEmpty(list)){
|
||||
Map<Long, BigDecimal> map = list.stream().collect(Collectors.toMap(ProdConsRelation::getConsInfoId, ProdConsRelation::getSurplusStock));
|
||||
newCons = consInfoService.queryChain()
|
||||
List<ConsInfo> newCons = consInfoService.queryChain()
|
||||
.in(ConsInfo::getSyncId, map.keySet()).eq(ConsInfo::getShopId, shopId).list();
|
||||
if (CollUtil.isNotEmpty(newCons)) {
|
||||
prodConsRelationService.remove(QueryWrapper.create()
|
||||
.eq(ProdConsRelation::getShopId, shopId)
|
||||
.eq(ProdConsRelation::getProductId, product.getId())
|
||||
.in(ProdConsRelation::getConsInfoId, newCons.stream().map(ConsInfo::getId).collect(Collectors.toList())));
|
||||
for (ConsInfo newCon : newCons) {
|
||||
ProdConsRelation prodConsRelation = new ProdConsRelation();
|
||||
prodConsRelation.setShopId(shopId);
|
||||
|
|
|
|||
Loading…
Reference in New Issue