修改一楼出库执行阶段
This commit is contained in:
@@ -6,18 +6,16 @@ import cn.hutool.core.date.DateUtil;
|
|||||||
import cn.hutool.core.util.IdUtil;
|
import cn.hutool.core.util.IdUtil;
|
||||||
import cn.hutool.core.util.ObjUtil;
|
import cn.hutool.core.util.ObjUtil;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import com.ruoyi.api.domain.agv.genAgvSchedulingTask.GenAgvSchedulingTaskResponse;
|
|
||||||
import com.ruoyi.api.service.IApiService;
|
import com.ruoyi.api.service.IApiService;
|
||||||
import com.ruoyi.bas.cargospace.domain.BasCargoSpace;
|
import com.ruoyi.bas.cargospace.domain.BasCargoSpace;
|
||||||
import com.ruoyi.bas.cargospace.service.IBasCargoSpaceService;
|
import com.ruoyi.bas.cargospace.service.IBasCargoSpaceService;
|
||||||
import com.ruoyi.common.core.domain.AjaxResult;
|
import com.ruoyi.common.core.domain.AjaxResult;
|
||||||
import com.ruoyi.common.domain.SendData;
|
import com.ruoyi.common.domain.SendData;
|
||||||
import com.ruoyi.common.utils.spring.SpringUtils;
|
import com.ruoyi.common.utils.spring.SpringUtils;
|
||||||
|
import com.ruoyi.device.ssj.domain.DeviceSsj;
|
||||||
import com.ruoyi.job.domain.MydoJob;
|
import com.ruoyi.job.domain.MydoJob;
|
||||||
import com.ruoyi.job.service.IMydoJobService;
|
import com.ruoyi.job.service.IMydoJobService;
|
||||||
import com.ruoyi.queue.agv.domain.AgvQueue;
|
|
||||||
import com.ruoyi.queue.agv.service.IAgvQueueService;
|
import com.ruoyi.queue.agv.service.IAgvQueueService;
|
||||||
import com.ruoyi.device.ssj.domain.DeviceSsj;
|
|
||||||
import com.ruoyi.queue.ddj.domain.DdjDeviceExecutionQueue;
|
import com.ruoyi.queue.ddj.domain.DdjDeviceExecutionQueue;
|
||||||
import com.ruoyi.queue.ddj.service.IDdjDeviceExecutionQueueService;
|
import com.ruoyi.queue.ddj.service.IDdjDeviceExecutionQueueService;
|
||||||
import com.ruoyi.schedule.plcRead.ssj.PlcSsjRead;
|
import com.ruoyi.schedule.plcRead.ssj.PlcSsjRead;
|
||||||
@@ -26,7 +24,7 @@ import lombok.extern.slf4j.Slf4j;
|
|||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
import static com.ruoyi.common.TaskType.DDJ_RWLX_2;
|
import static com.ruoyi.common.TaskStatusCode.*;
|
||||||
import static com.ruoyi.common.TaskType.DDJ_RWLX_3;
|
import static com.ruoyi.common.TaskType.DDJ_RWLX_3;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -104,7 +102,11 @@ public class Floor1BothWayInSsjThread implements Runnable {
|
|||||||
if (ssj.getDw() == 1 && ssj.getTaskNo() > 0) {
|
if (ssj.getDw() == 1 && ssj.getTaskNo() > 0) {
|
||||||
int taskNo = ssj.getTaskNo();
|
int taskNo = ssj.getTaskNo();
|
||||||
MydoJob mydoJob = mydoJobService.selectMydoJobByTaskNo(Convert.toLong(taskNo));
|
MydoJob mydoJob = mydoJobService.selectMydoJobByTaskNo(Convert.toLong(taskNo));
|
||||||
if (ObjUtil.isNotNull(mydoJob)) {
|
if (ObjUtil.isNotNull(mydoJob) && mydoJob.getExecutionPhase().equals(TASK_EP_SSJ)) {
|
||||||
|
mydoJob.setExecutionPhase(TASK_EP_ROADWAY_SSJ);
|
||||||
|
mydoJobService.updateMydoJob(mydoJob);
|
||||||
|
}
|
||||||
|
if (ObjUtil.isNotNull(mydoJob) && mydoJob.getExecutionPhase().equals(TASK_EP_ROADWAY_SSJ)) {
|
||||||
List<DdjDeviceExecutionQueue> ddjDeviceExecutionQueues = ddjDeviceExecutionQueueService.selectDdjDeviceExecutionQueueListByRwlx(DDJ_RWLX_3, Convert.toInt(mydoJob.getRoadwayId()));
|
List<DdjDeviceExecutionQueue> ddjDeviceExecutionQueues = ddjDeviceExecutionQueueService.selectDdjDeviceExecutionQueueListByRwlx(DDJ_RWLX_3, Convert.toInt(mydoJob.getRoadwayId()));
|
||||||
BasCargoSpace basCargoSpace = basCargoSpaceService.selectBasCargoSpaceByWmsCargoSpaceId(mydoJob.getCargoSpaceId());
|
BasCargoSpace basCargoSpace = basCargoSpaceService.selectBasCargoSpaceByWmsCargoSpaceId(mydoJob.getCargoSpaceId());
|
||||||
List<Integer> pclList = roadwayMap.get(ssj.getDeviceCode());
|
List<Integer> pclList = roadwayMap.get(ssj.getDeviceCode());
|
||||||
@@ -126,13 +128,16 @@ public class Floor1BothWayInSsjThread implements Runnable {
|
|||||||
ddjDeviceExecutionQueue.setScsj(DateUtil.formatDateTime(DateUtil.date()));
|
ddjDeviceExecutionQueue.setScsj(DateUtil.formatDateTime(DateUtil.date()));
|
||||||
ddjDeviceExecutionQueue.setRwlx(DDJ_RWLX_3);
|
ddjDeviceExecutionQueue.setRwlx(DDJ_RWLX_3);
|
||||||
ddjDeviceExecutionQueueService.insertDdjDeviceExecutionQueue(ddjDeviceExecutionQueue);
|
ddjDeviceExecutionQueueService.insertDdjDeviceExecutionQueue(ddjDeviceExecutionQueue);
|
||||||
|
|
||||||
|
mydoJob.setExecutionPhase(TASK_EP_DDJ);
|
||||||
|
mydoJobService.updateMydoJob(mydoJob);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void dispatch2(DeviceSsj ssj) {
|
private void dispatch2(DeviceSsj ssj) {
|
||||||
if (ssj.getDw() == 1 && ssj.getTaskNo() > 0 && ssj.getRkqq() == 1) {
|
if (ssj.getDw() == 1 && ssj.getTaskNo() > 0 && ssj.getTaskNo() < 1000 && ssj.getRkqq() == 1) {
|
||||||
//先检测有没有出库作业,有出库作业直接退回
|
//先检测有没有出库作业,有出库作业直接退回
|
||||||
MydoJob outMydoJob = mydoJobService.selectMydoJobByExitList(Collections.singletonList(exitRoadwayMap.get(ssj.getDeviceCode())));
|
MydoJob outMydoJob = mydoJobService.selectMydoJobByExitList(Collections.singletonList(exitRoadwayMap.get(ssj.getDeviceCode())));
|
||||||
if (ObjUtil.isNotNull(outMydoJob)) {
|
if (ObjUtil.isNotNull(outMydoJob)) {
|
||||||
@@ -156,7 +161,7 @@ public class Floor1BothWayInSsjThread implements Runnable {
|
|||||||
} else {
|
} else {
|
||||||
if (StrUtil.isNotEmpty(ssj.getTrayCode())) {
|
if (StrUtil.isNotEmpty(ssj.getTrayCode())) {
|
||||||
MydoJob param = new MydoJob();
|
MydoJob param = new MydoJob();
|
||||||
param.setStatus("3");
|
param.setStatus(TASK_STATUS_CREATE);
|
||||||
param.setExecutionPhase("0");
|
param.setExecutionPhase("0");
|
||||||
if ("L2005".equals(ssj.getDeviceCode())) {
|
if ("L2005".equals(ssj.getDeviceCode())) {
|
||||||
param.setEntranceId("L2013");
|
param.setEntranceId("L2013");
|
||||||
@@ -172,8 +177,6 @@ public class Floor1BothWayInSsjThread implements Runnable {
|
|||||||
AjaxResult result = apiService.requestEnterByEnterIdAndTrayCode();
|
AjaxResult result = apiService.requestEnterByEnterIdAndTrayCode();
|
||||||
if (result.isSuccess()) {
|
if (result.isSuccess()) {
|
||||||
inJob = (MydoJob) result.get("data");
|
inJob = (MydoJob) result.get("data");
|
||||||
inJob.setStatus("3");
|
|
||||||
inJob.setStartTime(DateUtil.formatDateTime(DateUtil.date()));
|
|
||||||
mydoJobService.insertMydoJob(inJob);
|
mydoJobService.insertMydoJob(inJob);
|
||||||
} else {
|
} else {
|
||||||
log.info("未检测到托盘码请求入库作业 rwh:{},trayCode:{}", ssj.getTaskNo(), ssj.getTrayCode());
|
log.info("未检测到托盘码请求入库作业 rwh:{},trayCode:{}", ssj.getTaskNo(), ssj.getTrayCode());
|
||||||
@@ -194,6 +197,11 @@ public class Floor1BothWayInSsjThread implements Runnable {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (i == 1) {
|
if (i == 1) {
|
||||||
|
inJob.setStatus(TASK_STATUS_RUNNING);
|
||||||
|
inJob.setExecutionPhase(TASK_EP_SSJ);
|
||||||
|
inJob.setStartTime(DateUtil.formatDateTime(DateUtil.date()));
|
||||||
|
inJob.setTargetRoadwayId(Convert.toStr(qx));
|
||||||
|
mydoJobService.updateMydoJob(inJob);
|
||||||
log.info("入库请求下发任务号加去向 rwh:{},qx:{},trayCode:{}", ssj.getTaskNo(), 1, ssj.getTrayCode());
|
log.info("入库请求下发任务号加去向 rwh:{},qx:{},trayCode:{}", ssj.getTaskNo(), 1, ssj.getTrayCode());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ import lombok.extern.slf4j.Slf4j;
|
|||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
|
import static com.ruoyi.common.TaskStatusCode.*;
|
||||||
import static com.ruoyi.common.TaskType.DDJ_RWLX_2;
|
import static com.ruoyi.common.TaskType.DDJ_RWLX_2;
|
||||||
import static com.ruoyi.common.TaskType.DDJ_RWLX_3;
|
import static com.ruoyi.common.TaskType.DDJ_RWLX_3;
|
||||||
|
|
||||||
@@ -111,13 +112,21 @@ public class Floor1BothWayOutSsjThread implements Runnable {
|
|||||||
for (DeviceSsj ssj : ssjList) {
|
for (DeviceSsj ssj : ssjList) {
|
||||||
if (ssj.getDw()==1 && ssj.getTaskNo()>0){
|
if (ssj.getDw()==1 && ssj.getTaskNo()>0){
|
||||||
MydoJob mydoJob = mydoJobService.selectMydoJobByTaskNo(Convert.toLong(ssj.getTaskNo()));
|
MydoJob mydoJob = mydoJobService.selectMydoJobByTaskNo(Convert.toLong(ssj.getTaskNo()));
|
||||||
if (ObjUtil.isNotNull(mydoJob)) {
|
if (ObjUtil.isNotNull(mydoJob) && mydoJob.getExecutionPhase().equals(TASK_EP_ROADWAY_SSJ)) {
|
||||||
|
mydoJob.setExecutionPhase(TASK_EP_SSJ);
|
||||||
|
mydoJobService.updateMydoJob(mydoJob);
|
||||||
|
}
|
||||||
|
if (ObjUtil.isNotNull(mydoJob) && mydoJob.getExecutionPhase().equals(TASK_EP_SSJ)) {
|
||||||
HashMap<String,Object> param = new HashMap<>();
|
HashMap<String,Object> param = new HashMap<>();
|
||||||
param.put("taskNo",mydoJob.getTaskNo());
|
param.put("taskNo",mydoJob.getTaskNo());
|
||||||
param.put("jobId",mydoJob.getJobId());
|
param.put("jobId",mydoJob.getJobId());
|
||||||
RequestLog result = apiService.finishMydoJob(param);
|
RequestLog result = apiService.finishMydoJob(param);
|
||||||
if ("1".equals(result.getIsSuccessful())){
|
if ("1".equals(result.getIsSuccessful())){
|
||||||
log.info("完成任务 taskNo{} ",mydoJob.getTaskNo());
|
log.info("完成任务 taskNo{} ",mydoJob.getTaskNo());
|
||||||
|
mydoJob.setStatus(TASK_STATUS_FINISH);
|
||||||
|
mydoJob.setExecutionPhase(TASK_EP_WMS_FINISH);
|
||||||
|
mydoJob.setFinishTime(DateUtil.formatDateTime(new Date()));
|
||||||
|
mydoJobService.updateMydoJob(mydoJob);
|
||||||
mydoJobService.insertHistory(mydoJob.getJobId());
|
mydoJobService.insertHistory(mydoJob.getJobId());
|
||||||
mydoJobService.deleteMydoJobByJobId(mydoJob.getJobId());
|
mydoJobService.deleteMydoJobByJobId(mydoJob.getJobId());
|
||||||
}
|
}
|
||||||
@@ -162,6 +171,11 @@ public class Floor1BothWayOutSsjThread implements Runnable {
|
|||||||
ddjDeviceExecutionQueue.setScsj(DateUtil.formatDateTime(DateUtil.date()));
|
ddjDeviceExecutionQueue.setScsj(DateUtil.formatDateTime(DateUtil.date()));
|
||||||
ddjDeviceExecutionQueue.setRwlx(DDJ_RWLX_3);
|
ddjDeviceExecutionQueue.setRwlx(DDJ_RWLX_3);
|
||||||
ddjDeviceExecutionQueueService.insertDdjDeviceExecutionQueue(ddjDeviceExecutionQueue);
|
ddjDeviceExecutionQueueService.insertDdjDeviceExecutionQueue(ddjDeviceExecutionQueue);
|
||||||
|
|
||||||
|
pdOutJob.setStatus(TASK_STATUS_RUNNING);
|
||||||
|
pdOutJob.setExecutionPhase(TASK_EP_DDJ);
|
||||||
|
pdOutJob.setStartTime(DateUtil.formatDateTime(DateUtil.date()));
|
||||||
|
mydoJobService.updateMydoJob(pdOutJob);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -22,8 +22,7 @@ import lombok.extern.slf4j.Slf4j;
|
|||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
import static com.ruoyi.common.TaskStatusCode.TASK_EP_DDJ;
|
import static com.ruoyi.common.TaskStatusCode.*;
|
||||||
import static com.ruoyi.common.TaskStatusCode.TASK_STATUS_RUNNING;
|
|
||||||
import static com.ruoyi.common.TaskType.DDJ_RWLX_2;
|
import static com.ruoyi.common.TaskType.DDJ_RWLX_2;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -122,12 +121,18 @@ public class Floor1SingleSsjThread implements Runnable {
|
|||||||
if (ssj.getDw() == 1 && ssj.getTaskNo() > 0) {
|
if (ssj.getDw() == 1 && ssj.getTaskNo() > 0) {
|
||||||
MydoJob mydoJob = mydoJobService.selectMydoJobByTaskNo(Convert.toLong(ssj.getTaskNo()));
|
MydoJob mydoJob = mydoJobService.selectMydoJobByTaskNo(Convert.toLong(ssj.getTaskNo()));
|
||||||
if (ObjUtil.isNotNull(mydoJob)) {
|
if (ObjUtil.isNotNull(mydoJob)) {
|
||||||
|
mydoJob.setExecutionPhase(TASK_EP_SSJ);
|
||||||
|
mydoJobService.updateMydoJob(mydoJob);
|
||||||
HashMap<String, Object> param = new HashMap<>();
|
HashMap<String, Object> param = new HashMap<>();
|
||||||
param.put("taskNo", mydoJob.getTaskNo());
|
param.put("taskNo", mydoJob.getTaskNo());
|
||||||
param.put("jobId", mydoJob.getJobId());
|
param.put("jobId", mydoJob.getJobId());
|
||||||
RequestLog result = apiService.finishMydoJob(param);
|
RequestLog result = apiService.finishMydoJob(param);
|
||||||
if ("1".equals(result.getIsSuccessful())) {
|
if ("1".equals(result.getIsSuccessful())) {
|
||||||
log.info("完成任务 taskNo{} ", mydoJob.getTaskNo());
|
log.info("完成任务 taskNo{} ", mydoJob.getTaskNo());
|
||||||
|
mydoJob.setStatus(TASK_STATUS_FINISH);
|
||||||
|
mydoJob.setFinishTime(DateUtil.formatDateTime(new Date()));
|
||||||
|
mydoJob.setExecutionPhase(TASK_EP_WMS_FINISH);
|
||||||
|
mydoJobService.updateMydoJob(mydoJob);
|
||||||
mydoJobService.insertHistory(mydoJob.getJobId());
|
mydoJobService.insertHistory(mydoJob.getJobId());
|
||||||
mydoJobService.deleteMydoJobByJobId(mydoJob.getJobId());
|
mydoJobService.deleteMydoJobByJobId(mydoJob.getJobId());
|
||||||
}
|
}
|
||||||
@@ -137,6 +142,7 @@ public class Floor1SingleSsjThread implements Runnable {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 一楼单向巷道口调度
|
* 一楼单向巷道口调度
|
||||||
|
*
|
||||||
* @param ssj 输送机
|
* @param ssj 输送机
|
||||||
*/
|
*/
|
||||||
public void dispatch(DeviceSsj ssj) {
|
public void dispatch(DeviceSsj ssj) {
|
||||||
|
|||||||
@@ -76,7 +76,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
#{item}
|
#{item}
|
||||||
</foreach>
|
</foreach>
|
||||||
and in_or_out > 20
|
and in_or_out > 20
|
||||||
and status = 1
|
and status = 1 and execution_phase= 0
|
||||||
order by priority desc,create_time desc
|
order by priority desc,create_time desc
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user