From 431c684f254ba5163cb6256739215e2099b91aaf Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期三, 31 三月 2021 19:17:09 +0800 Subject: [PATCH] 3.9.0兼容 --- src/main/java/com/yeshi/buwan/controller/parser/HomeParser.java | 82 ++++++++++++++++++++++++++++++++++------- 1 files changed, 68 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/yeshi/buwan/controller/parser/HomeParser.java b/src/main/java/com/yeshi/buwan/controller/parser/HomeParser.java index 42227ec..7d5a3f8 100644 --- a/src/main/java/com/yeshi/buwan/controller/parser/HomeParser.java +++ b/src/main/java/com/yeshi/buwan/controller/parser/HomeParser.java @@ -18,6 +18,7 @@ import com.yeshi.buwan.domain.video.InternetSearchVideo; import com.yeshi.buwan.domain.video.VideoWatchHistory; import com.yeshi.buwan.dto.log.BaseLog; +import com.yeshi.buwan.mogotv.MogoTVUtil; import com.yeshi.buwan.pptv.PPTVUtil; import com.yeshi.buwan.pptv.entity.PPTVSeries; import com.yeshi.buwan.service.imp.*; @@ -26,6 +27,7 @@ import com.yeshi.buwan.service.inter.juhe.YouKuService; import com.yeshi.buwan.service.inter.recommend.HomeRecommendSpecialService; import com.yeshi.buwan.service.inter.video.VideoWatchHistoryService; +import com.yeshi.buwan.tencent.TencentVideoUtil; import com.yeshi.buwan.util.*; import com.yeshi.buwan.util.annotation.RequireUid; import com.yeshi.buwan.util.factory.VideoInfoFactory; @@ -33,6 +35,7 @@ import com.yeshi.buwan.util.log.UserActiveLogFactory; import com.yeshi.buwan.util.log.VideoLogFactory; import com.yeshi.buwan.vo.AcceptData; +import com.yeshi.buwan.vo.video.VideoDetailVO; import com.yeshi.buwan.youku.YouKuUtil; import com.yeshi.buwan.youku.entity.YouKuSearchVideoMap; import com.yeshi.buwan.youku.entity.YouKuShowDetail; @@ -53,6 +56,9 @@ @Controller public class HomeParser { + + private Logger logger = LoggerFactory.getLogger(HomeParser.class); + @Resource private SystemService systemService; @Resource @@ -360,25 +366,62 @@ @Resource private YouKuUtil youKuUtil; + @Resource + private MogoTVUtil mogoTVUtil; + + @Resource + private TencentVideoUtil tencentVideoUtil; + public void getVideoDetailForInternetSearch(AcceptData acceptData, String videoId, HttpServletRequest request, PrintWriter out) { + String loginUid = request.getParameter("LoginUid"); + String from = request.getParameter("From"); InternetSearchVideo internetSearchVideo = internetSearchVideoService.selectByPrimaryKey(videoId); String resourceId = request.getParameter("ResourceId"); if (StringUtil.isNullOrEmpty(resourceId)) { resourceId = internetSearchVideo.getResourceIds().split(",")[0]; } - + VideoInfo info = null; if (Integer.parseInt(resourceId) == YouKuUtil.RESOURCE_ID) { - VideoInfo info = null; try { info = youKuUtil.getVideoInfo(internetSearchVideo); + } catch (Exception e) { + logger.error("鍏ㄧ綉鎼滆棰戣鎯呭嚭閿欙細" + videoId); + e.printStackTrace(); out.print(JsonUtil.loadFalseAdmin(e.getMessage())); return; } - JSONArray array = new JSONArray(); - JSONObject obj = new JSONObject(); + } else if (Integer.parseInt(resourceId) == MogoTVUtil.RESOURCE_ID) { + try { + info = mogoTVUtil.getVideoInfo(internetSearchVideo); + } catch (Exception e) { + logger.error("鍏ㄧ綉鎼滆棰戣鎯呭嚭閿欙細" + videoId); + out.print(JsonUtil.loadFalseAdmin(e.getMessage())); + return; + } + } else if (Integer.parseInt(resourceId) == TencentVideoUtil.RESOURCE_ID) { + try { + info = tencentVideoUtil.getVideoInfo(internetSearchVideo); + } catch (Exception e) { + logger.error("鍏ㄧ綉鎼滆棰戣鎯呭嚭閿欙細" + videoId); + out.print(JsonUtil.loadFalseAdmin(e.getMessage())); + return; + } + } + + LoggerUtil.getUserActiveLogger().info(UserActiveLogFactory.createVideoDetail(new BaseLog(acceptData, loginUid), videoId, info.getName(), from)); + + info.setWatchCount("" + (int) (Math.random() * 1000)); + + JSONArray array = new JSONArray(); + JSONObject obj = new JSONObject(); + + if (VersionUtil.isGraterThan390(acceptData.getPlatform(), acceptData.getVersion())) { + out.print(JsonUtil.loadTrueJson(StringUtil.outPutResultJson(new VideoDetailVO(Utils.convertVideo(info), new VideoDetailVO.VideoAdInfo(true,false), null)), array.toString(), + obj.toString())); + } else { out.print(JsonUtil.loadTrueJson(StringUtil.outPutResultJson(Utils.convertVideo(info)), array.toString(), obj.toString())); } @@ -495,28 +538,39 @@ info.setCommentCount((int) count); JSONObject obj = new JSONObject(); + VideoDetailVO.AttentionInfo attention = null; if (info.getVideoDetailList() != null) if (info.getVideoDetailList().size() > 1) {// 澶氶泦,鍙叧娉� boolean isAttention = false; if (!StringUtil.isNullOrEmpty(loginUid)) { isAttention = attentionService.isAddAttention(loginUid, info.getId()); } + attention = new VideoDetailVO.AttentionInfo(); + attention.setName(info.getName()); + attention.setPicture(info.getPicture()); + if (StringUtil.isNullOrEmpty(info.getUpdatetime())) { + attention.setUpdateInfo("鏇存柊:" + TimeUtil.getCommentTime(info.getCreatetime())); + } else { + attention.setUpdateInfo("鏇存柊:" + TimeUtil.getCommentTime(Long.parseLong(info.getUpdatetime()))); + } + attention.setAttention(isAttention); + + //鍏煎鑰佺増鏈� JSONObject attentionInfo = new JSONObject(); - attentionInfo.put("Name", info.getName()); - attentionInfo.put("Picture", info.getPicture()); - if (StringUtil.isNullOrEmpty(info.getUpdatetime())) - attentionInfo.put("UpdateInfo", "鏇存柊:" + TimeUtil.getCommentTime(info.getCreatetime())); - else - attentionInfo.put("UpdateInfo", "鏇存柊:" + TimeUtil.getCommentTime(Long.parseLong(info.getUpdatetime()))); - attentionInfo.put("IsAttention", isAttention); + attentionInfo.put("Picture", attention.getPicture()); + attentionInfo.put("Name", attention.getName()); + attentionInfo.put("UpdateInfo", attention.getUpdateInfo()); + attentionInfo.put("IsAttention", attention.isAttention()); obj.put("Attention", attentionInfo); } UserInfo user = userService.getUserInfo(acceptData.getUid()); - if (Utils.isTest(request, user, detailSystem.getId())) - out.print(JsonUtil.loadTrueJson("")); - else + if (VersionUtil.isGraterThan390(acceptData.getPlatform(), acceptData.getVersion())) { + out.print(JsonUtil.loadTrueJson(StringUtil.outPutResultJson(new VideoDetailVO(Utils.convertVideo(info), new VideoDetailVO.VideoAdInfo(true,true), attention)), array.toString(), + obj.toString())); + } else { out.print(JsonUtil.loadTrueJson(StringUtil.outPutResultJson(Utils.convertVideo(info)), array.toString(), obj.toString())); + } } -- Gitblit v1.8.0