From eac0221c3906b7c1dbf902cb47298466c3b8f474 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期二, 17 十二月 2019 16:27:12 +0800
Subject: [PATCH] 专题版本控制bug修改
---
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ConfigControllerV2.java | 225 ++++++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 176 insertions(+), 49 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ConfigControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ConfigControllerV2.java
index 8709543..bfc0434 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ConfigControllerV2.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ConfigControllerV2.java
@@ -1,6 +1,8 @@
package com.yeshi.fanli.controller.client.v2;
import java.io.PrintWriter;
+import java.util.ArrayList;
+import java.util.List;
import javax.annotation.Resource;
@@ -12,28 +14,34 @@
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.homemodule.FloatAD;
+import com.yeshi.fanli.entity.bus.homemodule.FloatAD.FloatADTypeEnum;
import com.yeshi.fanli.entity.bus.msg.MsgDeviceReadState;
-import com.yeshi.fanli.entity.bus.tlj.DeviceTaoLiJinRecord;
-import com.yeshi.fanli.entity.bus.tlj.UserTaoLiJinOrigin;
-import com.yeshi.fanli.entity.bus.tlj.UserTaoLiJinOrigin.TaoLiJinOriginEnum;
import com.yeshi.fanli.entity.bus.user.UserActiveLog;
+import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
+import com.yeshi.fanli.entity.common.JumpDetailV2;
import com.yeshi.fanli.entity.config.AppHomeFloatImg;
import com.yeshi.fanli.entity.taobao.ClientTBPid;
import com.yeshi.fanli.service.inter.common.JumpDetailV2Service;
import com.yeshi.fanli.service.inter.config.ConfigService;
import com.yeshi.fanli.service.inter.homemodule.FloatADService;
import com.yeshi.fanli.service.inter.msg.MsgDeviceReadStateService;
+import com.yeshi.fanli.service.inter.redpack.UserTaoLiJinNewbiesService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService;
-import com.yeshi.fanli.service.inter.tlj.DeviceTaoLiJinRecordService;
import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinOriginService;
import com.yeshi.fanli.service.inter.user.TBPidService;
import com.yeshi.fanli.service.inter.user.UserActiveLogService;
import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
+import com.yeshi.fanli.service.inter.user.tb.UserExtraTaoBaoInfoService;
+import com.yeshi.fanli.util.AESUtil;
import com.yeshi.fanli.util.Constant;
+import com.yeshi.fanli.util.RedisManager;
import com.yeshi.fanli.util.StringUtil;
+import com.yeshi.fanli.util.TaoBaoConstant;
import com.yeshi.fanli.util.ThreadUtil;
import com.yeshi.fanli.util.VersionUtil;
import com.yeshi.fanli.util.jd.JDUtil;
+import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
+import com.yeshi.fanli.vo.homemodule.FloatImgDetailVO;
import net.sf.json.JSONObject;
@@ -72,10 +80,16 @@
private UserTaoLiJinOriginService uerTaoLiJinOriginService;
@Resource
- private DeviceTaoLiJinRecordService deviceTaoLiJinRecordService;
+ private UserActiveLogService userActiveLogService;
@Resource
- private UserActiveLogService userActiveLogService;
+ private UserTaoLiJinNewbiesService userTaoLiJinNewbiesService;
+
+ @Resource
+ private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService;
+
+ @Resource
+ private RedisManager redisManager;
/**
* s 棣栭〉閰嶇疆淇℃伅
@@ -103,29 +117,10 @@
data.put("floatNotifyImg", notifyImg);
}
- FloatAD floatAD = null;
-
- if (VersionUtil.greaterThan_1_5_60(acceptData.getPlatform(), acceptData.getVersion())) {
- if (uid == null) {
- DeviceTaoLiJinRecord deviceRecord = deviceTaoLiJinRecordService.getByDevice(acceptData.getDevice());
- if (deviceRecord == null) {
- floatAD = floatADService.getEffectiveFloatAD(FloatAD.POSITION_INDEX, 1);
- }
- } else {
- UserTaoLiJinOrigin userTaoLiJin = uerTaoLiJinOriginService.getByUidAndOrigin(uid,
- TaoLiJinOriginEnum.newbiesWin.name());
- if (userTaoLiJin == null) {
- floatAD = floatADService.getEffectiveFloatAD(FloatAD.POSITION_INDEX, 1);
- }
- }
- }
-
// 鏃犳柊浜哄脊妗� 鍒欐煡璇㈤粯璁�
- if (floatAD == null) {
- floatAD = floatADService.getEffectiveFloatAD(FloatAD.POSITION_INDEX, 0);
- }
+ FloatAD floatAD = floatADService.getEffectiveFloatAD(FloatAD.POSITION_INDEX, 0);
- if (floatAD != null) {
+ if (floatAD != null && floatAD.getTypeEnum() != FloatADTypeEnum.newUserRedPack) {
JSONObject detail = new JSONObject();
detail.put("img", floatAD.getPicture());
detail.put("jumpDetail", floatAD.getJumpDetail());
@@ -155,7 +150,86 @@
} else {// 鑰佷汉
data.put("userTimeType", 1);
}
- data.put("hotFuctionLink", configService.get("hot_function_url"));
+ data.put("hotFuctionLink",
+ configService.getByVersion("hot_function_url", platform, Integer.parseInt(acceptData.getVersion())));
+ out.print(JsonUtil.loadTrueResult(data));
+ }
+
+ /**
+ * s 棣栭〉閰嶇疆淇℃伅
+ *
+ * @param acceptData
+ * @param out
+ */
+ @RequestMapping(value = "getHomeConfigNew", method = RequestMethod.POST)
+ public void getHomeConfigNew(AcceptData acceptData, Long uid, PrintWriter out) {
+ if (uid != null && uid == 0L)
+ uid = null;
+
+ // 娲诲姩寮规
+ List<FloatAD> listAD = new ArrayList<FloatAD>();
+ List<FloatImgDetailVO> listVO = new ArrayList<FloatImgDetailVO>();
+
+ List<FloatAD> list = floatADService.getValidByPosition(FloatAD.POSITION_INDEX);
+ if (list != null && !list.isEmpty())
+ listAD.addAll(list);
+
+ for (int i = 0; i < listAD.size(); i++) {
+ FloatAD floatAD = listAD.get(i);
+ FloatADTypeEnum typeEnum = floatAD.getTypeEnum();
+ if (typeEnum == FloatADTypeEnum.newUserRedPack
+ && (!VersionUtil.greaterThan_2_1(acceptData.getPlatform(), acceptData.getVersion())
+ || !userTaoLiJinNewbiesService.verifyHasReward(uid, acceptData.getDevice()))) {
+
+ listAD.remove(i);
+ i--;
+ continue;
+ }
+
+ JumpDetailV2 jumpDetail = floatAD.getJumpDetail();
+ if (jumpDetail != null) {
+ jumpDetail = jumpDetailV2Service.selectByPrimaryKey(jumpDetail.getId());
+ if (jumpDetail != null) {
+ jumpDetail.setNeedLogin(floatAD.isJumpNeedLogin());
+ }
+ }
+ FloatImgDetailVO floatImgVO = new FloatImgDetailVO();
+ floatImgVO.setId(floatAD.getId().toString());
+ floatImgVO.setImg(floatAD.getPicture());
+ floatImgVO.setParams(floatAD.getParams());
+ floatImgVO.setJumpDetail(jumpDetail);
+ floatImgVO.setShowTime(floatAD.getShowMode());
+ floatImgVO.setAccountLogin(floatAD.isJumpNeedLogin());
+ if (floatAD.getPlaySound() != null)
+ floatImgVO.setPlaySound(floatAD.getPlaySound());// 榛樿閮芥挱鏀鹃煶鏁�
+ else
+ floatImgVO.setPlaySound(false);
+ listVO.add(floatImgVO);
+ }
+
+ JSONObject data = new JSONObject();
+ data.put("listAD", JsonUtil.getApiCommonGson().toJson(listVO));
+ data.put("protocol", configService.get("user_protocol_home_data"));
+
+ // 棰嗗埜甯姪閾炬帴,1.5.2鍚庣敓鏁�
+ String couponHelp = configService.get("taobao_coupon_help");
+ data.put("couponHelpUrl", couponHelp);
+
+ // 鍒ゆ柇鏂拌�佺敤鎴� 鏄剧ず鐑棬鍔熻兘鎸夐挳婊戝姩
+ UserActiveLog da = null;
+ if (uid != null)
+ da = userActiveLogService.getFirstActiveInfo(uid);
+ // 鏂颁汉
+ if (da == null || (System.currentTimeMillis() - da.getCreateTime().getTime()) <= 1000 * 60 * 60 * 24 * 15L) {
+ data.put("userTimeType", 0);
+ } else {// 鑰佷汉
+ data.put("userTimeType", 1);
+ }
+
+ // 鏄惁鏄剧ず鐑棬鍔熻兘鎸夐挳
+ String platform = acceptData.getPlatform();
+ data.put("hotFuctionLink",
+ configService.getByVersion("hot_function_url", platform, Integer.parseInt(acceptData.getVersion())));
out.print(JsonUtil.loadTrueResult(data));
}
@@ -168,25 +242,7 @@
*/
@RequestMapping(value = "getMSGConfig", method = RequestMethod.POST)
public void getMSGConfig(AcceptData acceptData, Long uid, PrintWriter out) {
- JSONObject data = new JSONObject();
- boolean show = false;
- if (uid != null) {
- show = uerTaoLiJinOriginService.hasRankHongBao(uid);
- }
-
- if (show) {
- FloatAD floatAD = floatADService.getEffectiveFloatAD(FloatAD.POSITION_MSGCENTER, null);
- if (floatAD != null) {
- JSONObject detail = new JSONObject();
- detail.put("img", floatAD.getPicture());
- detail.put("jumpDetail", floatAD.getJumpDetail());
- detail.put("params", floatAD.getParams());
- detail.put("showTime", floatAD.getShowMode());
- detail.put("accountLogin", floatAD.isJumpNeedLogin());
- data.put("floatImgDetail", detail);
- }
- }
- out.print(JsonUtil.loadTrueResult(data));
+ out.print(JsonUtil.loadFalseResult("鎺ㄥ箍绾㈠寘鐩稿叧鍔熻兘宸蹭笅绾匡紒"));
}
@RequestMapping(value = "getTaoBaoCartConfig", method = RequestMethod.POST)
@@ -243,9 +299,19 @@
@RequestMapping(value = "getWebConfig", method = RequestMethod.POST)
public void getWebConfig(AcceptData acceptData, String url, PrintWriter out) {
JSONObject data = new JSONObject();
- if (url != null && (url.contains("s.click") || url.contains("taobao.com") || url.contains("tmall.com")
+
+ if (url != null && url.contains("ifeeds.tmall.com/article.html?")) {
+ if (VersionUtil.greaterThan_2_0(acceptData.getPlatform(), acceptData.getVersion()))
+ data.put("baichuan", false);
+ else
+ data.put("baichuan", true);
+ data.put("goodsDetail", false);
+ } else if (url != null && (url.contains("s.click") || url.contains("taobao.com") || url.contains("tmall.com")
|| url.contains("m.tb.cn"))) {
- data.put("baichuan", true);// 閲囩敤闃块噷鐧惧窛鐨勬柟寮忓姞杞絯ebview
+ if (VersionUtil.greaterThan_2_0(acceptData.getPlatform(), acceptData.getVersion()))
+ data.put("baichuan", false);
+ else
+ data.put("baichuan", true);
data.put("goodsDetail", true);// 闇�瑕佹嫤鎴晢鍝佽鎯�
} else if (url != null && (url.contains("jd.com"))) {
// 涓嶈兘鍖呭惈璇︽儏椤�
@@ -269,7 +335,25 @@
data.put("baichuan", false);// 涓嶉渶瑕侀噰鐢ㄩ樋閲岀櫨宸濈殑鏂瑰紡鍔犺浇webview
data.put("goodsDetail", false);// 涓嶉渶瑕佹嫤鎴晢鍝佽鎯�
}
+ // TODO 鍓嶇闇�瑕佸鐞�
+ // if (VersionUtil.greaterThan_2_0_2(acceptData.getPlatform(),
+ // acceptData.getVersion())) {
+ // JSONObject js = new JSONObject();
+ // String jsStr = configService.get("url_extract_id");
+ // String md5 = StringUtil.Md5(jsStr);
+ // js.put("md5", md5);
+ // data.put("js", js);
+ // }
+ out.print(JsonUtil.loadTrueResult(data));
+ }
+
+ @RequestMapping(value = "getWebJS", method = RequestMethod.POST)
+ public void getWebJS(AcceptData acceptData, PrintWriter out) {
+ JSONObject data = new JSONObject();
+ String urlIdJS = configService.get("url_extract_id");
+ data.put("urlIdJSMD5", StringUtil.Md5(urlIdJS));
+ data.put("urlIdJS", AESUtil.encrypt(urlIdJS, Constant.UIDAESKEY));
out.print(JsonUtil.loadTrueResult(data));
}
@@ -398,4 +482,47 @@
out.print(JsonUtil.loadTrueResult(data));
}
+ /**
+ * 鑾峰彇楗夸簡涔堢殑鎺ㄥ箍閾炬帴
+ *
+ * @param acceptData
+ * @param uid
+ * @param out
+ */
+ @RequestMapping(value = "getElemeLink")
+ public void getElemeLink(AcceptData acceptData, Long uid, String callback, PrintWriter out) {
+
+ UserExtraTaoBaoInfo userInfoExtra = userExtraTaoBaoInfoService.getByUid(uid);
+ if (userInfoExtra == null || StringUtil.isNullOrEmpty(userInfoExtra.getRelationId())) {
+ out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadFalseResult(1001, "璇风粦瀹氭窐瀹�")));
+ return;
+ }
+ String elmeLink = redisManager.getCommonString("elme-link-" + uid);
+ if (StringUtil.isNullOrEmpty(elmeLink)) {
+ elmeLink = TaoKeApiUtil.officialActivityConvert(TaoBaoConstant.TAOBAO_ELEME_PID.split("_")[3],
+ "1571715733668", userInfoExtra.getRelationId());
+ if (!StringUtil.isNullOrEmpty(elmeLink)) {
+ redisManager.cacheCommonString("elme-link-" + uid, elmeLink, 60 * 60);// 缂撳瓨1涓皬鏃�
+ }
+ }
+
+ JSONObject data = new JSONObject();
+
+ // data.put("hongBao",
+ // configService.get("eleme_hongbao_link").replace("{鐢ㄦ埛ID}", uid + ""));
+ // data.put("goods",
+ // configService.get("eleme_goods_link").replace("{鐢ㄦ埛ID}", uid + ""));
+
+ data.put("hongBao", elmeLink);
+ data.put("goods", elmeLink);
+
+ ClientTBPid clientTBPid1 = new ClientTBPid(TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_ELEME_PID,
+ null, TaoBaoConstant.TAOBAO_ELEME_PID.split("_")[3]);
+ data.put("taoKeParams", clientTBPid1);
+ if (StringUtil.isNullOrEmpty(callback))
+ out.print(JsonUtil.loadTrueResult(data));
+ else
+ out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(data)));
+ }
+
}
--
Gitblit v1.8.0