!76 修复无登录用户时,查询报错

Merge pull request !76 from OceansDeep/feature/pg
This commit is contained in:
OceansDeep 2021-12-13 04:28:37 +00:00 committed by Gitee
commit 9ae798a11a
6 changed files with 29 additions and 22 deletions

View File

@ -16,10 +16,12 @@ import cn.lili.modules.promotion.entity.dos.PromotionGoods;
import cn.lili.modules.promotion.entity.dto.KanjiaActivityGoodsDTO;
import cn.lili.modules.promotion.entity.vos.PointsGoodsVO;
import cn.lili.modules.promotion.entity.vos.PromotionGoodsSearchParams;
import cn.lili.modules.promotion.service.*;
import cn.lili.modules.promotion.service.KanjiaActivityGoodsService;
import cn.lili.modules.promotion.service.KanjiaActivityService;
import cn.lili.modules.promotion.service.PointsGoodsService;
import cn.lili.modules.promotion.service.PromotionGoodsService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.core.script.DefaultRedisScript;
import org.springframework.stereotype.Service;
@ -63,11 +65,6 @@ public class StockUpdateExecute implements OrderStatusChangeEvent {
*/
@Autowired
private PromotionGoodsService promotionGoodsService;
/**
* 促销商品
*/
@Autowired
private SeckillApplyService seckillApplyService;
/**
* 缓存
*/
@ -80,8 +77,6 @@ public class StockUpdateExecute implements OrderStatusChangeEvent {
private KanjiaActivityGoodsService kanjiaActivityGoodsService;
@Autowired
private PointsGoodsService pointsGoodsService;
@Autowired
private MongoTemplate mongoTemplate;
@Override
public void orderChange(OrderMessage orderMessage) {
@ -295,14 +290,12 @@ public class StockUpdateExecute implements OrderStatusChangeEvent {
kanjiaActivityGoodsDTO.setStock(stock);
kanjiaActivityGoodsService.updateById(kanjiaActivityGoodsDTO);
this.mongoTemplate.save(kanjiaActivityGoodsDTO);
//修改积分商品库存
} else if (promotionTypeEnum.equals(PromotionTypeEnum.POINTS_GOODS)) {
PointsGoodsVO pointsGoodsVO = pointsGoodsService.getPointsGoodsDetail(orderItem.getPromotionId());
Integer stock = Integer.parseInt(cache.get(PromotionGoodsService.getPromotionGoodsStockCacheKey(promotionTypeEnum, orderItem.getPromotionId(), orderItem.getSkuId())).toString());
pointsGoodsVO.setActiveStock(stock);
pointsGoodsService.updateById(pointsGoodsVO);
this.mongoTemplate.save(pointsGoodsVO);
} else {
PromotionGoodsSearchParams searchParams = new PromotionGoodsSearchParams();
searchParams.setPromotionStatus(promotionTypeEnum.name());

View File

@ -13,4 +13,9 @@ public class EsSuffix {
*/
public static final String GOODS_INDEX_NAME = "goods";
/**
* 日志索引后缀
*/
public static final String LOGS_INDEX_NAME = "logs";
}

View File

@ -15,7 +15,6 @@ import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
import java.util.Objects;
/**
* 订单查询参数
@ -114,23 +113,25 @@ public class OrderSearchParams extends PageVO {
private String orderPromotionType;
public <T> QueryWrapper<T> queryWrapper() {
AuthUser currentUser = Objects.requireNonNull(UserContext.getCurrentUser());
AuthUser currentUser = UserContext.getCurrentUser();
QueryWrapper<T> wrapper = new QueryWrapper<>();
//关键字查询
if (CharSequenceUtil.isNotEmpty(keywords)) {
wrapper.like("o.sn", keywords).or().like("oi.goods_name", keywords);
}
//按卖家查询
wrapper.eq(CharSequenceUtil.equals(currentUser.getRole().name(), UserEnums.STORE.name()), "o.store_id", currentUser.getStoreId());
if (currentUser != null) {
//按卖家查询
wrapper.eq(CharSequenceUtil.equals(currentUser.getRole().name(), UserEnums.STORE.name()), "o.store_id", currentUser.getStoreId());
//店铺查询
wrapper.eq(CharSequenceUtil.equals(currentUser.getRole().name(), UserEnums.MANAGER.name())
&& CharSequenceUtil.isNotEmpty(storeId), "o.store_id", storeId);
//店铺查询
wrapper.eq(CharSequenceUtil.equals(currentUser.getRole().name(), UserEnums.MANAGER.name())
&& CharSequenceUtil.isNotEmpty(storeId), "o.store_id", storeId);
//按买家查询
wrapper.eq(CharSequenceUtil.equals(currentUser.getRole().name(), UserEnums.MEMBER.name()), "o.member_id", currentUser.getId());
//按买家查询
wrapper.eq(CharSequenceUtil.equals(currentUser.getRole().name(), UserEnums.MEMBER.name()), "o.member_id", currentUser.getId());
}
//按照买家查询
wrapper.like(CharSequenceUtil.isNotEmpty(memberId), "o.member_id", memberId);

View File

@ -50,7 +50,7 @@ public class PromotionGoodsSearchParams extends BasePromotionsSearchParams {
if (CharSequenceUtil.isEmpty(this.getScopeType())){
this.setScopeType(PromotionsScopeTypeEnum.PORTION_GOODS.name());
}
QueryWrapper<T> queryWrapper = super.queryWrapper();
QueryWrapper<T> queryWrapper = super.queryWrapper();
if (CharSequenceUtil.isNotEmpty(promotionId)) {
queryWrapper.eq("promotion_id", promotionId);
}

View File

@ -2,6 +2,7 @@ package cn.lili.modules.promotion.serviceimpl;
import cn.hutool.core.text.CharSequenceUtil;
import cn.lili.common.enums.PromotionTypeEnum;
import cn.lili.common.enums.ResultCode;
import cn.lili.common.exception.ServiceException;
import cn.lili.common.vo.PageVO;
@ -74,7 +75,12 @@ public class KanjiaActivityGoodsServiceImpl extends ServiceImpl<KanJiaActivityGo
kanJiaActivityGoodsDTO.setGoodsName(goodsSku.getGoodsName());
kanJiaActivityGoodsDTO.setOriginalPrice(goodsSku.getPrice());
kanjiaActivityGoodsList.add(kanJiaActivityGoodsDTO);
promotionGoodsList.add(new PromotionGoods(kanJiaActivityGoodsDTO));
PromotionGoods promotionGoods = new PromotionGoods(kanJiaActivityGoodsDTO);
promotionGoods.setPromotionId(kanJiaActivityGoodsDTO.getId());
promotionGoods.setPromotionType(PromotionTypeEnum.KANJIA.name());
promotionGoods.setGoodsId(kanJiaActivityGoodsDTO.getGoodsId());
promotionGoods.setTitle(kanJiaActivityGoodsDTO.getPromotionName());
promotionGoodsList.add(promotionGoods);
}
this.promotionGoodsService.saveBatch(promotionGoodsList);
return this.saveBatch(kanjiaActivityGoodsList);

View File

@ -4,6 +4,8 @@ import cn.lili.modules.search.entity.dos.EsGoodsIndex;
import org.springframework.data.elasticsearch.repository.ElasticsearchRepository;
/**
* 商品索引
*
* @author paulG
* @since 2020/10/15
**/