From 28cf328a098334b51a3e9d2d56f983fb8c862211 Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期六, 23 五月 2020 09:54:38 +0800
Subject: [PATCH] 足迹、收藏订单兼容新需求

---
 fanli/src/main/java/com/yeshi/fanli/controller/client/v1/RecommendController.java |  122 ++++++++++++++++------------------------
 1 files changed, 50 insertions(+), 72 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/RecommendController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/RecommendController.java
index ab3b4cc..a9f0f41 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/RecommendController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/RecommendController.java
@@ -30,7 +30,6 @@
 import com.yeshi.fanli.entity.accept.AcceptData;
 import com.yeshi.fanli.entity.bus.homemodule.Special;
 import com.yeshi.fanli.entity.bus.homemodule.SuperSpecial;
-import com.yeshi.fanli.entity.bus.homemodule.SwiperPicture;
 import com.yeshi.fanli.entity.bus.lable.QualityFactory;
 import com.yeshi.fanli.entity.bus.recommend.Honest;
 import com.yeshi.fanli.entity.bus.recommend.RecommendBanner;
@@ -49,6 +48,7 @@
 import com.yeshi.fanli.entity.goods.CommonGoods;
 import com.yeshi.fanli.entity.goods.ScanHistoryV2;
 import com.yeshi.fanli.entity.system.BusinessSystem;
+import com.yeshi.fanli.entity.system.ConfigKeyEnum;
 import com.yeshi.fanli.entity.system.SystemClientParams;
 import com.yeshi.fanli.entity.taobao.ClientTBPid;
 import com.yeshi.fanli.entity.taobao.PidUser;
@@ -99,9 +99,8 @@
 import com.yeshi.fanli.service.inter.taobao.TaoBaoGoodsUpdateService;
 import com.yeshi.fanli.service.inter.taobao.TaoBaoShopService;
 import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService;
-import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsDetailService;
+import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsDetailV2Service;
 import com.yeshi.fanli.service.inter.tlj.ConfigTaoLiJinService;
-import com.yeshi.fanli.service.inter.tlj.DeviceTaoLiJinRecordService;
 import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinOriginService;
 import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinRecordService;
 import com.yeshi.fanli.service.inter.user.ShamUserService;
@@ -112,6 +111,7 @@
 import com.yeshi.fanli.service.inter.user.UserInfoService;
 import com.yeshi.fanli.util.Constant;
 import com.yeshi.fanli.util.MoneyBigDecimalUtil;
+import com.yeshi.fanli.util.RedisKeyEnum;
 import com.yeshi.fanli.util.RedisManager;
 import com.yeshi.fanli.util.StringUtil;
 import com.yeshi.fanli.util.TaoBaoConstant;
@@ -125,6 +125,8 @@
 import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
 import com.yeshi.fanli.util.taobao.TaoLiJinUtil;
 import com.yeshi.fanli.vo.goods.taobao.TLJBuyHongBaoVO;
+import com.yeshi.fanli.vo.homemodule.BannerVO;
+import com.yeshi.fanli.vo.homemodule.SpecialVO;
 import com.yeshi.fanli.vo.msg.ClientTextStyleVO;
 import com.yeshi.fanli.vo.tlj.SpreadHongBao;
 import com.yeshi.fanli.vo.user.UserSettingsVO;
@@ -242,7 +244,7 @@
 	private TaoBaoShopService taoBaoShopService;
 
 	@Resource
-	private DaTaoKeGoodsDetailService daTaoKeGoodsDetailService;
+	private DaTaoKeGoodsDetailV2Service daTaoKeGoodsDetailV2Service;
 
 	@Resource
 	private UserMoneyExtraService userMoneyExtraService;
@@ -252,9 +254,6 @@
 
 	@Resource
 	private ConfigTaoLiJinService configTaoLiJinService;
-
-	@Resource
-	private DeviceTaoLiJinRecordService deviceTaoLiJinRecordService;
 
 	@Resource
 	private DeviceSexService deviceSexService;
@@ -683,11 +682,11 @@
 
 			// taoBaoGoodsBriefExtra.setAuctionUrl(null);
 			data.put("taobao", taobaoJson);
