流利架 逻辑优化
This commit is contained in:
@@ -111,6 +111,16 @@ public interface IApiService
|
||||
*/
|
||||
public AjaxResult sendOutMydoJobStatus(Map<String, Object> param) ;
|
||||
|
||||
|
||||
/**
|
||||
* 发送ctu 取货完成信号
|
||||
* @param param{
|
||||
* "lljCode":""流利架位置
|
||||
* }
|
||||
* @return
|
||||
*/
|
||||
public AjaxResult takeCompleted(Map<String, Object> param) ;
|
||||
|
||||
/**
|
||||
* 下发agv任务
|
||||
* @param agvQueue
|
||||
|
||||
@@ -104,9 +104,13 @@ public class ApiServiceImpl implements IApiService {
|
||||
if ("1".equals(requestLog.getIsSuccessful())) {
|
||||
return BeanUtil.toBean(requestLog.getResponseBody(), GenAgvSchedulingTaskResponse.class);
|
||||
} else {
|
||||
//todo 需要调试
|
||||
GenAgvSchedulingTaskResponse response = new GenAgvSchedulingTaskResponse();
|
||||
response.setCode(500);
|
||||
response.setMessage("请求失败");
|
||||
//todo 需要调试小车请求
|
||||
response.setCode(0);
|
||||
response.setMessage("模拟测试");
|
||||
return response;
|
||||
}
|
||||
}
|
||||
@@ -181,6 +185,16 @@ public class ApiServiceImpl implements IApiService {
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public AjaxResult takeCompleted(Map<String, Object> param) {
|
||||
RequestLog requestLog = requestLogService.getRequestLog(TAKE_COMPLETED, "ctu取货完成信号", JSONUtil.toJsonStr(param));
|
||||
if ("1".equals(requestLog.getIsSuccessful())) {
|
||||
return AjaxResult.success();
|
||||
} else {
|
||||
return AjaxResult.error();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 处理agv状态返回
|
||||
* @param request
|
||||
@@ -306,6 +320,12 @@ public class ApiServiceImpl implements IApiService {
|
||||
}
|
||||
log.info("【AGV料箱取放申请】任务号:{}", taskCode);
|
||||
break;
|
||||
case "takeCompleted":
|
||||
//ctu取货完成
|
||||
HashMap<String, Object> takeCompletedParam = new HashMap<>();
|
||||
takeCompletedParam.put("lljCode",agvQueue.getPositionCode1());
|
||||
takeCompleted(takeCompletedParam);
|
||||
break;
|
||||
default:
|
||||
log.info("未知方法");
|
||||
}
|
||||
|
||||
@@ -65,7 +65,7 @@ public class RequestLogServiceImpl implements IRequestLogService
|
||||
if ("1".equals(requestLog.getIsSuccessful())){
|
||||
return requestLogMapper.insertRequestLog(requestLog);
|
||||
}else {
|
||||
log.error("请求失败:" + requestLog.getErrorDetails());
|
||||
//log.error("请求失败:" + requestLog.getErrorDetails());
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -28,5 +28,6 @@ public class Constant {
|
||||
public static final String CANCEL_TASK_URL = "http://127.0.0.1:8081/rcms-dps/rest/queryAgvStatus/";
|
||||
public static final String GEN_AGV_SCHEDULING_TASK = "http://127.0.0.1:8081/rcms-dps/rest/queryAgvStatus/";
|
||||
public static final String SEND_OUT_MYDOJOB_STATUS = "http://127.0.0.1:8080/api2wms/startSignal";
|
||||
public static final String TAKE_COMPLETED = "http://127.0.0.1:8080/api2wms/takeCompleted";
|
||||
|
||||
}
|
||||
|
||||
@@ -88,25 +88,15 @@ public class BsInSsjThread implements Runnable {
|
||||
}
|
||||
break;
|
||||
case "fluentIn":
|
||||
//查询流利架未开始的作业
|
||||
MydoJob mydoJobParam = new MydoJob();
|
||||
mydoJobParam.setStatus("1");
|
||||
mydoJobParam.setEntranceId("fluent");
|
||||
List<MydoJob> mydoJobs = apiService.requestEnterByEnterId(mydoJobParam);
|
||||
if (CollUtil.isNotEmpty(mydoJobs)){
|
||||
Map<String, List<MydoJob>> lljCodeGroup = mydoJobs.stream().collect(Collectors.groupingBy(MydoJob::getEntranceId));
|
||||
//流利架 空料箱入库
|
||||
for (String lljCode : ssjCodeList.get(type)) {
|
||||
try {
|
||||
if (lljCodeGroup.containsKey(lljCode)){
|
||||
inLljDispatch(lljCode,lljCodeGroup.get(lljCode));
|
||||
}
|
||||
inLljDispatch(lljCode);
|
||||
} catch (RuntimeException e) {
|
||||
log.error(e.getMessage(), e);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
@@ -126,18 +116,15 @@ public class BsInSsjThread implements Runnable {
|
||||
*
|
||||
* @param lljCode
|
||||
*/
|
||||
private void inLljDispatch(String lljCode,List<MydoJob> mydoJobs) {
|
||||
private void inLljDispatch(String lljCode) {
|
||||
|
||||
//判断是否生成队列
|
||||
AgvQueue agvQueueParam = new AgvQueue();
|
||||
agvQueueParam.setPositionCode1(lljCode);
|
||||
//agvQueueParam.setStatus("0");
|
||||
agvQueueParam.setStatus("0");
|
||||
List<AgvQueue> agvQueues = agvQueueService.selectAgvQueueList(agvQueueParam);
|
||||
if (CollUtil.isEmpty(agvQueues)){
|
||||
MydoJob mydoJob = mydoJobs.get(0);
|
||||
if (ObjUtil.isNotNull(mydoJob)) {
|
||||
//生成agv队列
|
||||
AgvQueue agvQueue = apiService.createAgvQueue(lljCode, mydoJob.getCargoSpaceId(),mydoJob.getTrayCode(),mydoJob.getTaskNo(),"1");
|
||||
if (CollUtil.isNotEmpty(agvQueues)) {
|
||||
for (AgvQueue agvQueue : agvQueues) {
|
||||
//请求任务生成
|
||||
GenAgvSchedulingTaskResponse genAgvSchedulingTaskResponse = apiService.requestAgvQueue(agvQueue);
|
||||
//修改wms任务状态
|
||||
@@ -147,17 +134,13 @@ public class BsInSsjThread implements Runnable {
|
||||
agvQueueService.updateAgvQueue(agvQueue);
|
||||
log.info("向CTU下入库库作业");
|
||||
}
|
||||
} else {
|
||||
if (ObjUtil.isNull(mydoJob)) {
|
||||
log.info("无入库库作业 lljCode:{}", lljCode);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 输送线入库
|
||||
*
|
||||
|
||||
@@ -130,8 +130,6 @@ public class BsOutSsjThread implements Runnable {
|
||||
queue.setPositionCode2(basFluentFrame.getLocationName());
|
||||
agvQueueService.updateAgvQueue(queue);
|
||||
GenAgvSchedulingTaskResponse genAgvSchedulingTaskResponse = apiService.requestAgvQueue(queue);
|
||||
//todo 需要调试小车请求
|
||||
genAgvSchedulingTaskResponse.setCode(0);
|
||||
if (genAgvSchedulingTaskResponse.getCode() == 0) {
|
||||
//修改ctu执行状态
|
||||
queue.setStatus("1");
|
||||
|
||||
@@ -34,7 +34,7 @@ server:
|
||||
# 日志配置
|
||||
logging:
|
||||
level:
|
||||
com.ruoyi: debug
|
||||
com.ruoyi: error
|
||||
org.springframework: warn
|
||||
|
||||
# 用户配置
|
||||
|
||||
Reference in New Issue
Block a user