package com.zy.asrs.task; import com.core.common.Cools; import com.zy.asrs.entity.OrderPakout; import com.zy.asrs.service.OrderPakoutService; import com.zy.asrs.task.core.ReturnT; import com.zy.asrs.task.handler.GroupOrderFormHandler; import com.zy.common.entity.Parameter; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import java.util.List; /** * Created by Monkey D. Luffy on 2025.11.10 * 徐工汉云..............以下.............上饶江铜.............拆垛完成信息处理 */ @Slf4j @Component public class GroupOrderFormScheduler { @Autowired private GroupOrderFormHandler groupOrderFormHandler; @Autowired private OrderPakoutService orderPakoutService; @Scheduled(cron = "0/5 * * * * ? ") public void abandonedGroupOrderForm(){ List orders = orderPakoutService.selectSettle(99L);//废弃 if (orders.isEmpty()){ return; } for (OrderPakout order : orders) { try{ ReturnT result = groupOrderFormHandler.abandoned(order); if (!result.isSuccess()) { log.error("计划组货单[orderNo={}]废弃清除失败", order.getOrderNo()); } }catch (Exception e){ log.error("计划组货单[orderNo={}]废弃清除失败", order.getOrderNo()); log.error("计划组货单"+order+"废弃清除失败,异常信息:"+e); } } } @Scheduled(cron = "0/30 * * * * ? ") public void inspectionGroupOrderForm(){ List orders = orderPakoutService.selectSettle(11L);//检验 if (orders.isEmpty()){ return; } for (OrderPakout order : orders) { try{ ReturnT result = groupOrderFormHandler.inspection(order); if (!result.isSuccess()) { log.error("计划组货单[orderNo={}]查询卷号存在不合格", order.getOrderNo()); } else { orderPakoutService.updateSettle(order.getId(),12L,0L);//检验合格 } }catch (Exception e){ log.error("计划组货单[orderNo={}]查询卷号失败", order.getOrderNo()); log.error("计划组货单"+order+"查询卷号失败,异常信息:"+e); } } } @Scheduled(cron = "0/10 * * * * ? ") public void outGroupOrderForm(){ List orders = orderPakoutService.selectSettle(12L);//出库 if (orders.isEmpty()){ return; } for (OrderPakout order : orders) { try{ ReturnT result = groupOrderFormHandler.start(order); if (!result.isSuccess()) { log.error("计划组货单[orderNo={}]检验出库失败", order.getOrderNo()); } else { orderPakoutService.updateSettle(order.getId(),15L,0L);//检验合格 } }catch (Exception e){ log.error("计划组货单[orderNo={}]检验出库失败", order.getOrderNo()); log.error("计划组货单"+order+"检验出库失败,异常信息:"+e); } } } }