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