From c635d78b479510ebe2556a420948effcd30a0731 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期六, 21 十二月 2024 18:40:43 +0800 Subject: [PATCH] 新建德森项目分支 --- zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/timer/OrderTimer.java | 192 ++++++++++++++++++++++++------------------------ 1 files changed, 96 insertions(+), 96 deletions(-) diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/timer/OrderTimer.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/timer/OrderTimer.java index 8f40c34..533ca45 100644 --- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/timer/OrderTimer.java +++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/timer/OrderTimer.java @@ -1,96 +1,96 @@ -package com.zy.asrs.wms.asrs.timer; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.plugins.IgnoreStrategy; -import com.baomidou.mybatisplus.core.plugins.InterceptorIgnoreHelper; -import com.zy.asrs.framework.exception.CoolException; -import com.zy.asrs.wms.asrs.entity.*; -import com.zy.asrs.wms.asrs.entity.enums.OrderSettleType; -import com.zy.asrs.wms.asrs.service.*; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.scheduling.annotation.Scheduled; -import org.springframework.stereotype.Component; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.transaction.interceptor.TransactionAspectSupport; - -import java.util.List; - -@Component -public class OrderTimer { - - @Autowired - private OrderService orderService; - @Autowired - private OrderDetlService orderDetlService; - @Autowired - private OrderDetlFieldService orderDetlFieldService; - @Autowired - private OrderLogService orderLogService; - @Autowired - private OrderDetlLogService orderDetlLogService; - @Autowired - private OrderDetlFieldLogService orderDetlFieldLogService; - - @Scheduled(cron = "0/3 * * * * ? ") - @Transactional - public void orderToHistory() { - InterceptorIgnoreHelper.handle(IgnoreStrategy.builder().tenantLine(true).build()); - try { - List<Order> list = orderService.list(new LambdaQueryWrapper<Order>().eq(Order::getOrderSettle, OrderSettleType.COMPLETE.val())); - if (list.isEmpty()) { - return; - } - - for (Order order : list) { - //杞巻鍙叉。 - OrderLog orderLog = new OrderLog(); - orderLog.sync(order); - if (!orderLogService.save(orderLog)) { - throw new CoolException("璁㈠崟杞巻鍙叉。澶辫触"); - } - - //璁㈠崟鏄庣粏杞巻鍙叉。 - List<OrderDetl> orderDetls = orderDetlService.list(new LambdaQueryWrapper<OrderDetl>().eq(OrderDetl::getOrderId, order.getId())); - for (OrderDetl orderDetl : orderDetls) { - OrderDetlLog orderDetlLog = new OrderDetlLog(); - orderDetlLog.sync(orderDetl); - if(!orderDetlLogService.save(orderDetlLog)) { - throw new CoolException("璁㈠崟鏄庣粏杞巻鍙叉。澶辫触"); - } - - //鏄庣粏鎵╁睍瀛楁杞巻鍙叉。 - List<OrderDetlField> orderDetlFields = orderDetlFieldService.list(new LambdaQueryWrapper<OrderDetlField>().eq(OrderDetlField::getDetlId, orderDetl.getId())); - for (OrderDetlField orderDetlField : orderDetlFields) { - OrderDetlFieldLog orderDetlFieldLog = new OrderDetlFieldLog(); - orderDetlFieldLog.sync(orderDetlField); - if(!orderDetlFieldLogService.save(orderDetlFieldLog)) { - throw new CoolException("鏄庣粏鎵╁睍瀛楁杞巻鍙叉。澶辫触"); - } - - //鍒犻櫎鏄庣粏鎵╁睍瀛楁 - if (!orderDetlFieldService.removeById(orderDetlField.getId())) { - throw new CoolException("鍒犻櫎鏄庣粏鎵╁睍瀛楁澶辫触"); - } - } - - //鍒犻櫎璁㈠崟鏄庣粏 - if (!orderDetlService.removeById(orderDetl.getId())) { - throw new CoolException("鍒犻櫎璁㈠崟鏄庣粏澶辫触"); - } - } - - //鍒犻櫎璁㈠崟 - if (!orderService.removeById(order.getId())) { - throw new CoolException("鍒犻櫎璁㈠崟澶辫触"); - } - } - - } catch (Exception e) { - e.printStackTrace(); - TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); - }finally { - InterceptorIgnoreHelper.clearIgnoreStrategy(); - } - } - -} +package com.zy.asrs.wms.asrs.timer; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.plugins.IgnoreStrategy; +import com.baomidou.mybatisplus.core.plugins.InterceptorIgnoreHelper; +import com.zy.asrs.framework.exception.CoolException; +import com.zy.asrs.wms.asrs.entity.*; +import com.zy.asrs.wms.asrs.entity.enums.OrderSettleType; +import com.zy.asrs.wms.asrs.service.*; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.transaction.interceptor.TransactionAspectSupport; + +import java.util.List; + +@Component +public class OrderTimer { + + @Autowired + private OrderService orderService; + @Autowired + private OrderDetlService orderDetlService; + @Autowired + private OrderDetlFieldService orderDetlFieldService; + @Autowired + private OrderLogService orderLogService; + @Autowired + private OrderDetlLogService orderDetlLogService; + @Autowired + private OrderDetlFieldLogService orderDetlFieldLogService; + +// @Scheduled(cron = "0/3 * * * * ? ") + @Transactional + public void orderToHistory() { + InterceptorIgnoreHelper.handle(IgnoreStrategy.builder().tenantLine(true).build()); + try { + List<Order> list = orderService.list(new LambdaQueryWrapper<Order>().eq(Order::getOrderSettle, OrderSettleType.COMPLETE.val())); + if (list.isEmpty()) { + return; + } + + for (Order order : list) { + //杞巻鍙叉。 + OrderLog orderLog = new OrderLog(); + orderLog.sync(order); + if (!orderLogService.save(orderLog)) { + throw new CoolException("璁㈠崟杞巻鍙叉。澶辫触"); + } + + //璁㈠崟鏄庣粏杞巻鍙叉。 + List<OrderDetl> orderDetls = orderDetlService.list(new LambdaQueryWrapper<OrderDetl>().eq(OrderDetl::getOrderId, order.getId())); + for (OrderDetl orderDetl : orderDetls) { + OrderDetlLog orderDetlLog = new OrderDetlLog(); + orderDetlLog.sync(orderDetl); + if(!orderDetlLogService.save(orderDetlLog)) { + throw new CoolException("璁㈠崟鏄庣粏杞巻鍙叉。澶辫触"); + } + + //鏄庣粏鎵╁睍瀛楁杞巻鍙叉。 + List<OrderDetlField> orderDetlFields = orderDetlFieldService.list(new LambdaQueryWrapper<OrderDetlField>().eq(OrderDetlField::getDetlId, orderDetl.getId())); + for (OrderDetlField orderDetlField : orderDetlFields) { + OrderDetlFieldLog orderDetlFieldLog = new OrderDetlFieldLog(); + orderDetlFieldLog.sync(orderDetlField); + if(!orderDetlFieldLogService.save(orderDetlFieldLog)) { + throw new CoolException("鏄庣粏鎵╁睍瀛楁杞巻鍙叉。澶辫触"); + } + + //鍒犻櫎鏄庣粏鎵╁睍瀛楁 + if (!orderDetlFieldService.removeById(orderDetlField.getId())) { + throw new CoolException("鍒犻櫎鏄庣粏鎵╁睍瀛楁澶辫触"); + } + } + + //鍒犻櫎璁㈠崟鏄庣粏 + if (!orderDetlService.removeById(orderDetl.getId())) { + throw new CoolException("鍒犻櫎璁㈠崟鏄庣粏澶辫触"); + } + } + + //鍒犻櫎璁㈠崟 + if (!orderService.removeById(order.getId())) { + throw new CoolException("鍒犻櫎璁㈠崟澶辫触"); + } + } + + } catch (Exception e) { + e.printStackTrace(); + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + }finally { + InterceptorIgnoreHelper.clearIgnoreStrategy(); + } + } + +} -- Gitblit v1.9.1