package com.zy.asrs.task.handler; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.core.common.Cools; import com.zy.asrs.entity.Order; import com.zy.asrs.entity.OrderDetl; import com.zy.asrs.entity.Review; import com.zy.asrs.entity.ReviewDetl; import com.zy.asrs.service.OrderDetlService; import com.zy.asrs.service.OrderService; import com.zy.asrs.service.ReviewDetlService; import com.zy.asrs.service.ReviewService; import com.zy.asrs.task.AbstractHandler; import com.zy.asrs.task.core.ReturnT; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.Date; import java.util.List; @Service @Slf4j public class OrderMoveHistoryHandler extends AbstractHandler { @Autowired private OrderService orderService; @Autowired private OrderDetlService orderDetlService; @Autowired private ReviewService reviewService; @Autowired private ReviewDetlService reviewDetlService; public ReturnT start() { List settleEqual6 = orderService.selectList(new EntityWrapper() .eq("settle", 6)); for (Order order : settleEqual6) { List orderDetls = orderDetlService.selectList(new EntityWrapper() .eq("order_no", order.getOrderNo())); moveBoth(order, orderDetls); log.info("已完成单据移动至历史表成功 =====>" + order); } return SUCCESS; } public ReturnT start2() { List settleEqual6 = reviewService.selectList(new EntityWrapper() .eq("settle", 6)); for (Review order : settleEqual6) { List orderDetls = reviewDetlService.selectList(new EntityWrapper() .eq("order_no", order.getOrderNo())); moveBoth2(order, orderDetls); log.info("已完成复合单据移动至历史表成功 =====>" + order); } return SUCCESS; } private void moveBoth(Order order, List orderDetls) { Date now = new Date(); if (!Cools.isEmpty(orderDetls)) { for (OrderDetl orderDetl : orderDetls) { orderDetl.setUpdateBy(0L); orderDetl.setUpdateTime(now); orderDetlService.addToLogTable(orderDetl); orderDetlService.delete(new EntityWrapper() .eq("id", orderDetl.getId())); } } if (!Cools.isEmpty(order)) { order.setUpdateBy(0L); order.setUpdateTime(now); orderService.addToLogTable(order); orderService.delete(new EntityWrapper() .eq("id", order.getId())); } } private void moveBoth2(Review order, List orderDetls) { Date now = new Date(); if (!Cools.isEmpty(orderDetls)) { for (ReviewDetl orderDetl : orderDetls) { orderDetl.setUpdateBy(0L); orderDetl.setUpdateTime(now); reviewDetlService.addToLogTable(orderDetl); reviewDetlService.delete(new EntityWrapper() .eq("id", orderDetl.getId())); } } if (!Cools.isEmpty(order)) { order.setUpdateBy(0L); order.setUpdateTime(now); reviewService.addToLogTable(order); reviewService.delete(new EntityWrapper() .eq("id", order.getId())); } } }