From f537abe9f3646c739beaf15076246a2f71a347e9 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期四, 20 二月 2025 16:57:55 +0800 Subject: [PATCH] IOS广告增加区域屏蔽 --- src/main/java/com/yeshi/buwan/controller/api/VideoInfoController.java | 80 +++++++++++++++++++++++---------------- 1 files changed, 47 insertions(+), 33 deletions(-) diff --git a/src/main/java/com/yeshi/buwan/controller/api/VideoInfoController.java b/src/main/java/com/yeshi/buwan/controller/api/VideoInfoController.java index 4f17db3..8d525ab 100644 --- a/src/main/java/com/yeshi/buwan/controller/api/VideoInfoController.java +++ b/src/main/java/com/yeshi/buwan/controller/api/VideoInfoController.java @@ -1,45 +1,34 @@ package com.yeshi.buwan.controller.api; -import com.google.gson.*; -import com.ks.goldcorn.service.remote.GoldCornBalanceService; -import com.yeshi.buwan.domain.VideoInfo; +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; import com.yeshi.buwan.domain.user.LoginUser; -import com.yeshi.buwan.domain.vip.*; -import com.yeshi.buwan.exception.goldcorn.GoldCornException; -import com.yeshi.buwan.exception.order.OrderException; -import com.yeshi.buwan.exception.order.PayException; -import com.yeshi.buwan.pptv.PPTVUtil; -import com.yeshi.buwan.pptv.entity.PPTVSeries; -import com.yeshi.buwan.pptv.entity.VideoPPTVMap; +import com.yeshi.buwan.domain.vip.OrderRecord; +import com.yeshi.buwan.domain.vip.OrderType; +import com.yeshi.buwan.dto.order.PPTVVideoPrice; +import com.yeshi.buwan.videos.pptv.PPTVApiUtil; +import com.yeshi.buwan.videos.pptv.PPTVUtil; +import com.yeshi.buwan.videos.pptv.entity.PPTVProgram; +import com.yeshi.buwan.videos.pptv.entity.PPTVSeries; import com.yeshi.buwan.service.inter.LoginUserService; import com.yeshi.buwan.service.inter.juhe.PPTVService; import com.yeshi.buwan.service.inter.order.OrderService; import com.yeshi.buwan.service.inter.system.SystemConfigService; -import com.yeshi.buwan.service.inter.vip.VIPPriceService; import com.yeshi.buwan.service.inter.vip.VIPService; import com.yeshi.buwan.service.manager.GoldCornManager; -import com.yeshi.buwan.util.*; -import com.yeshi.buwan.util.factory.VideoInfoFactory; -import com.yeshi.buwan.util.user.VipUtil; -import com.yeshi.buwan.util.vip.VIPOrderUtil; +import com.yeshi.buwan.util.JsonUtilV2; import com.yeshi.buwan.vo.AcceptData; -import com.yeshi.buwan.vo.client.user.UserInfoVO; import net.sf.json.JSONObject; -import org.apache.dubbo.config.annotation.Reference; 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 org.yeshi.utils.StringUtil; -import org.yeshi.utils.annotation.RequestSerializableByKey; import javax.annotation.Resource; -import javax.servlet.http.HttpServletRequest; -import java.lang.reflect.Type; -import java.util.Date; -import java.util.List; -import java.util.UUID; +import java.util.HashSet; +import java.util.Set; @Controller @RequestMapping("api/v2/videoinfo") @@ -63,6 +52,9 @@ @Resource private GoldCornManager goldCornManager; + @Resource + private SystemConfigService systemConfigService; + private String getDurationDesc(int duration) { int h = duration / (60 * 60); int m = (duration % (60 * 60)) / 60; @@ -80,39 +72,61 @@ @RequestMapping("getPPVideoInfo") @ResponseBody - public String getPPVideoInfo(AcceptData acceptData, String loginUid, String infoId) { + public String getPPVideoInfo(AcceptData acceptData, String loginUid, String cid,String vid) { //鑾峰彇PPTV鐨勮棰戣鎯� - PPTVSeries series = pptvService.getSeriesDetail(infoId); + PPTVSeries series = pptvService.selectSeriesBySeriesCode(cid); if (series == null) { return JsonUtilV2.loadFalseJson("褰撳墠褰辩墖涓嶅瓨鍦�"); } - if (!"add".equalsIgnoreCase(series.getStatus()) && !"update".equalsIgnoreCase(series.getStatus())) { + if (!PPTVUtil.getAvaiableStates().contains(series.getStatus())) { return JsonUtilV2.loadFalseJson("褰撳墠褰辩墖宸蹭笅绾�"); } - if (series.getGoodsInfo() == null || StringUtil.isNullOrEmpty(series.getGoodsInfo().getGoodsNo())) { + PPTVProgram pptvProgram=pptvService.selectProgramById(vid); + + if (pptvProgram.getGoodsInfo() == null || StringUtil.isNullOrEmpty(pptvProgram.getGoodsInfo().getGoodsNo())) { + PPTVSeries detail = PPTVApiUtil.getDetail(cid); + series.setGoodsInfo(detail.getGoodsInfo()); + pptvService.updateProgramGoodsInfo(series.getInfoID(), series.getGoodsInfo()); + } + + if (pptvProgram.getGoodsInfo() == null || StringUtil.isNullOrEmpty(pptvProgram.getGoodsInfo().getGoodsNo())) { return JsonUtilV2.loadFalseJson("褰撳墠褰辩墖涓嶈兘璐拱"); + } + + Set<String> typeSets = new HashSet<>(); + + try { + String[] sts = series.getProgramcategory().split(","); + for (String st : sts) { + typeSets.add(st.split("-")[0]); + } + typeSets.remove("濂借幈鍧�"); + typeSets.remove("闄㈢嚎"); + } catch (Exception e) { } PPTVSimpleVideoInfo videoInfo = new PPTVSimpleVideoInfo(); videoInfo.setInfoId(series.getInfoID()); videoInfo.setName(series.getName()); videoInfo.setPicture(series.getCover()); - videoInfo.setCategory(series.getProgramcategory().replace("-鐢佃鍓�", "").replace("-鐢靛奖", "").replace("-鍔ㄦ极", "").replace("-灏戝効", "")); + videoInfo.setCategory(com.yeshi.buwan.util.StringUtil.join(typeSets, " ")); videoInfo.setActors(series.getActor()); videoInfo.setDirectors(series.getDirector()); - if (series.getSeries() != null && series.getSeries().size() > 0 && !StringUtil.isNullOrEmpty(series.getSeries().get(0).getDuration())) - videoInfo.setDuration(getDurationDesc(Integer.parseInt(series.getSeries().get(0).getDuration()))); + if (pptvProgram!=null && !StringUtil.isNullOrEmpty(pptvProgram.getDuration())) + videoInfo.setDuration(getDurationDesc(Integer.parseInt(pptvProgram.getDuration()))); videoInfo.setDesc(series.getDescription()); Gson gson = new GsonBuilder().create(); JSONObject data = new JSONObject(); data.put("video", gson.toJson(videoInfo)); + PPTVVideoPrice price = new Gson().fromJson(systemConfigService.getConfigValueByKeyCache("videoPrice"), PPTVVideoPrice.class); + //鍔犺浇浠锋牸淇℃伅 - JSONObject priceInfo=new JSONObject(); - priceInfo.put("discount","6鎶�"); - priceInfo.put("actualPrice","3.9"); + JSONObject priceInfo = new JSONObject(); + priceInfo.put("discount", price.getTag()); + priceInfo.put("actualPrice", price.getActualPrice()); data.put("price", priceInfo); if (!StringUtil.isNullOrEmpty(loginUid)) { -- Gitblit v1.8.0