|
|
|
|
@ -164,7 +164,7 @@ public class TaskExecuteRecordServiceImpl extends BaseServiceImpl<TaskExecuteRec |
|
|
|
|
|
|
|
|
|
log.info("当前Task状态为{},任务TaskCode为{}", task.getTaskStatus(), agvCallBack.getTaskCode()); |
|
|
|
|
//状态为暂存 需要调用
|
|
|
|
|
if (Task.STATUS_MES_CTU_s.equals(task.getTaskStatus())) { |
|
|
|
|
if (Task.STATUS_MES_CTU_BELOW.equals(task.getTaskStatus())) { |
|
|
|
|
//判断是否需要调用agv接口
|
|
|
|
|
boolean conAgvReturn = containerToAgv(agvCallBack.getTaskCode()); |
|
|
|
|
log.info("AGV小车接口调用返回值:{}", conAgvReturn); |
|
|
|
|
@ -180,7 +180,7 @@ public class TaskExecuteRecordServiceImpl extends BaseServiceImpl<TaskExecuteRec |
|
|
|
|
return R.fail("CTU小车接口调用失败"); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
if(Task.STATUS_MES_CTU_k.equals(task.getTaskStatus())){ |
|
|
|
|
if(Task.STATUS_MES_CTU_UP.equals(task.getTaskStatus())){ |
|
|
|
|
//以放到库位 修改状态
|
|
|
|
|
boolean ctuLocation = updateMesCtuLocation(agvCallBack.getTaskCode()); |
|
|
|
|
log.info("MES调用CTU放倒库位:{}", ctuLocation); |
|
|
|
|
@ -267,7 +267,7 @@ public class TaskExecuteRecordServiceImpl extends BaseServiceImpl<TaskExecuteRec |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public boolean boundVirtualShelves(String virtualShelvesCode, String stationCode) { |
|
|
|
|
public JSONObject boundVirtualShelves(String virtualShelvesCode, String stationCode) { |
|
|
|
|
String url = "http://172.22.252.10:8181/rcms/services/rest/hikRpcService/bindPodAndBerth"; |
|
|
|
|
|
|
|
|
|
Map<String, Object> requestBody = new HashMap<>(); |
|
|
|
|
@ -284,19 +284,12 @@ public class TaskExecuteRecordServiceImpl extends BaseServiceImpl<TaskExecuteRec |
|
|
|
|
log.info("绑定虚拟货架响应:{}", responseStr); |
|
|
|
|
|
|
|
|
|
JSONObject response = JSON.parseObject(responseStr); |
|
|
|
|
String code = response.getString("code"); |
|
|
|
|
|
|
|
|
|
if ("0".equals(code)) { |
|
|
|
|
log.info("绑定虚拟货架成功,虚拟货架:{},站点:{}", virtualShelvesCode, stationCode); |
|
|
|
|
return true; |
|
|
|
|
} else { |
|
|
|
|
log.error("绑定虚拟货架失败,虚拟货架:{},站点:{},响应:{}", |
|
|
|
|
virtualShelvesCode, stationCode, responseStr); |
|
|
|
|
return false; |
|
|
|
|
} |
|
|
|
|
return response; |
|
|
|
|
|
|
|
|
|
} catch (Exception e) { |
|
|
|
|
log.error("绑定虚拟货架异常,虚拟货架:{},站点:{}", virtualShelvesCode, stationCode, e); |
|
|
|
|
return false; |
|
|
|
|
return null; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@ -492,7 +485,7 @@ public class TaskExecuteRecordServiceImpl extends BaseServiceImpl<TaskExecuteRec |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// 8. 所有操作成功后,更新任务状态
|
|
|
|
|
task.setTaskStatus(Task.STATUS_MES_CTU_k); |
|
|
|
|
task.setTaskStatus(Task.STATUS_MES_CTU_UP); |
|
|
|
|
boolean taskUpdate = taskService.updateById(task); |
|
|
|
|
if (!taskUpdate) { |
|
|
|
|
log.error("Task状态修改失败,但CTU调度已成功,taskCode:{}", taskCode); |
|
|
|
|
@ -713,17 +706,33 @@ public class TaskExecuteRecordServiceImpl extends BaseServiceImpl<TaskExecuteRec |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// 站点绑定虚拟货架
|
|
|
|
|
boolean shelves = boundVirtualShelves( |
|
|
|
|
JSONObject response = boundVirtualShelves( |
|
|
|
|
virtualShelves.getVirtualShelvesCode(), |
|
|
|
|
startPos |
|
|
|
|
); |
|
|
|
|
if (!shelves) { |
|
|
|
|
throw new ServiceException("站点绑定虚拟货架失败"); |
|
|
|
|
} else { |
|
|
|
|
String code = response.getString("code"); |
|
|
|
|
String message = response.getString("message"); |
|
|
|
|
|
|
|
|
|
if ("0".equals(code)) { |
|
|
|
|
log.info("绑定虚拟货架成功,虚拟货架:{},站点:{}", virtualShelves.getVirtualShelvesCode(), startPos); |
|
|
|
|
|
|
|
|
|
virtualShelves.setIsBound(VirtualShelves.BOUND_YES); |
|
|
|
|
virtualShelvesService.updateById(virtualShelves); |
|
|
|
|
|
|
|
|
|
} else { |
|
|
|
|
log.error("绑定虚拟货架失败,虚拟货架:{},站点:{},响应:{}", |
|
|
|
|
virtualShelves.getVirtualShelvesCode(), startPos, response); |
|
|
|
|
|
|
|
|
|
//修改Task状态
|
|
|
|
|
task.setTaskStatus(Task.BOUND_VIRTUAL_SHELVES); |
|
|
|
|
task.setRemark(message); |
|
|
|
|
taskService.updateById(task); |
|
|
|
|
|
|
|
|
|
return false; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 调用AGV
|
|
|
|
|
AgvSchedulingTaskVO agvSchedulingTaskVO = genAgvSchedulingTask( |
|
|
|
|
taskType, |
|
|
|
|
|