From ad3ac53da1c3a11a96ae62d790aa61a81b9eab91 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期六, 20 三月 2021 18:47:23 +0800 Subject: [PATCH] 完善APP首页顶部标签栏兼容,初步处理推送 --- src/main/java/com/yeshi/buwan/controller/admin/api/HomeBannerController.java | 37 +++++++++++++++++++++++++++++++------ 1 files changed, 31 insertions(+), 6 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 ae06466..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,11 +2,15 @@ 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; @@ -38,20 +42,39 @@ @Resource private SpecialService specialService; + @Resource + private HomeRecommendSpecialService homeRecommendSpecialService; + @RequestMapping(value = "/gethomeadlistadmin", method = RequestMethod.POST) - public void getHomeBannerListAdmin(int page, int detailsystem, String key, HttpSession session, PrintWriter out) { + 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(); + } + } - List<HomeAdAdmin> list = homeAdService.getHomeAdAdmin(key, SystemUtil.getAdminSelectedSystemId(session), detailsystem, page); - long count = homeAdService.getHomeAdAdminCount(key, SystemUtil.getAdminSelectedSystemId(session), detailsystem); + List<HomeAdAdmin> list = homeAdService.getHomeAdAdmin(key, SystemUtil.getAdminSelectedSystemId(session), detailsystem,dataKey, page); + + 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(); + + Map<String, HomeRecommendSpecial> specialMap = new HashMap<>(); + for (HomeAdAdmin ht : list) { + String specialDataKey = ht.getHomeAd().getHomeAd().getSpecialDataKey(); + if (specialMap.get(specialDataKey) == null) { + specialMap.put(specialDataKey, homeRecommendSpecialService.getSpecialByDataKey(specialDataKey)); + } + JSONObject root = new JSONObject(); ht.getHomeAd().getHomeAd().setSystem(null); ht.getHomeAd().getHomeAd().setTag(null); @@ -64,6 +87,7 @@ darray.add(gson.toJson(dss)); } root.put("detailSystemList", darray); + root.put("special", specialMap.get(specialDataKey)); array.add(root); } @@ -120,7 +144,7 @@ linkValue = ht.getVideo().getId(); break; case 2: - linkValue = JSONObject.fromObject(ht.getParams()).optString("id"); + linkValue = JSONObject.fromObject(ht.getParams()).optString("url"); break; case 3: linkValue = JSONObject.fromObject(ht.getParams()).optString("id"); @@ -147,6 +171,7 @@ 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) { @@ -176,7 +201,7 @@ } @RequestMapping(value = "/addhomead", method = RequestMethod.POST) - public void addHomeAd(HomeAd homeAd, String linkValue, String detailsystemids, PrintWriter out) { + 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) { @@ -197,7 +222,7 @@ homeAd.setParams(obj.toString()); } homeAd.setCreatetime(System.currentTimeMillis() + ""); - + homeAd.setSystem(SystemUtil.getAdminSelectedSystem(session)); Serializable id = homeAdService.addHomeAd(homeAd); if (id != null && !StringUtil.isNullOrEmpty(detailsystemids)) { -- Gitblit v1.8.0