diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/ISchBaseTaskService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/ISchBaseTaskService.java index 8400639..5847345 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/ISchBaseTaskService.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/ISchBaseTaskService.java @@ -50,12 +50,21 @@ public interface ISchBaseTaskService extends IService { /** - * 根据任务配置查询为完成的任务数 + * 根据任务配置查询为完成的列表 * * @param config_code 任务配置编码 * @return 未完成任务列表 */ - List findUnFishedTasksByTaskConfig(String config_code); + List findUnFinishTasksByTaskConfig(String config_code); + + /** + * 根据任务配置查询为完成的列表 + * + * @param config_code 任务配置编码 + * @param task_code 当前任务 + * @return 未完成任务列表 + */ + List findUnFinishTasksByTaskConfig(String config_code, String task_code); /** * 任务申请 diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/impl/SchBaseTaskServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/impl/SchBaseTaskServiceImpl.java index c7986d2..0029a46 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/impl/SchBaseTaskServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/impl/SchBaseTaskServiceImpl.java @@ -3,7 +3,6 @@ package org.nl.wms.sch.task.service.impl; import cn.hutool.core.date.DateUtil; import cn.hutool.core.lang.Assert; import cn.hutool.core.util.IdUtil; -import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -16,8 +15,10 @@ import org.nl.common.utils.SecurityUtils; import org.nl.wms.sch.task.service.ISchBaseTaskService; import org.nl.wms.sch.task.service.dao.mapper.SchBaseTaskMapper; import org.nl.wms.sch.task.service.dao.SchBaseTask; +import org.nl.wms.sch.task.service.dao.mapper.SchBaseTaskconfigMapper; import org.nl.wms.sch.task_manage.BaseTask; import org.nl.wms.sch.task_manage.task.TaskFactory; +import org.nl.wms.sch.task_manage.task.core.TaskStatus; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -36,6 +37,8 @@ public class SchBaseTaskServiceImpl extends ServiceImpl queryAll(Map whereJson, PageQuery page) { @@ -46,7 +49,6 @@ public class SchBaseTaskServiceImpl extends ServiceImpl findUnFishedTasksByTaskConfig(String config_code) { - return null; + public List findUnFinishTasksByTaskConfig(String config_code) { + Assert.notNull(config_code, "任务配置编码不能为空!"); + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getConfig_code, config_code) + .ne(SchBaseTask::getIs_delete, true) + .lt(SchBaseTask::getTask_status, TaskStatus.FINISHED.getCode()); + List schBaseTasks = schBaseTaskMapper.selectList(lam); + return schBaseTasks; + } + + @Override + public List findUnFinishTasksByTaskConfig(String config_code, String task_code) { + Assert.notNull(config_code, "任务配置编码不能为空!"); + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getConfig_code, config_code) + .lt(SchBaseTask::getTask_status, TaskStatus.FINISHED.getCode()) + .ne(SchBaseTask::getTask_code, task_code) + .ne(SchBaseTask::getIs_delete, true); + List schBaseTasks = schBaseTaskMapper.selectList(lam); + return schBaseTasks; } @Override @@ -79,7 +99,7 @@ public class SchBaseTaskServiceImpl extends ServiceImpl unFinishTasksByTaskConfig = taskService.findUnFinishTasksByTaskConfig(taskConfig.getConfig_code()); + + Assert.isFalse(unFinishTasksByTaskConfig.size() > tcmn, "该点位{}申请的任务未完成数已超过上限,无法申请任务", point_code); SchBaseTask task = new SchBaseTask(); task.setAcs_trace_id(""); - task.setConfig_code(""); + task.setConfig_code(config_code); task.setCreate_id(""); task.setCreate_mode(""); task.setPoint_code1(""); task.setVehicle_code(""); -// task.setTask_status("01"); + task.setTask_status(TaskStatus.APPLY.getCode()); SpringContextHolder.getBean(SchBaseTaskServiceImpl.class).create(task); //1、如果是送料,检测载具状态 //2、送空载具 diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/core/TaskStatus.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/core/TaskStatus.java index ee9e476..c4ae7c2 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/core/TaskStatus.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/core/TaskStatus.java @@ -1 +1,45 @@ -package org.nl.wms.sch.task_manage.task.core; \ No newline at end of file +package org.nl.wms.sch.task_manage.task.core; + +public enum TaskStatus { + APPLY("1", "申请", "申请"), + CREATED("2", "创建完成", "创建完成"), + ISSUED("3", "下发", "下发"), + EXECUTING("4", "执行中", "执行中"), + FINISHED("5", "完成", "执行中"), + CANCELED("6", "已取消", "已取消"); + + + TaskStatus(String code, String name, String desc) { + this.code = code; + this.name = name; + this.desc = desc; + } + + private String code; + private String name; + private String desc; + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getDesc() { + return desc; + } + + public void setDesc(String desc) { + this.desc = desc; + } +} \ No newline at end of file diff --git a/nladmin-ui/src/views/wms/sch/task/config/index.vue b/nladmin-ui/src/views/wms/sch/task/config/index.vue index 4e273ba..8f6a4e9 100644 --- a/nladmin-ui/src/views/wms/sch/task/config/index.vue +++ b/nladmin-ui/src/views/wms/sch/task/config/index.vue @@ -90,9 +90,9 @@ style="width: 240px;" /> - + - + - - + +