From b19d2e730b0ea707b500b307f58c46ba0cef695f Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期三, 18 九月 2019 18:41:21 +0800
Subject: [PATCH] 抖音广告监测修改

---
 fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeOrderApiUtil.java |  172 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 171 insertions(+), 1 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeOrderApiUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeOrderApiUtil.java
index 832841c..c51709f 100644
--- a/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeOrderApiUtil.java
+++ b/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeOrderApiUtil.java
@@ -292,6 +292,12 @@
 			e.printStackTrace();
 		}
 
+		try {
+			Thread.sleep(1000);
+		} catch (InterruptedException e) {
+			e.printStackTrace();
+		}
+
 		return null;
 	}
 
@@ -390,6 +396,101 @@
 				}
 			}
 		}
+
+		return orderList;
+	}
+
+	private static List<TaoBaoOrder> parseTaoBaoOrderNew(String response) {
+
+		List<TaoBaoOrder> orderList = new ArrayList<>();
+		JSONArray array = null;
+		JSONObject data = JSONObject.fromObject(response);
+		try {
+			array = data.optJSONObject("tbk_order_details_get_response").optJSONObject("data").optJSONObject("results")
+					.optJSONArray("publisher_order_dto");
+		} catch (Exception e) {
+			return orderList;
+		}
+
+		if (array != null)
+			for (int i = 0; i < array.size(); i++) {
+
+				JSONObject item = array.optJSONObject(i);
+				try {
+					TaoBaoOrder taoBaoOrder = new TaoBaoOrder();
+					taoBaoOrder.setAdPositionId(item.optString("adzone_id"));
+					taoBaoOrder.setAdPositionName(item.optString("adzone_name"));
+					taoBaoOrder.setAuctionId(item.optLong("item_id"));
+					taoBaoOrder.setClassName(item.optString("item_category_name"));
+					taoBaoOrder.setClickTime(item.optString("click_time"));
+					taoBaoOrder.setCount(item.optInt("item_num"));
+					taoBaoOrder.setCreateTime(item.optString("tk_create_time"));
+					if (!StringUtil.isNullOrEmpty(item.optString("total_commission_fee")))
+						taoBaoOrder.seteIncome(new BigDecimal(item.optString("total_commission_fee")));
+					else
+						taoBaoOrder.seteIncome(new BigDecimal(0));
+
+					if (!StringUtil.isNullOrEmpty(item.optString("pub_share_pre_fee")))
+						taoBaoOrder.setEstimate(new BigDecimal(item.optString("pub_share_pre_fee")));
+					else
+						taoBaoOrder.setEstimate(new BigDecimal(0));
+					taoBaoOrder.setiRatio(new BigDecimal(item.optString("income_rate")));
+					taoBaoOrder.setLatestUpdateTime(null);
+					taoBaoOrder.setManagerWangWang(null);
+					taoBaoOrder.setOrderBy(null);
+					taoBaoOrder.setOrderId(item.optString("trade_parent_id"));
+					if (item.optInt("tk_status") == 12)
+						taoBaoOrder.setOrderState("璁㈠崟浠樻");
+					else if (item.optInt("tk_status") == 3)
+						taoBaoOrder.setOrderState("璁㈠崟缁撶畻");
+					else if (item.optInt("tk_status") == 13)
+						taoBaoOrder.setOrderState("璁㈠崟澶辨晥");
+					else if (item.optInt("tk_status") == 14)
+						taoBaoOrder.setOrderState("璁㈠崟鎴愬姛");
+
+					taoBaoOrder.setOrderType(item.optString("order_type"));
+					if (!StringUtil.isNullOrEmpty(item.optString("alipay_total_price")))
+						taoBaoOrder.setPayment(new BigDecimal(item.optString("alipay_total_price")));
+					else
+						taoBaoOrder.setPayment(new BigDecimal(0));
+					taoBaoOrder.setPrice(new BigDecimal(item.optString("item_price")));
+					if (!StringUtil.isNullOrEmpty(item.optString("pay_price")))
+						taoBaoOrder.setSettlement(new BigDecimal(item.optString("pay_price")));
+					else
+						taoBaoOrder.setSettlement(new BigDecimal(0));
+					taoBaoOrder.setSettlementTime(item.optString("tk_earning_time"));
+					taoBaoOrder.setShop(item.optString("seller_shop_title"));
+					taoBaoOrder.setSourceMediaId(item.optString("site_id"));
+					taoBaoOrder.setSourceMediaName(item.optString("site_name"));
+					taoBaoOrder.setsRatio(null);
+					if (!StringUtil.isNullOrEmpty(item.optString("subsidy_fee")))// 琛ヨ创閲戦
+						taoBaoOrder.setSubsidy(new BigDecimal(item.optString("subsidy_fee")));
+					if (!StringUtil.isNullOrEmpty(item.optString("subsidy_rate")))
+						taoBaoOrder.setSubsidyRatio(new BigDecimal(item.optString("subsidy_rate")));
+					taoBaoOrder.setSubsidyType(item.optString("subsidy_type"));
+					taoBaoOrder.setTechnologySupportPercent(null);
+					taoBaoOrder.setThirdService(null);
+					taoBaoOrder.setTitle(item.optString("item_title"));
+					if (!StringUtil.isNullOrEmpty(item.optString("total_commission_fee")))
+						taoBaoOrder.setTkMoney(new BigDecimal(item.optString("total_commission_fee")));
+					else
+						taoBaoOrder.setTkMoney(new BigDecimal(0));
+					if (!StringUtil.isNullOrEmpty(item.optString("commission_rate")))
+						taoBaoOrder.setTkRate(new BigDecimal(item.optString("commission_rate")));
+					else if (!StringUtil.isNullOrEmpty(item.optString("total_commission_rate")))
+						taoBaoOrder.setTkRate(new BigDecimal(item.optString("total_commission_rate")));
+					taoBaoOrder.setTransactionPlatform(item.optString("terminal_type"));
+					taoBaoOrder.setRelationId(item.optString("relation_id"));
+					taoBaoOrder.setSpecialId(item.optString("special_id"));
+					taoBaoOrder.setTradeId(item.optString("trade_id"));
+					orderList.add(taoBaoOrder);
+				} catch (Exception e) {
+					try {
+						LogHelper.errorDetailInfo(e, "璁㈠崟鍙蜂俊鎭�:" + item.toString(), "璁㈠崟瑙f瀽鍑洪敊");
+					} catch (Exception e1) {
+					}
+				}
+			}
 
 		return orderList;
 	}
