From 47cbb127cf545c1b7b2b4ec939d6a9036d7cb353 Mon Sep 17 00:00:00 2001 From: yujian <yujian@123.com> Date: 星期四, 26 九月 2019 17:12:52 +0800 Subject: [PATCH] 猜你喜欢专题 --- fanli/src/main/java/com/yeshi/fanli/controller/client/v2/CommonContentControllerV2.java | 47 +++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 39 insertions(+), 8 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/CommonContentControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/CommonContentControllerV2.java index 652b9dc..e8a3497 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/CommonContentControllerV2.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/CommonContentControllerV2.java @@ -7,6 +7,7 @@ import javax.annotation.Resource; +import org.springframework.cache.annotation.Cacheable; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; @@ -26,6 +27,7 @@ import com.yeshi.fanli.entity.bus.homemodule.SwiperPicture; import com.yeshi.fanli.entity.jd.JDGoods; import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief; +import com.yeshi.fanli.entity.taobao.TaoBaoSearchResult; import com.yeshi.fanli.service.inter.goods.CommonTemplateContentService; import com.yeshi.fanli.service.inter.goods.JDCommonTemplateContentService; import com.yeshi.fanli.service.inter.goods.PDDCommonTemplateContentService; @@ -36,6 +38,7 @@ import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.util.factory.goods.GoodsDetailVOFactory; import com.yeshi.fanli.util.taobao.TaoBaoUtil; +import com.yeshi.fanli.util.taobao.TaoKeApiUtil; import com.yeshi.fanli.vo.goods.GoodsDetailVO; import net.sf.json.JSONArray; @@ -136,16 +139,24 @@ } private void getListTB(AcceptData acceptData, String key, Integer page, String cid, PrintWriter out) { - CommonContentResult result = commonTemplateContentService.getContentList(CommonContentTypeEnum.valueOf(key), - cid, page, Constant.PAGE_SIZE); - - // 淇濈暀鏆傛椂涓嶅紑鍚紝寰呭悗缁紑鍚� - List<SwiperPicture> bannerList = new ArrayList<>(); + CommonContentResult result = null; + CommonContentTypeEnum type = CommonContentTypeEnum.valueOf(key); + if (type == CommonContentTypeEnum.guessLikeDevice) { + // 鐚滀綘鍠滄 + String idfa = acceptData.getIdfa(); + String imei = acceptData.getImei(); + result = guessLikeDeviceTB(idfa, imei, page); + } else { + result = commonTemplateContentService.getContentList(type, cid, page, Constant.PAGE_SIZE); + } JSONObject root = new JSONObject(); - if (page == 1) + if (page == 1) { + // 淇濈暀鏆傛椂涓嶅紑鍚紝寰呭悗缁紑鍚� + List<SwiperPicture> bannerList = new ArrayList<>(); root.put("bannerList", new Gson().toJson(bannerList)); - + } + JSONArray array = new JSONArray(); Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder()).create(); List<TaoBaoGoodsBrief> goodsList = result.getGoodsList(); @@ -154,7 +165,7 @@ for (TaoBaoGoodsBrief taoBaoGoodsBrief : goodsList) { GoodsDetailVO vo = GoodsDetailVOFactory.convertTaoBao(taoBaoGoodsBrief, null, fanLiRate, shareRate); - if (CommonContentTypeEnum.valueOf(key) == CommonContentTypeEnum.mianDan)// 鍏嶅崟鍟嗗搧 + if (type == CommonContentTypeEnum.mianDan)// 鍏嶅崟鍟嗗搧 { vo.getMoneyInfo().setFanliMoney("楼" + TaoBaoUtil.getAfterUseCouplePrice(taoBaoGoodsBrief)); vo.getMoneyInfo().setShareMoney("楼" + TaoBaoUtil.getAfterUseCouplePrice(taoBaoGoodsBrief)); @@ -259,5 +270,25 @@ data.put("count", count); out.print(JsonUtil.loadTrueResult(data)); } + + + /** + * 鐚滀綘鍠滄-娣樺疂璁惧鎺ㄨ崘 + * @param acceptData + * @param page + * @return + */ + @Cacheable(value = "commonContentCache", key = "#idfa+'-'+#imei+'-'+#page") + private CommonContentResult guessLikeDeviceTB(String idfa, String imei, Integer page) { + TaoBaoSearchResult searchResult = TaoKeApiUtil.guessDeviceLike(page, Constant.PAGE_SIZE, imei, idfa); + if (searchResult != null && searchResult.getTaoBaoGoodsBriefs() != null + && searchResult.getTaoBaoGoodsBriefs().size() > 0) { + CommonContentResult result = new CommonContentResult(); + result.setCount(searchResult.getPageEntity().getTotalCount()); + result.setGoodsList(searchResult.getTaoBaoGoodsBriefs()); + return result; + } + return null; + } } -- Gitblit v1.8.0