From 7e7db2fa55a9a3af46d4fd8ede0dee147f101d64 Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期六, 09 五月 2020 21:41:27 +0800
Subject: [PATCH] 2.1需求

---
 fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoOrderUtil.java |  140 ++++++++++++++++++++--------------------------
 1 files changed, 61 insertions(+), 79 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoOrderUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoOrderUtil.java
index 15c0c57..ff4dc77 100644
--- a/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoOrderUtil.java
+++ b/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoOrderUtil.java
@@ -5,6 +5,7 @@
 import java.math.BigDecimal;
 import java.net.URLEncoder;
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.Comparator;
 import java.util.Date;
 import java.util.HashMap;
@@ -26,7 +27,7 @@
 import com.yeshi.fanli.entity.taobao.TaoBaoOrder;
 import com.yeshi.fanli.entity.taobao.TaoBaoUnionConfig;
 import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanOrder;
-import com.yeshi.fanli.exception.TaoBaoOrderException;
+import com.yeshi.fanli.exception.order.TaoBaoOrderException;
 import com.yeshi.fanli.log.LogHelper;
 import com.yeshi.fanli.util.Constant;
 import com.yeshi.fanli.util.MoneyBigDecimalUtil;
@@ -100,14 +101,14 @@
 			String as = gm.getResponseBodyAsString();
 			JSONObject root = JSONObject.fromObject(as);
 			if (root.optInt("code") == 0) {// 涓婃姤鎴愬姛
-				LogHelper.cookieLog("涓婃姤鎴愬姛锛�");
+				LogHelper.error("涓婃姤鎴愬姛锛�");
 				return;
 			}
-			LogHelper.cookieLog("涓婃姤澶辫触锛�");
+			LogHelper.error("涓婃姤澶辫触锛�");
 
 		} catch (Exception e) {
 			e.printStackTrace();
-			LogHelper.cookieLog("涓婃姤澶辫触锛�");
+			LogHelper.error("涓婃姤澶辫触锛�");
 		}
 	}
 