@@ -579,7 +680,7 @@
 		orderQuery.orderQueryType = "settle_time";
 		orderQuery.orderScene = 1;
 		orderQuery.pageSize = 100;
-		orderQuery.tkStatus=TK_STATUS_SETTLEMENT;
+		orderQuery.tkStatus = TK_STATUS_SETTLEMENT;
 		int page = 1;
 		orderQuery.pageNo = page;
 		if (third)
@@ -732,4 +833,73 @@
 
 		return finalResult;
 	}
+
+	/**
+	 * 鑾峰彇娣樺疂浼氬憳杩愯惀璁㈠崟
+	 * 
+	 * @param startTime
+	 * @param endTime
+	 * @return
+	 */
+	public static List<TaoBaoOrder> getTaoBaoSpecialOrderList(long startTime, long endTime, int queryType) {
+		List<TaoBaoOrder> orderList = new ArrayList<>();
+		// 闂撮殧3灏忔椂
+		long jianGe = endTime - startTime;
+		long page = jianGe / (1000 * 60 * 60 * 3L);
+		if (page == 0)
+			page = 1;
+		for (int i = 1; i <= page; i++) {
+			long start = startTime + (i - 1) * (1000 * 60 * 60 * 3L);
+			long end = start + (1000 * 60 * 60 * 3L);
+			if (end > endTime)
+				end = endTime;
+			List<TaoBaoOrder> tempOrderList = queryNewOrder(TimeUtil.getGernalTime(start, "yyyy-MM-dd HH:mm:ss"),
+					TimeUtil.getGernalTime(end, "yyyy-MM-dd HH:mm:ss"), queryType, 3);
+			if (tempOrderList != null)
+				orderList.addAll(tempOrderList);
+		}
+		return orderList;
+	}
+
+	public static List<TaoBaoOrder> getTaoBaoRelationOrderList(long startTime, long endTime, int queryType) {
+		List<TaoBaoOrder> orderList = new ArrayList<>();
+		// 闂撮殧3灏忔椂
+		long jianGe = endTime - startTime;
+		long page = jianGe / (1000 * 60 * 60 * 3L);
+		if (page == 0)
+			page = 1;
+		for (int i = 1; i <= page; i++) {
+			long start = startTime + (i - 1) * (1000 * 60 * 60 * 3L);
+			long end = start + (1000 * 60 * 60 * 3L);
+			if (end > endTime)
+				end = endTime;
+			List<TaoBaoOrder> tempOrderList = queryNewOrder(TimeUtil.getGernalTime(start, "yyyy-MM-dd HH:mm:ss"),
+					TimeUtil.getGernalTime(end, "yyyy-MM-dd HH:mm:ss"), queryType, 2);
+			if (tempOrderList != null)
+				orderList.addAll(tempOrderList);
+		}
+		return orderList;
+	}
+
+	public static List<TaoBaoOrder> queryNewOrder(String startTime, String endTime, int queryType, int orderScene) {
+		Map<String, String> params = new HashMap<>();
+		params.put("query_type", queryType + "");
+		params.put("page_size", "100");
+		params.put("start_time", startTime);
+		params.put("end_time", endTime);
+		params.put("page_no", "1");
+		params.put("order_scene", orderScene + "");
+		params.put("method", "taobao.tbk.order.details.get");
+		TaoKeAppInfo app = new TaoKeAppInfo();
+		app.setAppKey(TaoBaoConstant.TAOBAO_AUTH_APPKEY);
+		app.setAppSecret(TaoBaoConstant.TAOBAO_AUTH_APPSECRET);
+		try {
+			JSONObject json = TaoKeBaseUtil.baseRequest(params, app);
+			List<TaoBaoOrder> orderList = parseTaoBaoOrderNew(json.toString());
+			return orderList;
+		} catch (TaoKeApiException e) {
+			e.printStackTrace();
+		}
+		return new ArrayList<>();
+	}
 }

--
Gitblit v1.8.0