-			String info = configService.get("detail_prompt");
+			String info = configService.get(ConfigKeyEnum.detailPrompt.getKey());
 			data.put("info", info);
-			String onlyInfo = configService.get("only_info");
+			String onlyInfo = configService.get(ConfigKeyEnum.onlyInfo.getKey());
 			data.put("only", onlyInfo);
-			data.put("helpUrl", configService.get("old_goods_detail_help_url"));
+			data.put("helpUrl", configService.get(ConfigKeyEnum.oldGoodsDetailHelpUrl.getKey()));
 
 			int showType = taoBaoGoodsBriefExtra.getShowType();
 			String price = "";
@@ -702,7 +701,7 @@
 			data.put("shareTitle", taoBaoGoodsBriefExtra.getTitle());
 			data.put("shareContent", "楼" + price + "鍏�");
 			data.put("shareImg", taoBaoGoodsBriefExtra.getPictUrl());
-			String html = configService.get("downAPP");
+			String html = configService.get(ConfigKeyEnum.downAPP.getKey());
 			data.put("downAPP", html);
 			String shareSinaContent = configService.get("shareSinaContent");
 			data.put("shareSina",
@@ -1077,7 +1076,7 @@
 			return;
 		}
 
-		List<TaoBaoGoodsBrief> goodsList = TaoKeApiUtil.getRelationGoodsRecommend(id, 6);
+		List<TaoBaoGoodsBrief> goodsList = TaoKeApiUtil.guessLikeByAuctionId(id, 6);
 		if (goodsList == null)
 			goodsList = new ArrayList<>();
 
@@ -1208,10 +1207,10 @@
 
 			List<ScanHistoryV2> list = scanHistoryV2Service.getScanHistoryByDeviceOrUid(
 					StringUtil.isNullOrEmpty(uid) ? null : Long.parseLong(uid), acceptData.getDevice(), page, 20,
-					Constant.SOURCE_TYPE_TAOBAO);
+					Constant.SOURCE_TYPE_TAOBAO, true);
 			long count = scanHistoryV2Service.getCountByDeviceOrUid(
 					StringUtil.isNullOrEmpty(uid) ? null : Long.parseLong(uid), acceptData.getDevice(),
-					Constant.SOURCE_TYPE_TAOBAO);
+					Constant.SOURCE_TYPE_TAOBAO, true);
 
 			JSONObject data = new JSONObject();
 			data.put("count", count);
@@ -1309,8 +1308,7 @@
 		 * 
 		 */
 		// if (Constant.IS_OUTNET) {
