package com.zy.asrs.task; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.core.common.Cools; import com.zy.asrs.entity.BasDevp; import com.zy.asrs.entity.Task; import com.zy.asrs.entity.WrkMast; import com.zy.asrs.mapper.WrkMastMapper; import com.zy.asrs.service.BasDevpService; import com.zy.asrs.service.TaskService; import com.zy.asrs.service.WrkMastService; import com.zy.asrs.task.handler.JlerHandler; import com.zy.system.entity.Config; import com.zy.system.service.ConfigService; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import javax.annotation.Resource; import java.util.ArrayList; import java.util.Arrays; import java.util.List; /** * @author pang.jiabao * @description 济南二机床加工相关定时任务 * @createDate 2025/11/18 14:18 */ @Component public class JlerScheduler { @Resource private ConfigService configService; @Resource private JlerHandler jlerHandler; @Resource private TaskService taskService; @Resource private WrkMastMapper wrkMastMapper; @Resource private BasDevpService basDevpService; @Resource private WrkMastService wrkMastService; /** * 货物到达出库口,生成agv任务 */ @Scheduled(cron = "0/5 * * * * ? ") private void createAgvOutTasks() { List devps = basDevpService.selectList(new EntityWrapper().in("dev_no", 202, 204) .gt("wrk_no",0).lt("wrk_no",9990)); for(BasDevp basDevp:devps) { WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper().eq("wrk_no", basDevp.getWrkNo())); if(wrkMast != null && wrkMast.getCallAgv() == 0 && !Cools.isEmpty(wrkMast.getAgvSta())) { jlerHandler.createAgvOutTasks(wrkMast); } } } }