From 3ac30b4c17cf071ce9c66a59c069ab83efae6d2d Mon Sep 17 00:00:00 2001
From: yujian <yujian@123.com>
Date: 星期一, 14 十月 2019 17:44:13 +0800
Subject: [PATCH] Merge branch 'div' of ssh://193.112.35.168:29418/fanli-server into div

---
 fanli/src/main/java/com/yeshi/fanli/job/order/taobao/UpdateOrderJob.java |  208 +++++++++++++++++++++++----------------------------
 1 files changed, 94 insertions(+), 114 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/job/order/taobao/UpdateOrderJob.java b/fanli/src/main/java/com/yeshi/fanli/job/order/taobao/UpdateOrderJob.java
index 977c797..7e0e6d5 100644
--- a/fanli/src/main/java/com/yeshi/fanli/job/order/taobao/UpdateOrderJob.java
+++ b/fanli/src/main/java/com/yeshi/fanli/job/order/taobao/UpdateOrderJob.java
@@ -28,16 +28,16 @@
 import com.yeshi.fanli.service.inter.order.LostOrderService;
 import com.yeshi.fanli.service.inter.order.OrderProcessService;
 import com.yeshi.fanli.service.inter.order.OrderService;
-import com.yeshi.fanli.service.inter.taobao.TaoBaoOrderService;
+import com.yeshi.fanli.service.inter.order.tb.TaoBaoOrderService;
+import com.yeshi.fanli.service.inter.order.tb.TaoBaoWeiQuanOrderService;
 import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService;
-import com.yeshi.fanli.service.inter.taobao.TaoBaoWeiQuanOrderService;
 import com.yeshi.fanli.util.CMQManager;
 import com.yeshi.fanli.util.Constant;
 import com.yeshi.fanli.util.RedisManager;
 import com.yeshi.fanli.util.StringUtil;
-import com.yeshi.fanli.util.TaoBaoConstant;
 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;
 
 //浠庢窐瀹濈埇鍘昏鍗曟洿鏂�
@@ -86,39 +86,8 @@
 	 * @return
 	 */
 	private static List<TaoBaoOrder> getCommonOrder(long startTime, int span) {
-		int page = 1;
-		String startTimeStr = TimeUtil.getGernalTime(startTime, "yyyy-MM-dd HH:mm:ss");
-		List<TaoBaoOrder> orderList = TaoKeOrderApiUtil.getTaoBaoAllOrder(startTimeStr, span, page,
-				TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET);
-		while (orderList.size() == 100 * page) {
-			page++;
-			List<TaoBaoOrder> tempOrderList = TaoKeOrderApiUtil.getTaoBaoAllOrder(startTimeStr, span, page,
-					TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET);
-			if (tempOrderList != null && tempOrderList.size() > 0)
-				orderList.addAll(tempOrderList);
-		}
-		return orderList;
-	}
-
-	/**
-	 * 鑾峰彇绗笁鏂规櫘閫氳鍗�
-	 * 
-	 * @param startTime
-	 * @param span
-	 * @return
-	 */
-	private static List<TaoBaoOrder> getThirdCommonOrder(long startTime, int span) {
-		int page = 1;
-		String startTimeStr = TimeUtil.getGernalTime(startTime, "yyyy-MM-dd HH:mm:ss");
-		List<TaoBaoOrder> orderList = TaoKeOrderApiUtil.getTaoBaoThirdAllOrder(startTimeStr, span, page,
-				TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET);
-		while (orderList.size() == 100 * page) {
-			page++;
-			List<TaoBaoOrder> tempOrderList = TaoKeOrderApiUtil.getTaoBaoThirdAllOrder(startTimeStr, span, page,
-					TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET);
-			if (tempOrderList != null && tempOrderList.size() > 0)
-				orderList.addAll(tempOrderList);
-		}
+		List<TaoBaoOrder> orderList = TaoKeOrderApiUtil.getTaoBaoCommonOrderList(startTime, startTime + span * 1000L,
+				1);
 		return orderList;
 	}
 
