修复物流查询、sku修改之后清除问题

This commit is contained in:
taozi
2022-09-11 17:43:35 +08:00
parent d4846ad8ed
commit e6441b9844
2 changed files with 15 additions and 3 deletions

View File

@ -29,6 +29,7 @@ import co.yixiang.modules.product.service.dto.ProductFormatDto;
import co.yixiang.modules.product.service.mapper.StoreProductAttrMapper;
import co.yixiang.modules.product.service.mapper.StoreProductAttrValueMapper;
import co.yixiang.modules.product.vo.YxStoreProductAttrQueryVo;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -42,6 +43,7 @@ import java.util.Collections;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors;
@ -102,13 +104,23 @@ public class YxStoreProductAttrServiceImpl extends BaseServiceImpl<StoreProductA
List<String> stringList = new ArrayList<>(productFormatDto.getDetail().values());
Collections.sort(stringList);
YxStoreProductAttrValue oldAttrValue = storeProductAttrValueService.getOne(new LambdaQueryWrapper<YxStoreProductAttrValue>()
.eq(YxStoreProductAttrValue::getSku, productFormatDto.getSku())
.eq(YxStoreProductAttrValue::getProductId, productId));
String unique = IdUtil.simpleUUID();
if (Objects.nonNull(oldAttrValue)) {
unique = oldAttrValue.getUnique();
}
YxStoreProductAttrValue yxStoreProductAttrValue = YxStoreProductAttrValue.builder()
.id(Objects.isNull(oldAttrValue) ? null : oldAttrValue.getId())
.productId(productId)
.sku(StrUtil.join(",",stringList))
.price(BigDecimal.valueOf(productFormatDto.getPrice()))
.cost(BigDecimal.valueOf(productFormatDto.getCost()))
.otPrice(BigDecimal.valueOf(productFormatDto.getOtPrice()))
.unique(IdUtil.simpleUUID())
.unique(unique)
.image(productFormatDto.getPic())
.barCode(productFormatDto.getBarCode())
.weight(BigDecimal.valueOf(productFormatDto.getWeight()))