From 849d93234a94b939315ae6d57d93e9552406e5fe Mon Sep 17 00:00:00 2001 From: liyongde <1419499670@qq.com> Date: Tue, 29 Oct 2024 14:42:20 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=96=B0=E5=A2=9E=E8=BE=93=E9=80=81?= =?UTF-8?q?=E7=BA=BF=E5=88=9B=E5=BB=BARGV=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wms/pda/service/impl/PdaServiceImpl.java | 9 ++ .../task_manage/task/tasks/fj/RGBZTask.java | 105 ++++++++++++++++++ 2 files changed, 114 insertions(+) create mode 100644 lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/fj/RGBZTask.java diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/service/impl/PdaServiceImpl.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/service/impl/PdaServiceImpl.java index 18c3729..d7c8b8b 100644 --- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/service/impl/PdaServiceImpl.java +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/service/impl/PdaServiceImpl.java @@ -503,6 +503,15 @@ public class PdaServiceImpl implements PdaService { order.setReal_qty(order.getReal_qty().add(BigDecimal.ONE)); TaskUtils.setWorkOrderUpdateByPC(order); workorderService.updateById(order); + // 创建任务 + JSONObject taskParam = new JSONObject(); + taskParam.put("device_code", "RGCDW01"); + taskParam.put("config_code", "RGBZTask"); + taskParam.put("vehicle_code", vehicleCode); + taskParam.put("vehicle_type", vehicleType); + taskParam.put("vehicle_qty", "1"); + taskParam.put("group_id", groupEntity.getGroup_id()); + taskService.apply(taskParam); return PdaResponseVo.pdaResultOk("组盘成功"); } diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/fj/RGBZTask.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/fj/RGBZTask.java new file mode 100644 index 0000000..35d1d9d --- /dev/null +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/fj/RGBZTask.java @@ -0,0 +1,105 @@ +package org.nl.wms.sch.task_manage.task.tasks.fj; + +import cn.hutool.core.util.ObjectUtil; +import com.alibaba.fastjson.JSONObject; +import org.nl.common.exception.BadRequestException; +import org.nl.wms.sch.task.service.ISchBaseTaskService; +import org.nl.wms.sch.task.service.dao.SchBaseTask; +import org.nl.wms.sch.task_manage.AbstractTask; +import org.nl.wms.sch.task_manage.GeneralDefinition; +import org.nl.wms.sch.task_manage.enums.TaskFinishedTypeEnum; +import org.nl.wms.sch.task_manage.task.TaskType; +import org.nl.wms.sch.task_manage.task.core.TaskStatus; +import org.nl.wms.util.TaskUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +/** + * 人工包装: 新增输送线那块 + * @Author: lyd + * @Date: 2024/10/29 + */ +@Component(value = "RGBZTask") +@TaskType("RGBZTask") +public class RGBZTask extends AbstractTask { + @Autowired + private ISchBaseTaskService taskService; + @Override + public void create() throws BadRequestException { + + } + + @Override + public void createCompletion(SchBaseTask task) { + // 起点终点都是固定的 + task.setPoint_code2("BZX01"); + task.setTask_status(TaskStatus.CREATED.getCode()); + task.setRemark(""); + taskService.save(task); + } + + @Override + protected void updateStatus(String task_code, TaskStatus status) { + // 校验任务 + SchBaseTask taskObj = taskService.getByCode(task_code); + if (taskObj.getTask_status().equals(TaskStatus.FINISHED.getCode())) { + throw new BadRequestException("该任务已完成!"); + } + if (taskObj.getTask_status().equals(TaskStatus.CANCELED.getCode())) { + throw new BadRequestException("该任务已取消!"); + } + + // 根据传来的类型去对任务进行操作 + if (status.equals(TaskStatus.EXECUTING)) { + taskObj.setTask_status(TaskStatus.EXECUTING.getCode()); + taskObj.setRemark("执行中"); + TaskUtils.setUpdateByAcs(taskObj); + taskService.updateById(taskObj); + } + if (status.equals(TaskStatus.FINISHED)) { + this.finishTask(taskObj, TaskFinishedTypeEnum.AUTO_ACS); + } + if (status.equals(TaskStatus.CANCELED)) { + this.cancelTask(taskObj, TaskFinishedTypeEnum.AUTO_ACS); + } + } + + @Override + public void forceFinish(String task_code) { + SchBaseTask taskObj = taskService.getByCode(task_code); + if (ObjectUtil.isEmpty(taskObj)) { + throw new BadRequestException("该任务不存在"); + } + this.finishTask(taskObj, TaskFinishedTypeEnum.MANUAL_PC); + } + + @Override + public void cancel(String task_code) { + SchBaseTask taskObj = taskService.getByCode(task_code); + if (ObjectUtil.isEmpty(taskObj)) { + throw new BadRequestException("该任务不存在"); + } + this.cancelTask(taskObj, TaskFinishedTypeEnum.MANUAL_PC); + } + + public void finishTask(SchBaseTask taskObj, TaskFinishedTypeEnum taskFinishedType) { + taskObj.setTask_status(TaskStatus.FINISHED.getCode()); + taskObj.setRemark(GeneralDefinition.TASK_FINISH); + taskObj.setFinished_type(taskFinishedType.getCode()); + TaskUtils.setUpdateByType(taskObj, taskFinishedType); + taskService.updateById(taskObj); + } + + public void cancelTask(SchBaseTask taskObj, TaskFinishedTypeEnum taskFinishedType) { + taskObj.setTask_status(TaskStatus.CANCELED.getCode()); + taskObj.setRemark(GeneralDefinition.TASK_CANCEL); + taskObj.setFinished_type(taskFinishedType.getCode()); + TaskUtils.setUpdateByType(taskObj, taskFinishedType); + taskService.updateById(taskObj); + } + + @Override + public String setGroupPlate(JSONObject param) { + return param.getString("group_id"); + } +}