From 7804263c6061aef813f0db27cb3046f746572606 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期六, 06 三月 2021 16:07:26 +0800
Subject: [PATCH] 后台管理优化

---
 src/main/java/com/yeshi/buwan/controller/admin/api/VideoAdminController.java |   87 ++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 81 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/yeshi/buwan/controller/admin/api/VideoAdminController.java b/src/main/java/com/yeshi/buwan/controller/admin/api/VideoAdminController.java
index 261d523..830a467 100644
--- a/src/main/java/com/yeshi/buwan/controller/admin/api/VideoAdminController.java
+++ b/src/main/java/com/yeshi/buwan/controller/admin/api/VideoAdminController.java
@@ -3,15 +3,20 @@
 import java.io.PrintWriter;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
 
 import javax.annotation.Resource;
 
+import com.google.common.base.Function;
+import com.google.common.collect.Maps;
 import com.google.gson.Gson;
-import com.yeshi.buwan.domain.SolrVideo;
+import com.yeshi.buwan.domain.solr.SolrAlbumVideo;
+import com.yeshi.buwan.domain.video.VideoInfoExtra;
 import com.yeshi.buwan.dto.search.SolrResultDTO;
 import com.yeshi.buwan.dto.search.SolrVideoSearchFilter;
 import com.yeshi.buwan.iqiyi.IqiYiNewAPI;
-import com.yeshi.buwan.service.manager.SolrAlbumDataManager;
+import com.yeshi.buwan.service.inter.video.VideoInfoExtraService;
+import com.yeshi.buwan.service.manager.SolrAlbumVideoDataManager;
 import com.yeshi.buwan.util.Constant;
 import com.yeshi.buwan.vo.video.VideoAdminInfoVO;
 import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
@@ -28,7 +33,6 @@
 import com.yeshi.buwan.service.imp.VideoManager;
 import com.yeshi.buwan.util.JsonUtil;
 import com.yeshi.buwan.util.StringUtil;
-import com.yeshi.buwan.util.TimeUtil;
 import com.yeshi.buwan.web.tag.PageEntity;
 
 import net.sf.json.JSONArray;
@@ -57,7 +61,10 @@
     private ThreadPoolTaskExecutor taskExecutor;
 
     @Resource
-    private SolrAlbumDataManager solrAlbumDataManager;
+    private SolrAlbumVideoDataManager solrAlbumDataManager;
+
+    @Resource
+    private VideoInfoExtraService videoInfoExtraService;
 
     @RequestMapping(value = "/changevideoshow", method = RequestMethod.POST)
     public void changeVideoShow(String id, int show, PrintWriter out) {
@@ -85,10 +92,15 @@
     }
 
     @RequestMapping(value = "/videolist", method = RequestMethod.POST)
-    public void videoList(int videotype, int page, String key, String type, String resourceIds, int contenttype, PrintWriter out) {
+    public void videoList(int videotype, int page, String key, String type, String resourceIds, int contenttype, String freeType, PrintWriter out) {
 
         if (StringUtil.isNullOrEmpty(type)) {
             type = "name";
+        }
+
+        Integer freeTypeInt = null;
+        if (!StringUtil.isNullOrEmpty(freeType)) {
+            freeTypeInt = Integer.parseInt(freeType);
         }
 
 
@@ -125,9 +137,11 @@
 
             filter.setSortKey("updateTime");
 
+            filter.setFreeType(freeTypeInt);
+
             SolrResultDTO dto = solrAlbumDataManager.find(filter, page, Constant.pageCount);
             if (dto.getVideoList() != null)
-                for (SolrVideo videoInfo : dto.getVideoList())
+                for (SolrAlbumVideo videoInfo : (List<SolrAlbumVideo>) dto.getVideoList())
                     voList.add(VideoAdminInfoVO.create(videoInfo));
             count = dto.getTotalCount();
         } else {
@@ -138,6 +152,30 @@
                 for (VideoInfo videoInfo : list)
                     voList.add(VideoAdminInfoVO.create(videoInfo));
         }
+
+        List<String> ids = new ArrayList<>();
+        for (VideoAdminInfoVO a : voList) {
+            ids.add(a.getId());
+        }
+
+        List<VideoInfoExtra> extraList = videoInfoExtraService.listByIds(ids);
+
+        Map<String, VideoInfoExtra> maps = Maps.uniqueIndex(extraList.iterator(), new Function<VideoInfoExtra, String>() {
+            @Override
+            public String apply(VideoInfoExtra extra) {
+                return extra.getId();
+            }
+        });
+        //杩囨护鍥剧墖
+        for (VideoAdminInfoVO a : voList) {
+            VideoInfoExtra extra = maps.get(a.getId());
+            if (extra != null) {
+                if (!StringUtil.isNullOrEmpty(extra.gethPosterPicture()))
+                    a.setPicture(extra.gethPosterPicture());
+            }
+        }
+
+
         JSONObject object = new JSONObject();
         object.put("code", 0);
         JSONObject data = new JSONObject();
@@ -206,5 +244,42 @@
         out.print(data);
     }
 
+    @RequestMapping("getVideoInfoExtra")
+    public void getVideoInfoExtra(String id, PrintWriter out) {
+        VideoInfoExtra extra = videoInfoExtraService.getById(id);
+        JSONObject object = new JSONObject();
+        if (extra != null) {
+            object.put("code", 0);
+            object.put("data", new Gson().toJson(extra));
+        } else {
+            object.put("code", 1);
+            object.put("msg", "鏃犻檮鍔犱俊鎭�");
+        }
+        out.print(object);
+    }
+
+    @RequestMapping("updateVideoInfoExtra")
+    public void updateVideoInfoExtra(String id, String vPicture, String hPicture, PrintWriter out) {
+        VideoInfoExtra extra = new VideoInfoExtra();
+        extra.setId(id);
+        if (StringUtil.isNullOrEmpty(vPicture)) {
+            vPicture = "";
+        }
+
+        extra.setvPosterPicture(vPicture);
+
+        if (StringUtil.isNullOrEmpty(hPicture)) {
+            hPicture = "";
+        }
+
+        extra.sethPosterPicture(hPicture);
+
+        videoInfoExtraService.save(extra);
+
+        JSONObject object = new JSONObject();
+        object.put("code", 0);
+        out.print(object);
+    }
+
 
 }

--
Gitblit v1.8.0