商品价格范围为空问题

This commit is contained in:
wangw 2024-09-20 09:23:45 +08:00
parent f55f709fec
commit 0f2eea3e13
2 changed files with 40 additions and 39 deletions

View File

@ -391,7 +391,6 @@ public class StockServiceImpl implements StockService {
sqlQuery.append(" id = ").append(updateValueVO.getTargetId());
sqlQuery.append(" ;");
System.out.println(sqlQuery);
Query nativeQuery = em.createNativeQuery(String.valueOf(sqlQuery));
nativeQuery.executeUpdate();

View File

@ -154,9 +154,11 @@ public class TbProductServiceImpl implements TbProductService {
for (TbProduct product : page.getContent()) {
//sku
List<TbProductSku> tbProductSkus = tbProductSkuRepository.searchSku(product.getId().toString());
BigDecimal maxPrice=tbProductSkus.stream().map(TbProductSku::getSalePrice).max(BigDecimal::compareTo).get();
log.info("maxPrice:{}",maxPrice);
BigDecimal maxPrice = BigDecimal.ZERO;
Optional<BigDecimal> max = tbProductSkus.stream().map(TbProductSku::getSalePrice).max(BigDecimal::compareTo);
if (max.isPresent()) {
maxPrice = max.get();
}
List<TbProductSku> skuList = new ArrayList<>();
TbProductVo tbProductVo = new TbProductVo();
@ -246,7 +248,7 @@ public class TbProductServiceImpl implements TbProductService {
for (TbProduct product : page.getContent()) {
TbProductNewVo productNewVo = new TbProductNewVo();
BeanUtils.copyProperties(product, productNewVo);
productNewVo.setLowPrice(""+product.getLowPrice().toString());
productNewVo.setLowPrice("" + product.getLowPrice().toString());
List<TbProductSku> tbProductSkus = tbProductSkuRepository.searchSku(product.getId().toString());
if (tbProductSkus.size() > 1) {
BigDecimal maxPrice = tbProductSkus.stream().map(TbProductSku::getSalePrice).max(BigDecimal::compareTo).get();
@ -255,7 +257,7 @@ public class TbProductServiceImpl implements TbProductService {
//规格填充
List<TbProductNewVo.TbProductSkuVos> tbProductSkuVos = JSONUtil.parseListTNewList(tbProductSkus, TbProductNewVo.TbProductSkuVos.class);
productNewVo.setSkuList(tbProductSkuVos);
ViewConSku viewConSku=new ViewConSku();
ViewConSku viewConSku = new ViewConSku();
viewConSku.setShopId(Integer.valueOf(product.getShopId()));
viewConSku.setProductId(product.getId());
Example<ViewConSku> query = Example.of(viewConSku);
@ -286,7 +288,7 @@ public class TbProductServiceImpl implements TbProductService {
//组装
TbProductVo tbProductVo = new TbProductVo();
// tbProductVo.setStockNumber(tbProduct.getStockNumber() == null ? 0.00 : tbProduct.getStockNumber());
tbProductVo.setCategoryId(StringUtils.isNotBlank(tbProduct.getCategoryId())?Integer.valueOf(tbProduct.getCategoryId()):null);
tbProductVo.setCategoryId(StringUtils.isNotBlank(tbProduct.getCategoryId()) ? Integer.valueOf(tbProduct.getCategoryId()) : null);
//单位
// if (tbProduct.getUnitId() == null) {
// tbProductVo.setUnitId(null);
@ -319,7 +321,7 @@ public class TbProductServiceImpl implements TbProductService {
tbProductVo.setSkuList(tbProductSkus.get());
}
ViewConSku viewConSku=new ViewConSku();
ViewConSku viewConSku = new ViewConSku();
viewConSku.setShopId(Integer.valueOf(tbProduct.getShopId()));
viewConSku.setProductId(tbProduct.getId());
Example<ViewConSku> query = Example.of(viewConSku);
@ -382,7 +384,7 @@ public class TbProductServiceImpl implements TbProductService {
TbProduct product = new TbProduct();
//组装
BeanUtil.copyProperties(resources, product, CopyOptions.create().setIgnoreNullValue(true));
if(CollectionUtils.isEmpty(resources.getSkuList())){
if (CollectionUtils.isEmpty(resources.getSkuList())) {
throw new BadRequestException("商品规格不可为空");
}
if (!"group".equals(resources.getTypeEnum())) {
@ -493,7 +495,7 @@ public class TbProductServiceImpl implements TbProductService {
TbProduct product = new TbProduct();
//组装
BeanUtils.copyProperties(resources, product);
if(CollectionUtils.isEmpty(resources.getSkuList())){
if (CollectionUtils.isEmpty(resources.getSkuList())) {
throw new BadRequestException("规格内容不可为空");
} else if (!"sku".equals(product.getTypeEnum())) {
product.setSelectSpec("[]");
@ -538,7 +540,7 @@ public class TbProductServiceImpl implements TbProductService {
}
noticeRepository.save(resources.getNotices());
}else {
} else {
product.setCategoryId(resources.getCategoryId().toString());
}
TbProduct save = tbProductRepository.save(product);
@ -546,13 +548,13 @@ public class TbProductServiceImpl implements TbProductService {
//sku
if (resources.getSkuList() != null) {
// if ("sku".equals(save.getTypeEnum())) {
List<Integer> collect = resources.getSkuList().stream().map(TbProductSku::getId).collect(Collectors.toList());
List<TbProductSku> tbProductSkus = tbProductSkuRepository.searchSku(resources.getId().toString());
for (TbProductSku productSkus : tbProductSkus) {
if (!collect.contains(productSkus.getId())) {
tbProductSkuRepository.deleteBySkuId(productSkus.getId());
}
List<Integer> collect = resources.getSkuList().stream().map(TbProductSku::getId).collect(Collectors.toList());
List<TbProductSku> tbProductSkus = tbProductSkuRepository.searchSku(resources.getId().toString());
for (TbProductSku productSkus : tbProductSkus) {
if (!collect.contains(productSkus.getId())) {
tbProductSkuRepository.deleteBySkuId(productSkus.getId());
}
}
// }
tbProductSkuRepository.saveAll(resources.getSkuList());
}
@ -564,7 +566,7 @@ public class TbProductServiceImpl implements TbProductService {
productSkuResult.setTagSnap(resources.getSkuSnap());
productSkuResult.setId(save.getId());
tbProductSkuResultRepository.save(productSkuResult);
}else {
} else {
tbProductSkuResultRepository.deleteByIdN(save.getId());
if ("group".equals(resources.getTypeEnum())) {
TbPurchaseNotice notices = resources.getNotices();
@ -582,14 +584,14 @@ public class TbProductServiceImpl implements TbProductService {
@Transactional(rollbackFor = Exception.class)
@Override
public void updateIsHot(Integer id,Integer isHot) {
tbProductRepository.updateIsHot(id,isHot);
public void updateIsHot(Integer id, Integer isHot) {
tbProductRepository.updateIsHot(id, isHot);
}
@Transactional(rollbackFor = Exception.class)
@Override
public void updateIsStock(Integer proId, String shopId,Integer isStock) {
tbProductRepository.updateIsStock(proId,shopId,isStock);
public void updateIsStock(Integer proId, String shopId, Integer isStock) {
tbProductRepository.updateIsStock(proId, shopId, isStock);
}
@Transactional(rollbackFor = Exception.class)
@ -600,15 +602,15 @@ public class TbProductServiceImpl implements TbProductService {
List<TbProduct> list = tbProductRepository.findByIds(param.getIds());
Integer sort = 0;
Integer strIndex = -1;
if(strSort<endSort){
if (strSort < endSort) {
for (int i = list.size() - 1; i >= 0; i--) {
TbProduct product = list.get(i);
if(product.getId().equals(param.getEndId())) {
sort=product.getSort();
strIndex=i;
if (product.getId().equals(param.getEndId())) {
sort = product.getSort();
strIndex = i;
}
if(!strIndex.equals(-1)){
if (product.getId().equals(param.getStrId())){
if (!strIndex.equals(-1)) {
if (product.getId().equals(param.getStrId())) {
product.setSort(sort);
tbProductRepository.save(product);
break;
@ -618,20 +620,20 @@ public class TbProductServiceImpl implements TbProductService {
tbProductRepository.save(product);
}
}
}else {
} else {
for (int i = 0; i < list.size(); i++) {
TbProduct product = list.get(i);
if(product.getId().equals(param.getEndId())) {
sort=product.getSort();
strIndex=i;
if (product.getId().equals(param.getEndId())) {
sort = product.getSort();
strIndex = i;
}
if(!strIndex.equals(-1)){
if (product.getId().equals(param.getStrId())){
if (!strIndex.equals(-1)) {
if (product.getId().equals(param.getStrId())) {
product.setSort(sort);
tbProductRepository.save(product);
break;
}
Integer nextIndex= i + 1;
Integer nextIndex = i + 1;
TbProduct product1 = list.get(nextIndex);
product.setSort(product1.getSort());
tbProductRepository.save(product);
@ -745,7 +747,7 @@ public class TbProductServiceImpl implements TbProductService {
}
if (product.getIsDistribute() == 1) {
tbProductRepository.incrStock(productId, num);
}else {
} else {
tbProductSkuRepository.incrStock(productSkuId, Double.valueOf(num));
}
}
@ -776,7 +778,7 @@ public class TbProductServiceImpl implements TbProductService {
TbProductSkuResult skuResult = productSkuResultRepository.findById(item.getId()).orElse(null);
List<TbProductSku> tbProductSkus = producSkutMapper.selectList(new LambdaQueryWrapper<TbProductSku>().eq(TbProductSku::getIsDel, 0)
.eq(TbProductSku::getIsPauseSale, 0)
.eq(TbProductSku::getProductId, item.getId())
.eq(TbProductSku::getProductId, item.getId())
.eq(TbProductSku::getIsGrounding, 1)
.select(TbProductSku::getId, TbProductSku::getSpecSnap, TbProductSku::getStockNumber, TbProductSku::getSalePrice, TbProductSku::getSuit));
@ -807,7 +809,7 @@ public class TbProductServiceImpl implements TbProductService {
if (item.getIsDistribute().equals(1)) {
itemMap.put("stockNumber", item.getStockNumber());
}else {
} else {
itemMap.put("stockNumber", item2.getStockNumber());
}
specList.add(itemMap);
@ -817,7 +819,7 @@ public class TbProductServiceImpl implements TbProductService {
for (String res : result) {
boolean found = false;
for (Map<String, Object> spec : specList) {
if (spec.get("specSnap")!= null && res.equals(spec.get("specSnap").toString())) {
if (spec.get("specSnap") != null && res.equals(spec.get("specSnap").toString())) {
spec.put("isGrounding", true);
found = true;
break;