package com.yeshi.buwan.controller.api;
|
|
import com.google.gson.Gson;
|
import com.yeshi.buwan.domain.video.VideoWatchHistory;
|
import com.yeshi.buwan.pptv.PPTVApiUtil;
|
import com.yeshi.buwan.pptv.entity.PPTVProgram;
|
import com.yeshi.buwan.pptv.entity.PPTVSeries;
|
import com.yeshi.buwan.pptv.entity.PPTVSeriesProgramMap;
|
import com.yeshi.buwan.pptv.entity.VideoPPTVMap;
|
import com.yeshi.buwan.service.inter.juhe.PPTVService;
|
import com.yeshi.buwan.service.inter.push.PushDeviceTokenService;
|
import com.yeshi.buwan.service.inter.video.VideoWatchHistoryService;
|
import com.yeshi.buwan.util.JsonUtil;
|
import com.yeshi.buwan.vo.AcceptData;
|
import com.yeshi.buwan.vo.video.PPTVVideoActivityInfoVO;
|
import com.yeshi.buwan.vo.video.PPTVWatchVIPVideoActivityWay;
|
import org.slf4j.Logger;
|
import org.slf4j.LoggerFactory;
|
import org.springframework.stereotype.Controller;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.ResponseBody;
|
|
import javax.annotation.Resource;
|
import java.math.BigDecimal;
|
import java.util.ArrayList;
|
import java.util.List;
|
|
@Controller
|
@RequestMapping("api/v2/video/play")
|
public class VideoPlayController {
|
|
Logger logger = LoggerFactory.getLogger(VideoPlayController.class);
|
|
@Resource
|
private PPTVService pptvService;
|
|
@Resource
|
private VideoWatchHistoryService videoWatchHistoryService;
|
|
|
/**
|
* PPTV播放
|
*
|
* @param acceptData
|
* @param loginUid
|
* @param Cid
|
* @param Vid
|
* @return
|
*/
|
@RequestMapping("pptvPlay")
|
@ResponseBody
|
public String pptvPlay(AcceptData acceptData, String loginUid, String Cid, String Vid) {
|
|
logger.info("播放PPTV:loginUid-{},cid-{},vid-{}", loginUid, Cid, Vid);
|
|
PPTVSeriesProgramMap map = pptvService.selectMapByCode(Cid, Vid);
|
if (map != null) {
|
String infoId = map.getInfoId();
|
VideoPPTVMap videoPPTVMap = pptvService.selectVideoPPTVMapByInfoId(infoId);
|
if (videoPPTVMap != null) {
|
PPTVProgram program = pptvService.selectProgramById(Vid);
|
if (program != null && program.getSeriesNum() != null) {
|
//当前播放的集数 program.getSeriesNum();
|
VideoWatchHistory history = new VideoWatchHistory();
|
history.setDevice(acceptData.getDevice());
|
history.setVideoId(videoPPTVMap.getVideoId());
|
history.setUid(loginUid);
|
history.setPosition(Integer.parseInt(program.getSeriesNum()) - 1);
|
videoWatchHistoryService.add(history);
|
}
|
}
|
}
|
return "";
|
}
|
|
/**
|
* 获取pptv的活动
|
*
|
* @param acceptData
|
* @param loginUid
|
* @param cid
|
* @param vid
|
* @return
|
*/
|
@RequestMapping("getPPTVVIPVideoActivity")
|
@ResponseBody
|
public String getPPTVVIPVideoActivity(AcceptData acceptData, String loginUid, String cid, String vid) {
|
//查询cid与vid的名字
|
PPTVSeries pptvSeries = pptvService.selectSeriesBySeriesCode(cid);
|
if (pptvSeries == null) {
|
try {
|
pptvSeries = PPTVApiUtil.getDetail(cid);
|
}catch(Exception e){
|
|
}
|
}
|
|
PPTVVideoActivityInfoVO vo = new PPTVVideoActivityInfoVO();
|
if (pptvSeries != null) {
|
vo.setVideoName("《" + pptvSeries.getName() + "》");
|
} else {
|
vo.setVideoName("《未知视频》");
|
}
|
|
List<PPTVWatchVIPVideoActivityWay> wayList = new ArrayList<>();
|
PPTVWatchVIPVideoActivityWay way = new PPTVWatchVIPVideoActivityWay();
|
way.setEndBgColor("#E9CE93");
|
way.setStartBgColor("#F7EDD7");
|
way.setEndPrice(new BigDecimal("99"));
|
way.setIcon("http://192.168.3.122:8848/BuWanWeb/icon_test1.png");
|
way.setStartPrice(new BigDecimal("6"));
|
way.setSubTitle("包月、季、年卡");
|
way.setTitle("VIP看高清 免广告");
|
way.setTextColor("#885E24");
|
way.setType("vip");
|
wayList.add(way);
|
vo.setWayList(wayList);
|
return JsonUtil.loadTrueJson(new Gson().toJson(vo));
|
}
|
|
|
}
|