@@ -130,51 +99,7 @@
 	 * @return
 	 */
 	public static List<TaoBaoOrder> getCommonOrder(long startTime, long endTime) {
-		List<TaoBaoOrder> orderList = new ArrayList<>();
-		long span = (endTime - startTime) % 1000 == 0 ? (endTime - startTime) / 1000 : (endTime - startTime) / 1000 + 1;
-		int count = (int) (span / 1200);
-		if (span % 1200 != 0)
-			count++;
-		for (int i = 0; i < count; i++) {
-			long startT = startTime + i * 1200 * 1000L;
-			int s = 1200;
-			if (endTime < startT + 1200 * 1000L) {
-				s = (int) ((endTime - startT) / 1000) + 1;
-				if (s < 60)
-					s = 60;
-			}
-			List<TaoBaoOrder> tempOrderList = getCommonOrder(startT, s);
-			if (tempOrderList != null && tempOrderList.size() > 0)
-				orderList.addAll(tempOrderList);
-		}
-		return orderList;
-	}
-
-	/**
-	 * 鐖彇涓夋柟璁㈠崟
-	 * 
-	 * @param startTime
-	 * @param endTime
-	 * @return
-	 */
-	public static List<TaoBaoOrder> getThirdCommonOrder(long startTime, long endTime) {
-		List<TaoBaoOrder> orderList = new ArrayList<>();
-		long span = (endTime - startTime) % 1000 == 0 ? (endTime - startTime) / 1000 : (endTime - startTime) / 1000 + 1;
-		int count = (int) (span / 1200);
-		if (span % 1200 != 0)
-			count++;
-		for (int i = 0; i < count; i++) {
-			long startT = startTime + i * 1200 * 1000L;
-			int s = 1200;
-			if (endTime < startT + 1200 * 1000L) {
-				s = (int) ((endTime - startT) / 1000) + 1;
-				if (s < 60)
-					s = 60;
-			}
-			List<TaoBaoOrder> tempOrderList = getThirdCommonOrder(startT, s);
-			if (tempOrderList != null && tempOrderList.size() > 0)
-				orderList.addAll(tempOrderList);
-		}
+		List<TaoBaoOrder> orderList = TaoKeOrderApiUtil.getTaoBaoCommonOrderList(startTime, endTime, 1);
 		return orderList;
 	}
 
@@ -225,9 +150,6 @@
 		// orderList.addAll(thirdOrderList);
 		// 鏂扮増鏈鐞嗘柟寮�
 		List<TaoBaoOrder> orderList = getCommonOrder(startTime, endTime);
-		List<TaoBaoOrder> tempOrderList2 = getThirdCommonOrder(startTime, endTime);
-		if (tempOrderList2 != null && tempOrderList2.size() > 0)
-			orderList.addAll(tempOrderList2);
 
 		LogHelper.orderInfo("姝e湪鎵ц璁㈠崟鐖彇缁撴潫锛屽叡鏈夎鍗�:" + orderList.size());
 		addOrder(orderList);
