From 5e7b0ed4a154ad067cbcf4aa1a1c7cce32f9864c Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期五, 26 四月 2024 18:02:17 +0800
Subject: [PATCH] 唯品会链接解析升级

---
 fanli/src/main/java/com/yeshi/fanli/controller/client/v2/ConfigControllerV2.java |  160 ++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 122 insertions(+), 38 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 3e1c19b..d4fe2b3 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,7 +1,10 @@
 package com.yeshi.fanli.controller.client.v2;
 
+import java.io.IOException;
 import java.io.InputStream;
 import java.io.PrintWriter;
+import java.io.UnsupportedEncodingException;
+import java.net.URLDecoder;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.UUID;
@@ -10,12 +13,18 @@
 
 import com.yeshi.fanli.entity.SystemEnum;
 import com.yeshi.fanli.entity.SystemPIDInfo;
+import com.yeshi.fanli.entity.common.Config;
+import com.yeshi.fanli.exception.goods.ConvertLinkException;
 import com.yeshi.fanli.service.manger.PIDManager;
+import com.yeshi.fanli.service.manger.goods.ConvertLinkManager;
+import com.yeshi.fanli.util.email.MailSenderUtil;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.multipart.MultipartFile;
 import org.yeshi.utils.HttpUtil;
 import org.yeshi.utils.JsonUtil;
+import org.yeshi.utils.TimeUtil;
 import org.yeshi.utils.encrypt.DESUtil;
 import org.yeshi.utils.entity.FileUploadResult;
 import org.yeshi.utils.tencentcloud.COSManager;
@@ -79,12 +88,6 @@
     private TBPidService tbPidService;
 
     @Resource
-    private TaoBaoUnionConfigService taoBaoUnionConfigService;
-
-    @Resource
-    private UserInfoExtraService userInfoExtraService;
-
-    @Resource
     private FloatADService floatADService;
 
     @Resource
@@ -92,9 +95,6 @@
 
     @Resource
     private MsgDeviceReadStateService msgDeviceReadStateService;
-
-    @Resource
-    private UserTaoLiJinOriginService uerTaoLiJinOriginService;
 
     @Resource
     private UserActiveLogService userActiveLogService;
@@ -110,6 +110,9 @@
 
     @Resource
     private PIDManager pidManager;
+
+    @Resource
+    private ConvertLinkManager convertLinkManager;
 
     /**
      * s 棣栭〉閰嶇疆淇℃伅
@@ -476,8 +479,17 @@
         String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.elmeLink, uid + "");
         String elmeLink = redisManager.getCommonString(key);
         if (StringUtil.isNullOrEmpty(elmeLink)) {
-            TaoKeOfficialActivityConvertResultDTO dto = TaoKeApiUtil.officialActivityConvert(
-                    elmePid.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)) {
@@ -533,12 +545,19 @@
         JSONObject data = new JSONObject();
         TaoKeOfficialActivityConvertResultDTO dto = null;
         if (StringUtil.isNullOrEmpty(elmeResult)) {
-            if (share) {
-                dto = TaoKeApiUtil.officialActivityConvert(relationPid.split("_")[3],
-                        activityId, userInfoExtra.getRelationId());
-            } else {
-                dto = TaoKeApiUtil.officialActivityConvert(elmePid.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) {
@@ -610,12 +629,18 @@
         JSONObject data = new JSONObject();
         TaoKeOfficialActivityConvertResultDTO dto = null;
         if (StringUtil.isNullOrEmpty(elmeResult)) {
-            if (share) {
-                dto = TaoKeApiUtil.officialActivityConvert(relationPid.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) {
@@ -696,27 +721,36 @@
     @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;
+
+        boolean show = false;
+        try {
+            JSONObject configData = JSONObject.fromObject(value);
+            if (configData != null) {
+                String channel = acceptData.getChannel().toLowerCase();
+                if (configData.optString(channel) == null) {
+                    channel = "qq";
+                }
+                int version = configData.optInt(channel);
+
+
+                if (Integer.parseInt(acceptData.getVersion()) >= version) {
+                    show = false;
+                } else {
+                    show = true;
                 }
             }
+        } catch (Exception e) {
+
         }
 
+
         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));
     }
 
@@ -732,4 +766,54 @@
         data.put("link", configService.getValue(ConfigKeyEnum.accountLogoutProtocolLink.getKey(), acceptData.getSystem()));
         JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
     }
+
+    /**
+     * @return void
+     * @author hxh
+     * @description 闅愮鎶曡瘔
+     * @date 17:51 2021/10/18
+     * @param: acceptData
+     * @param: content
+     * @param: images
+     * @param: out
+     **/
+    @RequestMapping(value = "reportPrivacy")
+    public void reportPrivacy(AcceptData acceptData, String content, MultipartFile[] images, PrintWriter out) {
+        String urlList = "";
+        if (images != null && images.length > 0)
+            for (MultipartFile f : images) {
+                try {
+                    String name = TimeUtil.getGernalTime(System.currentTimeMillis(), "yyyyMMddHHmmssSSS") + "_" + ((int) (Math.random() * 100000)) + ".jpg";
+                    FileUploadResult result = COSManager.getInstance().uploadFile(f.getInputStream(), "privacy/report/" + name);
+                    if (result != null)
+                        urlList += result.getUrl() + " , ";
+                } catch (IOException e) {
+                    e.printStackTrace();
+                }
+            }
+        String title = null;
+        try {
+            title = "闅愮鎶曡瘔锛�" + URLDecoder.decode(content, "UTF-8");
+        } catch (UnsupportedEncodingException e) {
+            e.printStackTrace();
+        }
+        StringBuffer buffer = new StringBuffer();
+        buffer.append("鍖呭悕锛�" + acceptData.getPackages());
+        buffer.append("\n\r");
+        buffer.append("UTDID锛�" + acceptData.getUtdid());
+        buffer.append("\n\r");
+        buffer.append("DEVICE锛�" + acceptData.getDevice());
+        buffer.append("\n\r");
+        buffer.append("鎶曡瘔鍐呭锛�");
+        buffer.append(content);
+        buffer.append("\n\r");
+        buffer.append("鎻愪緵鐨勬埅鍥句负锛�" + urlList);
+
+        Config config = configService.getConfig(ConfigKeyEnum.extractCodeEmailFrom.getKey(), acceptData.getSystem());
+        String[] sts = config.getValue().split(",");
+        String account = sts[0];
+        String pwd = sts[1];
+        MailSenderUtil.sendEmail("help@banliapp.com", account, pwd, title, buffer.toString());
+        out.print(JsonUtil.loadTrueResult(""));
+    }
 }

--
Gitblit v1.8.0