-		String key = "linkParse-" + acceptData.getDevice() + "-" + id;
-
+		String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.taobaolinkParse, acceptData.getDevice() + "-" + id);
 		String value = redisManager.getCommonString(key);
 		if (!StringUtil.isNullOrEmpty(value)) {
 			out.print(JsonUtil.loadFalseResult(11, "璇锋眰棰戠巼闄愬埗"));
@@ -1419,7 +1417,7 @@
 			if (!StringUtil.isNullOrEmpty(imei) || !StringUtil.isNullOrEmpty(idfa)) {
 				long startTime = java.lang.System.currentTimeMillis();
 
-				TaoBaoSearchResult result = TaoKeApiUtil.guessDeviceLike(page, 50, imei, idfa);
+				TaoBaoSearchResult result = TaoKeApiUtil.guessDeviceLike(page, 50, imei, idfa,"");
 
 				if (result != null && result.getTaoBaoGoodsBriefs() != null) {
 					// 绛涢��
@@ -1431,7 +1429,7 @@
 					// filter
 					try {
 
-						gList = daTaoKeGoodsDetailService.filterTaoBaoGoods(gList);
+						gList = daTaoKeGoodsDetailV2Service.filterTaoBaoGoods(gList);
 					} catch (Exception e) {
 					}
 
@@ -1595,14 +1593,13 @@
 			return;
 		}
 
-		List<SwiperPicture> listswiper = null;
+		List<BannerVO> listswiper = null;
 		if (!StringUtil.isNullOrEmpty(specialCard)) {
 			try {
-
-				listswiper = swiperPictureService.getByBannerCard(swiperCard);
-
+				listswiper = swiperPictureService.getByBannerCardAndVersion(swiperCard, acceptData.getPlatform(),
+						Integer.parseInt(acceptData.getVersion()));
 				if (listswiper == null) {
-					listswiper = new ArrayList<SwiperPicture>();
+					listswiper = new ArrayList<BannerVO>();
 				}
 
 			} catch (Exception e) {
@@ -1611,16 +1608,14 @@
 		}
 
 		Special miaoShaSpecial = null;
-		List<Special> honestList = new ArrayList<Special>();
-		List<Special> specialList = new ArrayList<Special>();
+		List<SpecialVO> honestList = new ArrayList<SpecialVO>();
+		List<SpecialVO> specialList = new ArrayList<SpecialVO>();
 
 		if (!StringUtil.isNullOrEmpty(specialCard)) {
 			try {
-				List<Special> listSpecial = specialService.listBySystemAndCard(specialCard, system.getId());
-
+				List<SpecialVO> listSpecial = specialService.listBySystemAndCard(specialCard, system.getId());
 				if (listSpecial != null && listSpecial.size() > 0) {
-					for (Special special : listSpecial) {
-
+					for (SpecialVO special : listSpecial) {
 						if ("闄愭椂绉掓潃".equals(special.getName())) {
 							miaoShaSpecial = special;
 							continue;
@@ -1633,14 +1628,11 @@
 							// 鍏朵粬涓撻
 							specialList.add(special);
 						}
-
 					}
 				}
-
 			} catch (Exception e) {
 				e.printStackTrace();
 			}
-
 		}
 
 		/* 闄愭椂绉掓潃 - 鏃堕棿澶勭悊 */
@@ -1677,7 +1669,7 @@
 		JSONObject invite = new JSONObject();
 		JumpDetailV2 jumpDetail = jumpDetailV2Service.getByTypeCache("invite");
 		invite.put("jumpDetail", jumpDetail);
-		invite.put("picture", configService.get("home_invite_banner"));
+		invite.put("picture", configService.get(ConfigKeyEnum.homeInviteBanner.getKey()));
 
 		if ("ios".equalsIgnoreCase(acceptData.getPlatform())
 				&& configService.iosOnLining(Integer.parseInt(acceptData.getVersion()))) {
@@ -1719,30 +1711,30 @@
 			JSONObject root = specialService.listCacheSpecialToIndex(acceptData, deviceSex);
 
 			// 2銆侀《閮ㄨ疆鎾浘
-			List<SwiperPicture> topPicList = getSwiperByCard("index_top");
+			List<BannerVO> topPicList = getSwiperByCard("index_top", acceptData);
 			if (topPicList == null) {
-				topPicList = new ArrayList<SwiperPicture>();
+				topPicList = new ArrayList<BannerVO>();
 			}
 			root.put("topPicList", JsonUtil.getApiCommonGson().toJson(topPicList));
 
 			// 3銆侀個璇锋湁濂�
-			List<SwiperPicture> invitePicList = null;
+			List<BannerVO> invitePicList = null;
 			if ("ios".equalsIgnoreCase(acceptData.getPlatform())
 					&& configService.iosOnLining(Integer.parseInt(acceptData.getVersion()))) {
 				// 濡傛灉IOS褰撳墠鐗堟湰澶勪簬瀹℃牳鐘舵�佸氨涓嶈繑鍥�
 			} else {
-				invitePicList = getSwiperByCard("index_invite");
+				invitePicList = getSwiperByCard("index_invite", acceptData);
 			}
 
 			if (invitePicList == null) {
-				invitePicList = new ArrayList<SwiperPicture>();
+				invitePicList = new ArrayList<BannerVO>();
 			}
 			root.put("invitePicList", JsonUtil.getApiCommonGson().toJson(invitePicList));
 
 			// 4銆両OS鐨勫簳閮ㄧ綉椤甸摼鎺�
 			String platform = acceptData.getPlatform();
 			if ("ios".equalsIgnoreCase(platform)) {
-				root.put("htmlLink", configService.get("index_html_link_ios"));
+				root.put("htmlLink", configService.get(ConfigKeyEnum.indexHtmlLinkIos.getKey()));
 			}
 
 			root.put("spikeGoods", getSpikeGoodsContent(acceptData));
@@ -1765,22 +1757,23 @@
 	 * @param acceptData
 	 * @return
 	 */
-	public List<SwiperPicture> getInvitePicList(Long uid, AcceptData acceptData) {
+	public List<BannerVO> getInvitePicList(Long uid, AcceptData acceptData) {
 		// 濡傛灉IOS褰撳墠鐗堟湰澶勪簬瀹℃牳鐘舵�佸氨涓嶈繑鍥�
 		if ("ios".equalsIgnoreCase(acceptData.getPlatform())
 				&& configService.iosOnLining(Integer.parseInt(acceptData.getVersion()))) {
 			return null;
 		}
 
-		List<SwiperPicture> invitePicList = getSwiperByCard("index_invite");
+		List<BannerVO> invitePicList = getSwiperByCard("index_invite", acceptData);
 
 		return invitePicList;
 	}
 
-	public List<SwiperPicture> getSwiperByCard(String card) {
-		List<SwiperPicture> swiperList = null;
+	public List<BannerVO> getSwiperByCard(String card, AcceptData acceptData) {
+		List<BannerVO> swiperList = null;
 		try {
-			swiperList = swiperPictureService.getByBannerCard(card);
+			swiperList = swiperPictureService.getByBannerCardAndVersion(card, acceptData.getPlatform(),
+					Integer.parseInt(acceptData.getVersion()));
 		} catch (Exception e) {
 			try {
 				LogHelper.errorDetailInfo(e);
@@ -1829,8 +1822,8 @@
 		nextTime.set(Calendar.MILLISECOND, 0);
 
 		JSONArray array = null;
-		String timekey = String.format("spikeGoods_hour-%s-%s", acceptData.getPlatform(), acceptData.getVersion());
-		String cachekey = String.format("spikeGoodsList-%s-%s", acceptData.getPlatform(), acceptData.getVersion());
+		String timekey = RedisKeyEnum.getRedisKey(RedisKeyEnum.spikeGoodsHour,acceptData.getPlatform() +"-"+acceptData.getVersion());
+		String cachekey = RedisKeyEnum.getRedisKey(RedisKeyEnum.spikeGoodsList,acceptData.getPlatform() +"-"+acceptData.getVersion());
 
 		String timeValue = redisManager.getCommonString(timekey);
 		if (timeValue == null || !timeValue.equals(hour + "")) {
@@ -1867,7 +1860,7 @@
 						.toJson(TaoBaoUtil.getTaoBaoGoodsBriefExtra(taoBaoGoodsBrief, proportion.toString(), null)));
 				goods.put("jumpDetail", jumpDetail);
 				JSONObject params = new JSONObject();
-				params.put("url", configService.get("spike_goods_link") + "?id=" + taoBaoGoodsBrief.getAuctionId());
+				params.put("url", configService.get(ConfigKeyEnum.spikeGoodsLink.getKey()) + "?id=" + taoBaoGoodsBrief.getAuctionId());
 				goods.put("params", params);
 
 				// 1.5.4鍙婁互鍚庤繑鍥�
@@ -1889,7 +1882,7 @@
 		root.put("listgoods", array);
 
 		JSONObject params = new JSONObject();
-		params.put("url", configService.get("spike_goods_link"));
+		params.put("url", configService.get(ConfigKeyEnum.spikeGoodsLink.getKey()));
 
 		root.put("params", params);
 		root.put("jumpDetail", jumpDetail);
@@ -2075,7 +2068,7 @@
 
 		// 澶ф窐瀹㈠晢鍝佽繃婊�
 		try {
-			goods = daTaoKeGoodsDetailService.filterTaoBaoGoods(goods);
+			goods = daTaoKeGoodsDetailV2Service.filterTaoBaoGoods(goods).getGoods();
 		} catch (Exception e) {
 			LogHelper.errorDetailInfo(e);
 		}
@@ -2254,7 +2247,7 @@
 		data.put("shareUrl", shareUrl);
 		data.put("shareUsers", listShareUser);
 		data.put("couponUsers", listCouponUser);
-		data.put("detailWebUrl", "http://apph5.yeshitv.com/apppage/goods_img.html?id=" + id);
+		data.put("detailWebUrl", "http://apph5.banliapp.com/apppage/goods_img.html?id=" + id);
 
 		String noRebateHelpLink = null;
 
@@ -2346,7 +2339,7 @@
 			}
 
 		} else if (from != null && from.equals("taolijin_buy")) {
-			noRebateHelpLink = configService.get("zigoulijian_nofanli_help");
+			noRebateHelpLink = configService.get(ConfigKeyEnum.zigoulijianNofanliHelp.getKey());
 			// 鏌ヨ鍒嗕韩搴�
 			TLJBuyGoods buyGoods = tljBuyGoodsService.selectByAuctionIdAndDay(goods.getAuctionId(),
 					TimeUtil.getGernalTime(System.currentTimeMillis(), "yyyy-MM-dd"));
@@ -2375,7 +2368,7 @@
 		if (!StringUtil.isNullOrEmpty(noRebateHelpLink)) {
 			data.put("noRebateHelpLink", noRebateHelpLink);
 		} else {
-			data.put("noRebateHelpLink", configService.get("no_rebate_help_link"));
+			data.put("noRebateHelpLink", configService.get(ConfigKeyEnum.noRebateHelpLink.getKey()));
 		}
 
 		// 鍙栨秷鍒嗕韩娲诲姩
@@ -2471,7 +2464,7 @@
 
 		try {
 
-			List<TaoBaoGoodsBrief> goodsList = TaoKeApiUtil.getRelationGoodsRecommend(id, 10);
+			List<TaoBaoGoodsBrief> goodsList = TaoKeApiUtil.guessLikeByAuctionId(id, 10);
 			// 鍒濆鍖�
 			if (goodsList == null) {
 				goodsList = new ArrayList<TaoBaoGoodsBrief>();
@@ -2556,39 +2549,24 @@
 	 */
 	@RequestMapping(value = "getSpecialActivities")
 	public void getSpecialActivities(AcceptData acceptData, Long uid, PrintWriter out, String callback) {
-		int platformCode = Constant.getPlatformCode(acceptData.getPlatform());
-		List<Special> listSpecial = specialService.listByVersion(0, Integer.MAX_VALUE, "special_activities",
-				platformCode, Integer.parseInt(acceptData.getVersion()));
+		List<SpecialVO> listSpecial = specialService.listByVersion(0, Integer.MAX_VALUE, "special_activities",
+				acceptData.getPlatform(), Integer.parseInt(acceptData.getVersion()));
 
-		List<Special> list = new ArrayList<Special>();
+		List<SpecialVO> list = new ArrayList<SpecialVO>();
 		if (listSpecial != null) {
 			list.addAll(listSpecial);
 		}
 
 		for (int i = 0; i < list.size(); i++) {
-			Special special = list.get(i);
-
+			SpecialVO special = list.get(i);
 			JumpDetailV2 jumpDetail = special.getJumpDetail();
 			if (jumpDetail != null) {
 				jumpDetail.setNeedLogin(special.isJumpLogin());
 				special.setJumpDetail(jumpDetail);
 			}
-
 			String name = special.getName();
 			if (StringUtil.isNullOrEmpty(name)) {
 				continue;
-			}
-
-			// 鏄惁闇�瑕佸脊鍑烘
-			if (name.equals("璐︽埛绛夌骇鐗规潈")) {
-				if (!VersionUtil.greaterThan_1_5_60(acceptData.getPlatform(), acceptData.getVersion())) {
-					list.remove(i);
-					i--;
-				} else {
-					if (uid != null) {
-						special.setElastic(userTaoLiJinOriginService.hasRankHongBao(uid));
-					}
-				}
 			}
 		}
 

--
Gitblit v1.8.0