admin
2021-03-18 b37275dba6b782bf3bb3817c4504f6cdef1bef7c
src/main/java/com/yeshi/buwan/service/imp/SearchService.java
@@ -9,6 +9,7 @@
import com.yeshi.buwan.domain.web.HotSearchAdmin;
import com.yeshi.buwan.dto.search.SolrResultDTO;
import com.yeshi.buwan.dto.search.SolrVideoSearchFilter;
import com.yeshi.buwan.pptv.PPTVUtil;
import com.yeshi.buwan.service.inter.video.VideoInfoExtraService;
import com.yeshi.buwan.service.manager.SolrAlbumVideoDataManager;
import com.yeshi.buwan.util.*;
@@ -17,6 +18,8 @@
import com.yeshi.buwan.vo.video.VideoListResultVO;
import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.orm.hibernate4.HibernateCallback;
import org.springframework.stereotype.Service;
@@ -28,6 +31,9 @@
@Service
public class SearchService {
    private Logger logger= LoggerFactory.getLogger(SearchService.class);
    @Resource
    private SearchDao searchDao;
    @Resource
@@ -285,7 +291,11 @@
            SolrVideoSearchFilter filter = new SolrVideoSearchFilter();
            filter.setKey(key);
            filter.setVideoType(videoType == 0 ? null : videoType);
            if (videoType == Constant.SEARCH_RESULT_TYPE_HIGH_DEFINITION) {
                filter.setResourceIds(new String[]{PPTVUtil.RESOURCE_ID + ""});
                logger.info("高清搜索# key:{}",key);
            } else
                filter.setVideoType(videoType == 0 ? null : videoType);
            filter.setContentType(1);
            SolrResultDTO solrResultDTO = solrAlbumDataManager.find(filter, page, pageSize);
@@ -328,11 +338,15 @@
            if (videoType == 0 && commonSolrPage > 0) {
                //搜索原始的
                List<VideoInfo> solrList = SolrUtil.search(key, commonSolrPage);
                for (VideoInfo vi : solrList) {
                    if (!solrAlbumVids.contains(vi.getId())) {
                        localList.add(vi);
                try {
                    List<VideoInfo> solrList = SolrUtil.search(key, commonSolrPage);
                    for (VideoInfo vi : solrList) {
                        if (!solrAlbumVids.contains(vi.getId())) {
                            localList.add(vi);
                        }
                    }
                } catch (Exception e) {
                }
            }
            System.out.println("搜索耗时:" + (System.currentTimeMillis() - startt));