|
|
|
@ -15,6 +15,7 @@ import org.springblade.core.tool.api.R; |
|
|
|
import org.springblade.desk.logistics.constant.AgvConstant; |
|
|
|
import org.springblade.desk.logistics.constant.AgvConstant; |
|
|
|
import org.springblade.desk.logistics.mapper.TaskExecuteRecordMapper; |
|
|
|
import org.springblade.desk.logistics.mapper.TaskExecuteRecordMapper; |
|
|
|
import org.springblade.desk.logistics.pojo.dto.AGVCallBackDto; |
|
|
|
import org.springblade.desk.logistics.pojo.dto.AGVCallBackDto; |
|
|
|
|
|
|
|
import org.springblade.desk.logistics.pojo.dto.BoxBindingDto; |
|
|
|
import org.springblade.desk.logistics.pojo.entity.*; |
|
|
|
import org.springblade.desk.logistics.pojo.entity.*; |
|
|
|
import org.springblade.desk.logistics.pojo.vo.AgvSchedulingTaskVO; |
|
|
|
import org.springblade.desk.logistics.pojo.vo.AgvSchedulingTaskVO; |
|
|
|
import org.springblade.desk.logistics.service.*; |
|
|
|
import org.springblade.desk.logistics.service.*; |
|
|
|
@ -22,6 +23,7 @@ import org.springblade.desk.logistics.utils.AgvTaskTypeUtil; |
|
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
import org.springframework.util.StringUtils; |
|
|
|
import org.springframework.util.StringUtils; |
|
|
|
|
|
|
|
|
|
|
|
import java.util.ArrayList; |
|
|
|
import java.util.ArrayList; |
|
|
|
import java.util.HashMap; |
|
|
|
import java.util.HashMap; |
|
|
|
import java.util.List; |
|
|
|
import java.util.List; |
|
|
|
@ -46,7 +48,6 @@ import static org.springblade.desk.logistics.pojo.entity.Station.DROPOFF_CONVEYO |
|
|
|
public class TaskExecuteRecordServiceImpl extends BaseServiceImpl<TaskExecuteRecordMapper, TaskExecuteRecord> implements ITaskExecuteRecordService { |
|
|
|
public class TaskExecuteRecordServiceImpl extends BaseServiceImpl<TaskExecuteRecordMapper, TaskExecuteRecord> implements ITaskExecuteRecordService { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Autowired |
|
|
|
@Autowired |
|
|
|
ITaskService taskService; |
|
|
|
ITaskService taskService; |
|
|
|
|
|
|
|
|
|
|
|
@ -63,6 +64,9 @@ public class TaskExecuteRecordServiceImpl extends BaseServiceImpl<TaskExecuteRe |
|
|
|
@Autowired |
|
|
|
@Autowired |
|
|
|
IVirtualShelvesService virtualShelvesService; |
|
|
|
IVirtualShelvesService virtualShelvesService; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Autowired |
|
|
|
|
|
|
|
IOrderBindService iOrderBindService; |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* AGV小车任务状态回调接口 |
|
|
|
* AGV小车任务状态回调接口 |
|
|
|
* <p> |
|
|
|
* <p> |
|
|
|
@ -190,7 +194,6 @@ public class TaskExecuteRecordServiceImpl extends BaseServiceImpl<TaskExecuteRe |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
@Override |
|
|
|
public boolean boundVirtualShelves(String virtualShelvesCode, String stationCode) { |
|
|
|
public boolean boundVirtualShelves(String virtualShelvesCode, String stationCode) { |
|
|
|
String url = "http://172.22.252.10:8181/rcms/services/rest/hikRpcService/bindPodAndBerth"; |
|
|
|
String url = "http://172.22.252.10:8181/rcms/services/rest/hikRpcService/bindPodAndBerth"; |
|
|
|
@ -360,6 +363,14 @@ public class TaskExecuteRecordServiceImpl extends BaseServiceImpl<TaskExecuteRe |
|
|
|
task.setTaskStatus(Task.STATUS_FINISHED); |
|
|
|
task.setTaskStatus(Task.STATUS_FINISHED); |
|
|
|
boolean taskUpdate = taskService.updateById(task); |
|
|
|
boolean taskUpdate = taskService.updateById(task); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
String boxBarcode = task.getBoxBarcode(); |
|
|
|
|
|
|
|
//解绑
|
|
|
|
|
|
|
|
if (boxBarcode != null && !boxBarcode.trim().isEmpty()) { |
|
|
|
|
|
|
|
BoxBindingDto boxBindingDto = new BoxBindingDto(); |
|
|
|
|
|
|
|
boxBindingDto.setBoxBarcode(boxBarcode); |
|
|
|
|
|
|
|
R ret = iOrderBindService.boxUnbind(boxBindingDto); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (taskUpdate) { |
|
|
|
if (taskUpdate) { |
|
|
|
log.info("Task状态修改成功,taskCode:{}", taskCode); |
|
|
|
log.info("Task状态修改成功,taskCode:{}", taskCode); |
|
|
|
return true; |
|
|
|
return true; |
|
|
|
@ -367,6 +378,8 @@ public class TaskExecuteRecordServiceImpl extends BaseServiceImpl<TaskExecuteRe |
|
|
|
log.error("Task状态修改失败,taskCode:{}", taskCode); |
|
|
|
log.error("Task状态修改失败,taskCode:{}", taskCode); |
|
|
|
return false; |
|
|
|
return false; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// 4. 查询目标库位信息
|
|
|
|
// 4. 查询目标库位信息
|
|
|
|
@ -383,7 +396,6 @@ public class TaskExecuteRecordServiceImpl extends BaseServiceImpl<TaskExecuteRe |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 6. 生成CTU调度任务
|
|
|
|
// 6. 生成CTU调度任务
|
|
|
|
AgvSchedulingTaskVO ctuSchedulingTask = genCtuSchedulingTask( |
|
|
|
AgvSchedulingTaskVO ctuSchedulingTask = genCtuSchedulingTask( |
|
|
|
AgvConstant.CTU_TASK_TYP, |
|
|
|
AgvConstant.CTU_TASK_TYP, |
|
|
|
@ -442,7 +454,6 @@ public class TaskExecuteRecordServiceImpl extends BaseServiceImpl<TaskExecuteRe |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
@Override |
|
|
|
public AgvSchedulingTaskVO genCtuSchedulingTask(String taskTyp, String ctnrTyp, String ctnrCode, |
|
|
|
public AgvSchedulingTaskVO genCtuSchedulingTask(String taskTyp, String ctnrTyp, String ctnrCode, |
|
|
|
String startPos, String endPos, String type) { |
|
|
|
String startPos, String endPos, String type) { |
|
|
|
@ -555,7 +566,7 @@ public class TaskExecuteRecordServiceImpl extends BaseServiceImpl<TaskExecuteRe |
|
|
|
if (null == location) { |
|
|
|
if (null == location) { |
|
|
|
log.info("根据终点位置未查询到位置信息,endPos:{}", endPos); |
|
|
|
log.info("根据终点位置未查询到位置信息,endPos:{}", endPos); |
|
|
|
log.info("不需要调再次调用AGV小车,整体任务到此结束"); |
|
|
|
log.info("不需要调再次调用AGV小车,整体任务到此结束"); |
|
|
|
|
|
|
|
log.info("进行解绑"); |
|
|
|
return true; |
|
|
|
return true; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@ -628,6 +639,7 @@ public class TaskExecuteRecordServiceImpl extends BaseServiceImpl<TaskExecuteRe |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* 生成请求唯一标识 |
|
|
|
* 生成请求唯一标识 |
|
|
|
|
|
|
|
* |
|
|
|
* @return 唯一标识 |
|
|
|
* @return 唯一标识 |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
private String generateReqCode() { |
|
|
|
private String generateReqCode() { |
|
|
|
|