From 32f925357776c46bd9e35cf9aad4fdd0f6535d1d Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 22 十月 2019 09:21:35 +0800 Subject: [PATCH] 订单奖励修改 --- fanli/src/main/java/com/yeshi/fanli/controller/client/v2/RecommendControllerV2.java | 176 ++++++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 138 insertions(+), 38 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 c40c2ac..4c6d10f 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 @@ -12,7 +12,6 @@ import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; import org.yeshi.utils.JsonUtil; import com.google.gson.Gson; @@ -21,6 +20,7 @@ import com.yeshi.fanli.dto.pdd.PDDGoodsDetail; import com.yeshi.fanli.dto.pdd.PDDGoodsResult; import com.yeshi.fanli.entity.accept.AcceptData; +import com.yeshi.fanli.entity.bus.homemodule.Special; import com.yeshi.fanli.entity.bus.homemodule.SwiperPicture; import com.yeshi.fanli.entity.common.JumpDetailV2; import com.yeshi.fanli.entity.jd.JDGoods; @@ -31,16 +31,17 @@ import com.yeshi.fanli.log.LogHelper; import com.yeshi.fanli.service.inter.common.JumpDetailV2Service; import com.yeshi.fanli.service.inter.config.ConfigService; +import com.yeshi.fanli.service.inter.count.HongBaoV2CountService; import com.yeshi.fanli.service.inter.goods.recommend.HomeRecommendGoodsService; import com.yeshi.fanli.service.inter.goods.recommend.RecommendGoodsDeleteHistoryService; import com.yeshi.fanli.service.inter.homemodule.DeviceSexService; import com.yeshi.fanli.service.inter.homemodule.SpecialService; import com.yeshi.fanli.service.inter.homemodule.SwiperPictureService; -import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService; import com.yeshi.fanli.service.inter.jd.JDGoodsService; import com.yeshi.fanli.service.inter.lable.QualityFlashSaleService; import com.yeshi.fanli.service.inter.lable.QualityGoodsService; import com.yeshi.fanli.service.inter.monitor.MonitorService; +import com.yeshi.fanli.service.inter.order.config.HongBaoManageService; import com.yeshi.fanli.service.inter.pdd.PDDGoodsService; import com.yeshi.fanli.service.inter.taobao.TaoBaoGoodsUpdateService; import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsDetailService; @@ -122,9 +123,14 @@ @Resource private DaTaoKeGoodsDetailV2Service daTaoKeGoodsDetailV2Service; - + @Resource private DaTaoKeGoodsService daTaoKeGoodsService; + + @Resource + private HongBaoV2CountService hongBaoV2CountService; + + /** * 鏂扮増鎺ㄨ崘涓撻绠$悊(1.5.3) @@ -172,10 +178,10 @@ root.put("spikeGoods", getSpikeGoodsContent(acceptData)); if (VersionUtil.greaterThan_1_6_5(acceptData.getPlatform(), acceptData.getVersion())) root.put("scoreExchange", getScoreExchangeInfo(acceptData)); - - if (VersionUtil.greaterThan_2_0_0(acceptData.getPlatform(), acceptData.getVersion())) + + if (VersionUtil.greaterThan_2_0(acceptData.getPlatform(), acceptData.getVersion())) root.put("searchDiscovery", getSearchDiscoveryInfo(acceptData)); - + out.print(JsonUtil.loadTrueResult(root)); } catch (Exception e) { out.print(JsonUtil.loadFalseResult(1, "鑾峰彇鏁版嵁澶辫触")); @@ -200,8 +206,10 @@ } private JSONObject getSpikeGoodsContent(AcceptData acceptData) { - List<String> dtoList = DaTaoKeUtil.getDingDongQiangTime(); long nowTime = System.currentTimeMillis(); + Calendar calendar= Calendar.getInstance(); + calendar.setTimeInMillis(nowTime); + List<String> dtoList = DaTaoKeUtil.getDingDongQiangTime(calendar); int dateNum = Integer.parseInt(TimeUtil.getGernalTime(nowTime, "ddHH")); String timeStr = null; int nextPos = 0; @@ -212,6 +220,7 @@ break; } } + if (timeStr == null) timeStr = dtoList.get(dtoList.size() - 1); @@ -349,8 +358,7 @@ root.put("tagImg", "http://img.flqapp.com/resource/score_exchange_tag.png"); return root; } - - + /** * 閲戝竵鍏戞崲淇℃伅 * @@ -365,30 +373,29 @@ for (int i = 0; i < arrayKeys.size(); i++) { String name = arrayKeys.get(i).toString(); JSONObject params = new JSONObject(); - params.put("searchKey", name); - + params.put("content", name); + SearchKeyVO keyVO = new SearchKeyVO(); keyVO.setName(name); keyVO.setParams(params.toString()); array.add(keyVO); } } - + JSONObject params = new JSONObject(); params.put("url", configService.get("search_discovery_h5_link")); - + JSONObject root = new JSONObject(); root.put("picture", "http://img.flqapp.com/resource/home_search_found.png"); root.put("params", params); root.put("jumpDetail", jumpDetailV2Service.getByTypeCache("web", Constant.getPlatformCode(acceptData.getPlatform()), Integer.parseInt(acceptData.getVersion()))); - + root.put("jumpResult", jumpDetailV2Service.getByTypeCache("search_goods_result", Constant.getPlatformCode(acceptData.getPlatform()), Integer.parseInt(acceptData.getVersion()))); root.put("keyList", array); return root; } - /** * 棣栭〉搴曢儴鍟嗗搧鎺ㄨ崘 @@ -653,61 +660,154 @@ out.print(JsonUtil.loadTrueResult(data)); } - - /** - * 鎼滅储鍙戠幇鍒楄〃 - * @param acceptData - * @param uid - * @param page - * @param out - */ - @RequestMapping(value = "getSearchDiscoveryTop", method = RequestMethod.POST) - public void getSearchDiscoveryTop(AcceptData acceptData, Long uid, Integer page, PrintWriter out) { + /** + * 鎼滅储鍙戠幇鍒楄〃 + * + * @param acceptData + * @param uid + * @param page + * @param out + */ + @RequestMapping(value = "getSearchDiscoveryTop") + public void getSearchDiscoveryTop(AcceptData acceptData, Long uid, Integer page, String callback, PrintWriter out) { int count = 0; List<SearchKeyTOPVO> list = new ArrayList<SearchKeyTOPVO>(); - - String keys = configService.getSearchDiscoveryKeys(); + + String keys = configService.getSearchDiscoveryKeys(); if (!StringUtil.isNullOrEmpty(keys)) { JSONArray arrayKeys = JSONArray.fromObject(keys); if (arrayKeys != null && arrayKeys.size() > 0) { count = arrayKeys.size(); BigDecimal fanLiRate = hongBaoManageService.getFanLiRate(); BigDecimal shareRate = hongBaoManageService.getShareRate(); - + int j = 1; - for (int i = (page-1) * 3; i < arrayKeys.size(); i++) { + for (int i = (page - 1) * 3; i < arrayKeys.size(); i++) { if (j > 3) break; - + String words = arrayKeys.get(i).toString(); List<GoodsDetailVO> listGoods = new ArrayList<GoodsDetailVO>(); - + List<DaTaoKeDetailV2> listTaoKe = daTaoKeGoodsService.getSearchDiscoveryGoods(words); if (listTaoKe != null && listTaoKe.size() > 0) { - for (DaTaoKeDetailV2 daTaoKeDetailV2: listTaoKe) { - listGoods.add(GoodsDetailVOFactory.convertTaoBao(TaoBaoUtil.convert(daTaoKeDetailV2), null, fanLiRate, - shareRate)); + for (DaTaoKeDetailV2 daTaoKeDetailV2 : listTaoKe) { + listGoods.add(GoodsDetailVOFactory.convertTaoBao(TaoBaoUtil.convert(daTaoKeDetailV2), null, + fanLiRate, shareRate)); if (listGoods.size() >= 3) break; } } - + SearchKeyTOPVO keyTOPVO = new SearchKeyTOPVO(); keyTOPVO.setName(words); keyTOPVO.setListGoods(listGoods); list.add(keyTOPVO); - + j++; } } } - + GsonBuilder gsonBuilder = new GsonBuilder().excludeFieldsWithoutExposeAnnotation(); Gson gson = gsonBuilder.create(); JSONObject data = new JSONObject(); data.put("count", count); data.put("list", gson.toJson(list)); + if (!StringUtil.isNullOrEmpty(callback)) { + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); + } else + out.print(JsonUtil.loadTrueResult(data)); + } + + /** + * 鑾峰彇涓撻娓犻亾娲诲姩 + * + * @param acceptData + * @param uid + * @param callback + * @param out + */ + @RequestMapping(value = "getSpecialChannelActivity") + public void getSpecialChannelActivity(AcceptData acceptData, Long uid, String callback, PrintWriter out) { + + int platformCode = Constant.getPlatformCode(acceptData.getPlatform()); + + List<Special> list = specialService.listByPlaceKey("special_channel_activity", platformCode, + Integer.parseInt(acceptData.getVersion())); + + long time = System.currentTimeMillis(); + // 鍒犻櫎灏氭湭鍚敤鐨勮繃鏈熺殑 + for (int i = 0; i < list.size(); i++) { + Special special = list.get(i); + if (special.getState() == 1L) { + list.remove(i--); + } else { + if (special.getStartTime() != null && special.getEndTime() != null) + special.setTimeTask(true); + else + special.setTimeTask(false); + + if (special.isTimeTask()) { + if (time < special.getStartTime().getTime() || time > special.getEndTime().getTime()) { + list.remove(i--); + } else// 璁剧疆鍊掕鏃� + { + special.setCountDownTime((special.getEndTime().getTime() - time) / 1000); + } + } + } + } + + GsonBuilder gsonBuilder = new GsonBuilder().excludeFieldsWithoutExposeAnnotation(); + Gson gson = gsonBuilder.create(); + JSONObject data = new JSONObject(); + data.put("count", list.size()); + data.put("list", gson.toJson(list)); + if (!StringUtil.isNullOrEmpty(callback)) { + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); + } else + out.print(JsonUtil.loadTrueResult(data)); + } + + + /** + * 鑾峰彇涓撻娓犻亾娲诲姩 + * + * @param acceptData + * @param uid + * @param callback + * @param out + */ + @RequestMapping(value = "getGuide") + public void getGuide(AcceptData acceptData, Long uid, PrintWriter out) { + String tips = null; + if (uid == null || uid <= 0) { + tips = configService.get("tip_guide_new_user"); + } else { + long rebateOrder = hongBaoV2CountService.countRebateOrder(uid); + long shareOrInviteOrder = hongBaoV2CountService.countShareOrInviteOrder(uid); + if (rebateOrder + shareOrInviteOrder >= 3) { + // 鐔熷鐗� + } else if (rebateOrder <= 0 && shareOrInviteOrder <= 0) { + // 鏂颁汉鐗� + tips = configService.get("tip_guide_new_user"); + } else if (rebateOrder > 0 && shareOrInviteOrder <= 0) { + // 鐪侀挶鐗� + tips = configService.get("tip_guide_save_money"); + } else { + // 璧氶挶鐗� + tips = configService.get("tip_guide_share_invite"); + } + } + + if (StringUtil.isNullOrEmpty(tips)) { + out.print(JsonUtil.loadFalseResult("鏆傛棤鎻愮ず")); + return; + } + + JSONObject data = JSONObject.fromObject(tips); out.print(JsonUtil.loadTrueResult(data)); } - + } -- Gitblit v1.8.0