From 9c248839d8750db523fe6192101bfa085fe1305f Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期二, 26 三月 2024 16:20:23 +0800 Subject: [PATCH] Merge branch 'Four-Way-Rack' of http://47.97.1.152:5880/r/zy-asrs-master into Four-Way-Rack --- zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/TaskServiceImpl.java | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 45 insertions(+), 0 deletions(-) diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/TaskServiceImpl.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/TaskServiceImpl.java index 7131f9e..9103f8f 100644 --- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/TaskServiceImpl.java +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/service/impl/TaskServiceImpl.java @@ -1,12 +1,57 @@ package com.zy.asrs.wcs.core.service.impl; +import com.zy.asrs.framework.common.Cools; import com.zy.asrs.wcs.core.mapper.TaskMapper; import com.zy.asrs.wcs.core.entity.Task; +import com.zy.asrs.wcs.core.model.enums.DeviceCtgType; +import com.zy.asrs.wcs.core.model.enums.TaskStsType; import com.zy.asrs.wcs.core.service.TaskService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.zy.asrs.wcs.rcs.service.MotionService; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; + +import java.util.List; @Service("taskService") public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements TaskService { + @Autowired + private MotionService motionService; + + @Override + public Boolean judgeInbound(Task task) { + switch (TaskStsType.query(task.getTaskSts())) { + case NEW_INBOUND: + case ANALYZE_INBOUND: + case EXECUTE_INBOUND: + case COMPLETE_INBOUND: + case SETTLE_INBOUND: + return Boolean.TRUE; + case NEW_OUTBOUND: + case ANALYZE_OUTBOUND: + case EXECUTE_OUTBOUND: + case COMPLETE_OUTBOUND: + case SETTLE_OUTBOUND: + return Boolean.FALSE; + } + return Boolean.TRUE; + } + + @Override + public Boolean hasBusyOutboundByShuttle(Integer shuttleNo) { + List<Task> tasks = this.baseMapper.selectOutboundByShuttleNo(shuttleNo); + if (Cools.isEmpty(tasks)) { + return false; + } + for (Task task : tasks) { + if (task.getTaskSts().equals(TaskStsType.NEW_OUTBOUND.sts) || task.getTaskSts().equals(TaskStsType.ANALYZE_OUTBOUND.sts)) { + return true; + } + if (!Cools.isEmpty(motionService.selectUnCompleteByUuidAndDeviceCtg(task.getUuid(), DeviceCtgType.SHUTTLE))) { + return true; + } + } + return false; + } } -- Gitblit v1.9.1