From 9a78d406f8b821117c78a1bc717fe4b5813656b1 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 06 八月 2019 09:57:51 +0800 Subject: [PATCH] 首页底部推荐,详情页猜你喜欢异常保护 --- fanli/src/main/java/com/yeshi/fanli/controller/client/v2/RecommendControllerV2.java | 124 +++++++++++++++++++++-------------------- 1 files changed, 64 insertions(+), 60 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/RecommendControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/RecommendControllerV2.java index 0680b0f..eb27792 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/RecommendControllerV2.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/RecommendControllerV2.java @@ -72,13 +72,13 @@ @Resource private RedisManager redisManager; - + @Resource private HomeRecommendGoodsService homeRecommendGoodsService; - + @Resource private ConfigService configService; - + @Resource private MonitorService monitorService; @@ -90,26 +90,25 @@ @Resource private RecommendGoodsDeleteHistoryService recommendGoodsDeleteHistoryService; - + @Resource private JumpDetailV2Service jumpDetailV2Service; - + @Resource private DeviceSexService deviceSexService; - + @Resource private SpecialService specialService; @Resource private SwiperPictureService swiperPictureService; - + @Resource private JDGoodsService jdGoodsService; - + @Resource private PDDGoodsService pddGoodsService; - - + /** * 鏂扮増鎺ㄨ崘涓撻绠$悊(1.5.3) * @@ -164,9 +163,7 @@ } } } - - /** * 闄愭椂绉掓潃 1.5.3 * @@ -178,8 +175,6 @@ JSONObject root = getSpikeGoodsContent(acceptData); out.print(JsonUtil.loadTrueResult(root)); } - - private JSONObject getSpikeGoodsContent(AcceptData acceptData) { // 涓嬩竴娆″�掕鏃剁殑鏃堕棿 @@ -236,7 +231,7 @@ BigDecimal fanLiRate = hongBaoManageService.getFanLiRate(); BigDecimal shareRate = hongBaoManageService.getShareRate(); - + Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder()) .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create(); @@ -253,11 +248,12 @@ if (taoBaoGoodsBrief == null) { continue; } - GoodsDetailVO detailVO = GoodsDetailVOFactory.convertTaoBao(taoBaoGoodsBrief, null, fanLiRate, shareRate); - + GoodsDetailVO detailVO = GoodsDetailVOFactory.convertTaoBao(taoBaoGoodsBrief, null, fanLiRate, + shareRate); + JSONObject params = new JSONObject(); params.put("url", configService.get("spike_goods_link") + "?id=" + taoBaoGoodsBrief.getAuctionId()); - + JSONObject goods = new JSONObject(); goods.put("goods", gson.toJson(detailVO)); goods.put("params", params); @@ -289,41 +285,47 @@ return root; } - - - + /** * 棣栭〉搴曢儴鍟嗗搧鎺ㄨ崘 + * * @param acceptData * @param out */ @RequestMapping(value = "getGoodList") - public void getGoodList(AcceptData acceptData, Integer goodsType, Integer page, HttpServletRequest request, PrintWriter out) { - + public void getGoodList(AcceptData acceptData, Integer goodsType, Integer page, HttpServletRequest request, + PrintWriter out) { + if (goodsType == null || page == null) { out.print(JsonUtil.loadFalseResult("鍙傛暟淇℃伅涓嶆甯�")); return; } - - if (goodsType == Constant.SOURCE_TYPE_TAOBAO) { - taoBaoGuessUserLikeByDevice(acceptData, page, request, out); - return; + + try { + if (goodsType == Constant.SOURCE_TYPE_TAOBAO) { + taoBaoGuessUserLikeByDevice(acceptData, page, request, out); + return; + } + + if (goodsType == Constant.SOURCE_TYPE_JD) { + getIndexJDGoods(acceptData, page, out); + return; + } + + if (goodsType == Constant.SOURCE_TYPE_PDD) { + getIndexPDDGoods(acceptData, page, out); + return; + } + out.print(JsonUtil.loadFalseResult("鍟嗗搧绫诲瀷閿欒")); + } catch (Exception e) { + LogHelper.errorDetailInfo(e); + JSONObject data = new JSONObject(); + data.put("list", new JSONArray()); + data.put("count", 0); + out.print(JsonUtil.loadTrueResult(data)); } - - if (goodsType == Constant.SOURCE_TYPE_JD) { - getIndexJDGoods(acceptData, page, out); - return; - } - - if (goodsType == Constant.SOURCE_TYPE_PDD) { - getIndexPDDGoods(acceptData, page, out); - return; - } - out.print(JsonUtil.loadFalseResult("鍟嗗搧绫诲瀷閿欒")); } - - - + /** * 鏍规嵁璁惧淇℃伅鑾峰彇鐚滀綘鍠滄鐨勫唴瀹� * @@ -333,11 +335,12 @@ * @param idfa * -IOS鐨刬dfa骞垮憡鏍囪瘑淇℃伅 */ - public void taoBaoGuessUserLikeByDevice(AcceptData acceptData, int page, HttpServletRequest request, PrintWriter out) { + public void taoBaoGuessUserLikeByDevice(AcceptData acceptData, int page, HttpServletRequest request, + PrintWriter out) { int pageSize = Constant.PAGE_SIZE; JSONArray array = new JSONArray(); Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder()).create(); - + String idfa = acceptData.getIdfa(); String imei = acceptData.getImei(); if (VersionUtil.greaterThan_1_5_70(acceptData.getPlatform(), acceptData.getVersion())) { @@ -364,20 +367,22 @@ for (int i = list.size() - 1; i >= 0; i--) { TLJBuyGoods goods = list.get(i); BigDecimal rateBuy = TaoBaoConstant.OWN_BUY_WITHOUT_FANLI_RATE; - GoodsDetailVO detailVO = GoodsDetailVOFactory.convertTaoBao(goods.getGoods(), null, rateBuy, rateBuy); - - String hongBao = TaoBaoUtil.getGoodsHongBaoInfo(goods.getGoods(),TaoBaoConstant.OWN_BUY_WITHOUT_FANLI_RATE); - + GoodsDetailVO detailVO = GoodsDetailVOFactory.convertTaoBao(goods.getGoods(), null, rateBuy, + rateBuy); + + String hongBao = TaoBaoUtil.getGoodsHongBaoInfo(goods.getGoods(), + TaoBaoConstant.OWN_BUY_WITHOUT_FANLI_RATE); + ReduceHongBao reduceHongBao = new ReduceHongBao(); reduceHongBao.setLeft(goods.getLeftHongBaoCount()); reduceHongBao.setMoney(hongBao); reduceHongBao.setName("浠樻绔嬪噺 "); reduceHongBao.setTip(""); reduceHongBao.setTotal(goods.getTotalHongBaoCount()); - + OtherInfo otherInfo = new OtherInfo(); otherInfo.setReduceHongBao(reduceHongBao); - + detailVO.setOtherInfo(otherInfo); detailVO.setPictureTag(new ClientTextStyleVO("绔嬪噺TOP" + (i + 1), "#E5005C", "#FCE431", null)); detailVO.setRecommend(true); @@ -417,20 +422,21 @@ if (gList != null) { BigDecimal fanLiRate = hongBaoManageService.getFanLiRate(); BigDecimal shareRate = hongBaoManageService.getShareRate(); - + for (TaoBaoGoodsBrief goods : gList) { if (!StringUtil.isNullOrEmpty(goods.getCouponInfo()) && goods.getCouponAmount() != null && goods.getCouponAmount().compareTo(new BigDecimal("5")) >= 0 && goods.getBiz30day() > 1000 && !StringUtil.isNullOrEmpty(goods.getPictUrlWhite())) { - - GoodsDetailVO detailVO = GoodsDetailVOFactory.convertTaoBao(goods, null, fanLiRate, shareRate); + + GoodsDetailVO detailVO = GoodsDetailVOFactory.convertTaoBao(goods, null, fanLiRate, + shareRate); detailVO.setRecommend(true); goodsList.add(detailVO); } } } - + try { monitorService.addClientAPIMonitor(MonitorFactory.createClientAPI(request, 0, (int) (java.lang.System.currentTimeMillis() - startTime), "鎺ㄨ崘鏁伴噺:" + goodsList.size())); @@ -467,12 +473,10 @@ data.put("count", 1000); out.print(JsonUtil.loadTrueResult(data)); } - - - - + /** * 浜笢棣栭〉鍟嗗搧 + * * @param acceptData * @param page * @param out @@ -506,9 +510,9 @@ out.print(JsonUtil.loadTrueResult(data)); } - /** - * 鐖嗘鎺掕鍟嗗搧-瀹炴椂鐑攢姒� + * 鐖嗘鎺掕鍟嗗搧-瀹炴椂鐑攢姒� + * * @param acceptData * @param page * @param out @@ -537,5 +541,5 @@ data.put("count", count); out.print(JsonUtil.loadTrueResult(data)); } - + } -- Gitblit v1.8.0