@@ -302,7 +224,6 @@
 			taoBaoOrderService.addTaoBaoOrderList(orderList);
 		} catch (Exception e) {
 			LogHelper.errorDetailInfo(e);
-
 		}
 
 		try {
@@ -311,7 +232,6 @@
 				Iterator<String> its = map.keySet().iterator();
 				while (its.hasNext()) {
 					String key = its.next();
-					List<TaoBaoOrder> orders = map.get(key);
 					String redisKey = "addorderqueue-" + key;
 					// redis鍋氶鐜囬檺鍒�
 					try {
@@ -362,8 +282,8 @@
 	public void doJob6() {
 		if (!Constant.IS_TASK)
 			return;
-		long endTime = System.currentTimeMillis() - 1000 * 60;
-		;
+		Date systemDate = TaoKeApiUtil.getTaoBaoSystemTime();
+		long endTime = systemDate != null ? systemDate.getTime() : System.currentTimeMillis();
 		updateOrder(endTime - 1000 * 60 * 20L, endTime);
 	}
 
@@ -372,8 +292,14 @@
 	public void doJob2() {
 		if (!Constant.IS_TASK)
 			return;
-		doTaoBaoWeiQuan();
+		LogHelper.error("澶勭悊杩斿埄鍒拌处鍓嶇疆");
+		try {
 
+			doTaoBaoWeiQuanOrder(2);
+		} catch (Exception e) {
+			LogHelper.errorDetailInfo(e);
+		}
+		LogHelper.error("寮�濮嬪鐞嗚繑鍒�");
 		orderProcessService.fanli();
 	}
 
@@ -385,34 +311,57 @@
 		orderProcessService.fanliInvaiteAndShare();
 	}
 
-	// 缁存潈璁㈠崟澶勭悊-澶勭悊鏈�杩�60澶╃殑
-	// 30鍒嗛挓涓�娆�
-	@Scheduled(cron = "0 0/30 * * * ? ")
-	public void doTaoBaoWeiQuan() {
-		if (!Constant.IS_TASK)
-			return;
-		// 鏂扮増缁存潈璁㈠崟澶勭悊
-		for (int i = 0; i < 60; i++) {
+	private void doTaoBaoWeiQuanOrder(int day) {
+
+		for (int i = 0; i < day; i++) {
 			List<TaoBaoWeiQuanOrder> orderList = new ArrayList<>();
+
+			// 鎸夌収缁存潈鍙戣捣鏃堕棿鏌ヨ
 			WeiQuanOrderResult result = TaoKeOrderApiUtil
 					.getTaoBaoSpecialWeiQuanOrderList(new Date(TimeUtil.convertToTimeTemp(
 							TimeUtil.getGernalTime(System.currentTimeMillis() - 1000 * 60 * 60 * 24L * i, "yyyy-MM-dd"),
-							"yyyy-MM-dd")), 1, false);
+							"yyyy-MM-dd")), 1, 1, false);
 			orderList.addAll(result.orderList);
+			// 绗笁鏂�
+			result = TaoKeOrderApiUtil.getTaoBaoSpecialWeiQuanOrderList(new Date(TimeUtil.convertToTimeTemp(
+					TimeUtil.getGernalTime(System.currentTimeMillis() - 1000 * 60 * 60 * 24L * i, "yyyy-MM-dd"),
+					"yyyy-MM-dd")), 1, 1, true);
+			orderList.addAll(result.orderList);
+
+			result = TaoKeOrderApiUtil.getTaoBaoRelationWeiQuanOrderList(new Date(TimeUtil.convertToTimeTemp(
+					TimeUtil.getGernalTime(System.currentTimeMillis() - 1000 * 60 * 60 * 24L * i, "yyyy-MM-dd"),
+					"yyyy-MM-dd")), 1, 1, false);
+			orderList.addAll(result.orderList);
+
+			// 绗笁鏂�
+			result = TaoKeOrderApiUtil.getTaoBaoRelationWeiQuanOrderList(new Date(TimeUtil.convertToTimeTemp(
+					TimeUtil.getGernalTime(System.currentTimeMillis() - 1000 * 60 * 60 * 24L * i, "yyyy-MM-dd"),
+					"yyyy-MM-dd")), 1, 1, true);
+			orderList.addAll(result.orderList);
+
+			/**
+			 * 鎸夌収缁存潈瀹屾垚鏃堕棿鏌ヨ
+			 */
 
 			result = TaoKeOrderApiUtil.getTaoBaoSpecialWeiQuanOrderList(new Date(TimeUtil.convertToTimeTemp(
 					TimeUtil.getGernalTime(System.currentTimeMillis() - 1000 * 60 * 60 * 24L * i, "yyyy-MM-dd"),
-					"yyyy-MM-dd")), 1, true);
+					"yyyy-MM-dd")), 3, 1, false);
+			orderList.addAll(result.orderList);
+			// 绗笁鏂�
+			result = TaoKeOrderApiUtil.getTaoBaoSpecialWeiQuanOrderList(new Date(TimeUtil.convertToTimeTemp(
+					TimeUtil.getGernalTime(System.currentTimeMillis() - 1000 * 60 * 60 * 24L * i, "yyyy-MM-dd"),
+					"yyyy-MM-dd")), 3, 1, true);
 			orderList.addAll(result.orderList);
 
 			result = TaoKeOrderApiUtil.getTaoBaoRelationWeiQuanOrderList(new Date(TimeUtil.convertToTimeTemp(
 					TimeUtil.getGernalTime(System.currentTimeMillis() - 1000 * 60 * 60 * 24L * i, "yyyy-MM-dd"),
-					"yyyy-MM-dd")), 1, false);
+					"yyyy-MM-dd")), 3, 1, false);
 			orderList.addAll(result.orderList);
 
+			// 绗笁鏂�
 			result = TaoKeOrderApiUtil.getTaoBaoRelationWeiQuanOrderList(new Date(TimeUtil.convertToTimeTemp(
 					TimeUtil.getGernalTime(System.currentTimeMillis() - 1000 * 60 * 60 * 24L * i, "yyyy-MM-dd"),
-					"yyyy-MM-dd")), 1, true);
+					"yyyy-MM-dd")), 3, 1, true);
 			orderList.addAll(result.orderList);
 
 			for (TaoBaoWeiQuanOrder order : orderList)
@@ -420,6 +369,16 @@
 			// 澶勭悊缁存潈璁㈠崟
 			orderProcessService.weiQuanOrder(orderList);
 		}
+
+	}
+
+	// 缁存潈璁㈠崟澶勭悊-澶勭悊鏈�杩�60澶╃殑
+	// 30鍒嗛挓涓�娆�
+	@Scheduled(cron = "0 0/30 * * * ? ")
+	public void doTaoBaoWeiQuan() {
+		if (!Constant.IS_TASK)
+			return;
+		doTaoBaoWeiQuanOrder(5);
 	}
 
 	// 姣�6涓皬鏃舵墽琛屼竴娆�
@@ -461,20 +420,16 @@
 		// 澶勭悊3-15澶╁墠鐨勮鍗曪紝姣忓ぉ璺戜竴娆�
 		Calendar ca = Calendar.getInstance();
 		int hour = ca.get(Calendar.HOUR_OF_DAY);
