|
@@ -44,6 +44,13 @@ public class ProductSpuServiceImpl extends ServiceImpl<ProductSpuMapper, Product
|
|
public Page<ProductSpuVo> getPage(ProductSpuSelectDto dto) {
|
|
public Page<ProductSpuVo> getPage(ProductSpuSelectDto dto) {
|
|
IWrapper<ProductSpu> wrapper = getWrapper();
|
|
IWrapper<ProductSpu> wrapper = getWrapper();
|
|
wrapper.orderByDesc("ps", ProductSpu::getId);
|
|
wrapper.orderByDesc("ps", ProductSpu::getId);
|
|
|
|
+ if(ObjectUtil.isNotEmpty(dto.getKeyword())){
|
|
|
|
+ wrapper.and(q->q.like("ps",ProductSpu::getCode,dto.getKeyword()))
|
|
|
|
+ .or().like("ps",ProductSpu::getName,dto.getKeyword())
|
|
|
|
+ .or().like("ps",ProductSpu::getRemark,dto.getKeyword())
|
|
|
|
+ ;
|
|
|
|
+ }
|
|
|
|
+ wrapper.groupBy("ps.id");
|
|
Page<ProductSpuVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
|
|
Page<ProductSpuVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
|
|
return page;
|
|
return page;
|
|
}
|
|
}
|
|
@@ -74,12 +81,18 @@ public class ProductSpuServiceImpl extends ServiceImpl<ProductSpuMapper, Product
|
|
this.updateById(productSpuDto);
|
|
this.updateById(productSpuDto);
|
|
List<ProductInfo> productInfos = productSpuDto.getProductInfos();
|
|
List<ProductInfo> productInfos = productSpuDto.getProductInfos();
|
|
if(ObjectUtil.isNotEmpty(productInfos)){
|
|
if(ObjectUtil.isNotEmpty(productInfos)){
|
|
|
|
+ //移除被删除的条目
|
|
List<Long> productIds = productInfos.stream().map(ProductInfo::getId).collect(Collectors.toList());
|
|
List<Long> productIds = productInfos.stream().map(ProductInfo::getId).collect(Collectors.toList());
|
|
List<ProductInfo> productInfos1 = productInfoService.list(q->q.notIn(ProductInfo::getId,productIds));
|
|
List<ProductInfo> productInfos1 = productInfoService.list(q->q.notIn(ProductInfo::getId,productIds));
|
|
for (ProductInfo productInfo :productInfos1){
|
|
for (ProductInfo productInfo :productInfos1){
|
|
- productInfo.setProductSpuId(null);
|
|
|
|
|
|
+ productInfo.setProductSpuId(-1l);
|
|
}
|
|
}
|
|
productInfoService.updateBatchById(productInfos1);
|
|
productInfoService.updateBatchById(productInfos1);
|
|
|
|
+ //添加新条目
|
|
|
|
+ for (ProductInfo productInfo :productInfos){
|
|
|
|
+ productInfo.setProductSpuId(productSpuDto.getId());
|
|
|
|
+ }
|
|
|
|
+ productInfoService.updateBatchById(productInfos);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|