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/admin/api/HomeBannerController.java | 365 +++++++++++++++++++++++++++------------------------ 1 files changed, 195 insertions(+), 170 deletions(-) diff --git a/src/main/java/com/yeshi/buwan/controller/admin/api/HomeBannerController.java b/src/main/java/com/yeshi/buwan/controller/admin/api/HomeBannerController.java index efd92b3..886bf4b 100644 --- a/src/main/java/com/yeshi/buwan/controller/admin/api/HomeBannerController.java +++ b/src/main/java/com/yeshi/buwan/controller/admin/api/HomeBannerController.java @@ -2,21 +2,25 @@ import java.io.PrintWriter; import java.io.Serializable; +import java.util.HashMap; import java.util.List; +import java.util.Map; import javax.annotation.Resource; +import javax.servlet.http.HttpSession; +import com.yeshi.buwan.domain.recommend.HomeRecommendSpecial; +import com.yeshi.buwan.service.inter.recommend.HomeRecommendSpecialService; +import com.yeshi.buwan.util.SystemUtil; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import com.google.gson.Gson; import com.google.gson.GsonBuilder; -import com.yeshi.buwan.domain.DetailSystem; +import com.yeshi.buwan.domain.system.DetailSystem; import com.yeshi.buwan.domain.HomeAd; -import com.yeshi.buwan.domain.HomeType; import com.yeshi.buwan.domain.SuperHomeAd; -import com.yeshi.buwan.domain.SuperHomeType; import com.yeshi.buwan.domain.VideoInfo; import com.yeshi.buwan.domain.special.Special; import com.yeshi.buwan.domain.web.DetailSystemSelect; @@ -33,189 +37,210 @@ @Controller @RequestMapping("admin/new/api/homebanner") public class HomeBannerController { - @Resource - private HomeAdService homeAdService; - @Resource - private SpecialService specialService; + @Resource + private HomeAdService homeAdService; + @Resource + private SpecialService specialService; - @RequestMapping(value = "/gethomeadlistadmin", method = RequestMethod.POST) - public void getHomeBannerListAdmin(int page, int detailsystem, String key, PrintWriter out) { - key = StringUtil.isNullOrEmpty(key) ? "" : key; + @Resource + private HomeRecommendSpecialService homeRecommendSpecialService; - List<HomeAdAdmin> list = homeAdService.getHomeAdAdmin(key, detailsystem, page); + @RequestMapping(value = "/gethomeadlistadmin", method = RequestMethod.POST) + public void getHomeBannerListAdmin(int page, int detailsystem, String key,String special, HttpSession session, PrintWriter out) { + key = StringUtil.isNullOrEmpty(key) ? "" : key; + String dataKey = null; + if (special != null && !special.equalsIgnoreCase("0")) { + HomeRecommendSpecial bean = homeRecommendSpecialService.getSpecial(special); + if (bean != null) { + dataKey = bean.getDataKey(); + } + } - long count = homeAdService.getHomeAdAdminCount(key, detailsystem); - PageEntity pe = new PageEntity(); - pe.setPageIndex(page); - pe.setPageSize(Constant.pageCount); - pe.setTotalCount((int) count); - JSONArray array = new JSONArray(); - Gson gson = new GsonBuilder().create(); - for (HomeAdAdmin ht : list) { - JSONObject root = new JSONObject(); - ht.getHomeAd().getHomeAd().setSystem(null); - ht.getHomeAd().getHomeAd().setTag(null); - ht.getHomeAd().getHomeAd().setAdmin(null); - ht.getHomeAd().getHomeAd().setVideo(null); - root.put("homeAd", gson.toJson(ht.getHomeAd().getHomeAd())); - JSONArray darray = new JSONArray(); - for (DetailSystemSelect dss : ht.getDetailSystemList()) { - dss.getDetailSystem().setSystem(null); - darray.add(gson.toJson(dss)); - } - root.put("detailSystemList", darray); - array.add(root); - } - JSONObject data = new JSONObject(); - data.put("pageEntity", gson.toJson(pe)); - data.put("data", array); + List<HomeAdAdmin> list = homeAdService.getHomeAdAdmin(key, SystemUtil.getAdminSelectedSystemId(session), detailsystem,dataKey, page); - JSONObject object = new JSONObject(); - object.put("code", 0); - object.put("data", data); - out.print(object); - } + long count = homeAdService.getHomeAdAdminCount(key, SystemUtil.getAdminSelectedSystemId(session), detailsystem,dataKey); + PageEntity pe = new PageEntity(); + pe.setPageIndex(page); + pe.setPageSize(Constant.pageCount); + pe.setTotalCount((int) count); + JSONArray array = new JSONArray(); + Gson gson = new GsonBuilder().create(); - @RequestMapping(value = "/deletesuperhomead", method = RequestMethod.POST) - public void deleteSuperHomeAd(long id, int detailsystem, PrintWriter out) { - homeAdService.deleteHomeAdAdmin(id + "", detailsystem + ""); - JSONObject object = new JSONObject(); - object.put("code", 0); - object.put("msg", "鍒犻櫎鎴愬姛"); - out.print(object); - } + Map<String, HomeRecommendSpecial> specialMap = new HashMap<>(); - @RequestMapping(value = "/addsuperhomead", method = RequestMethod.POST) - public void addSuperHomeAd(long id, int detailsystem, PrintWriter out) { - SuperHomeAd sht = new SuperHomeAd(); - sht.setCreatetime(System.currentTimeMillis() + ""); - sht.setDetailSystem(new DetailSystem(detailsystem + "")); - sht.setHomeAd(new HomeAd(id + "")); - homeAdService.addSuperHomeAd(sht); - JSONObject object = new JSONObject(); - object.put("code", 0); - object.put("msg", "娣诲姞鎴愬姛"); - out.print(object); - } + for (HomeAdAdmin ht : list) { + String specialDataKey = ht.getHomeAd().getHomeAd().getSpecialDataKey(); + if (specialMap.get(specialDataKey) == null) { + specialMap.put(specialDataKey, homeRecommendSpecialService.getSpecialByDataKey(specialDataKey)); + } - @RequestMapping(value = "/deletehomead", method = RequestMethod.POST) - public void deleteHomeAd(String ids, PrintWriter out) { - String[] idStrs = ids.split(","); - for (String id : idStrs) { - homeAdService.deleteHomeAd(id); - } - JSONObject object = new JSONObject(); - object.put("code", 0); - object.put("msg", "鍒犻櫎鎴愬姛"); - out.print(object); - } + JSONObject root = new JSONObject(); + ht.getHomeAd().getHomeAd().setSystem(null); + ht.getHomeAd().getHomeAd().setTag(null); + ht.getHomeAd().getHomeAd().setAdmin(null); + ht.getHomeAd().getHomeAd().setVideo(null); + root.put("homeAd", gson.toJson(ht.getHomeAd().getHomeAd())); + JSONArray darray = new JSONArray(); + for (DetailSystemSelect dss : ht.getDetailSystemList()) { + dss.getDetailSystem().setSystem(null); + darray.add(gson.toJson(dss)); + } + root.put("detailSystemList", darray); + root.put("special", specialMap.get(specialDataKey)); + array.add(root); + } - @RequestMapping(value = "/gethomead", method = RequestMethod.POST) - public void getHomeAd(String id, PrintWriter out) { - HomeAd ht = homeAdService.getHomeAdById(id); - String linkValue = ""; - switch (ht.getLinkType()) { - case 1: - linkValue = ht.getVideo().getId(); - break; - case 2: - linkValue = JSONObject.fromObject(ht.getParams()).optString("id"); - break; - case 3: - linkValue = JSONObject.fromObject(ht.getParams()).optString("id"); - break; - } - ht.setVideo(null); - ht.setAdmin(null); - ht.setSystem(null); - Gson gson = new GsonBuilder().create(); - JSONObject obj = JSONObject.fromObject(gson.toJson(ht)); - obj.put("linkValue", linkValue); + JSONObject data = new JSONObject(); + data.put("pageEntity", gson.toJson(pe)); + data.put("data", array); - JSONObject object = new JSONObject(); - object.put("code", 0); - object.put("data", obj); - out.print(object); - } + JSONObject object = new JSONObject(); + object.put("code", 0); + object.put("data", data); + out.print(object); + } - @RequestMapping(value = "/updatehomead", method = RequestMethod.POST) - public void updateHomeAd(HomeAd homeAd, String linkValue, PrintWriter out) { - HomeAd ht = homeAdService.getHomeAdById(homeAd.getId()); - ht.setClazz(homeAd.getClazz()); - ht.setIntroduction(homeAd.getIntroduction()); - ht.setLinkType(homeAd.getLinkType()); - ht.setOrderby(homeAd.getOrderby()); - ht.setPicture(homeAd.getPicture()); - if (homeAd.getLinkType() == 1) { - ht.setVideo(new VideoInfo(linkValue)); - } else if (homeAd.getLinkType() == 2) { - JSONObject obj = new JSONObject(); - obj.put("url", linkValue); - ht.setClazz("com.weikou.beibeivideo.ui.mine.BrowserActivity"); - ht.setVideo(new VideoInfo("1")); - ht.setParams(obj.toString()); - } else if (homeAd.getLinkType() == 3) { - JSONObject obj = new JSONObject(); - obj.put("id", linkValue); - Special se = specialService.getSpecial(linkValue); - if (se != null) { - obj.put("title", se.getName()); - } - ht.setVideo(new VideoInfo("1")); - ht.setClazz("com.weikou.beibeivideo.ui.common.MVideosActivity"); - ht.setParams(obj.toString()); - } + @RequestMapping(value = "/deletesuperhomead", method = RequestMethod.POST) + public void deleteSuperHomeAd(long id, int detailsystem, PrintWriter out) { + homeAdService.deleteHomeAdAdmin(id + "", detailsystem + ""); + JSONObject object = new JSONObject(); + object.put("code", 0); + object.put("msg", "鍒犻櫎鎴愬姛"); + out.print(object); + } - homeAdService.updateHomeAd(ht); + @RequestMapping(value = "/addsuperhomead", method = RequestMethod.POST) + public void addSuperHomeAd(long id, int detailsystem, PrintWriter out) { + SuperHomeAd sht = new SuperHomeAd(); + sht.setCreatetime(System.currentTimeMillis() + ""); + sht.setDetailSystem(new DetailSystem(detailsystem + "")); + sht.setHomeAd(new HomeAd(id + "")); + homeAdService.addSuperHomeAd(sht); + JSONObject object = new JSONObject(); + object.put("code", 0); + object.put("msg", "娣诲姞鎴愬姛"); + out.print(object); + } - JSONObject object = new JSONObject(); - object.put("code", 0); - object.put("msg", "鏇存敼鎴愬姛"); - out.print(object); - } + @RequestMapping(value = "/deletehomead", method = RequestMethod.POST) + public void deleteHomeAd(String ids, PrintWriter out) { + String[] idStrs = ids.split(","); + for (String id : idStrs) { + homeAdService.deleteHomeAd(id); + } + JSONObject object = new JSONObject(); + object.put("code", 0); + object.put("msg", "鍒犻櫎鎴愬姛"); + out.print(object); + } - @RequestMapping(value = "/addhomead", method = RequestMethod.POST) - public void addHomeAd(HomeAd homeAd, String linkValue, String detailsystemids, PrintWriter out) { - if (homeAd.getLinkType() == 1) { - homeAd.setVideo(new VideoInfo(linkValue)); - } else if (homeAd.getLinkType() == 2) { - JSONObject obj = new JSONObject(); - obj.put("url", linkValue); - homeAd.setClazz("com.weikou.beibeivideo.ui.mine.BrowserActivity"); - homeAd.setVideo(new VideoInfo("1")); - homeAd.setParams(obj.toString()); - } else if (homeAd.getLinkType() == 3) { - JSONObject obj = new JSONObject(); - obj.put("id", linkValue); - Special se = specialService.getSpecial(linkValue); - if (se != null) { - obj.put("title", se.getName()); - } - homeAd.setVideo(new VideoInfo("1")); - homeAd.setClazz("com.weikou.beibeivideo.ui.common.MVideosActivity"); - homeAd.setParams(obj.toString()); - } - homeAd.setCreatetime(System.currentTimeMillis() + ""); + @RequestMapping(value = "/gethomead", method = RequestMethod.POST) + public void getHomeAd(String id, PrintWriter out) { + HomeAd ht = homeAdService.getHomeAdById(id); + String linkValue = ""; + switch (ht.getLinkType()) { + case 1: + linkValue = ht.getVideo().getId(); + break; + case 2: + linkValue = JSONObject.fromObject(ht.getParams()).optString("url"); + break; + case 3: + linkValue = JSONObject.fromObject(ht.getParams()).optString("id"); + break; + } + ht.setVideo(null); + ht.setAdmin(null); + ht.setSystem(null); + Gson gson = new GsonBuilder().create(); + JSONObject obj = JSONObject.fromObject(gson.toJson(ht)); + obj.put("linkValue", linkValue); - Serializable id = homeAdService.addHomeAd(homeAd); + JSONObject object = new JSONObject(); + object.put("code", 0); + object.put("data", obj); + out.print(object); + } - if (id != null && !StringUtil.isNullOrEmpty(detailsystemids)) { - homeAd.setId(id + ""); - String[] dss = detailsystemids.split(","); - for (String did : dss) { - SuperHomeAd sht = new SuperHomeAd(); - sht.setCreatetime(System.currentTimeMillis() + ""); - sht.setDetailSystem(new DetailSystem(did)); - sht.setHomeAd(new HomeAd(homeAd.getId())); - homeAdService.addSuperHomeAd(sht); - } - } + @RequestMapping(value = "/updatehomead", method = RequestMethod.POST) + public void updateHomeAd(HomeAd homeAd, String linkValue, PrintWriter out) { + HomeAd ht = homeAdService.getHomeAdById(homeAd.getId()); + ht.setClazz(homeAd.getClazz()); + ht.setIntroduction(homeAd.getIntroduction()); + ht.setLinkType(homeAd.getLinkType()); + ht.setOrderby(homeAd.getOrderby()); + ht.setPicture(homeAd.getPicture()); + ht.setSpecialDataKey(homeAd.getSpecialDataKey()); + if (homeAd.getLinkType() == 1) { + ht.setVideo(new VideoInfo(linkValue)); + } else if (homeAd.getLinkType() == 2) { + JSONObject obj = new JSONObject(); + obj.put("url", linkValue); + ht.setClazz("com.weikou.beibeivideo.ui.mine.BrowserActivity"); + ht.setVideo(new VideoInfo("1")); + ht.setParams(obj.toString()); + } else if (homeAd.getLinkType() == 3) { + JSONObject obj = new JSONObject(); + obj.put("id", linkValue); + Special se = specialService.getSpecial(linkValue); + if (se != null) { + obj.put("title", se.getName()); + } + ht.setVideo(new VideoInfo("1")); + ht.setClazz("com.weikou.beibeivideo.ui.common.MVideosActivity"); + ht.setParams(obj.toString()); + } - JSONObject object = new JSONObject(); - object.put("code", 0); - object.put("msg", "娣诲姞鎴愬姛"); - out.print(object); - } + homeAdService.updateHomeAd(ht); + + JSONObject object = new JSONObject(); + object.put("code", 0); + object.put("msg", "鏇存敼鎴愬姛"); + out.print(object); + } + + @RequestMapping(value = "/addhomead", method = RequestMethod.POST) + public void addHomeAd(HomeAd homeAd, String linkValue, String detailsystemids,HttpSession session, PrintWriter out) { + if (homeAd.getLinkType() == 1) { + homeAd.setVideo(new VideoInfo(linkValue)); + } else if (homeAd.getLinkType() == 2) { + JSONObject obj = new JSONObject(); + obj.put("url", linkValue); + homeAd.setClazz("com.weikou.beibeivideo.ui.mine.BrowserActivity"); + homeAd.setVideo(new VideoInfo("1")); + homeAd.setParams(obj.toString()); + } else if (homeAd.getLinkType() == 3) { + JSONObject obj = new JSONObject(); + obj.put("id", linkValue); + Special se = specialService.getSpecial(linkValue); + if (se != null) { + obj.put("title", se.getName()); + } + homeAd.setVideo(new VideoInfo("1")); + homeAd.setClazz("com.weikou.beibeivideo.ui.common.MVideosActivity"); + homeAd.setParams(obj.toString()); + } + homeAd.setCreatetime(System.currentTimeMillis() + ""); + homeAd.setSystem(SystemUtil.getAdminSelectedSystem(session)); + Serializable id = homeAdService.addHomeAd(homeAd); + + if (id != null && !StringUtil.isNullOrEmpty(detailsystemids)) { + homeAd.setId(id + ""); + String[] dss = detailsystemids.split(","); + for (String did : dss) { + SuperHomeAd sht = new SuperHomeAd(); + sht.setCreatetime(System.currentTimeMillis() + ""); + sht.setDetailSystem(new DetailSystem(did)); + sht.setHomeAd(new HomeAd(homeAd.getId())); + homeAdService.addSuperHomeAd(sht); + } + } + + JSONObject object = new JSONObject(); + object.put("code", 0); + object.put("msg", "娣诲姞鎴愬姛"); + out.print(object); + } } -- Gitblit v1.8.0