|
@@ -1,7 +1,6 @@
|
|
|
package com.cyksj.service.mange.goods;
|
|
package com.cyksj.service.mange.goods;
|
|
|
|
|
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
-import cn.hutool.core.util.StrUtil;
|
|
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.cyksj.mapper.GoodsDonMapper;
|
|
import com.cyksj.mapper.GoodsDonMapper;
|
|
@@ -13,10 +12,8 @@ import com.ejlchina.searcher.BeanSearcher;
|
|
|
import lombok.RequiredArgsConstructor;
|
|
import lombok.RequiredArgsConstructor;
|
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
|
|
-import java.math.BigDecimal;
|
|
|
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
import java.util.Optional;
|
|
import java.util.Optional;
|
|
|
-import java.util.concurrent.atomic.AtomicBoolean;
|
|
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* @author chan
|
|
* @author chan
|
|
@@ -50,20 +47,16 @@ public class CmsGoodsDonServiceImpl extends ServiceImpl<GoodsDonMapper, GoodsDon
|
|
|
}
|
|
}
|
|
|
if (!skuViews.isEmpty()) {
|
|
if (!skuViews.isEmpty()) {
|
|
|
//是否有特定价格规格
|
|
//是否有特定价格规格
|
|
|
- if (goods.getIsSp() || goods.getIsOwns()) {
|
|
|
|
|
- AtomicBoolean isSp = new AtomicBoolean(false);
|
|
|
|
|
- AtomicBoolean isOwns = new AtomicBoolean(false);
|
|
|
|
|
- skuViews.stream().forEach(sku->{
|
|
|
|
|
- if (sku.getSpecificPrice().compareTo(BigDecimal.ZERO) > 0) {
|
|
|
|
|
- isSp.set(true);
|
|
|
|
|
- }
|
|
|
|
|
- if (StrUtil.isNotBlank(sku.getUserOwns())) {
|
|
|
|
|
- isOwns.set(true);
|
|
|
|
|
- }
|
|
|
|
|
- });
|
|
|
|
|
- goods.setIsSp(isSp.get());
|
|
|
|
|
- goods.setIsOwns(isOwns.get());
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ int spSkuCount = goodsDonSkuMapper.selectCount(Wrappers.lambdaQuery(GoodsDonSku.class)
|
|
|
|
|
+ .eq(GoodsDonSku::getGoodsId, goodsId)
|
|
|
|
|
+ .gt(GoodsDonSku::getSpecificPrice, 0)
|
|
|
|
|
+ .eq(GoodsDonSku::getStatus, true));
|
|
|
|
|
+ int userOwnsSkuCount = goodsDonSkuMapper.selectCount(Wrappers.lambdaQuery(GoodsDonSku.class)
|
|
|
|
|
+ .eq(GoodsDonSku::getGoodsId, goodsId)
|
|
|
|
|
+ .isNotNull(GoodsDonSku::getUserOwns)
|
|
|
|
|
+ .eq(GoodsDonSku::getStatus, true));
|
|
|
|
|
+ goods.setIsSp(spSkuCount > 0 ? true : false);
|
|
|
|
|
+ goods.setIsOwns(userOwnsSkuCount > 0 ? true : false);
|
|
|
|
|
|
|
|
GoodsDonSku min = skuViews.get(0);
|
|
GoodsDonSku min = skuViews.get(0);
|
|
|
goods.setMinPrice(min.getPrice());
|
|
goods.setMinPrice(min.getPrice());
|