admin
2021-01-23 0a18a8cb0a7a57bf1f82df425251334c57f8c39a
src/main/java/com/yeshi/buwan/controller/admin/api/VideoAdminController.java
@@ -1,11 +1,19 @@
package com.yeshi.buwan.controller.admin.api;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.Resource;
import com.google.gson.Gson;
import com.yeshi.buwan.domain.SolrVideo;
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.util.Constant;
import com.yeshi.buwan.vo.video.VideoAdminInfoVO;
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -48,6 +56,9 @@
   @Resource
   private ThreadPoolTaskExecutor taskExecutor;
    @Resource
    private SolrAlbumDataManager solrAlbumDataManager;
   @RequestMapping(value = "/changevideoshow", method = RequestMethod.POST)
   public void changeVideoShow(String id, int show, PrintWriter out) {
      VideoInfo vi = videoManager.getVideoInfo(id);
@@ -74,34 +85,53 @@
   }
   @RequestMapping(value = "/videolist", method = RequestMethod.POST)
   public void videoList(int videotype, int page, String key, int contenttype, PrintWriter out) {
      List<VideoInfo> list = classService.getTypeVideoListAdmin(videotype == 0 ? "" : videotype + "", page, key,
    public void videoList(int videotype, int page, String key, String resourceIds, int contenttype, PrintWriter out) {
        List<VideoInfo> list = null;
        long count = 0;
        List<VideoAdminInfoVO> voList = new ArrayList<>();
        //正片搜索
        if (contenttype == 1) {
            SolrVideoSearchFilter filter = new SolrVideoSearchFilter();
            filter.setKey(key);
            filter.setVideoType(videotype == 0 ? null : videotype);
            filter.setContentType(1);
            if (!StringUtil.isNullOrEmpty(resourceIds)) {
                JSONArray array = JSONArray.fromObject(resourceIds);
                String[] rids = new String[array.size()];
                for (int i = 0; i < array.size(); i++) {
                    rids[i] = array.optString(i);
                }
                filter.setResourceIds(rids);
            }
            filter.setSortKey("updateTime");
            SolrResultDTO dto = solrAlbumDataManager.find(filter, page, Constant.pageCount);
            if (dto.getVideoList() != null)
                for (SolrVideo videoInfo : dto.getVideoList())
                    voList.add(VideoAdminInfoVO.create(videoInfo));
            count = dto.getTotalCount();
        } else {
            list = classService.getTypeVideoListAdmin(videotype == 0 ? "" : videotype + "", page, key,
            contenttype);
      long count = classService.getTypeVideoListAdminCount(videotype == 0 ? "" : videotype + "", key, contenttype);
            count = classService.getTypeVideoListAdminCount(videotype == 0 ? "" : videotype + "", key, contenttype);
            if (list != null)
                for (VideoInfo videoInfo : list)
                    voList.add(VideoAdminInfoVO.create(videoInfo));
        }
      JSONObject object = new JSONObject();
      object.put("code", 0);
      JSONObject data = new JSONObject();
      JSONArray array = new JSONArray();
      for (VideoInfo vi : list) {
         JSONObject item = new JSONObject();
         item.put("id", vi.getId());
         item.put("name", vi.getName());
         item.put("picture", vi.getHpicture());
         item.put("updatetime",
               TimeUtil.getGernalTime(
                     Long.parseLong(
                           StringUtil.isNullOrEmpty(vi.getCreatetime() + "") ? "0" : vi.getCreatetime() + ""),
                     "yyyy-MM-dd"));
         item.put("show", vi.getShow());
         array.add(item);
      }
      PageEntity entity = new PageEntity();
      entity.setPageIndex(page);
      entity.setPageSize(20);
      entity.setTotalCount((int) count);
      data.put("pageEntity", new GsonBuilder().create().toJson(entity));
      data.put("data", array);
        data.put("data", new Gson().toJson(voList));
      object.put("data", data);
      out.println(object);
   }