| | |
| | | package com.zy.asrs.task; |
| | | |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.zy.api.controller.params.AgvCarriesParam; |
| | | import com.zy.api.controller.params.WorkTaskParams; |
| | | import com.zy.api.entity.CallAgvParams; |
| | | import com.zy.api.service.AgvScheduleService; |
| | | import com.zy.api.service.WcsApiService; |
| | | import com.zy.asrs.entity.Task; |
| | | import com.zy.asrs.entity.WrkMast; |
| | |
| | | private MobileService mobileService; |
| | | @Autowired |
| | | private TaskService taskService; |
| | | @Autowired |
| | | private AgvScheduleService agvScheduleService; |
| | | |
| | | @Scheduled(cron = "0/3 * * * * ? ") |
| | | private void execute() { |
| | |
| | | if (wrkMasts.isEmpty()) { |
| | | return; |
| | | } |
| | | Collections.shuffle(wrkMasts); |
| | | // Collections.shuffle(wrkMasts); |
| | | wrkMasts.forEach(wrkMast -> { |
| | | WorkTaskParams params = new WorkTaskParams(); |
| | | if (wrkMast.getIoType().equals(11)) { |
| | |
| | | wcsApiService.pubWrkToWcs(params); |
| | | } |
| | | }); |
| | | |
| | | } |
| | | |
| | | |
| | | /** |
| | | * AGV任务自动下发出库任务 |
| | | * |
| | | * @author Ryan |
| | | * @date 2026/1/10 14:42 |
| | | */ |
| | | @Scheduled(cron = "0/5 * * * * ? ") |
| | | private void autoPubAgvTasks() { |
| | | List<Task> tasks = taskService.selectList(new EntityWrapper<Task>().in("wrk_sts", Arrays.asList(201L, 301L))); |
| | | if (tasks.isEmpty()) { |
| | | return; |
| | | } |
| | | Collections.shuffle(tasks); |
| | | tasks.forEach(wrkMast -> { |
| | | CallAgvParams param = new CallAgvParams(); |
| | | if (wrkMast.getIoType() == 1) { |
| | | param.setWrkNo(wrkMast.getWrkNo() + ""); |
| | | param.setOrgSite(wrkMast.getSourceStaNo()); |
| | | param.setTarSite(wrkMast.getLocNo()); |
| | | } else if (wrkMast.getIoType() == 110 ||wrkMast.getIoType() == 101){ |
| | | param.setWrkNo(wrkMast.getWrkNo() + ""); |
| | | param.setOrgSite(wrkMast.getSourceLocNo()); |
| | | param.setTarSite(wrkMast.getStaNo()); |
| | | } |
| | | agvScheduleService.callAgvCarry(param); |
| | | }); |
| | | } |
| | | } |