From d64f6bac0b8da11caae6716c5f0e055a88ebb578 Mon Sep 17 00:00:00 2001 From: Stormeye Wu Date: Fri, 4 Jan 2019 23:45:56 +0800 Subject: [PATCH] =?UTF-8?q?[=E5=82=A8=E5=80=BC=E5=8D=A1][=E6=96=B0?= =?UTF-8?q?=E5=A2=9E]:=E5=82=A8=E5=80=BC=E5=8D=A1=E8=B4=AD=E4=B9=B0?= =?UTF-8?q?=E6=9C=AA=E6=94=AF=E4=BB=98=E6=A3=80=E6=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../schedule/OrderExpiringSchedule.java | 21 ++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/mallinkSchedule/src/main/java/com/iformall/schedule/OrderExpiringSchedule.java b/mallinkSchedule/src/main/java/com/iformall/schedule/OrderExpiringSchedule.java index b315119fd..163040b99 100644 --- a/mallinkSchedule/src/main/java/com/iformall/schedule/OrderExpiringSchedule.java +++ b/mallinkSchedule/src/main/java/com/iformall/schedule/OrderExpiringSchedule.java @@ -37,21 +37,28 @@ public class OrderExpiringSchedule { Map dateMap = new HashMap(); Date curDate = new Date(); + Date expireDate = new Date(curDate.getTime() - TIME_OUT_VALUE ); - // 只检查券相关订单 + // 券相关订单 dateMap.put("type", EnumOrderType.COUPON.getCode()); - dateMap.put("endDate", new Date(curDate.getTime() - TIME_OUT_VALUE )); - List wxOrderList = wxOrderMapper.findListOfUnpaidOrderByDate(dateMap); + dateMap.put("endDate", expireDate); + List orderCoupons = wxOrderMapper.findListOfUnpaidOrderByDate(dateMap); + orderCoupons.parallelStream().forEach( o -> { + orderExpired(o); + }); - for(WxOrder wxOrder: wxOrderList){ - orderExpired(wxOrder); - } + // 卡相关订单 + dateMap.put("type", EnumOrderType.PREPAIDCARD.getCode()); + dateMap.put("endDate", new Date(curDate.getTime() - TIME_OUT_VALUE )); + List orderCards = wxOrderMapper.findListOfUnpaidOrderByDate(dateMap); + orderCards.parallelStream().forEach( o -> { + orderExpired(o); + }); } @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) public void orderExpired(WxOrder order) { order.setUpdateDate(new Date()); - order.setType(EnumOrderType.COUPON.getCode()); order.setOrderStatus(EnumOrderStatus.ORDER_STATUS_OVERTIME_CANCEL.getCode()); wxOrderMapper.updateByPrimaryKeySelective(order);