diff --git a/ruoyi-admin/src/main/java/com/ruoyi/common/TaskStatusCode.java b/ruoyi-admin/src/main/java/com/ruoyi/common/TaskStatusCode.java index 62d4cbb4..300794c0 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/common/TaskStatusCode.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/common/TaskStatusCode.java @@ -29,6 +29,16 @@ public class TaskStatusCode { * 任务状态-作废 */ public static final String TASK_STATUS_INVALID = "5"; + + /** + * 任务执行阶段 创建 + */ + public static final String TASK_EP_CREATE = "0"; + + /** + * 任务执行阶段 产线 + */ + public static final String TASK_EP_LINE_SSJ = "1"; /** * 任务执行阶段 AGV */ @@ -40,17 +50,16 @@ public class TaskStatusCode { /** * 任务执行阶段 巷道口 */ - public static final String TASK_EP_ROADWAY_SSJ = "3"; + public static final String TASK_EP_ROADWAY_SSJ = "4"; /** * 任务执行阶段 堆垛机 */ - public static final String TASK_EP_DDJ = "4"; + public static final String TASK_EP_DDJ = "5"; /** * 任务执行阶段 回传wms完成 */ public static final String TASK_EP_WMS_FINISH = "6"; - public static final String TASK_EP_LINE_SSJ = "1"; } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/job/domain/MydoJob.java b/ruoyi-admin/src/main/java/com/ruoyi/job/domain/MydoJob.java index 7ff34a7a..a7125bca 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/job/domain/MydoJob.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/job/domain/MydoJob.java @@ -9,6 +9,8 @@ import org.apache.commons.lang3.builder.ToStringStyle; import com.ruoyi.common.annotation.Excel; import com.ruoyi.common.core.domain.BaseEntity; +import java.util.List; + /** * 作业信息对象 mydo_job_wcs * @@ -91,4 +93,6 @@ public class MydoJob extends BaseEntity private String inOut; private String flag; + + private List epList; } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/floor1/Floor1BothWayInSsjThread.java b/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/floor1/Floor1BothWayInSsjThread.java index db066487..08717239 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/floor1/Floor1BothWayInSsjThread.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/floor1/Floor1BothWayInSsjThread.java @@ -99,6 +99,12 @@ public class Floor1BothWayInSsjThread implements Runnable { if (ssj.getDw() == 1 && ssj.getTaskNo() > 0) { int taskNo = ssj.getTaskNo(); MydoJob mydoJob = mydoJobService.selectMydoJobByTaskNo(Convert.toLong(taskNo)); + if (ObjUtil.isNotNull(mydoJob) && "1".equals(mydoJob.getStatus()) && TASK_EP_SSJ.equals(mydoJob.getExecutionPhase()) && Convert.toInt(mydoJob.getInOrOut())<20){ + //修改作业执行状态 + mydoJob.setStatus(TASK_STATUS_RUNNING); + mydoJob.setStartTime(DateUtil.formatDateTime(DateUtil.date())); + mydoJobService.updateMydoJob(mydoJob); + } if (ObjUtil.isNotNull(mydoJob) && mydoJob.getExecutionPhase().equals(TASK_EP_SSJ)) { mydoJob.setExecutionPhase(TASK_EP_ROADWAY_SSJ); mydoJobService.updateMydoJob(mydoJob); @@ -200,8 +206,11 @@ public class Floor1BothWayInSsjThread implements Runnable { }else { //查询下发的任务 MydoJob param = new MydoJob(); - param.setExecutionPhase("1"); - param.setStatus("1"); + ArrayList epList = new ArrayList<>(); + epList.add(TASK_EP_CREATE); + epList.add(TASK_EP_SSJ); + param.setEpList(epList); + param.setStatus(TASK_STATUS_CREATE); param.setEntranceId(ssj.getDeviceCode()); List mydoJobs = mydoJobService.selectMydoJobList(param); if (CollUtil.isNotEmpty(mydoJobs)){ @@ -209,7 +218,7 @@ public class Floor1BothWayInSsjThread implements Runnable { MydoJob mydoJob = mydoJobs.get(0); int i = writeToSsj(ssj.getPlcDbWriteAddress(),mydoJob.getTaskNo(),1,1); if (i == 1) { - mydoJob.setExecutionPhase("1"); + mydoJob.setExecutionPhase(TASK_EP_SSJ); mydoJobService.updateMydoJob(mydoJob); log.info("{}已重复下发任务号{}:",ssj.getDeviceCode(),mydoJob.getTaskNo()); } @@ -221,10 +230,11 @@ public class Floor1BothWayInSsjThread implements Runnable { AjaxResult ajaxResult = apiService.selectMydoJobByNoTrayCode(paramMap); if (ajaxResult.isSuccess()) { MydoJob mydoJob2 = BeanUtil.toBean(ajaxResult.get("data"), MydoJob.class); + mydoJob2.setExecutionPhase(TASK_EP_CREATE); mydoJobService.insertMydoJob(mydoJob2); int i = writeToSsj(ssj.getPlcDbWriteAddress(),mydoJob2.getTaskNo(),1,1); if (i == 1) { - mydoJob2.setExecutionPhase("1"); + mydoJob2.setExecutionPhase(TASK_EP_SSJ); mydoJobService.updateMydoJob(mydoJob2); log.info("{}已下发任务号{}:",ssj.getDeviceCode(),mydoJob2.getTaskNo()); } @@ -243,15 +253,7 @@ public class Floor1BothWayInSsjThread implements Runnable { } - if (ssj.getDw() == 1 && ssj.getTaskNo() > 0 && ssj.getTraySize() != 0){ - MydoJob mydoJob = mydoJobService.selectMydoJobByTaskNo(Convert.toLong(ssj.getTaskNo())); - if (ObjUtil.isNotNull(mydoJob) && "1".equals(mydoJob.getStatus()) && "1".equals(mydoJob.getExecutionPhase()) && Convert.toInt(mydoJob.getInOrOut())<20){ - //修改作业执行状态 - mydoJob.setStatus("3"); - mydoJob.setStartTime(DateUtil.formatDateTime(DateUtil.date())); - mydoJobService.updateMydoJob(mydoJob); - } - } + } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/floor2/Floor2InOutSsjThread.java b/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/floor2/Floor2InOutSsjThread.java index d88d6fd2..7dd72848 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/floor2/Floor2InOutSsjThread.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/floor2/Floor2InOutSsjThread.java @@ -21,7 +21,6 @@ import java.util.Date; import java.util.HashMap; import java.util.List; -import static com.ruoyi.common.TaskStatusCode.TASK_EP_LINE_SSJ; import static com.ruoyi.common.TaskStatusCode.TASK_EP_SSJ; import static com.ruoyi.schedule.plcRead.ssj.PlcSsjRead.writeToSsj; diff --git a/ruoyi-admin/src/main/resources/mapper/job/MydoJobMapper.xml b/ruoyi-admin/src/main/resources/mapper/job/MydoJobMapper.xml index 6f2a5fae..39653056 100644 --- a/ruoyi-admin/src/main/resources/mapper/job/MydoJobMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/job/MydoJobMapper.xml @@ -36,23 +36,31 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"