-
 		long startTime = TimeUtil.convertToTimeTemp(
 				TimeUtil.getGernalTime(ca.getTimeInMillis() - 1000 * 60 * 60 * 24 * 3L, "yyyy-MM-dd"), "yyyy-MM-dd")
 				- hour * (1000 * 60 * 60 * 12L);
 		long endTime = startTime + 1000 * 60 * 60 * 12L;
-		List<TaoBaoOrder> orderList = TaoKeOrderApiUtil.getTaoBaoSettleOrders(startTime, endTime, false);
-		List<TaoBaoOrder> tempOrderList = TaoKeOrderApiUtil.getTaoBaoSettleOrders(startTime, endTime, true);
-		if (tempOrderList != null && tempOrderList.size() > 0)
-			orderList.addAll(tempOrderList);
+		List<TaoBaoOrder> orderList = TaoKeOrderApiUtil.getTaoBaoCommonOrderList(startTime, endTime, 3);
 		addOrder(orderList);
 	}
 
 	/**
-	 * 13鍒嗛挓鏇存柊鏈�杩�13鍒嗛挓鐨勭粨绠楁暟鎹�
+	 * 13鍒嗛挓鏇存柊鏈�杩�2灏忔椂鐨勭粨绠楁暟鎹�
 	 */
 	@Scheduled(cron = "0 0/13 * * * ? ")
 	public void doSettleOrdersToday() {
@@ -482,12 +437,9 @@
 			return;
 		// 澶勭悊3-15澶╁墠鐨勮鍗曪紝姣忓ぉ璺戜竴娆�
 		Calendar ca = Calendar.getInstance();
-		long startTime = ca.getTimeInMillis() - 1000 * 60 * 5L - 1000 * 60 * 13L;
-		long endTime = startTime + 1000 * 60 * 13L;
-		List<TaoBaoOrder> orderList = TaoKeOrderApiUtil.getTaoBaoSettleOrders(startTime, endTime, false);
-		List<TaoBaoOrder> tempOrderList = TaoKeOrderApiUtil.getTaoBaoSettleOrders(startTime, endTime, true);
-		if (tempOrderList != null && tempOrderList.size() > 0)
-			orderList.addAll(tempOrderList);
+		long startTime = ca.getTimeInMillis() - 1000 * 60 * 5L - 1000 * 60 * 60 * 2L;
+		long endTime = startTime + 1000 * 60 * 60 * 2L;
+		List<TaoBaoOrder> orderList = TaoKeOrderApiUtil.getTaoBaoCommonOrderList(startTime, endTime, 3);
 		addOrder(orderList);
 	}
 
@@ -528,7 +480,6 @@
 		Long endTime = System.currentTimeMillis() - 1000 * 60 * 10L;
 		Long startTime = endTime - 1000 * 60 * 60 * 12L;
 		updateLocalTaoBaoOrder(startTime, endTime, 1, 2000);
-
 	}
 
 	public void updateLocalTaoBaoOrder(Long startTime, Long endTime, int page, int count) {
@@ -561,6 +512,9 @@
 		}
 	}
 
+	/**
+	 * 澶勭悊鏈�杩�5澶╃殑鏈湴璁㈠崟
+	 */
 	@Scheduled(cron = "30 13 3 * * ? ")
 	public void doLatest5DayLocalTaoBaoOrder() {
 		if (!Constant.IS_TASK)
@@ -575,4 +529,30 @@
 		}
 	}
 
+	/**
+	 * 澶勭悊涓婃湀璁㈠崟鎴愬姛
+	 */
+	@Scheduled(cron = "0 0 12 25 * ? ")
+	public void doSellerNotPayOrder() {
+		if (!Constant.IS_TASK)
+			return;
+		Calendar calender = Calendar.getInstance();
+		long endTime = TimeUtil.convertToTimeTemp(TimeUtil.getGernalTime(calender.getTimeInMillis(), "yyyy-MM"),
+				"yyyy-MM");
+		calender.add(Calendar.MONTH, -1);
+		long startTime = TimeUtil.convertToTimeTemp(TimeUtil.getGernalTime(calender.getTimeInMillis(), "yyyy-MM"),
+				"yyyy-MM");
+		// 鍟嗗鏈粯娆�
+		List<TaoBaoOrder> orderList = taoBaoOrderService.listByStateAndCreateTime("璁㈠崟鎴愬姛", new Date(startTime),
+				new Date(endTime));
+
+		if (orderList != null)
+			for (TaoBaoOrder order : orderList)
+				try {
+					orderProcessService.doTaoBaoSellerNotPaid(order);
+				} catch (Exception e) {
+					LogHelper.errorDetailInfo(e);
+				}
+	}
+
 }

--
Gitblit v1.8.0