yumeng 9 月之前
父節點
當前提交
df4afa7ec2

+ 144 - 17
src/main/java/cn/com/ctop/track/controller/TrackController.java

@@ -1,20 +1,18 @@
 package cn.com.ctop.track.controller;
 package cn.com.ctop.track.controller;
 
 
-import cn.com.ctop.track.entity.ConvertInfo;
 import cn.com.ctop.track.service.ClickInfoService;
 import cn.com.ctop.track.service.ClickInfoService;
 import cn.com.ctop.track.service.ConvertInfoService;
 import cn.com.ctop.track.service.ConvertInfoService;
 import cn.com.ctop.track.service.TaobaoNoticeService;
 import cn.com.ctop.track.service.TaobaoNoticeService;
 import cn.com.ctop.track.utils.Check;
 import cn.com.ctop.track.utils.Check;
 import cn.com.ctop.track.utils.HttpUtils;
 import cn.com.ctop.track.utils.HttpUtils;
+import com.alibaba.fastjson.JSONObject;
 import org.apache.log4j.Logger;
 import org.apache.log4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.ResponseBody;
 
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import javax.servlet.http.HttpServletResponse;
-import java.util.Date;
 import java.util.HashMap;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.Map;
 import java.util.TreeMap;
 import java.util.TreeMap;
@@ -31,12 +29,15 @@ public class TrackController {
     private ConvertInfoService convertInfoService;
     private ConvertInfoService convertInfoService;
     private static String url = "https://ugapi.alipay.com/monitor";
     private static String url = "https://ugapi.alipay.com/monitor";
 
 
-    @RequestMapping(value = "/click")
-    public String convert3(HttpServletRequest request,
-                           HttpServletResponse response) {
+
+    // 老链接 屏蔽5
+    @RequestMapping(value = "/click1")
+    public JSONObject click1(HttpServletRequest request,
+                             HttpServletResponse response) {
 
 
         logger.info(request.getQueryString());
         logger.info(request.getQueryString());
-        System.err.println("快手点击监测");
+        System.err.println("支付宝老快手点击监测");
+        JSONObject returnJson = new JSONObject();
         try {
         try {
             //test
             //test
             String action = "click";    // ⾏为类型 // 点击
             String action = "click";    // ⾏为类型 // 点击
@@ -72,38 +73,164 @@ public class TrackController {
                 params.put("cid", cid);
                 params.put("cid", cid);
             }
             }
             if (!Check.isNull(callback)) {
             if (!Check.isNull(callback)) {
-                String callbackUrl = "https://track.tjyourong.com.cn/convert/back?kuaishouCallback=" + callback;
+                String callbackUrl = "https://track.tjyourong.com.cn/convert/back1?kuaishouCallback=" + callback;
                 params.put("callback", callbackUrl);
                 params.put("callback", callbackUrl);
             }
             }
 
 
             String s = HttpUtils.httpGetRequest(url, headers, params);
             String s = HttpUtils.httpGetRequest(url, headers, params);
-            System.err.println("---------------返回结果------------------");
+            System.err.println("---------------支付宝老,返回结果------------------");
             System.err.println(s);
             System.err.println(s);
+            returnJson.put("code", 200);
+            returnJson.put("success", true);
+            returnJson.put("result", "success");
 
 
 
 
         } catch (Exception e) {
         } catch (Exception e) {
-            e.printStackTrace();
+            returnJson.put("code", 500);
+            returnJson.put("success", false);
+            returnJson.put("result", e.getMessage());
         }
         }
-        return "{\"code\":200,\"result\":\"success\"}";
+        return returnJson;
     }
     }
 
 
 
 
