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