@@ -120,7 +121,7 @@
 	public static List<TaoBaoOrder> getOrderList(int day, TaoBaoUnionConfig config) {
 		String cookie1 = getTaoBaoCookie(config.getAccount());
 
-		LogHelper.cookieLog("璐﹀彿涓猴細" + config.getAccount() + ",cookie涓猴細" + cookie1);
+		LogHelper.error("璐﹀彿涓猴細" + config.getAccount() + ",cookie涓猴細" + cookie1);
 
 		String[] cookies = new String[] { cookie1 };
 		List<TaoBaoOrder> list = new ArrayList<TaoBaoOrder>();
@@ -194,7 +195,7 @@
 	private static List<TaoBaoOrder> downLoadOrderFromTaoBao(String url, TaoBaoUnionConfig config)
 			throws TaoBaoOrderException {
 		String cookie1 = getTaoBaoCookie(config.getAccount());
-		LogHelper.cookieLog("璐﹀彿涓猴細" + config.getAccount() + ",cookie涓猴細" + cookie1);
+		LogHelper.error("璐﹀彿涓猴細" + config.getAccount() + ",cookie涓猴細" + cookie1);
 		String[] cookies = new String[] { cookie1 };
 		List<TaoBaoOrder> list = new ArrayList<TaoBaoOrder>();
 		int i = 0;
@@ -306,16 +307,8 @@
 		return getOrderList(30, config);
 	}
 
-	/**
-	 * 鑾峰彇缁存潈鎴愬姛璁㈠崟
-	 * 
-	 * @param startTime
-	 * @param endTime
-	 * @return
-	 */
-	public static List<TaoBaoWeiQuanOrder> getWeiQuanOrders(long startTime, long endTime, TaoBaoUnionConfig config) {
-		String cookie = getTaoBaoCookie(config.getAccount());
-		return getWeiQuanOrders(cookie, startTime, endTime);
+	public static List<TaoBaoWeiQuanOrder> getWeiQuanOrders(InputStream input) {
+		return parseWeiQuanOrder(input);
 	}
 
 	private static List<TaoBaoWeiQuanOrder> getWeiQuanOrders(String cookies, long startTime, long endTime) {
@@ -574,38 +567,42 @@
 				for (int c = 0; c < sheet.getColumns(); c++) {
 					String content = sheet.getCell(c, r).getContents().trim();
 					switch (c) {
-					case 0://
-						orderRecord.setOrderId(content);
-						break;
-					case 1://
-						orderRecord.setOrderItemId(content);
-						break;
-					case 2://
-						orderRecord.setGoodsName(content);
-						break;
-					case 3:
-						orderRecord.setMoney(StringUtil.isNullOrEmpty(content) ? null : new BigDecimal(content));
-						break;
-					case 4:
-						orderRecord.setFanMoney(StringUtil.isNullOrEmpty(content) ? null : new BigDecimal(content));
-						break;
-					case 5://
-						orderRecord.setState(content);
-						break;
-					case 6://
-						if (!StringUtil.isNullOrEmpty(content))
-							orderRecord.setJieSuanTime(
-									new Date(TimeUtil.convertToTimeTemp(content, "yyyy-MM-dd HH:mm:ss")));
-						break;
-					case 7://
+					case 0:// 缁存潈鏃堕棿
 						if (!StringUtil.isNullOrEmpty(content))
 							orderRecord.setWeiQuanTime(
 									new Date(TimeUtil.convertToTimeTemp(content, "yyyy-MM-dd HH:mm:ss")));
 						break;
-					case 8://
+					case 1:// 缁存潈瀹屾垚鏃堕棿
 						if (!StringUtil.isNullOrEmpty(content))
 							orderRecord.setWeiQuanFinishTime(
 									new Date(TimeUtil.convertToTimeTemp(content, "yyyy-MM-dd HH:mm:ss")));
+						break;
+					case 2:// 缁撶畻鏃堕棿
+						if (!StringUtil.isNullOrEmpty(content))
+							orderRecord.setJieSuanTime(
+									new Date(TimeUtil.convertToTimeTemp(content, "yyyy-MM-dd HH:mm:ss")));
+						break;
+					case 3:// 鍟嗗搧鍚嶇О
+						orderRecord.setGoodsName(content);
+						break;
+					case 5:// 娣樺疂璁㈠崟鍙�
+						orderRecord.setOrderId(content);
+						break;
+					case 6:// 娣樺疂瀛愯鍗曞彿
+						orderRecord.setOrderItemId(content);
+						break;
+					case 7:// 缁存潈鐘舵��
+						orderRecord.setState(content);
+						break;
+					case 8:// 缁撶畻閲戦
+
+						break;
+					case 9:// 閫�娆鹃噾棰�
+						orderRecord.setMoney(StringUtil.isNullOrEmpty(content) ? null : new BigDecimal(content));
+						break;
+
+					case 10:// 杩旇繕鍟嗗閲戦
+						orderRecord.setFanMoney(StringUtil.isNullOrEmpty(content) ? null : new BigDecimal(content));
 						break;
 					}
 				}
@@ -691,7 +688,7 @@
 				try {
 					setOrderBy(map.get(orderId));
 				} catch (Exception e) {
-					LogHelper.errorDetailInfo(e, "璁㈠崟鍙�:" + orderId, "璁㈠崟鎺掑簭鍊肩伆搴︽祴璇�");
+//					LogHelper.errorDetailInfo(e, "璁㈠崟鍙�:" + orderId, "璁㈠崟鎺掑簭鍊肩伆搴︽祴璇�");
 				}
 			}
 		} catch (Exception e) {
@@ -737,7 +734,7 @@
 			String tradeId = taoBaoOrder.getTradeId();
 			String orderByStr = tradeId.substring(startIndex, endIndex + 1);
 			if (orderByStr.length() > 8) {
-				LogHelper.error("璁㈠崟鐨刼rderBy瓒呰繃8浣�:" + taoBaoOrder.getOrderBy());
+				LogHelper.error(taoBaoOrder.getOrderId() + "-璁㈠崟鐨刼rderBy瓒呰繃8浣�:" + taoBaoOrder.getOrderBy());
 			}
 			int orderBy = Integer.parseInt(orderByStr);
 			// taoBaoOrder.setOrderBy(orderBy);
@@ -766,42 +763,27 @@
 		return TimeUtil.convertToTimeTemp(time, "yyyy-M-dd HH:mm:ss");
 	}
 
-	public static CommonOrder convert(TaoBaoOrder taoBaoOrder) {
-		CommonOrder commonOrder = new CommonOrder();
-		commonOrder.setCount(taoBaoOrder.getCount());
-		commonOrder.setCreateTime(new Date());
-		if (taoBaoOrder.geteIncome() != null && taoBaoOrder.getSubsidy() != null)
-			commonOrder.seteIncome(taoBaoOrder.geteIncome().add(taoBaoOrder.getSubsidy()));
-		else
-			commonOrder.seteIncome(taoBaoOrder.geteIncome());
-		commonOrder.setEstimate(taoBaoOrder.getEstimate());
-		commonOrder.setOrderNo(taoBaoOrder.getOrderId());
-		commonOrder.setPayment(taoBaoOrder.getPayment());
-		commonOrder.setSettlement(taoBaoOrder.getSettlement());
-		if (!StringUtil.isNullOrEmpty(taoBaoOrder.getSettlementTime()))
-			commonOrder.setSettleTime(
-					new Date(TimeUtil.convertToTimeTemp(taoBaoOrder.getSettlementTime(), "yyyy-MM-dd HH:mm:ss")));
-		commonOrder.setSourcePosition(String.format("mm_%s_%s_%s", "124933865", taoBaoOrder.getSourceMediaId(),
-				taoBaoOrder.getAdPositionId()));
-		commonOrder.setSourceType(Constant.SOURCE_TYPE_TAOBAO);
-		int state = 0;
-		if ("璁㈠崟浠樻".equalsIgnoreCase(taoBaoOrder.getOrderState())) {
-			state = CommonOrder.STATE_FK;
-		} else if ("璁㈠崟鎴愬姛".equalsIgnoreCase(taoBaoOrder.getOrderState())) {
-			state = CommonOrder.STATE_FK;
-		} else if ("璁㈠崟澶辨晥".equalsIgnoreCase(taoBaoOrder.getOrderState())) {
-			state = CommonOrder.STATE_SX;
-		} else if ("璁㈠崟缁撶畻".equalsIgnoreCase(taoBaoOrder.getOrderState())) {
-			state = CommonOrder.STATE_JS;
+	/**
+	 * 鑾峰彇涓�缁勮鍗曠殑hash鍊�
+	 * 
+	 * @param list
+	 * @return
+	 */
+	public static String getOrderDataHashCode(List<TaoBaoOrder> list) {
+		List<TaoBaoOrder> orderList = new ArrayList<>();
+		orderList.addAll(list);
+		Comparator<TaoBaoOrder> orderCM = new Comparator<TaoBaoOrder>() {
+
+			@Override
+			public int compare(TaoBaoOrder o1, TaoBaoOrder o2) {
+				return Long.parseLong(o1.getTradeId()) - Long.parseLong(o2.getTradeId()) > 0 ? 1 : -1;
+			}
+		};
+		Collections.sort(orderList, orderCM);
+		String sts = "";
+		for (TaoBaoOrder order : orderList) {
+			sts += (order.getTradeId() + "-" + order.getSpecialId() + "-" + order.getRelationId());
 		}
-		commonOrder.setOrderBy(taoBaoOrder.getOrderBy());
-		commonOrder.setState(state);
-		commonOrder.setThirdCreateTime(
-				new Date(TimeUtil.convertToTimeTemp(taoBaoOrder.getCreateTime(), "yyyy-MM-dd HH:mm:ss")));
-		commonOrder.setUpdateTime(new Date());
-		commonOrder.setTradeId(taoBaoOrder.getTradeId());
-
-		return commonOrder;
-
+		return StringUtil.Md5(sts);
 	}
 }

--
Gitblit v1.8.0