活动商品在商品下架或者删除时数据未能同步处理的问题

This commit is contained in:
Chopper
2022-09-13 15:17:53 +08:00
parent 3011645c44
commit c87081f673
6 changed files with 26 additions and 6 deletions

View File

@@ -134,6 +134,10 @@ public class GoodsServiceImpl extends ServiceImpl<GoodsMapper, Goods> implements
List<String> list = this.baseMapper.getGoodsIdByStoreId(storeId);
//下架店铺下的商品
updateGoodsMarketAble(list, GoodsStatusEnum.DOWN, "店铺关闭");
applicationEventPublisher.publishEvent(new TransactionCommitSendMQEvent("下架商品",
rocketmqCustomProperties.getGoodsTopic(), GoodsTagsEnum.DOWN.name(), JSONUtil.toJsonStr(list)));
}
/**
@@ -337,13 +341,13 @@ public class GoodsServiceImpl extends ServiceImpl<GoodsMapper, Goods> implements
*/
@Override
public Boolean updateGoodsMarketAbleByStoreId(String storeId, GoodsStatusEnum goodsStatusEnum, String underReason) {
boolean result;
LambdaUpdateWrapper<Goods> updateWrapper = this.getUpdateWrapperByStoreAuthority();
updateWrapper.set(Goods::getMarketEnable, goodsStatusEnum.name());
updateWrapper.set(Goods::getUnderMessage, underReason);
updateWrapper.eq(Goods::getStoreId, storeId);
result = this.update(updateWrapper);
boolean result = this.update(updateWrapper);
//修改规格商品
this.goodsSkuService.updateGoodsSkuStatusByStoreId(storeId, goodsStatusEnum.name(), null);
@@ -505,6 +509,13 @@ public class GoodsServiceImpl extends ServiceImpl<GoodsMapper, Goods> implements
} else {
this.updateEsGoods(goodsIds);
}
//下架商品发送消息
if (goodsStatusEnum.equals(GoodsStatusEnum.DOWN)) {
applicationEventPublisher.publishEvent(new TransactionCommitSendMQEvent("下架商品",
rocketmqCustomProperties.getGoodsTopic(), GoodsTagsEnum.DOWN.name(), JSONUtil.toJsonStr(goodsIds)));
}
}
/**

View File

@@ -158,7 +158,6 @@ public abstract class AbstractPromotionsServiceImpl<M extends BaseMapper<T>, T e
*/
@Override
public <S extends BasePromotionsSearchParams> IPage<T> pageFindAll(S searchParams, PageVO page) {
page.setNotConvert(false);
return this.page(PageUtil.initPage(page), searchParams.queryWrapper());
}

View File

@@ -276,7 +276,7 @@ public class KanjiaActivityGoodsServiceImpl extends AbstractPromotionsServiceImp
@Override
public void deleteByGoodsIds(List<String> goodsIds) {
this.remove(new QueryWrapper<KanjiaActivityGoods>().in("goods_id", goodsIds));
this.remove(new LambdaQueryWrapper<KanjiaActivityGoods>().in(KanjiaActivityGoods::getGoodsId, goodsIds));
}
/**

View File

@@ -1,5 +1,6 @@
package cn.lili.modules.promotion.serviceimpl;
import cn.hutool.json.JSONUtil;
import cn.lili.common.enums.PromotionTypeEnum;
import cn.lili.modules.promotion.entity.dos.*;
import cn.lili.modules.promotion.entity.dto.search.PromotionGoodsSearchParams;
@@ -121,8 +122,9 @@ public class PromotionServiceImpl implements PromotionService {
@Override
public void removeByGoodsIds(String goodsIdsJsonStr) {
promotionGoodsService.deletePromotionGoods(Arrays.asList(goodsIdsJsonStr.split(",")));
kanjiaActivityGoodsService.deleteByGoodsIds(Arrays.asList(goodsIdsJsonStr.split(",")));
List<String> goodsIds = JSONUtil.toList(goodsIdsJsonStr, String.class);
promotionGoodsService.deletePromotionGoodsByGoods(goodsIds);
kanjiaActivityGoodsService.deleteByGoodsIds(goodsIds);
}
private void getGoodsCurrentSeckill(String esPromotionKey, PromotionGoods promotionGoods, Map<String, Object> promotionMap) {

View File

@@ -39,6 +39,10 @@ public enum GoodsTagsEnum {
* "删除店铺商品索引"
*/
STORE_GOODS_DELETE("删除店铺商品索引"),
/**
* 下架商品"
*/
DOWN("下架商品"),
/**
* "删除商品"
*/