优化
This commit is contained in:
@@ -134,4 +134,6 @@ public interface IApiService
|
||||
AjaxResult receiveInMydoJob(ReceiveJob receiveInJob);
|
||||
|
||||
AjaxResult selectMydoJobByTrayCodeAndEntranceId(HashMap<String, Object> paramMap);
|
||||
|
||||
AjaxResult deleteAgvTray(AgvQueue agvQueue);
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@ import cn.hutool.core.convert.Convert;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.IdUtil;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.ruoyi.api.domain.InterfaceReceive;
|
||||
import com.ruoyi.api.domain.RequestLog;
|
||||
import com.ruoyi.api.domain.agv.agvCallback.AgvCallbackRequest;
|
||||
@@ -73,15 +74,17 @@ public class ApiServiceImpl implements IApiService {
|
||||
public GenAgvSchedulingTaskResponse genAgvSchedulingTask(GenAgvSchedulingTaskRequest genAgvSchedulingTaskRequest) {
|
||||
RequestLog requestLog = requestLogService.getRequestLog(GEN_AGV_SCHEDULING_TASK, "生成AGV任务", JSONUtil.toJsonStr(genAgvSchedulingTaskRequest));
|
||||
if ("1".equals(requestLog.getIsSuccessful())) {
|
||||
return BeanUtil.toBean(requestLog.getResponseBody(), GenAgvSchedulingTaskResponse.class);
|
||||
AgvQueue agvQueue = agvQueueService.selectAgvQueueByTaskCode(genAgvSchedulingTaskRequest.getTaskCode());
|
||||
if(agvQueue != null){
|
||||
agvQueue.setStatus("1");
|
||||
agvQueueService.updateAgvQueue(agvQueue);
|
||||
}
|
||||
return JSON.parseObject(requestLog.getResponseBody(), GenAgvSchedulingTaskResponse.class);
|
||||
} else {
|
||||
//todo 需要调试
|
||||
GenAgvSchedulingTaskResponse response = new GenAgvSchedulingTaskResponse();
|
||||
response.setCode(500);
|
||||
response.setMessage("请求失败");
|
||||
//todo 需要调试小车请求
|
||||
response.setCode(0);
|
||||
response.setMessage("模拟测试");
|
||||
return response;
|
||||
}
|
||||
}
|
||||
@@ -125,13 +128,16 @@ public class ApiServiceImpl implements IApiService {
|
||||
String endPoint = param.get("endPoint");
|
||||
String traySize = param.get("traySize");
|
||||
String wmsTaskNo = param.get("wmsTaskNo");
|
||||
|
||||
AgvQueue agvQueue = createAgvQueue(startPoint, endPoint, param.get("trayCode"), param.get("taskNo"), "1", traySize, wmsTaskNo);
|
||||
GenAgvSchedulingTaskResponse genAgvSchedulingTaskResponse = requestAgvQueue(agvQueue);
|
||||
if (genAgvSchedulingTaskResponse.getCode() == 0) {
|
||||
return AjaxResult.success();
|
||||
GenAgvSchedulingTaskResponse response = new GenAgvSchedulingTaskResponse();
|
||||
AgvQueue queue = agvQueueService.selectAgvQueueByTaskCode(param.get("taskCode"));
|
||||
if(queue == null){
|
||||
AgvQueue agvQueue = createAgvQueue(startPoint, endPoint, param.get("trayCode"), param.get("taskCode"), "1", traySize, wmsTaskNo);
|
||||
response = requestAgvQueue(agvQueue);
|
||||
if (response.getCode() == 0) {
|
||||
return AjaxResult.success();
|
||||
}
|
||||
}
|
||||
return AjaxResult.error(genAgvSchedulingTaskResponse.getMessage());
|
||||
return AjaxResult.error(response.getMessage());
|
||||
|
||||
}
|
||||
|
||||
@@ -158,7 +164,7 @@ public class ApiServiceImpl implements IApiService {
|
||||
String method = request.getMethod();
|
||||
switch (method) {
|
||||
case "applyin":
|
||||
agvQueue.setStatus("1");
|
||||
agvQueue.setStatus("2");
|
||||
agvQueueService.updateAgvQueue(agvQueue);
|
||||
log.info("【AGV请求取货】任务号:{}", request.getTaskCode());
|
||||
break;
|
||||
@@ -178,7 +184,6 @@ public class ApiServiceImpl implements IApiService {
|
||||
log.info("【AGV请求放货】任务号:{}", request.getTaskCode());
|
||||
break;
|
||||
case "end":
|
||||
|
||||
agvQueue.setStatus("7");
|
||||
agvQueueService.updateAgvQueue(agvQueue);
|
||||
log.info("【AGV任务结束】任务号:{}", request.getTaskCode());
|
||||
@@ -256,7 +261,7 @@ public class ApiServiceImpl implements IApiService {
|
||||
|
||||
|
||||
/**
|
||||
* 生成agv队列
|
||||
* 生成agv队列----临时修改起终点
|
||||
*
|
||||
* @param code1 起点
|
||||
* @param code2 终点
|
||||
@@ -270,14 +275,13 @@ public class ApiServiceImpl implements IApiService {
|
||||
//生成ctu执行队列
|
||||
AgvQueue agvQueue = new AgvQueue();
|
||||
String reqCode = IdUtil.fastSimpleUUID();
|
||||
// String taskCode = IdUtil.fastSimpleUUID();
|
||||
agvQueue.setReqCode(reqCode);
|
||||
agvQueue.setReqTime(DateUtil.formatDateTime(DateUtil.date()));
|
||||
agvQueue.setAgvType("AGV");
|
||||
agvQueue.setPositionCode1(code1);
|
||||
agvQueue.setPositionCode2(code2);
|
||||
agvQueue.setTaskType("F01");
|
||||
agvQueue.setCtnrType(traySize);
|
||||
agvQueue.setTaskType("A24");
|
||||
agvQueue.setCtnrType("1");
|
||||
agvQueue.setCtnrCode("0");
|
||||
agvQueue.setCtnrNum("0");
|
||||
agvQueue.setTaskMode("0");
|
||||
@@ -337,18 +341,13 @@ public class ApiServiceImpl implements IApiService {
|
||||
|
||||
GenAgvSchedulingTaskRequest genAgvSchedulingTaskRequest = new GenAgvSchedulingTaskRequest();
|
||||
genAgvSchedulingTaskRequest.setReqCode(agvQueue.getReqCode());
|
||||
genAgvSchedulingTaskRequest.setTaskMode("0");
|
||||
genAgvSchedulingTaskRequest.setPriority("10");
|
||||
genAgvSchedulingTaskRequest.setTaskTyp("F01");
|
||||
genAgvSchedulingTaskRequest.setCtnrCode("0");
|
||||
genAgvSchedulingTaskRequest.setCtnrNum("0");
|
||||
genAgvSchedulingTaskRequest.setTaskMode("0");
|
||||
genAgvSchedulingTaskRequest.setTaskTyp(agvQueue.getTaskType());
|
||||
genAgvSchedulingTaskRequest.setCtnrTyp(agvQueue.getCtnrType());
|
||||
genAgvSchedulingTaskRequest.setTaskCode(agvQueue.getTaskCode());
|
||||
genAgvSchedulingTaskRequest.setAgvTyp("AGV");
|
||||
genAgvSchedulingTaskRequest.setPositionSelStrategy("0");
|
||||
List<PositionCodeData> positionCodePath = new ArrayList<>();
|
||||
positionCodePath.add(new PositionCodeData(agvQueue.getPositionCode1(), "0"));
|
||||
positionCodePath.add(new PositionCodeData(agvQueue.getPositionCode2(), "0"));
|
||||
positionCodePath.add(new PositionCodeData(agvQueue.getPositionCode1(), "05"));
|
||||
positionCodePath.add(new PositionCodeData(agvQueue.getPositionCode2(), "05"));
|
||||
genAgvSchedulingTaskRequest.setPositionCodePath(positionCodePath);
|
||||
return genAgvSchedulingTask(genAgvSchedulingTaskRequest);
|
||||
}
|
||||
@@ -378,6 +377,7 @@ public class ApiServiceImpl implements IApiService {
|
||||
mydoJob.setRoadwayId(receiveOutJob.getRoadwayId());
|
||||
mydoJob.setCreateTime(DateUtils.getNowDate());
|
||||
mydoJob.setExecutionPhase(TASK_EP_CREATE);
|
||||
mydoJob.setTraySize(receiveOutJob.getDepartmentId());
|
||||
int i = mydoJobService.insertMydoJob(mydoJob);
|
||||
if (i > 0) {
|
||||
return AjaxResult.success();
|
||||
@@ -403,6 +403,24 @@ public class ApiServiceImpl implements IApiService {
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public AjaxResult deleteAgvTray(AgvQueue agvQueue) {
|
||||
Map<String, String> paramMap = new HashMap<>();
|
||||
paramMap.put("reqCode", IdUtil.fastSimpleUUID());
|
||||
paramMap.put("ctnrTyp", agvQueue.getCtnrType());
|
||||
paramMap.put("binName", agvQueue.getPositionCode2());
|
||||
paramMap.put("indBind", "0");
|
||||
|
||||
RequestLog requestLog = requestLogService.getRequestLog(DELETE_BIN_URL, "AGV解绑容器", JSONUtil.toJsonStr(paramMap));
|
||||
if ("1".equals(requestLog.getIsSuccessful())) {
|
||||
log.info("站点:"+agvQueue.getPositionCode2()+"{}AGV容器解绑成功!");
|
||||
return AjaxResult.success();
|
||||
} else {
|
||||
log.info("站点:"+agvQueue.getPositionCode2()+"{}AGV容器解绑失败!");
|
||||
return AjaxResult.error();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public AjaxResult selectMydoJobByNoTrayCode(Map<String, Object> param) {
|
||||
|
||||
@@ -131,7 +131,7 @@ public class RequestLogServiceImpl implements IRequestLogService
|
||||
String resStr = HttpUtil.post(url, param);
|
||||
requestLog.setResponseBody(resStr);
|
||||
InterfaceReceive bean = JSONUtil.toBean(resStr, InterfaceReceive.class);
|
||||
if (bean.getCode() == 200) {
|
||||
if (bean.getCode() == 0) {
|
||||
requestLog.setResponseTime(DateUtil.format(responseTime, "yyyy-MM-dd HH:mm:ss"));
|
||||
requestLog.setResponseStatus("1");
|
||||
requestLog.setDuration(Convert.toStr(DateUtil.between(requestTime, responseTime, DateUnit.MS)));
|
||||
|
||||
Reference in New Issue
Block a user