现场调试修改
This commit is contained in:
@@ -93,13 +93,24 @@ public class Wcs2WmsController {
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* wms手动完成任务
|
* wms手动完成任务 - 根据任务号
|
||||||
* @param jobParam
|
* @param jobParam
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@PostMapping("/manualCompeleteMydoJob")
|
@PostMapping("/manualCompeleteMydoJobByTaskNo")
|
||||||
public AjaxResult manualCompeleteMydoJob(@RequestBody JobParam jobParam) {
|
public AjaxResult manualCompeleteMydoJobByTaskNo(@RequestBody JobParam jobParam) {
|
||||||
return apiService.manualCompeleteTask(jobParam.getTaskNo());
|
return apiService.manualCompeleteTaskByTaskNo(jobParam.getTaskNo());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* wms手动完成任务 - 根据作业号
|
||||||
|
* @param jobParam
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@PostMapping("/manualCompeleteMydoJobByJobId")
|
||||||
|
public AjaxResult manualCompeleteMydoJobByTJobId(@RequestBody JobParam jobParam) {
|
||||||
|
return apiService.manualCompeleteTaskByTaskNo(jobParam.getTaskNo());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -106,7 +106,9 @@ public interface IApiService
|
|||||||
|
|
||||||
AjaxResult requestWmsSpace(MydoJob mydoJob);
|
AjaxResult requestWmsSpace(MydoJob mydoJob);
|
||||||
|
|
||||||
AjaxResult manualCompeleteTask(String taskNo);
|
AjaxResult manualCompeleteTaskByTaskNo(String taskNo);
|
||||||
|
|
||||||
|
AjaxResult manualCompeleteTaskByJobId(String taskNo);
|
||||||
|
|
||||||
AjaxResult cancelTask(String taskNo);
|
AjaxResult cancelTask(String taskNo);
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,6 @@ import cn.hutool.core.bean.BeanUtil;
|
|||||||
import cn.hutool.core.convert.Convert;
|
import cn.hutool.core.convert.Convert;
|
||||||
import cn.hutool.core.date.DateUtil;
|
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.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import cn.hutool.json.JSONUtil;
|
import cn.hutool.json.JSONUtil;
|
||||||
import com.alibaba.fastjson2.JSON;
|
import com.alibaba.fastjson2.JSON;
|
||||||
@@ -25,7 +24,6 @@ import com.ruoyi.bas.cargospace.domain.BasCargoSpace;
|
|||||||
import com.ruoyi.bas.cargospace.service.IBasCargoSpaceService;
|
import com.ruoyi.bas.cargospace.service.IBasCargoSpaceService;
|
||||||
import com.ruoyi.bas.port.domain.WcsPort;
|
import com.ruoyi.bas.port.domain.WcsPort;
|
||||||
import com.ruoyi.bas.port.service.IWcsPortService;
|
import com.ruoyi.bas.port.service.IWcsPortService;
|
||||||
import com.ruoyi.common.GoodsType;
|
|
||||||
import com.ruoyi.common.core.domain.AjaxResult;
|
import com.ruoyi.common.core.domain.AjaxResult;
|
||||||
import com.ruoyi.common.utils.DateUtils;
|
import com.ruoyi.common.utils.DateUtils;
|
||||||
import com.ruoyi.job.domain.MydoJob;
|
import com.ruoyi.job.domain.MydoJob;
|
||||||
@@ -457,8 +455,6 @@ public class ApiServiceImpl implements IApiService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* FT517 - 请求wms货位改在AGV放货到输送线后,在巷道口位置执行
|
* FT517 - 请求wms货位改在AGV放货到输送线后,在巷道口位置执行
|
||||||
* @param mydoJob
|
* @param mydoJob
|
||||||
@@ -504,9 +500,13 @@ public class ApiServiceImpl implements IApiService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public AjaxResult manualCompeleteTaskByTaskNo(String taskNo) {
|
||||||
|
return mydoJobService.manualCompeleteTaskByTaskNo(taskNo);
|
||||||
|
}
|
||||||
|
|
||||||
public AjaxResult manualCompeleteTask(String taskNo) {
|
|
||||||
return mydoJobService.manuallyCompeleteTask(taskNo);
|
public AjaxResult manualCompeleteTaskByJobId(String jobId) {
|
||||||
|
return mydoJobService.manualCompeleteTaskByJobId(jobId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -90,9 +90,11 @@ public interface IMydoJobService
|
|||||||
|
|
||||||
AjaxResult outhandFinish(String[] jobIds);
|
AjaxResult outhandFinish(String[] jobIds);
|
||||||
|
|
||||||
AjaxResult manuallyCompeleteTask(String taskNo);
|
AjaxResult manualCompeleteTaskByTaskNo(String taskNo);
|
||||||
|
|
||||||
AjaxResult manuallyCompeleteTask(String[] jobIds);
|
public AjaxResult manualCompeleteTaskByJobId(String jobId);
|
||||||
|
|
||||||
|
AjaxResult manualCompeleteTask(String[] jobIds);
|
||||||
|
|
||||||
AjaxResult cancelTask(String jobId);
|
AjaxResult cancelTask(String jobId);
|
||||||
|
|
||||||
|
|||||||
@@ -266,7 +266,7 @@ public class MydoJobServiceImpl implements IMydoJobService
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public AjaxResult manuallyCompeleteTask(String taskNo) {
|
public AjaxResult manualCompeleteTaskByTaskNo(String taskNo) {
|
||||||
|
|
||||||
//获取所有符合【任务号】的作业
|
//获取所有符合【任务号】的作业
|
||||||
MydoJob mydoJob = mydoJobMapper.selectMydoJobByTaskNo(taskNo);
|
MydoJob mydoJob = mydoJobMapper.selectMydoJobByTaskNo(taskNo);
|
||||||
@@ -311,13 +311,14 @@ public class MydoJobServiceImpl implements IMydoJobService
|
|||||||
return AjaxResult.success("操作成功");
|
return AjaxResult.success("操作成功");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 手动完成指定【任务号】的作业(数组类型参数)
|
* 手动完成指定【作业号】的作业(数组类型参数)
|
||||||
* @param jobIds
|
* @param jobIds
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public AjaxResult manuallyCompeleteTask(String[] jobIds) {
|
public AjaxResult manualCompeleteTask(String[] jobIds) {
|
||||||
|
|
||||||
for (String jobId : jobIds) {
|
for (String jobId : jobIds) {
|
||||||
//获取所有符合【任务号】的作业
|
//获取所有符合【任务号】的作业
|
||||||
@@ -365,6 +366,52 @@ public class MydoJobServiceImpl implements IMydoJobService
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 手动完成指定【作业号】的作业
|
||||||
|
* @param jobId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public AjaxResult manualCompeleteTaskByJobId(String jobId) {
|
||||||
|
//获取所有符合【任务号】的作业
|
||||||
|
MydoJob mydoJob = mydoJobMapper.selectMydoJobByJobId(jobId);
|
||||||
|
if (mydoJob == null){
|
||||||
|
return AjaxResult.error("无该任务号的执行作业,请确认该任务是否已经处理和进行其他操作");
|
||||||
|
}
|
||||||
|
//标记状态为【手动完成】插入历史表
|
||||||
|
mydoJob.setStatus(TASK_STATUS_FINISH_MANUAL);
|
||||||
|
updateMydoJob(mydoJob);
|
||||||
|
mydoJobMapper.insertHistory(jobId);
|
||||||
|
try {
|
||||||
|
//处理堆垛机执行队列和历史记录
|
||||||
|
DdjDeviceExecutionQueue queue = ddjDeviceExecutionQueueService.selectDdjDeviceExecutionQueueByTaskNo(mydoJob.getTaskNo());
|
||||||
|
if (queue != null){
|
||||||
|
DdjDeviceExecutionQueueFinish queueFinish = BeanUtil.copyProperties(queue, DdjDeviceExecutionQueueFinish.class);
|
||||||
|
ddjDeviceExecutionQueueServiceFinishService.insertDdjDeviceExecutionQueueFinish(queueFinish);
|
||||||
|
ddjDeviceExecutionQueueService.deleteDdjDeviceExecutionQueueByTaskNo(mydoJob.getTaskNo());
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.warn("【人工操作】手动完成操作失败:{}", e.getMessage());
|
||||||
|
}
|
||||||
|
JobCallBack jobCallBack = new JobCallBack();
|
||||||
|
jobCallBack.setType(mydoJob.getInOrOut());
|
||||||
|
jobCallBack.setTaskTypeCode(WMS_TASK_TYPE_FINISH);// wms下发的任务类型
|
||||||
|
jobCallBack.setMydoJobId(jobId);
|
||||||
|
jobCallBack.setStatus("0");
|
||||||
|
jobCallBack.setTaskNo(Convert.toLong(mydoJob.getTaskNo()));
|
||||||
|
jobCallBack.setCreateTime(new Date());
|
||||||
|
jobCallBack.setTaskCode(mydoJob.getWmsTaskNo());
|
||||||
|
jobCallBack.setRetry(0);
|
||||||
|
jobCallBack.setReqCode(UUID.randomUUID().toString());
|
||||||
|
jobCallBackService.insertJobCallBack(jobCallBack);
|
||||||
|
mydoJobMapper.deleteMydoJobByJobId(jobId);
|
||||||
|
log.info("【任务手动完成】生成历史记录,插入回传列表,作业号:{},wcs任务号:{}", jobId, mydoJob.getTaskNo());
|
||||||
|
|
||||||
|
|
||||||
|
return AjaxResult.success("操作成功");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 手动作废指定【任务号】的作业
|
* 手动作废指定【任务号】的作业
|
||||||
* @param jobId
|
* @param jobId
|
||||||
|
|||||||
@@ -1,7 +1,5 @@
|
|||||||
package com.ruoyi.schedule.scheduleTask;
|
package com.ruoyi.schedule.scheduleTask;
|
||||||
|
|
||||||
import HslCommunication.Profinet.Siemens.SiemensPLCS;
|
|
||||||
import HslCommunication.Profinet.Siemens.SiemensS7Net;
|
|
||||||
import cn.hutool.core.bean.BeanUtil;
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import cn.hutool.core.convert.Convert;
|
import cn.hutool.core.convert.Convert;
|
||||||
@@ -9,20 +7,16 @@ import cn.hutool.core.date.DateUtil;
|
|||||||
import cn.hutool.core.lang.UUID;
|
import cn.hutool.core.lang.UUID;
|
||||||
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 com.alibaba.fastjson2.JSON;
|
import com.alibaba.fastjson2.JSON;
|
||||||
import com.ruoyi.api.domain.agv.ResponseBase;
|
import com.ruoyi.api.domain.agv.ResponseBase;
|
||||||
import com.ruoyi.api.domain.wcs2wms.JobParam;
|
import com.ruoyi.api.domain.wcs2wms.JobParam;
|
||||||
import com.ruoyi.api.domain.wcs2wms.ResponseResult;
|
|
||||||
import com.ruoyi.api.domain.wcs2wms.exception.TaskExceptionReceive;
|
import com.ruoyi.api.domain.wcs2wms.exception.TaskExceptionReceive;
|
||||||
import com.ruoyi.api.domain.wcs2wms.exception.TaskExceptionRequest;
|
|
||||||
import com.ruoyi.api.domain.wcs2wms.stockin.StockinReceive;
|
import com.ruoyi.api.domain.wcs2wms.stockin.StockinReceive;
|
||||||
import com.ruoyi.api.service.IApiService;
|
import com.ruoyi.api.service.IApiService;
|
||||||
import com.ruoyi.api.service.IRequestLogService;
|
import com.ruoyi.api.service.IRequestLogService;
|
||||||
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.ConvType;
|
import com.ruoyi.common.ConvType;
|
||||||
import com.ruoyi.common.TaskStatusCode;
|
|
||||||
import com.ruoyi.common.TaskType;
|
import com.ruoyi.common.TaskType;
|
||||||
import com.ruoyi.common.core.domain.AjaxResult;
|
import com.ruoyi.common.core.domain.AjaxResult;
|
||||||
import com.ruoyi.device.ddj.domain.MsgDdj;
|
import com.ruoyi.device.ddj.domain.MsgDdj;
|
||||||
@@ -40,12 +34,10 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||||||
import org.springframework.scheduling.annotation.Scheduled;
|
import org.springframework.scheduling.annotation.Scheduled;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
import javax.annotation.PostConstruct;
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import static com.ruoyi.common.TaskStatusCode.*;
|
import static com.ruoyi.common.TaskStatusCode.*;
|
||||||
import static com.ruoyi.schedule.plcRead.ssj.PlcSsjRead.writeToSsj;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 处理wcs执行作业的定时任务类
|
* 处理wcs执行作业的定时任务类
|
||||||
@@ -113,7 +105,7 @@ public class TaskHandler {
|
|||||||
);
|
);
|
||||||
if (!jobs.isEmpty()) {
|
if (!jobs.isEmpty()) {
|
||||||
for (MydoJob job : jobs) {
|
for (MydoJob job : jobs) {
|
||||||
mydoJobService.manuallyCompeleteTask(job.getTaskNo());
|
mydoJobService.manualCompeleteTaskByTaskNo(job.getTaskNo());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user