-    @RequestMapping(value = "/back")
-    public String back(HttpServletRequest request,
-                       HttpServletResponse response) {
+    // 新链接 屏蔽8
+    @RequestMapping(value = "/click2")
+    public JSONObject click2(HttpServletRequest request,
+                             HttpServletResponse response) {
+
+        logger.info(request.getQueryString());
+        System.err.println("支付宝新快手点击监测");
+        JSONObject returnJson = new JSONObject();
+        try {
+            //test
+            String action = "click";    // ⾏为类型 // 点击
+            String imei = request.getParameter("imei");
+            String oaidmd5 = request.getParameter("oaidmd5");
+            String accountid = request.getParameter("accountid");    //⼴告账户ID
+            String adid = request.getParameter("adid");     //⼴告计划ID
+            String campaignid = request.getParameter("campaignid");      // ⼴告组ID
+            String cid = request.getParameter("cid"); // ⼴告创意ID
+            String callback = request.getParameter("callback"); // ⼴告创意ID
+            Map<String, String> headers = new HashMap<>();
+            TreeMap<String, Object> params = new TreeMap<>();
+            params.put("action", action);
+            params.put("requestFrom", "huichuang");
+            params.put("pid", "2088821582878450");
+            params.put("partnerId", "tab3huichuangapkhuichuang");
+            if (!Check.isNull(imei)) {
+                params.put("imei", imei);
+            }
+            if (!Check.isNull(oaidmd5)) {
+                params.put("oaidmd5", oaidmd5);
+            }
+            if (!Check.isNull(accountid)) {
+                params.put("accountid", accountid);
+            }
+            if (!Check.isNull(adid)) {
+                params.put("adid", adid);
+            }
+            if (!Check.isNull(campaignid)) {
+                params.put("campaignid", campaignid);
+            }
+            if (!Check.isNull(cid)) {
+                params.put("cid", cid);
+            }
+            if (!Check.isNull(callback)) {
+                String callbackUrl = "https://track.tjyourong.com.cn/convert/back2?kuaishouCallback=" + callback;
+                params.put("callback", callbackUrl);
+            }
+
+            String s = HttpUtils.httpGetRequest(url, headers, params);
+            System.err.println("---------------支付宝新,返回结果------------------");
+            System.err.println(s);
+            returnJson.put("code", 200);
+            returnJson.put("success", true);
+            returnJson.put("result", "success");
+
+
+        } catch (Exception e) {
+            returnJson.put("code", 500);
+            returnJson.put("success", false);
+            returnJson.put("result", e.getMessage());
+        }
+        return returnJson;
+    }
+
 
 
-        logger.info("支付宝回传: " + request.getQueryString());
+    // 老链接 屏蔽5
+    @RequestMapping(value = "/back1")
+    public JSONObject back1(HttpServletRequest request,
+                            HttpServletResponse response) {
 
 
+        logger.info("支付宝回传老: " + request.getQueryString());
+        JSONObject returnJson = new JSONObject();
         try {
         try {
 
 
+            String url = request.getParameter("kuaishouCallback");
+            String transformtype = request.getParameter("transformtype");
+            if ("5".equals(transformtype)) {
+                returnJson.put("code", 200);
+                returnJson.put("success", true);
+                returnJson.put("result", "success");
+                returnJson.put("message", "回传事件为5,跳过");
+            } else if ("8".equals(transformtype)) {
+                Map<String, String> headers = new HashMap<>();
+                String event_type = "84";
+                String s = HttpUtils.backHttpGetRequest(url, headers, event_type);
+                System.err.println("---------------支付宝回传老,返回结果------------------");
+                System.err.println(s);
+                returnJson.put("code", 200);
+                returnJson.put("success", true);
+                returnJson.put("result", "success");
+            }
+
 
 
         } catch (Exception e) {
         } catch (Exception e) {
-            e.printStackTrace();
+            returnJson.put("code", 500);
+            returnJson.put("success", false);
+            returnJson.put("result", e.getMessage());
         }
         }
-        return "{\"code\":200,\"result\":\"success\"}";
+        return returnJson;
     }
     }
 
 
 
 
+    // 新链接 屏蔽8
+    @RequestMapping(value = "/back2")
+    public JSONObject back2(HttpServletRequest request,
+                            HttpServletResponse response) {
+
+        logger.info("支付宝回传新: " + request.getQueryString());
+        JSONObject returnJson = new JSONObject();
+        try {
+
+            String url = request.getParameter("kuaishouCallback");
+            String transformtype = request.getParameter("transformtype");
+            if ("8".equals(transformtype)) {
+                returnJson.put("code", 200);
+                returnJson.put("success", true);
+                returnJson.put("result", "success");
+                returnJson.put("message", "回传事件为8,跳过");
+            } else if ("5".equals(transformtype)) {
+                Map<String, String> headers = new HashMap<>();
+                String event_type = "84";
+                String s = HttpUtils.backHttpGetRequest(url, headers, event_type);
+                System.err.println("---------------支付宝回传新,返回结果------------------");
+                System.err.println(s);
+                returnJson.put("code", 200);
+                returnJson.put("success", true);
+                returnJson.put("result", "success");
+            }
+
+
+        } catch (Exception e) {
+            returnJson.put("code", 500);
+            returnJson.put("success", false);
+            returnJson.put("result", e.getMessage());
+        }
+        return returnJson;
+    }
+
 
 
     /*@ResponseBody
     /*@ResponseBody
     @RequestMapping(value = "/convert")
     @RequestMapping(value = "/convert")

+ 28 - 0
src/main/java/cn/com/ctop/track/utils/HttpUtils.java

@@ -541,6 +541,34 @@ public class HttpUtils {
         return strReturn;
         return strReturn;
     }
     }
 
 
+
+    public static String backHttpGetRequest(String url, Map<String, String> headers, String event_type) {
+        HttpClient httpClient = createSslClientDefault();
+        String strReturn = "";
+        try {
+            String uri = url + "&event_type=" + event_type;
+            HttpGet httpGet = new HttpGet(uri);
+            if (headers != null) {
+                Iterator<String> keyIter = headers.keySet().iterator();
+                while (keyIter.hasNext()) {
+                    String curKey = keyIter.next();
+                    if (curKey != null && headers.get(curKey) != null) {
+                        httpGet.addHeader(curKey, headers.get(curKey));
+                    }
+                }
+            }
+            HttpEntity respentity;
+            HttpResponse response = httpClient.execute(httpGet);
+            respentity = response.getEntity();
+            strReturn = EntityUtils.toString(respentity);
+        } catch (Exception e) {
+            e.printStackTrace();
+            log.error(e.getMessage());
+        }
+        return strReturn;
+    }
+
+
     public static String httpGet(String url, Map<String, Object> paramsMap, Map<String, String> headers) {
     public static String httpGet(String url, Map<String, Object> paramsMap, Map<String, String> headers) {
         String result = null;
         String result = null;
         try {
         try {