From 42411e4a26461229c6bca6e89ca55e98a80f5a4e Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期四, 30 九月 2021 18:08:17 +0800
Subject: [PATCH] bug修改

---
 fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ConfigControllerV2.java |  126 ++++++++++++++++++++++++++----------------
 1 files changed, 78 insertions(+), 48 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 c3b07b1..505e496 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
@@ -8,6 +8,11 @@
 
 import javax.annotation.Resource;
 
+import com.yeshi.fanli.entity.SystemEnum;
+import com.yeshi.fanli.entity.SystemPIDInfo;
+import com.yeshi.fanli.exception.goods.ConvertLinkException;
+import com.yeshi.fanli.service.manger.PIDManager;
+import com.yeshi.fanli.service.manger.goods.ConvertLinkManager;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
@@ -76,12 +81,6 @@
     private TBPidService tbPidService;
 
     @Resource
-    private TaoBaoUnionConfigService taoBaoUnionConfigService;
-
-    @Resource
-    private UserInfoExtraService userInfoExtraService;
-
-    @Resource
     private FloatADService floatADService;
 
     @Resource
@@ -89,9 +88,6 @@
 
     @Resource
     private MsgDeviceReadStateService msgDeviceReadStateService;
-
-    @Resource
-    private UserTaoLiJinOriginService uerTaoLiJinOriginService;
 
     @Resource
     private UserActiveLogService userActiveLogService;
@@ -104,6 +100,12 @@
 
     @Resource
     private RedisManager redisManager;
+
+    @Resource
+    private PIDManager pidManager;
+
+    @Resource
+    private ConvertLinkManager convertLinkManager;
 
     /**
      * s 棣栭〉閰嶇疆淇℃伅
@@ -459,17 +461,28 @@
      */
     @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 elmePid = pidManager.getPidCache(acceptData.getSystem(), Constant.SOURCE_TYPE_ELME, SystemPIDInfo.PidType.fanli);
+
         String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.elmeLink, uid + "");
         String elmeLink = redisManager.getCommonString(key);
         if (StringUtil.isNullOrEmpty(elmeLink)) {
-            TaoKeOfficialActivityConvertResultDTO dto = TaoKeApiUtil.officialActivityConvert(
-                    TaoBaoConstant.TAOBAO_ELEME_PID.split("_")[3], "1571715733668", userInfoExtra.getRelationId());
+            TaoKeOfficialActivityConvertResultDTO dto = null;
+            try {
+                dto = convertLinkManager.taobaoOfficialActivityConvert(uid, elmePid, "1571715733668", userInfoExtra.getRelationId(), false);
+            } catch (ConvertLinkException e) {
+                e.printStackTrace();
+                if (StringUtil.isNullOrEmpty(callback))
+                    out.print(JsonUtil.loadFalseResult(e.getMessage()));
+                else
+                    out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadFalseResult(e.getMessage())));
+                return;
+            }
             if (dto != null)
                 elmeLink = dto.getShort_click_url();
             if (!StringUtil.isNullOrEmpty(elmeLink)) {
@@ -487,8 +500,8 @@
         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]);
+        ClientTBPid clientTBPid1 = new ClientTBPid(TaoBaoConstant.TAOBAO_AUTH_APPKEY, elmePid,
+                null, elmePid.split("_")[3]);
         data.put("taoKeParams", clientTBPid1);
         if (StringUtil.isNullOrEmpty(callback))
             out.print(JsonUtil.loadTrueResult(data));
@@ -516,17 +529,28 @@
             out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadFalseResult(1001, "璇风粦瀹氭窐瀹�")));
             return;
         }
+
+        String elmePid = pidManager.getPidCache(acceptData.getSystem(), Constant.SOURCE_TYPE_ELME, SystemPIDInfo.PidType.fanli);
+        String relationPid = pidManager.getPidCache(acceptData.getSystem(), Constant.SOURCE_TYPE_TAOBAO, SystemPIDInfo.PidType.share);
+
         String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.elmeLink, uid + "-" + activityId + "-" + share);
         String elmeResult = redisManager.getCommonString(key);
         JSONObject data = new JSONObject();
         TaoKeOfficialActivityConvertResultDTO dto = null;
         if (StringUtil.isNullOrEmpty(elmeResult)) {
-            if (share) {
-                dto = TaoKeApiUtil.officialActivityConvert(TaoBaoConstant.TAOBAO_RELATION_PID_DEFAULT.split("_")[3],
-                        activityId, userInfoExtra.getRelationId());
-            } else {
-                dto = TaoKeApiUtil.officialActivityConvert(TaoBaoConstant.TAOBAO_ELEME_PID.split("_")[3], activityId,
-                        userInfoExtra.getRelationId());
+            try {
+                if (share) {
+                    dto = convertLinkManager.taobaoOfficialActivityConvert(uid, relationPid, activityId, userInfoExtra.getRelationId(), true);
+                } else {
+                    dto = convertLinkManager.taobaoOfficialActivityConvert(uid, elmePid, activityId,
+                            userInfoExtra.getRelationId(), false);
+                }
+            } catch (ConvertLinkException e) {
+                if (StringUtil.isNullOrEmpty(callback))
+                    out.print(JsonUtil.loadFalseResult(e.getMessage()));
+                else
+                    out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadFalseResult(e.getMessage())));
+                return;
             }
 
             if (dto != null) {
@@ -572,8 +596,8 @@
         data.put("info", info);
 
         ClientTBPid clientTBPid1 = new ClientTBPid(TaoBaoConstant.TAOBAO_AUTH_APPKEY,
-                share ? TaoBaoConstant.TAOBAO_RELATION_PID_DEFAULT : TaoBaoConstant.TAOBAO_ELEME_PID, null,
-                TaoBaoConstant.TAOBAO_ELEME_PID.split("_")[3]);
+                share ? relationPid : elmePid, null,
+                elmePid.split("_")[3]);
         clientTBPid1.setAdZoneId(clientTBPid1.getPid().split("_")[3]);
         data.put("taoKeParams", clientTBPid1);
         if (StringUtil.isNullOrEmpty(callback))
