package com.zy.asrs.task; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.zy.asrs.entity.BasAgvMast; import com.zy.asrs.service.BasAgvMastService; import com.zy.asrs.task.core.ReturnT; import com.zy.asrs.task.handler.WrkMastAgvHandler; 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; @Slf4j @Component public class WrkMastAgvScheduler { @Autowired private WrkMastAgvHandler wrkMastAgvHandler; @Autowired private BasAgvMastService basAgvMastService; @Scheduled(cron = "0/3 * * * * ? ") private void execute(){ List basAgvMastList = basAgvMastService.selectList(new EntityWrapper().eq("status", 2)); if (basAgvMastList.isEmpty()) { return; } for (BasAgvMast basAgvMast : basAgvMastList) { try{ ReturnT result = wrkMastAgvHandler.start(basAgvMast); if (!result.isSuccess()) { log.error("AGV工作档工作档[TaskNo={}]完成任务处理失败:"+result.getMsg(), basAgvMast.getTaskNo()); } } catch (Exception e) { log.error("AGV工作档工作档[TaskNo={}]完成任务处理失败:"+e.getMessage(), basAgvMast.getTaskNo()); } } } }