From 207dc8655711cddac2653e18b51e58a88dba2084 Mon Sep 17 00:00:00 2001
From: yj <Administrator@192>
Date: 星期五, 06 三月 2020 18:14:36 +0800
Subject: [PATCH] 发圈处理

---
 fanli/src/main/java/com/yeshi/fanli/job/order/jd/UpdateJDOrderJob.java |   27 +++++++++++++++++++--------
 1 files changed, 19 insertions(+), 8 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/job/order/jd/UpdateJDOrderJob.java b/fanli/src/main/java/com/yeshi/fanli/job/order/jd/UpdateJDOrderJob.java
index a419f16..233ebd5 100644
--- a/fanli/src/main/java/com/yeshi/fanli/job/order/jd/UpdateJDOrderJob.java
+++ b/fanli/src/main/java/com/yeshi/fanli/job/order/jd/UpdateJDOrderJob.java
@@ -15,7 +15,9 @@
 import com.yeshi.fanli.log.LogHelper;
 import com.yeshi.fanli.service.inter.order.jd.JDOrderService;
 import com.yeshi.fanli.util.Constant;
+import com.yeshi.fanli.util.RedisKeyEnum;
 import com.yeshi.fanli.util.RedisManager;
+import com.yeshi.fanli.util.StringUtil;
 import com.yeshi.fanli.util.TimeUtil;
 import com.yeshi.fanli.util.cmq.JDOrderCMQManager;
 import com.yeshi.fanli.util.jd.JDApiUtil;
@@ -37,19 +39,28 @@
 	 */
 	public void saveJDOrders(List<JDOrder> jdOrderList) {
 		for (JDOrder order : jdOrderList) {
-			LogHelper.orderInfo("浜笢璁㈠崟:" + order.getOrderId());
-			if (order.getValidCode() == 15)// 杩囨护鎺変唬浠樻鐘舵��
+			LogHelper.orderInfo("浜笢璁㈠崟:" + order.getOrderId() + "-" + order.getValidCode());
+			if (order.getValidCode() == 15)// 杩囨护鎺夊緟浠樻
 				continue;
+
+			// 闃叉澶氫釜鍟嗗搧鎷嗗崟闂锛岀埇鍙�
+			if (order.getOrderItemList().size() > 1
+					&& order.getOrderTime() > System.currentTimeMillis() - 1000 * 60 * 3L) {
+				continue;
+			}
+
 			try {
 				jdOrderService.addJDOrder(order);
 				/**
 				 * 鍋氶鐜囬檺鍒�
 				 */
-				String key = "jd-order-" + order.getOrderId();
+				String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.JDOrder, order.getOrderId() + "");
 				String result = redisManager.getCommonString(key);
-
-				JDOrderCMQManager.getInstance().addJDOrder(order.getOrderId() + "");
-				redisManager.cacheCommonString(key, "1", 60 * 60 * 2);// 2灏忔椂鍐呬笉鍐嶆洿鏂�
+				// 鍒ゆ柇
+				if (StringUtil.isNullOrEmpty(result)) {
+					JDOrderCMQManager.getInstance().addJDOrder(order.getOrderId() + "");
+					redisManager.cacheCommonString(key, "1", 60 * 60 * 2);// 2灏忔椂鍐呬笉鍐嶆洿鏂�
+				}
 			} catch (JDOrderException e) {
 				e.printStackTrace();
 			}
@@ -63,7 +74,7 @@
 	public void updateSoonOrder() {
 		if (!Constant.IS_TASK)
 			return;
-		LogHelper.job("寮�濮嬬埇鍙栦含涓滆鍗�");		
+		LogHelper.job("寮�濮嬬埇鍙栦含涓滆鍗�");
 		long now = System.currentTimeMillis();
 
 		JDOrderResult result = JDApiUtil.getOrderList(1, 200, new Date(now), JDApiUtil.ORDER_TYPE_CREATETIME);
@@ -132,7 +143,7 @@
 		for (int i = 0; i < 24; i++) {
 			Date da = new Date(startTime.getTime() + 1000 * 60 * 60L * i);
 			if (da.getTime() > now.getTime())
-				return;
+				break;
 			List<JDOrder> tempOrderList = getHourOrder(da);
 			if (tempOrderList != null && tempOrderList.size() > 0)
 				orderList.addAll(tempOrderList);

--
Gitblit v1.8.0