|
@@ -1,12 +1,22 @@
|
|
|
package com.qs.mp.quartz.task;
|
|
|
|
|
|
+import cn.hutool.core.date.LocalDateTimeUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
|
|
import com.qs.mp.channel.domain.ChannelOrder;
|
|
|
import com.qs.mp.channel.service.IChannelOrderService;
|
|
|
import com.qs.mp.common.enums.ChannelOrderStatusEnum;
|
|
|
+import com.qs.mp.common.enums.DeliverOrderStatusEnum;
|
|
|
import com.qs.mp.common.utils.DateUtils;
|
|
|
import com.qs.mp.common.utils.LogUtil;
|
|
|
+
|
|
|
+import java.time.LocalDateTime;
|
|
|
+import java.time.temporal.ChronoUnit;
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.Date;
|
|
|
import java.util.List;
|
|
|
+
|
|
|
+import com.qs.mp.user.domain.UserDeliverOrder;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@@ -26,6 +36,36 @@ public class ChannelOrderTask {
|
|
|
|
|
|
private final int PAGE_SIZE = 500;
|
|
|
|
|
|
+
|
|
|
+ /**
|
|
|
+ * x天前的待收货订单自动确认收货任务
|
|
|
+ */
|
|
|
+ public void confirm(int day) {
|
|
|
+ LogUtil.info(logger, "...渠道商订单自动确认收货任务开始...");
|
|
|
+ LocalDateTime now = LocalDateTimeUtil.now();
|
|
|
+ LocalDateTime deliveryTime = LocalDateTimeUtil.offset(now, -day, ChronoUnit.DAYS);
|
|
|
+
|
|
|
+ List<ChannelOrder> channelOrderList = channelOrderService.list(new LambdaQueryWrapper<ChannelOrder>()
|
|
|
+ .eq(ChannelOrder::getStatus, ChannelOrderStatusEnum.NOT_CONFIRM.getValue())
|
|
|
+ .le(ChannelOrder::getDeliveryTime, deliveryTime));
|
|
|
+
|
|
|
+ List<ChannelOrder> params = new ArrayList<>();
|
|
|
+ if (CollectionUtils.isNotEmpty(channelOrderList)) {
|
|
|
+ for (ChannelOrder channelOrder : channelOrderList) {
|
|
|
+ ChannelOrder param = new ChannelOrder();
|
|
|
+ param.setOrderId(channelOrder.getOrderId());
|
|
|
+ param.setConfirmTime(new Date());
|
|
|
+ param.setStatus(ChannelOrderStatusEnum.FINISHED);
|
|
|
+ params.add(param);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ channelOrderService.updateBatchById(params);
|
|
|
+
|
|
|
+ LogUtil.info(logger, "...渠道商订单自动确认收货任务结束...");
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
/**
|
|
|
* 订单取消到期任务
|
|
|
*/
|