产线输送机

This commit is contained in:
张怡蓉
2025-09-25 16:53:18 +08:00
parent 982b7b5f3e
commit 7431f09382
3 changed files with 32 additions and 21 deletions

View File

@@ -1,6 +1,7 @@
package com.ruoyi.schedule.scheduleTask.ssj.floor2;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.convert.Convert;
import cn.hutool.core.util.ObjUtil;
import cn.hutool.core.util.StrUtil;
import com.ruoyi.api.domain.agv.genAgvSchedulingTask.GenAgvSchedulingTaskResponse;
@@ -8,7 +9,9 @@ import com.ruoyi.api.service.IApiService;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.domain.SendData;
import com.ruoyi.common.utils.spring.SpringUtils;
import com.ruoyi.job.domain.JobCallBack;
import com.ruoyi.job.domain.MydoJob;
import com.ruoyi.job.service.IJobCallBackService;
import com.ruoyi.job.service.IMydoJobService;
import com.ruoyi.queue.agv.domain.AgvQueue;
import com.ruoyi.queue.agv.service.IAgvQueueService;
@@ -18,6 +21,7 @@ import com.ruoyi.schedule.plcRead.util.Tools;
import lombok.extern.slf4j.Slf4j;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
@@ -34,6 +38,7 @@ public class Floor2InSsjThread implements Runnable {
private IApiService apiService;
private IAgvQueueService agvQueueService;
private IMydoJobService mydoJobService;
private IJobCallBackService jobCallBackService;
public boolean isRun = true;
@@ -47,6 +52,7 @@ public class Floor2InSsjThread implements Runnable {
apiService = SpringUtils.getBean(IApiService.class);
agvQueueService = SpringUtils.getBean(IAgvQueueService.class);
mydoJobService = SpringUtils.getBean(IMydoJobService.class);
jobCallBackService = SpringUtils.getBean(IJobCallBackService.class);
log.info("初始化服务 {},{}", apiService, agvQueueService);
}
@@ -116,28 +122,34 @@ public class Floor2InSsjThread implements Runnable {
agvQueue.setStatus("7");
agvQueue.setPositionCode2(inSsjDevice.getDeviceCode());
List<AgvQueue> agvQueues = agvQueueService.selectAgvQueueList(agvQueue);
int i=writeToSsj(inSsjDevice.getPlcDbWriteAddress(),agvQueue.getWmsTaskNo(),1,1);
if(i==1){
log.info(inSsjDevice.getDeviceCode()+"输送机下发任务号成功");
MydoJob mydoJob = mydoJobService.selectMydoJobByJobId(agvQueues.get(0).getTaskCode());
mydoJob.setExecutionPhase(TASK_EP_SSJ);
mydoJobService.updateMydoJob(mydoJob);
agvQueueService.insertHistory(agvQueues.get(0).getReqCode());
agvQueueService.deleteAgvQueueByReqCode(agvQueues.get(0).getReqCode());
if(agvQueues.size()!=0) {
int i = writeToSsj(inSsjDevice.getPlcDbWriteAddress(), agvQueue.getWmsTaskNo(), 1, 1);
if (i == 1) {
log.info(inSsjDevice.getDeviceCode() + "输送机下发任务号成功");
MydoJob mydoJob = mydoJobService.selectMydoJobByJobId(agvQueues.get(0).getTaskCode());
mydoJob.setExecutionPhase(TASK_EP_SSJ);
mydoJobService.updateMydoJob(mydoJob);
agvQueueService.insertHistory(agvQueues.get(0).getReqCode());
agvQueueService.deleteAgvQueueByReqCode(agvQueues.get(0).getReqCode());
}
}
}
//出库到位
if(inSsjDevice.getDw()==1 && inSsjDevice.getTaskNo()>0){
MydoJob mydoJob = new MydoJob();
mydoJob.setInOut("2");
mydoJob.setStatus("3");
mydoJob.setExitId(inSsjDevice.getDeviceCode());
List<MydoJob> mydoJobs = mydoJobService.selectInOrOutMydoJobList(mydoJob);
if(mydoJobs.size()>0){
log.info("设备:{} 位置:{} 任务号:{} 出库到位", inSsjDevice.getDeviceCode(), "输送线", mydoJobs.get(0).getTaskNo());
mydoJobService.insertHistory(mydoJobs.get(0).getJobId());
mydoJobService.deleteMydoJobByJobId(mydoJobs.get(0).getJobId());
MydoJob mydoJob = mydoJobService.selectMydoJobByTaskNo(Convert.toLong(inSsjDevice.getTaskNo()));
if(mydoJob!=null){
log.info("设备:{} 位置:{} 任务号:{} 出库到位", inSsjDevice.getDeviceCode(), "输送线", mydoJob.getTaskNo());
mydoJobService.insertHistory(mydoJob.getJobId());
mydoJobService.deleteMydoJobByJobId(mydoJob.getJobId());
JobCallBack jobCallBack = new JobCallBack();
jobCallBack.setType("2");
jobCallBack.setMydojobId(mydoJob.getJobId());
jobCallBack.setStatus("0");
jobCallBack.setTaskNo(Convert.toLong(mydoJob.getTaskNo()));
jobCallBack.setCreateTime(new Date());
jobCallBackService.insertJobCallBack(jobCallBack);
}
}
}

View File

@@ -9,6 +9,7 @@ import com.ruoyi.api.service.IApiService;
import com.ruoyi.bas.cargospace.domain.BasCargoSpace;
import com.ruoyi.bas.cargospace.service.IBasCargoSpaceService;
import com.ruoyi.common.utils.spring.SpringUtils;
import com.ruoyi.job.domain.JobCallBack;
import com.ruoyi.job.domain.MydoJob;
import com.ruoyi.job.service.IMydoJobService;
import com.ruoyi.queue.agv.service.IAgvQueueService;
@@ -124,6 +125,8 @@ public class Floor2OutSsjThread implements Runnable {
mydoJob.setExecutionPhase(TASK_EP_DDJ);
mydoJobService.updateMydoJob(mydoJob);
}
}

View File

@@ -43,9 +43,6 @@ public class LineSsjThread implements Runnable {
ArrayList<String> ssjCodes = new ArrayList<>();
ssjCodes.add("G1005");
ssjCodeList.put("line", ssjCodes);
ArrayList<String> inSsjList = new ArrayList<>();
inSsjList.add("L1011");
inSsjList.add("L1012");
apiService = SpringUtils.getBean(IApiService.class);
agvQueueService = SpringUtils.getBean(IAgvQueueService.class);
mydoJobService = SpringUtils.getBean(IMydoJobService.class);
@@ -218,7 +215,6 @@ public class LineSsjThread implements Runnable {
agvQueueService.updateAgvQueue(agvQueue);
}
} else {
HashMap<String, String> paramMap = new HashMap<>();
paramMap.put("trayCode", mydoJob.getTrayCode());