From cdd852f8e8eff7eb2e8f7c3fceaa955b9fc3f9d3 Mon Sep 17 00:00:00 2001
From: yujian <yujian@123.com>
Date: 星期一, 29 七月 2019 10:46:32 +0800
Subject: [PATCH] 订单商品类型处理
---
fanli/src/test/java/org/fanli/TaoKeTest.java | 327 ++++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 276 insertions(+), 51 deletions(-)
diff --git a/fanli/src/test/java/org/fanli/TaoKeTest.java b/fanli/src/test/java/org/fanli/TaoKeTest.java
index 3094c09..251da9b 100644
--- a/fanli/src/test/java/org/fanli/TaoKeTest.java
+++ b/fanli/src/test/java/org/fanli/TaoKeTest.java
@@ -1,83 +1,81 @@
+
package org.fanli;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
-import org.junit.Ignore;
import org.junit.Test;
+import org.yeshi.utils.HttpUtil;
-import com.yeshi.fanli.entity.taobao.SearchFilter;
+import com.yeshi.fanli.dao.mybatis.taobao.TBPidMapper;
+import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
+import com.yeshi.fanli.entity.bus.user.UserInfo;
+import com.yeshi.fanli.entity.taobao.PidUser;
+import com.yeshi.fanli.entity.taobao.TBPid;
import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
+import com.yeshi.fanli.entity.taobao.TaoBaoLink;
import com.yeshi.fanli.entity.taobao.TaoBaoOrder;
-import com.yeshi.fanli.entity.taobao.TaoBaoSearchResult;
-import com.yeshi.fanli.entity.taobao.TaoKeAppInfo;
-import com.yeshi.fanli.exception.taobao.TaoKeApiException;
import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException;
-import com.yeshi.fanli.exception.taobao.TaobaoGoodsUpdateException;
-import com.yeshi.fanli.service.inter.taobao.TaoBaoGoodsUpdateService;
+import com.yeshi.fanli.log.LogHelper;
+import com.yeshi.fanli.service.inter.goods.ShareGoodsService;
+import com.yeshi.fanli.service.inter.taobao.TaoBaoBuyRelationMapService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoOrderService;
+import com.yeshi.fanli.service.inter.user.TBPidService;
+import com.yeshi.fanli.service.inter.user.UserExtraTaoBaoInfoService;
+import com.yeshi.fanli.service.inter.user.UserInfoService;
import com.yeshi.fanli.util.BeanUtil;
+import com.yeshi.fanli.util.StringUtil;
+import com.yeshi.fanli.util.TaoBaoConstant;
import com.yeshi.fanli.util.taobao.TaoBaoOrderUtil;
import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
-@Ignore
+import net.sf.json.JSONArray;
+import net.sf.json.JSONObject;
+
+//@Ignore
public class TaoKeTest {
-
- public static int count=0;
+
+ public static int count = 0;
@Test
public void test1() {
-
- SearchFilter sf = new SearchFilter();
- sf.setPage(3);
- sf.setPageSize(40);
- sf.setKey("闉嬪");
- TaoBaoSearchResult result = TaoKeApiUtil.searchWuLiao(sf);
- List<TaoBaoGoodsBrief> goodsList = result.getTaoBaoGoodsBriefs();
- List<Long> list=new ArrayList<>();
- for (TaoBaoGoodsBrief tf : goodsList) {
- list.add(tf.getAuctionId()) ;
- }
-
- try {
- TaoKeApiUtil.getBatchGoodsInfo(list);
- } catch (TaoKeApiException e1) {
- e1.printStackTrace();
- } catch (TaobaoGoodsDownException e1) {
- e1.printStackTrace();
- }
-
- System.out.println(count);
+ TaoKeApiUtil.getQuanInfo(574147597194L, "69e82c923a044dcbae7f36c6608f57eb");
}
@Test
public void test2() {
- TaoKeAppInfo app = new TaoKeAppInfo();
- app.setAdzoneId("44841750025");
- app.setAppKey("25070111");
- app.setAppSecret("c7809ad9cd926fc45199d1d3ab7fe2eb");
- app.setPid("mm_124933865_113050446_44841750025");
- try {
- TaoBaoGoodsBrief goods = TaoKeApiUtil.searchGoodsDetail(527893773636L, app);
- System.out.println(goods.getId());
- } catch (TaobaoGoodsDownException e) {
- e.printStackTrace();
- }
+ System.out.println(HttpUtil.getShortLink("http://h5.flq001.com"));
+ System.out.println(HttpUtil.getShortLink("http://h5.flq002.com"));
+ System.out.println(HttpUtil.getShortLink("http://h5.flq003.com"));
+ System.out.println(HttpUtil.getShortLink("http://h5.flq004.com"));
+ System.out.println(HttpUtil.getShortLink("http://h5.flq005.com"));
}
@Test
public void test3() {
- TaoBaoGoodsUpdateService taoBaoGoodsUpdateService = BeanUtil.getBean(TaoBaoGoodsUpdateService.class);
- try {
- taoBaoGoodsUpdateService.updateTaoBaoGoods(TaoKeApiUtil.searchGoodsDetail(571566226590L));
- } catch (TaobaoGoodsUpdateException e) {
- e.printStackTrace();
- } catch (TaobaoGoodsDownException e) {
- e.printStackTrace();
- }
+ // try {
+ // EmergencyUtil.baoJin("monitor-error-tb-app-limit-24980167",
+ // "娣樺疂APPKey璇锋眰闄愬埗銆�24980167銆�", new String[] { "18581318252" });
+ // } catch (Exception e1) {
+ //
+ // }
+ // 0K6TBHS%2F84vpYy%2FzKPWwH6J7%2BkHL3AEW
+ // 2PlyMHAEtzjJX3K6R73L5KJ7%2BkHL3AEW
+ Long[] auctionIds = new Long[] { 528561708277L, 563689377074L, 570752677800L, 569281626446L, 567165767332L,
+ 555437572417L, 534857332052L, 565233575889L, 565536124572L };
+
+ // TaoKeApiUtil.getLiJinXG();
+ // String
+ // url="https://uland.taobao.com/taolijin/edetail?eh=aIrBfHZGd4iZuQF0XRz0iAXoB+DaBK5LQS0Flu/fbSp4QsdWMikAalrisGmre1Id0BFAqRODu114yl7QZ1qFyc7LbOC0oAuo+MUwzxYlSKECGml30RY8PBx5jSVkulpmRQIlrKaDNziGVmobyGguP+jgTFwOoHsRe9593cvcC9QGQASttHIRqdGO5qxVOPQ2buEoHk5wx6hxhsv5QYr1rbcOQrCzclRfPTIk7Z0myMWxZvcNeMU+E+L71lQF+6uZp7DLcYmoygrjfjYOW9fVleIg09jheaZgonv6QcvcARY=&union_lens=lensId:0b0b4505_0c2a_16af789993f_0880;traffic_flag=lm";
+ // String token=
+ // TaoKeApiUtil.getTKToken("https://img.alicdn.com/imgextra/i4/2256112408/O1CN01EKNifJ1TeuF9x4it9_!!2256112408.jpg_400x400.jpg",
+ // "鏃楃澘鐢甸鎵囧彴寮忓鐢�12瀵�16瀵搁潤闊冲鐢熷鑸嶆憞澶村畾鏃惰妭鑳藉彴鎵囪惤鍦版墖", url);
+ // System.out.println(token);
}
@Test
@@ -102,8 +100,235 @@
}
}
+ static String cookie = "cna=Q9eYFEM1rm8CAXH7EKUDSamu; account-path-guide-s1=true; 124933865_yxjh-filter-1=true; undefined_yxjh-filter-1=true; t=9dd8d10a742dccaf3c42af830249fe39; pub-message-center=1; cookie2=102d56e20037f8d9d1edff803285bb30; v=0; _tb_token_=58995010ab130; alimamapwag=TW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NCkgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzczLjAuMzY4My4xMDMgU2FmYXJpLzUzNy4zNg%3D%3D; cookie32=b9eeefb51faae3c2f2d5a08032516932; alimamapw=F3AHRnRyE3slFHALR3V%2BEHIDF3Z2RndyPwhRVQAOAwAPBVMABQ0HAFMBVQtTAgdaUwAJUwUEVlFX%0A; cookie31=MTI0OTMzODY1LCVFNiVBNCVCMCVFOCVBNyU4NiVFNyVBNyU5MSVFNiU4QSU4MCw0MTI2NjE4NjlAcXEuY29tLFRC; login=VFC%2FuZ9ayeYq2g%3D%3D; rurl=aHR0cHM6Ly9wdWIuYWxpbWFtYS5jb20v; apushcbb2dd0258025fce735efc665422e16d=%7B%22ts%22%3A1556431673690%2C%22heir%22%3A1556431667417%2C%22parentId%22%3A1556431661238%7D; l=bBT2uo87vPM0bgSWBOfNquI8Lx7OPIRb8sPzw4OG5ICP_m1JWkBPWZO5aaYvC3GNa6FDR3y1Nww8BuLKsy4Eh; isg=BNLSh7GG2qh7bSaDwEb8EBBFI5h0S9cHLDtQ4pwrXwV9r3CphHO9jLWJH0M2304V";
+
+ private List<String> getPids() {
+
+ List<String> pids = new ArrayList<>();
+
+ String url = "https://pub.alimama.com/common/adzone/adzoneManage.json";
+ Map<String, String> headers = new HashMap<>();
+ headers.put("cookie", cookie);
+ headers.put("user-agent",
+ "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36");
+ headers.put("referer", "https://pub.alimama.com/myunion.htm");
+ Map<String, String> params = new HashMap<>();
+ params.put("tab", 3 + "");// 3
+ params.put("toPage", "10");
+ params.put("perPageSize", "500");
+ params.put("_input_charset", "utf-8");
+ params.put("gcid", "8");// 8
+ params.put("t", System.currentTimeMillis() + "");
+ params.put("_tb_token_", "78e513aee5563");
+
+ String result = HttpUtil.get(url, params, headers);
+ JSONObject resultJson = JSONObject.fromObject(result);
+ JSONArray array = resultJson.optJSONObject("data").optJSONArray("pagelist");
+ for (int i = 0; i < array.size(); i++) {
+ JSONObject item = array.optJSONObject(i);
+ String pid = item.optString("adzonePid");
+ if ((item.optString("name").startsWith("quanqudao_") || item.optString("name").startsWith("tuiguang_"))
+ && item.optInt("mixClick30day") < 3000) {
+ pids.add(pid);
+ }
+ }
+
+ return pids;
+ }
+
@Test
public void test5() {
- TaoKeApiUtil.parseAuctionIdFromLink("https://m.tb.cn/h.3skbzZd?sm=e15385");
+ String[] pids = new String[] { "mm_124933865_43788020_437192946", "mm_124933865_35320824_165774413",
+ "mm_124933865_43788020_381938426", "mm_124933865_46852994_1828270335",
+ "mm_124933865_56750082_10647300249", "mm_124933865_56750082_87140050199",
+ "mm_124933865_56750082_89555600043" };
+ TBPidMapper tbPidMapper = BeanUtil.getBean(TBPidMapper.class);
+ for (int i = 200; i < 230; i++) {
+ List<TBPid> list = tbPidMapper.listByTypeAndUse(true, 500 * i, 500);
+ String adzones = "";
+ for (TBPid tbPid : list) {
+ boolean needAdd = true;
+ for (String p : pids)
+ if (p.equalsIgnoreCase(tbPid.getPid())) {
+ needAdd = false;
+ break;
+ }
+ if (needAdd)
+ adzones += tbPid.getPid().split("_")[3] + ",";
+ }
+ adzones = adzones.substring(0, adzones.length() - 1);
+ }
}
+
+ @Test
+ public void test6() {
+ String token = TaoKeApiUtil.getTKToken(
+ "https://img.alicdn.com/bao/uploaded/i4/1951405497/O1CN01pSRKwW1qTfhFOL6ID_!!0-item_pic.jpg",
+ "杩涢棬闂ㄥ灚鍗у鍦版鍘ㄦ埧鑴氬灚鍗荡瀹ら槻婊戝灚瀛愬鐢ㄩ棬鍙e崼鐢熼棿鍚告按鍦板灚",
+ "https://uland.taobao.com/coupon/edetail?e=ALb9e%2B%2F%2BWuEGQASttHIRqWG9PQkvBWgpe2xKTDmY89k3iJ6QLtrZTaw1YqztnqtTrnLz2cLaP4IorCkhghE4lRktOfsF9p14gPp7zT6kOnRnXdWpB0IN0xemP0hpIIPvjDppvlX%2Bob8NlNJBuapvQ2MDg9t1zp0R8pjV3C9qcwTlnMqBDl4yuer2wO%2Fohke1&traceId=0b83456615579010794213275ee3b8&union_lens=lensId:0b1832c2_0bdc_16aba23f39d_07b3&xId=hu3LxjUFR7nb3uT9e97Uy74tDuNpUuisuzrh7K8WAro72oLHXY1N6hSpx7bzQWpJ3rMAKcQf6fA0iBNYmL0GOA");
+ System.out.println(token);
+ }
+
+ @Test
+ public void test7() {
+ Long uid = 1965358L;
+ Long auctionId = 575009129060L;
+ String platform = "ios";
+ UserInfoService userInfoService = BeanUtil.getBean(UserInfoService.class);
+ UserExtraTaoBaoInfoService userExtraTaoBaoInfoService = BeanUtil.getBean(UserExtraTaoBaoInfoService.class);
+ TaoBaoBuyRelationMapService taoBaoBuyRelationMapService = BeanUtil.getBean(TaoBaoBuyRelationMapService.class);
+ TBPidService tbPidService = BeanUtil.getBean(TBPidService.class);
+
+ ShareGoodsService shareGoodsService = BeanUtil.getBean(ShareGoodsService.class);
+
+ UserInfo user = userInfoService.getUserByIdWithMybatis(uid);
+
+ TaoBaoGoodsBrief goods = null;
+
+ try {
+ goods = TaoKeApiUtil.getSimpleGoodsInfo(auctionId);
+ } catch (TaobaoGoodsDownException e) {
+ return;
+ } catch (Exception e) {
+ try {
+ LogHelper.errorDetailInfo(e, "鑾峰彇鍟嗗搧绠�鐗堣鎯呭嚭閿�", auctionId + "");
+ } catch (Exception e1) {
+ e1.printStackTrace();
+ }
+ }
+
+ JSONObject data = new JSONObject();
+ boolean isNative = false;
+ String pid = null;
+
+ boolean specialConvert = false;
+
+ if (goods.getMaterialLibType() != null && goods.getMaterialLibType() == 1) {
+ specialConvert = true;
+ } else
+ specialConvert = false;
+
+ String specialId = null;
+ String relationId = null;
+ // 鏌ヨ鐢ㄦ埛ID鏄惁缁戝畾浜嗕細鍛樿繍钀D
+ UserExtraTaoBaoInfo userInfo = userExtraTaoBaoInfoService.getByUid(uid);
+ if (userInfo != null && !StringUtil.isNullOrEmpty(userInfo.getSpecialId()) && userInfo.getSpecialValid() != null
+ && userInfo.getSpecialValid() == true) {
+ specialId = userInfo.getSpecialId();
+ relationId = userInfo.getRelationId();
+ // 宸茬粡缁戝畾
+ if (specialConvert) {
+ isNative = true;
+ } else
+ isNative = false;
+
+ pid = TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT;
+
+ } else {// 灏氭湭缁戝畾
+ isNative = true;
+ }
+
+ data.put("native", isNative);
+
+ int pidType = PidUser.TYPE_FANLI_ANDROID;
+ if (platform.equalsIgnoreCase("ios"))
+ pidType = PidUser.TYPE_FANLI_IOS;
+ try {
+
+ TaoBaoLink taoBaoLink = null;
+ // 鏄繑鍒╁晢鍝佸簱鐨勫晢鍝�
+ if (specialConvert) {
+ if (!StringUtil.isNullOrEmpty(specialId)) {
+ taoBaoLink = shareGoodsService.getTaoBaoLinkForBuyWithSpecial(uid, specialId, auctionId);
+ data.put("native", true);
+ } else {
+ if (!specialConvert && !isNative) {
+ if (pidType == PidUser.TYPE_FANLI_ANDROID)
+ taoBaoLink = shareGoodsService.getTaoBaoLink(uid, auctionId,
+ tbPidService.getAndroidDefault().getPid());
+ else
+ taoBaoLink = shareGoodsService.getTaoBaoLink(uid, auctionId,
+ tbPidService.getIOSDefault().getPid());
+ } else
+ taoBaoLink = shareGoodsService.getTaoBaoLinkForBuy(uid, auctionId, pidType);
+ }
+ } else {// 涓嶆槸杩斿埄搴撶殑鍟嗗搧锛岀敤鐗规畩PID鏇夸唬
+ try {
+ relationId = taoBaoBuyRelationMapService.getRelationId(uid);
+ } catch (Exception e) {
+ LogHelper.errorDetailInfo(e, "uid:" + uid, null);
+ }
+ if (!StringUtil.isNullOrEmpty(relationId)) {//
+ taoBaoLink = shareGoodsService.getTaoBaoLinkForShare(uid, auctionId, relationId,
+ TaoBaoConstant.TAOBAO_RELATION_AS_SPECIAL_PID);
+ data.put("native", true);
+ } else {
+ if (pidType == PidUser.TYPE_FANLI_ANDROID)
+ taoBaoLink = shareGoodsService.getTaoBaoLink(uid, auctionId,
+ tbPidService.getAndroidDefault().getPid());
+ else
+ taoBaoLink = shareGoodsService.getTaoBaoLink(uid, auctionId,
+ tbPidService.getIOSDefault().getPid());
+ }
+ }
+ JSONObject link = new JSONObject();
+ link.put("clickUrl", taoBaoLink.getClickUrl());
+ link.put("couponUrl", taoBaoLink.getCouponLink());
+ data.put("type", 1);
+ data.put("link", link);
+ } catch (Exception e) {
+ isNative = false;
+ // TBPid tbPid = null;
+ // if (acceptData.getPlatform().equalsIgnoreCase("android")) {
+ // tbPid = tbPidService.getTBPid(uid, PidUser.TYPE_FANLI_ANDROID);
+ // } else {
+ // tbPid = tbPidService.getTBPid(uid, PidUser.TYPE_FANLI_IOS);
+ // }
+ //
+ // data.put("native", isNative);
+
+ // if (tbPid != null) {
+ // String siteId = tbPid.getPid().split("_")[2];
+ // String adzoneId = tbPid.getPid().split("_")[3];
+ // TaoBaoUnionConfig config =
+ // taoBaoUnionConfigService.getConfigByAppIdCache(siteId);
+ // ClientTBPid clientTBPid = new ClientTBPid(config.getAppKey(),
+ // tbPid.getPid(), siteId, adzoneId);
+ // data.put("type", 2);
+ // data.put("tbPidInfo", clientTBPid);
+ // out.print(JsonUtil.loadTrueResult(data));
+ // } else {
+ // out.print(JsonUtil.loadFalseResult(1, "璇锋眰澶辫触"));
+ // }
+ }
+
+ }
+
+ private void deleteAdzones(String adzones) {
+ String url = "https://pub.alimama.com/common/adzone/adzoneDelete.json";
+ Map<String, String> headers = new HashMap<>();
+ headers.put("cookie", cookie);
+ headers.put("user-agent",
+ "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36");
+ headers.put("referer", "https://pub.alimama.com/myunion.htm");
+ Map<String, String> params = new HashMap<>();
+ params.put("adzoneids", adzones);
+ params.put("gcid", "8");
+ params.put("t", System.currentTimeMillis() + "");
+ params.put("_tb_token_", "58995010ab130");
+ // System.out.println("浣嶇疆:" + i);
+ String result = (HttpUtil.post(url, params, headers));
+ if (result != null && JSONObject.fromObject(result).optBoolean("ok") == true) {
+ System.out.println(result);
+ } else {
+ System.out.println("error---");
+ // break;
+
+ }
+ try {
+ Thread.sleep(1000 * 3 + (int) (Math.random() * 3000));
+ } catch (InterruptedException e) {
+ }
+ }
+
}
--
Gitblit v1.8.0