增加搜索商品时,无商品索引时初始化索引

This commit is contained in:
paulGao 2022-02-25 16:23:35 +08:00
parent 627a1d7d5a
commit 7358fd0c23

View File

@ -14,6 +14,7 @@ import cn.lili.modules.search.entity.dto.EsGoodsSearchDTO;
import cn.lili.modules.search.entity.dto.HotWordsDTO; import cn.lili.modules.search.entity.dto.HotWordsDTO;
import cn.lili.modules.search.entity.dto.ParamOptions; import cn.lili.modules.search.entity.dto.ParamOptions;
import cn.lili.modules.search.entity.dto.SelectorOptions; import cn.lili.modules.search.entity.dto.SelectorOptions;
import cn.lili.modules.search.service.EsGoodsIndexService;
import cn.lili.modules.search.service.EsGoodsSearchService; import cn.lili.modules.search.service.EsGoodsSearchService;
import com.alibaba.druid.util.StringUtils; import com.alibaba.druid.util.StringUtils;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@ -74,6 +75,9 @@ public class EsGoodsSearchServiceImpl implements EsGoodsSearchService {
@Autowired @Autowired
@Qualifier("elasticsearchRestTemplate") @Qualifier("elasticsearchRestTemplate")
private ElasticsearchRestTemplate restTemplate; private ElasticsearchRestTemplate restTemplate;
@Autowired
private EsGoodsIndexService esGoodsIndexService;
/** /**
* 缓存 * 缓存
*/ */
@ -82,6 +86,10 @@ public class EsGoodsSearchServiceImpl implements EsGoodsSearchService {
@Override @Override
public SearchPage<EsGoodsIndex> searchGoods(EsGoodsSearchDTO searchDTO, PageVO pageVo) { public SearchPage<EsGoodsIndex> searchGoods(EsGoodsSearchDTO searchDTO, PageVO pageVo) {
boolean exists = restTemplate.indexOps(EsGoodsIndex.class).exists();
if (!exists) {
esGoodsIndexService.init();
}
if (CharSequenceUtil.isNotEmpty(searchDTO.getKeyword())) { if (CharSequenceUtil.isNotEmpty(searchDTO.getKeyword())) {
cache.incrementScore(CachePrefix.HOT_WORD.getPrefix(), searchDTO.getKeyword()); cache.incrementScore(CachePrefix.HOT_WORD.getPrefix(), searchDTO.getKeyword());
} }