From 0487f5c83c180037c7cc537585359efad3047437 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期五, 08 三月 2019 16:17:45 +0800
Subject: [PATCH] 淘宝订单修改

---
 fanli/src/main/java/com/yeshi/fanli/job/UpdateRelationAndSpecialOrderJob.java |   99 ++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 88 insertions(+), 11 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/job/UpdateRelationAndSpecialOrderJob.java b/fanli/src/main/java/com/yeshi/fanli/job/UpdateRelationAndSpecialOrderJob.java
index a514b01..e8dd32c 100644
--- a/fanli/src/main/java/com/yeshi/fanli/job/UpdateRelationAndSpecialOrderJob.java
+++ b/fanli/src/main/java/com/yeshi/fanli/job/UpdateRelationAndSpecialOrderJob.java
@@ -1,6 +1,8 @@
 package com.yeshi.fanli.job;
 
 import java.util.Calendar;
+import java.util.Collections;
+import java.util.Comparator;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
@@ -20,6 +22,7 @@
 import com.yeshi.fanli.util.TimeUtil;
 import com.yeshi.fanli.util.taobao.TaoBaoOrderUtil;
 import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
+import com.yeshi.fanli.util.taobao.TaoKeOrderApiUtil;
 
 /**
  * 娣樺疂娓犻亾璁㈠崟鏇存柊
@@ -36,6 +39,9 @@
 	@Resource
 	private RedisManager redisManager;
 
+	@Resource
+	private UpdateOrderJob updateOrderJob;
+
 	/**
 	 * 鏇存柊娓犻亾璁㈠崟(鏈�澶�20鍒嗛挓)
 	 * 
@@ -43,7 +49,7 @@
 	 */
 	private void updateRelationOrder(long startTime) {
 		String startTimeStr = TimeUtil.getGernalTime(startTime, "yyyy-MM-dd HH:mm:ss");
-		List<TaoBaoOrder> orderList = TaoKeApiUtil.getTaoBaoRelationOrder(startTimeStr, 1, Constant.TAOBAO_AUTH_APPKEY,
+		List<TaoBaoOrder> orderList = TaoKeOrderApiUtil.getTaoBaoRelationOrder(startTimeStr, 1, Constant.TAOBAO_AUTH_APPKEY,
 				Constant.TAOBAO_AUTH_APPSECRET);
 		addRelationAndSpecialOrder(orderList);
 	}
@@ -60,14 +66,46 @@
 		// 鏈�杩�90澶╃殑璁㈠崟
 		String startTimeStr = TimeUtil.getGernalTime(System.currentTimeMillis() - 1000 * 60 * 60 * 24 * 90L,
 				"yyyy-MM-dd HH:mm:ss");
-		for (int p = fromPage; p < toPage; p++) {
-			List<TaoBaoOrder> orderList = TaoKeApiUtil.getTaoBaoRelationOrder(startTimeStr, p,
-					Constant.TAOBAO_AUTH_APPKEY, Constant.TAOBAO_AUTH_APPSECRET);
-			addRelationAndSpecialOrder(orderList);
 
-			orderList = TaoKeApiUtil.getTaoBaoRelationThirdOrder(startTimeStr, p, Constant.TAOBAO_AUTH_APPKEY,
+		Comparator<TaoBaoOrder> cm = new Comparator<TaoBaoOrder>() {
+			@Override
+			public int compare(TaoBaoOrder o1, TaoBaoOrder o2) {
+				long span = TimeUtil.convertToTimeTemp(o2.getCreateTime(), "yyyy-MM-dd HH:mm:ss")
+						- TimeUtil.convertToTimeTemp(o1.getCreateTime(), "yyyy-MM-dd HH:mm:ss");
+				if (span > 0)
+					return 1;
+				else if (span == 0)
+					return 0;
+				else
+					return -1;
+			}
+		};
+
+		for (int p = fromPage; p < toPage; p++) {
+			// 鐖彇2鏂硅鍗�
+			List<TaoBaoOrder> orderList = TaoKeOrderApiUtil.getTaoBaoRelationOrder(startTimeStr, p,
+					Constant.TAOBAO_AUTH_APPKEY, Constant.TAOBAO_AUTH_APPSECRET);
+			Collections.sort(orderList, cm);
+			List<TaoBaoOrder> commonOrderList = UpdateOrderJob.getCommonOrder(
+					TimeUtil.convertToTimeTemp(orderList.get(orderList.size() - 1).getCreateTime(),
+							"yyyy-MM-dd HH:mm:ss"),
+					TimeUtil.convertToTimeTemp(orderList.get(0).getCreateTime(), "yyyy-MM-dd HH:mm:ss"));
+
+			List<TaoBaoOrder> list = UpdateOrderJob.mixTaoBaoOrder(commonOrderList, orderList);
+			Collections.sort(list, cm);
+			addRelationAndSpecialOrder(list);
+
+			orderList = TaoKeOrderApiUtil.getTaoBaoRelationThirdOrder(startTimeStr, p, Constant.TAOBAO_AUTH_APPKEY,
 					Constant.TAOBAO_AUTH_APPSECRET);
-			addRelationAndSpecialOrder(orderList);
+			Collections.sort(orderList, cm);
+			// 鐖彇涓夋柟璁㈠崟
+			commonOrderList = UpdateOrderJob.getThirdCommonOrder(
+					TimeUtil.convertToTimeTemp(orderList.get(orderList.size() - 1).getCreateTime(),
+							"yyyy-MM-dd HH:mm:ss"),
+					TimeUtil.convertToTimeTemp(orderList.get(0).getCreateTime(), "yyyy-MM-dd HH:mm:ss"));
+			list = UpdateOrderJob.mixTaoBaoOrder(commonOrderList, orderList);
+			Collections.sort(list, cm);
+			addRelationAndSpecialOrder(list);
 		}
 	}
 
@@ -90,11 +128,11 @@
 	 */
 	private void updateSpecialOrder(long startTime) {
 		String startTimeStr = TimeUtil.getGernalTime(startTime, "yyyy-MM-dd HH:mm:ss");
-		List<TaoBaoOrder> orderList = TaoKeApiUtil.getTaoBaoSpecialOrder(startTimeStr, 1, Constant.TAOBAO_AUTH_APPKEY,
+		List<TaoBaoOrder> orderList = TaoKeOrderApiUtil.getTaoBaoSpecialOrder(startTimeStr, 1, Constant.TAOBAO_AUTH_APPKEY,
 				Constant.TAOBAO_AUTH_APPSECRET);
 		addRelationAndSpecialOrder(orderList);
 
-		orderList = TaoKeApiUtil.getTaoBaoSpecialThirdOrder(startTimeStr, 1, Constant.TAOBAO_AUTH_APPKEY,
+		orderList = TaoKeOrderApiUtil.getTaoBaoSpecialThirdOrder(startTimeStr, 1, Constant.TAOBAO_AUTH_APPKEY,
 				Constant.TAOBAO_AUTH_APPSECRET);
 		addRelationAndSpecialOrder(orderList);
 	}
@@ -106,12 +144,51 @@
 	 * @param toPage-缁撴潫椤电爜锛堟瘡椤�20鏉℃暟鎹級
 	 */
 	private void updateSpecialOrder(int fromPage, int toPage) {
+		// 鏈�杩�90澶╃殑璁㈠崟
 		String startTimeStr = TimeUtil.getGernalTime(System.currentTimeMillis() - 1000 * 60 * 60 * 24 * 90L,
 				"yyyy-MM-dd HH:mm:ss");
+
+		Comparator<TaoBaoOrder> cm = new Comparator<TaoBaoOrder>() {
+			@Override
+			public int compare(TaoBaoOrder o1, TaoBaoOrder o2) {
+				long span = TimeUtil.convertToTimeTemp(o2.getCreateTime(), "yyyy-MM-dd HH:mm:ss")
+						- TimeUtil.convertToTimeTemp(o1.getCreateTime(), "yyyy-MM-dd HH:mm:ss");
+				if (span > 0)
+					return 1;
+				else if (span == 0)
+					return 0;
+				else
+					return -1;
+			}
+		};
+
 		for (int p = fromPage; p < toPage; p++) {
-			List<TaoBaoOrder> orderList = TaoKeApiUtil.getTaoBaoSpecialOrder(startTimeStr, p,
+			// 鐖彇2鏂硅鍗�
+			List<TaoBaoOrder> orderList = TaoKeOrderApiUtil.getTaoBaoSpecialOrder(startTimeStr, p,
 					Constant.TAOBAO_AUTH_APPKEY, Constant.TAOBAO_AUTH_APPSECRET);
-			addRelationAndSpecialOrder(orderList);
+			Collections.sort(orderList, cm);
+			List<TaoBaoOrder> commonOrderList = UpdateOrderJob.getCommonOrder(
+					TimeUtil.convertToTimeTemp(orderList.get(orderList.size() - 1).getCreateTime(),
+							"yyyy-MM-dd HH:mm:ss"),
+					TimeUtil.convertToTimeTemp(orderList.get(0).getCreateTime(), "yyyy-MM-dd HH:mm:ss"));
+
+			List<TaoBaoOrder> list = UpdateOrderJob.mixTaoBaoOrder(commonOrderList, orderList);
+			Collections.sort(list, cm);
+			addRelationAndSpecialOrder(list);
+
+			
+			// 鐖彇涓夋柟璁㈠崟
+			orderList = TaoKeOrderApiUtil.getTaoBaoSpecialThirdOrder(startTimeStr, p, Constant.TAOBAO_AUTH_APPKEY,
+					Constant.TAOBAO_AUTH_APPSECRET);
+			Collections.sort(orderList, cm);
+			
+			commonOrderList = UpdateOrderJob.getThirdCommonOrder(
+					TimeUtil.convertToTimeTemp(orderList.get(orderList.size() - 1).getCreateTime(),
+							"yyyy-MM-dd HH:mm:ss"),
+					TimeUtil.convertToTimeTemp(orderList.get(0).getCreateTime(), "yyyy-MM-dd HH:mm:ss"));
+			list = UpdateOrderJob.mixTaoBaoOrder(commonOrderList, orderList);
+			Collections.sort(list, cm);
+			addRelationAndSpecialOrder(list);
 		}
 	}
 

--
Gitblit v1.8.0