From cdc3690a0354e01b44852f4c9da3b7204128d2eb Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期五, 13 八月 2021 18:46:36 +0800
Subject: [PATCH] 增加苹果内购回调日志,兼容苹果内购

---
 src/main/java/com/yeshi/buwan/service/manager/search/SolrShortVideoDataManager.java |   80 +++++++++++++++++++++++++++++++---------
 1 files changed, 62 insertions(+), 18 deletions(-)

diff --git a/src/main/java/com/yeshi/buwan/service/manager/search/SolrShortVideoDataManager.java b/src/main/java/com/yeshi/buwan/service/manager/search/SolrShortVideoDataManager.java
index 08eb4e6..541a930 100644
--- a/src/main/java/com/yeshi/buwan/service/manager/search/SolrShortVideoDataManager.java
+++ b/src/main/java/com/yeshi/buwan/service/manager/search/SolrShortVideoDataManager.java
@@ -1,9 +1,13 @@
 package com.yeshi.buwan.service.manager.search;
 
+import com.yeshi.buwan.domain.VideoResource;
+import com.yeshi.buwan.domain.entity.PlayUrl;
 import com.yeshi.buwan.domain.solr.SolrShortVideo;
 import com.yeshi.buwan.dto.search.SolrResultDTO;
 import com.yeshi.buwan.dto.search.SolrShortVideoSearchFilter;
+import com.yeshi.buwan.iqiyi.util.IqiyiUtil;
 import com.yeshi.buwan.util.StringUtil;
+import com.yeshi.buwan.util.video.shortvideo.ShortVideoUtil;
 import org.apache.solr.client.solrj.response.UpdateResponse;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -58,15 +62,15 @@
     /**
      * 鍒犻櫎鎵�鏈�
      */
-//    public void clear() {
-//        Query query = new SimpleQuery("name:*");
-//        UpdateResponse updateResponse = solrTemplate.delete(query);
-//        if (updateResponse.getStatus() == 0) {
-//            solrTemplate.commit();
-//        } else {
-//            solrTemplate.rollback();
-//        }
-//    }
+    public void clear() {
+        Query query = new SimpleQuery("name:*");
+        UpdateResponse updateResponse = solrTemplate.delete(query);
+        if (updateResponse.getStatus() == 0) {
+            solrTemplate.commit();
+        } else {
+            solrTemplate.rollback();
+        }
+    }
     public void deleteById(String id) {
         UpdateResponse updateResponse = solrTemplate.deleteById(CORE_NAME, id);
         if (updateResponse.getStatus() == 0) {
@@ -77,8 +81,12 @@
     }
 
     public SolrShortVideo findOne(String id) {
-        SolrShortVideo solrVideo = solrTemplate.getById(CORE_NAME, id, SolrShortVideo.class);
-        return solrVideo;
+        Query query = new SimpleQuery(new Criteria("id").is(id));
+        ScoredPage<SolrShortVideo> result = solrTemplate.queryForPage(CORE_NAME, query, SolrShortVideo.class);
+        if (result != null && result.getContent().size() > 0) {
+            return result.getContent().get(0);
+        }
+        return null;
     }
 
     public SolrResultDTO find(SolrShortVideoSearchFilter filter, int page, int pageSize) {
@@ -107,15 +115,35 @@
             query.addFilterQuery(new SimpleFilterQuery(Criteria.where("root_video_type").is(filter.getRootVideoType())));
         }
 
-        if (filter.getResourceId() != null) {
-            query.addFilterQuery(new SimpleFilterQuery(Criteria.where("resource_id").is(filter.getResourceId())));
-        }
-        if (filter.getCategoryName() != null) {
-            query.addFilterQuery(new SimpleFilterQuery(Criteria.where("free_type").contains(filter.getCategoryName())));
+        if (filter.getResourceIds() != null && filter.getResourceIds().size() > 0) {
+            Criteria criteria = null;
+            for (Integer resourceId : filter.getResourceIds()) {
+                if (criteria == null)
+                    criteria = Criteria.where("resource_id").is(resourceId);
+                else
+                    criteria = criteria.or("resource_id").is(resourceId);
+            }
+            query.addFilterQuery(new SimpleFilterQuery(criteria));
         }
 
-        if (filter.getArea() != null) {
-            query.addFilterQuery(new SimpleFilterQuery(Criteria.where("area").contains(filter.getArea())));
+        if (filter.getCategoryName() != null) {
+            query.addFilterQuery(new SimpleFilterQuery(Criteria.where("category_names").contains(filter.getCategoryName())));
+        }
+
+        //鍖哄煙
+        if (filter.getAreas() != null && filter.getAreas().size() > 0) {
+            Criteria criteria = null;
+            for (String area : filter.getAreas()) {
+                if (criteria == null)
+                    criteria = Criteria.where("area").is(area);
+                else
+                    criteria = criteria.or("area").is(area);
+            }
+            query.addFilterQuery(new SimpleFilterQuery(criteria));
+        }
+
+        if (filter.getTag() != null) {
+            query.addFilterQuery(new SimpleFilterQuery(Criteria.where("tag").is(filter.getTag())));
         }
 
 
@@ -132,4 +160,20 @@
         return new SolrResultDTO(list, (int) result.getTotalElements());
     }
 
+    public PlayUrl getPlayUrl(String id, VideoResource videoResource) {
+        //鐭棰�
+        if (ShortVideoUtil.isShortVideoId(id)) {
+            SolrShortVideo solrShortVideo = findOne(id);
+            if (solrShortVideo == null)
+                return null;
+            PlayUrl pu = new PlayUrl();
+            pu.setParams("");
+            pu.setPlayType(IqiyiUtil.PLAY_HTML);
+            pu.setResource(videoResource);
+            pu.setUrl(solrShortVideo.getPlayUrl());
+            return pu;
+        }
+        return null;
+    }
+
 }

--
Gitblit v1.8.0