@@ -586,6 +610,8 @@
     public void getKouBeiLink(AcceptData acceptData, Long uid, String activityId, boolean share, boolean shareImg,
                               String callback, PrintWriter out) {
 
+        String relationPid = pidManager.getPidCache(acceptData.getSystem(), Constant.SOURCE_TYPE_TAOBAO, SystemPIDInfo.PidType.share);
+
         UserExtraTaoBaoInfo userInfoExtra = userExtraTaoBaoInfoService.getByUid(uid);
         if (userInfoExtra == null || StringUtil.isNullOrEmpty(userInfoExtra.getRelationId())) {
             out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadFalseResult(1001, "璇风粦瀹氭窐瀹�")));
@@ -596,12 +622,18 @@
         JSONObject data = new JSONObject();
         TaoKeOfficialActivityConvertResultDTO dto = null;
         if (StringUtil.isNullOrEmpty(elmeResult)) {
-            if (share) {
-                dto = TaoKeApiUtil.officialActivityConvert(TaoBaoConstant.TAOBAO_RELATION_PID_DEFAULT.split("_")[3],
-                        activityId, userInfoExtra.getRelationId());
-            } else {
-                dto = TaoKeApiUtil.officialActivityConvert(TaoBaoConstant.TAOBAO_KOUBEI_PID.split("_")[3], activityId,
-                        userInfoExtra.getRelationId());
+
+            try {
+                if (share) {
+                    dto = convertLinkManager.taobaoOfficialActivityConvert(uid, relationPid,
+                            activityId, userInfoExtra.getRelationId(), true);
+                } else {
+                    dto = convertLinkManager.taobaoOfficialActivityConvert(uid, TaoBaoConstant.TAOBAO_KOUBEI_PID,
+                            activityId, userInfoExtra.getRelationId(), false);
+                }
+            } catch (ConvertLinkException e) {
+                out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadFalseResult(e.getCode(), e.getMessage())));
+                return;
             }
 
             if (dto != null) {
@@ -647,7 +679,7 @@
         data.put("info", info);
 
         ClientTBPid clientTBPid1 = new ClientTBPid(TaoBaoConstant.TAOBAO_AUTH_APPKEY,
-                share ? TaoBaoConstant.TAOBAO_RELATION_PID_DEFAULT : TaoBaoConstant.TAOBAO_KOUBEI_PID, null,
+                share ? relationPid : TaoBaoConstant.TAOBAO_KOUBEI_PID, null,
                 TaoBaoConstant.TAOBAO_KOUBEI_PID.split("_")[3]);
         clientTBPid1.setAdZoneId(clientTBPid1.getPid().split("_")[3]);
         data.put("taoKeParams", clientTBPid1);
@@ -666,7 +698,6 @@
      */
     @RequestMapping(value = "userProtocolListen")
     public void userProtocolListen(AcceptData acceptData, Long uid, int type, PrintWriter out) {
-        LogHelper.userProtocolListen(String.format("%s#%s#%s", acceptData.getDevice(), uid, type));
         out.print(JsonUtil.loadTrueResult(""));
     }
 
@@ -683,27 +714,26 @@
     @RequestMapping(value = "getShowAd")
     public void showAd(AcceptData acceptData, Long uid, PrintWriter out) {
         String value = configService.getValue(ConfigKeyEnum.showSplashAd.getKey(), acceptData.getSystem());
-        boolean huaweiShowAd = true;
-        if ("huawei".equalsIgnoreCase(acceptData.getChannel())) {
-            String version = configService.getValue(ConfigKeyEnum.huaweiOnLineVersionCode.getKey(), acceptData.getSystem());
-            if (!StringUtil.isNullOrEmpty(version)) {
-                if (Integer.parseInt(version) == Integer.parseInt(acceptData.getVersion())) {
-                    huaweiShowAd = false;
-                }
-            }
+        JSONObject configData = JSONObject.fromObject(value);
+        String channel = acceptData.getChannel().toLowerCase();
+        if (configData.optString(channel) == null) {
+            channel = "qq";
+        }
+        int version = configData.optInt(channel);
+        JSONObject data = new JSONObject();
+        boolean show;
+        if (Integer.parseInt(acceptData.getVersion()) >= version) {
+            show = false;
+        } else {
+            show = true;
         }
 
-        JSONObject data = new JSONObject();
-        if ("0".equalsIgnoreCase(value.trim())) {
+        if (show) {
+            data.put("show", true);
+            //鍔犺浇骞垮憡鏁版嵁
+            data.put("ad", configService.getValue(ConfigKeyEnum.gdtAdInfo, acceptData.getSystem()));
+        } else
             data.put("show", false);
-        } else {
-            if (huaweiShowAd) {
-                data.put("show", true);
-                //鍔犺浇骞垮憡鏁版嵁
-                data.put("ad", configService.getValue(ConfigKeyEnum.gdtAdInfo, acceptData.getSystem()));
-            } else
-                data.put("show", false);
-        }
         out.print(JsonUtil.loadTrueResult(data));
     }
 

--
Gitblit v1.8.0