产线输送机
This commit is contained in:
@@ -45,7 +45,7 @@ public interface IApiService
|
||||
* WMS出库任务推送
|
||||
* @param receiveOutJob
|
||||
*/
|
||||
public AjaxResult receiveOutMydoJob(ReceiveJob receiveOutJob);
|
||||
// public AjaxResult receiveOutMydoJob(ReceiveJob receiveOutJob);
|
||||
|
||||
/**
|
||||
* 生成agv队列
|
||||
@@ -56,7 +56,7 @@ public interface IApiService
|
||||
* @param wmsTaskType 1-入库 2-出库 3-agv搬运
|
||||
* @return
|
||||
*/
|
||||
public AgvQueue createAgvQueue(String code1,String code2,String wmsTrayCode,String wmsTaskNo,String wmsTaskType);
|
||||
public AgvQueue createAgvQueue(String code1,String code2,String wmsTrayCode,String wmsTaskNo,String wmsTaskType,String traySize);
|
||||
|
||||
/**
|
||||
* 取消AGV任务
|
||||
@@ -68,10 +68,10 @@ public interface IApiService
|
||||
|
||||
/**
|
||||
* 继续AGV任务
|
||||
* @param continueTaskRequest
|
||||
* @param agvQueue
|
||||
* @return
|
||||
*/
|
||||
public ContinueTaskResponse continueTask(ContinueTaskRequest continueTaskRequest);
|
||||
public AjaxResult continueTask(AgvQueue agvQueue);
|
||||
|
||||
/**
|
||||
* 生成AGV生成任务
|
||||
@@ -130,7 +130,7 @@ public interface IApiService
|
||||
* WMS流利架入库任务推送
|
||||
* @param receiveInJob
|
||||
*/
|
||||
AjaxResult receiveInMydoJob(ReceiveJob receiveInJob);
|
||||
// AjaxResult receiveInMydoJob(ReceiveJob receiveInJob);
|
||||
|
||||
|
||||
/**
|
||||
@@ -159,5 +159,7 @@ public interface IApiService
|
||||
*/
|
||||
public AjaxResult createInMydoJob(Map<String, Object> param);
|
||||
|
||||
public AjaxResult selectMydoJobByNoTrayCode(Map<String, Object> param);
|
||||
|
||||
public AjaxResult requestEnterByEnterIdAndTrayCode();
|
||||
}
|
||||
|
||||
@@ -150,30 +150,15 @@ public class ApiServiceImpl implements IApiService {
|
||||
public AjaxResult receiveAgvMoveJob(Map<String, String> param) {
|
||||
String startPoint = param.get("startPoint");
|
||||
String endPoint = param.get("endPoint");
|
||||
//todo 待调试
|
||||
WcsPort startWcsPort = wcsPortService.selectWcsPortByPortCode(startPoint);
|
||||
WcsPort endWcsPort = wcsPortService.selectWcsPortByPortCode(endPoint);
|
||||
if (ObjUtil.isNull(startWcsPort)){
|
||||
return AjaxResult.error("起始点不存在");
|
||||
}
|
||||
if (ObjUtil.isNull(endWcsPort)){
|
||||
return AjaxResult.error("结束点不存在");
|
||||
}
|
||||
if ("1".equals(startWcsPort.getStatus()) && "0".equals(endWcsPort.getStatus())){
|
||||
AgvQueue agvQueue = createAgvQueue(startWcsPort.getSpare2(),endWcsPort.getSpare2(), param.get("containerCode"), param.get("taskNo"), "3");
|
||||
String traySize = param.get("traySize");
|
||||
|
||||
AgvQueue agvQueue = createAgvQueue(startPoint,endPoint, param.get("trayCode"), param.get("taskNo"), "1",traySize);
|
||||
GenAgvSchedulingTaskResponse genAgvSchedulingTaskResponse = requestAgvQueue(agvQueue);
|
||||
if (genAgvSchedulingTaskResponse.getCode() == 0) {
|
||||
return AjaxResult.success();
|
||||
}
|
||||
return AjaxResult.error(genAgvSchedulingTaskResponse.getMessage());
|
||||
}
|
||||
if ("0".equals(startWcsPort.getStatus())){
|
||||
return AjaxResult.error("起始点位无容器");
|
||||
}
|
||||
if ("1".equals(endWcsPort.getStatus())){
|
||||
return AjaxResult.error("目标点位有容器");
|
||||
}
|
||||
return AjaxResult.error();
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -223,6 +208,40 @@ public class ApiServiceImpl implements IApiService {
|
||||
* @param request
|
||||
*/
|
||||
private void agvCallbackInfo(AgvCallbackRequest request) {
|
||||
AgvQueue agvQueue = agvQueueService.selectAgvQueueByTaskCode(request.getTaskCode());
|
||||
if (agvQueue != null ) {
|
||||
String method = request.getMethod();
|
||||
switch (method) {
|
||||
case "applyin":
|
||||
agvQueue.setStatus("1");
|
||||
agvQueueService.updateAgvQueue(agvQueue);
|
||||
log.info("【AGV请求取货】任务号:{}", request.getTaskCode());
|
||||
break;
|
||||
case "start":
|
||||
agvQueue.setStatus("3");
|
||||
agvQueueService.updateAgvQueue(agvQueue);
|
||||
log.info("【AGV任务开始】任务号:{}", request.getTaskCode());
|
||||
break;
|
||||
case "outbin":
|
||||
agvQueue.setStatus("4");
|
||||
agvQueueService.updateAgvQueue(agvQueue);
|
||||
log.info("【AGV走出储位】任务号:{}", request.getTaskCode());
|
||||
break;
|
||||
case "applyout":
|
||||
agvQueue.setStatus("5");
|
||||
agvQueueService.updateAgvQueue(agvQueue);
|
||||
log.info("【AGV请求放货】任务号:{}", request.getTaskCode());
|
||||
break;
|
||||
case "end":
|
||||
agvQueue.setStatus("7");
|
||||
agvQueueService.updateAgvQueue(agvQueue);
|
||||
log.info("【AGV任务结束】任务号:{}", request.getTaskCode());
|
||||
break;
|
||||
default:
|
||||
log.info("未知方法");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -234,30 +253,30 @@ public class ApiServiceImpl implements IApiService {
|
||||
* @param receiveOutJob
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public AjaxResult receiveOutMydoJob(ReceiveJob receiveOutJob) {
|
||||
AgvQueue agvQueue = createAgvQueue(receiveOutJob.getCargoSpaceId(),receiveOutJob.getExitId(),receiveOutJob.getTrayCode(),receiveOutJob.getTaskNo(),"2");
|
||||
if (agvQueue != null){
|
||||
return AjaxResult.success();
|
||||
}else {
|
||||
return AjaxResult.error("生成agv任务失败");
|
||||
}
|
||||
}
|
||||
// @Override
|
||||
// public AjaxResult receiveOutMydoJob(ReceiveJob receiveOutJob) {
|
||||
// AgvQueue agvQueue = createAgvQueue(receiveOutJob.getCargoSpaceId(),receiveOutJob.getExitId(),receiveOutJob.getTrayCode(),receiveOutJob.getTaskNo(),"2");
|
||||
// if (agvQueue != null){
|
||||
// return AjaxResult.success();
|
||||
// }else {
|
||||
// return AjaxResult.error("生成agv任务失败");
|
||||
// }
|
||||
// }
|
||||
/**
|
||||
* 接收流利架空料箱入库任务
|
||||
*
|
||||
* @param receiveInJob
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public AjaxResult receiveInMydoJob(ReceiveJob receiveInJob) {
|
||||
AgvQueue agvQueue = createAgvQueue(receiveInJob.getEntranceId(),receiveInJob.getCargoSpaceId(),receiveInJob.getTrayCode(),receiveInJob.getTaskNo(),"1");
|
||||
if (agvQueue != null){
|
||||
return AjaxResult.success();
|
||||
}else {
|
||||
return AjaxResult.error("生成agv任务失败");
|
||||
}
|
||||
}
|
||||
// @Override
|
||||
// public AjaxResult receiveInMydoJob(ReceiveJob receiveInJob) {
|
||||
// AgvQueue agvQueue = createAgvQueue(receiveInJob.getEntranceId(),receiveInJob.getCargoSpaceId(),receiveInJob.getTrayCode(),receiveInJob.getTaskNo(),"1");
|
||||
// if (agvQueue != null){
|
||||
// return AjaxResult.success();
|
||||
// }else {
|
||||
// return AjaxResult.error("生成agv任务失败");
|
||||
// }
|
||||
// }
|
||||
|
||||
/**
|
||||
* 取消ctu任务
|
||||
@@ -308,18 +327,18 @@ public class ApiServiceImpl implements IApiService {
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public AgvQueue createAgvQueue(String code1,String code2,String wmsTrayCode,String wmsTaskNo,String wmsTaskType) {
|
||||
public AgvQueue createAgvQueue(String code1,String code2,String wmsTrayCode,String wmsTaskNo,String wmsTaskType,String traySize) {
|
||||
//生成ctu执行队列
|
||||
AgvQueue agvQueue = new AgvQueue();
|
||||
String reqCode = IdUtil.fastSimpleUUID();
|
||||
String taskCode = IdUtil.fastSimpleUUID();
|
||||
agvQueue.setReqCode(reqCode);
|
||||
agvQueue.setReqTime(DateUtil.formatDateTime(DateUtil.date()));
|
||||
agvQueue.setAgvType("CTU");
|
||||
agvQueue.setAgvType("AGV");
|
||||
agvQueue.setPositionCode1(code1);
|
||||
agvQueue.setPositionCode2(code2);
|
||||
agvQueue.setTaskType("F01");
|
||||
agvQueue.setCtnrType("0");
|
||||
agvQueue.setCtnrType(traySize);
|
||||
agvQueue.setCtnrCode("0");
|
||||
agvQueue.setCtnrNum("0");
|
||||
agvQueue.setTaskMode("0");
|
||||
@@ -348,13 +367,22 @@ public class ApiServiceImpl implements IApiService {
|
||||
|
||||
/**
|
||||
* 继续agv任务
|
||||
* @param continueTaskRequest
|
||||
* @param agvQueue
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public ContinueTaskResponse continueTask(ContinueTaskRequest continueTaskRequest) {
|
||||
public AjaxResult continueTask(AgvQueue agvQueue) {
|
||||
ContinueTaskRequest continueTaskRequest = new ContinueTaskRequest();
|
||||
continueTaskRequest.setReqCode(IdUtil.fastSimpleUUID());
|
||||
continueTaskRequest.setReqTime(DateUtil.formatDateTime(DateUtil.date()));
|
||||
continueTaskRequest.setTaskCode(agvQueue.getTaskCode());
|
||||
RequestLog requestLog = requestLogService.getRequestLog(CONTINUE_TASK_URL, "继续执行任务", JSONUtil.toJsonStr(continueTaskRequest));
|
||||
return BeanUtil.toBean(requestLog.getResponseBody(), ContinueTaskResponse.class);
|
||||
if ("1".equals(requestLog.getIsSuccessful())){
|
||||
return AjaxResult.success();
|
||||
}else{
|
||||
return AjaxResult.error();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -376,7 +404,7 @@ public class ApiServiceImpl implements IApiService {
|
||||
genAgvSchedulingTaskRequest.setCtnrNum("0");
|
||||
genAgvSchedulingTaskRequest.setTaskMode("0");
|
||||
genAgvSchedulingTaskRequest.setTaskCode(agvQueue.getWmsTaskNo());
|
||||
genAgvSchedulingTaskRequest.setAgvTyp("CTU");
|
||||
genAgvSchedulingTaskRequest.setAgvTyp("AGV");
|
||||
genAgvSchedulingTaskRequest.setPositionSelStrategy("0");
|
||||
genAgvSchedulingTaskRequest.setTaskCode(agvQueue.getTaskCode());
|
||||
List<PositionCodeData> positionCodePath = new ArrayList<>();
|
||||
@@ -400,4 +428,15 @@ public class ApiServiceImpl implements IApiService {
|
||||
public AjaxResult requestEnterByEnterIdAndTrayCode() {
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public AjaxResult selectMydoJobByNoTrayCode(Map<String, Object> param) {
|
||||
RequestLog requestLog = requestLogService.getRequestLog(REQUEST_MYDO_JOB_URL, "入库请求补码作业", JSONUtil.toJsonStr(param));
|
||||
if ("1".equals(requestLog.getIsSuccessful())) {
|
||||
return AjaxResult.success();
|
||||
} else {
|
||||
return AjaxResult.error();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user