|
|
|
|
@ -12,15 +12,11 @@ import com.shkj.common.utils.DateUtils; |
|
|
|
|
import com.shkj.wcs.bo.AGVFeedbackBo; |
|
|
|
|
import com.shkj.wcs.bo.AGVFeedbackDepBo; |
|
|
|
|
import com.shkj.wcs.bo.ExtraData; |
|
|
|
|
import com.shkj.wcs.bo.WcsPlcPropertyQueryBo; |
|
|
|
|
import com.shkj.wcs.domain.BusinDataTask; |
|
|
|
|
import com.shkj.wcs.domain.WcsPlcProperty; |
|
|
|
|
import com.shkj.wcs.mapper.BusinDataTaskMapper; |
|
|
|
|
import com.shkj.wcs.mapper.WcsPlcPropertyMapper; |
|
|
|
|
import com.shkj.wcs.plc.PlcEventTask; |
|
|
|
|
import com.shkj.wcs.service.IBusinDataTaskService; |
|
|
|
|
import com.shkj.wcs.service.IBusinTaskService; |
|
|
|
|
import com.shkj.wcs.service.IWcsPlcPropertyService; |
|
|
|
|
import com.shkj.wcs.third.rcs.CounterService; |
|
|
|
|
import com.shkj.wcs.third.rcs.RCSUtil; |
|
|
|
|
import com.shkj.wcs.third.rcs.dto.CarrierInfoList; |
|
|
|
|
@ -28,17 +24,13 @@ import com.shkj.wcs.third.rcs.dto.RcsCancelTaskDto; |
|
|
|
|
import com.shkj.wcs.third.rcs.dto.RcsCreateTaskDto; |
|
|
|
|
import com.shkj.wcs.third.rcs.dto.RcsIdList; |
|
|
|
|
import com.shkj.wcs.third.rcs.enums.RCSOperation; |
|
|
|
|
import com.shkj.wcs.third.rcs.enums.RCSTaskTypeEnum; |
|
|
|
|
import com.shkj.wcs.third.rcs.vo.RcsResponseVo; |
|
|
|
|
import com.shkj.wcs.third.workbinWcs.WCSUtil; |
|
|
|
|
import com.shkj.wcs.third.workbinWcs.dto.*; |
|
|
|
|
import com.shkj.wcs.vo.WcsPlcConnectVo; |
|
|
|
|
import com.shkj.wcs.vo.WcsResponseVo; |
|
|
|
|
import com.shkj.wms.enums.MapEnum; |
|
|
|
|
import com.shkj.wms.enums.TaskStatusEnum; |
|
|
|
|
import com.shkj.wms.enums.TaskTypeEnum; |
|
|
|
|
import com.shkj.wms.enums.WayEnum; |
|
|
|
|
import com.shkj.wms.utils.JsonUtil; |
|
|
|
|
import lombok.extern.slf4j.Slf4j; |
|
|
|
|
import org.apache.ibatis.exceptions.TooManyResultsException; |
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
|
|
@ -101,7 +93,7 @@ public class BusinDataTaskServiceImpl extends ServiceImpl<BusinDataTaskMapper, B |
|
|
|
|
|
|
|
|
|
LambdaQueryWrapper<BusinDataTask> lqwDataTask1 = new LambdaQueryWrapper<BusinDataTask>() |
|
|
|
|
.eq(BusinDataTask::getTaskCode, taskId) |
|
|
|
|
.in(BusinDataTask::getTaskStatus, TaskStatusEnum.wait_put.getValue(), TaskStatusEnum.wait_callback.getValue()); |
|
|
|
|
.ne(BusinDataTask::getTaskStatus,TaskStatusEnum.clean.getValue()); |
|
|
|
|
BusinDataTask one1 = this.getOne(lqwDataTask1); |
|
|
|
|
if (dataChange.equals("1")) { |
|
|
|
|
if (one != null) { |
|
|
|
|
@ -109,8 +101,8 @@ public class BusinDataTaskServiceImpl extends ServiceImpl<BusinDataTaskMapper, B |
|
|
|
|
return WcsResponseVo.error(500, "该托盘" + trayCode + "存在未完成的任务"); |
|
|
|
|
} |
|
|
|
|
if (one1 != null) { |
|
|
|
|
log.info("该任务id" + taskId + "存在未完成的任务"); |
|
|
|
|
return WcsResponseVo.error(500, "该任务id" + taskId + "存在未完成的任务"); |
|
|
|
|
log.info("该任务id" + taskId + "重复推送"); |
|
|
|
|
return WcsResponseVo.error(500, "该任务id" + taskId + "重复推送"); |
|
|
|
|
} |
|
|
|
|
BusinDataTask businDataTask = new BusinDataTask(); |
|
|
|
|
businDataTask.setTaskCode(taskId); |
|
|
|
|
@ -138,12 +130,12 @@ public class BusinDataTaskServiceImpl extends ServiceImpl<BusinDataTaskMapper, B |
|
|
|
|
businDataTask.setTaskStatus(TaskStatusEnum.wait_callback.getValue()); |
|
|
|
|
businDataTask.setTaskStarttime(DateUtils.getNowDate()); |
|
|
|
|
iBusinDataTaskService.updateById(businDataTask); |
|
|
|
|
if (fromBinCode.equals("SC-G2-00-00-2003")) { |
|
|
|
|
Boolean aBoolean = plcEventTask.plcExecWrite(2); |
|
|
|
|
if (!aBoolean) { |
|
|
|
|
return WcsResponseVo.error(200, "接受成功但给plc回传任务失败"); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
// if (fromBinCode.equals("SC-G2-00-00-2003")) {
|
|
|
|
|
// Boolean aBoolean = plcEventTask.plcExecWrite(2);
|
|
|
|
|
// if (!aBoolean) {
|
|
|
|
|
// return WcsResponseVo.error(200, "接受成功但给plc回传任务失败");
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
}else{ |
|
|
|
|
return WcsResponseVo.error(500, "任务存储失败"); |
|
|
|
|
} |
|
|
|
|
@ -157,7 +149,8 @@ public class BusinDataTaskServiceImpl extends ServiceImpl<BusinDataTaskMapper, B |
|
|
|
|
if(one.getTaskStatus().equals(TaskStatusEnum.wait_callback.getValue())){ |
|
|
|
|
RcsCancelTaskDto rcsCancelTaskDto = new RcsCancelTaskDto(); |
|
|
|
|
rcsCancelTaskDto.setRobotTaskCode(taskId); |
|
|
|
|
rcsCancelTaskDto.setCancelType("DROP"); |
|
|
|
|
rcsCancelTaskDto.setCancelType("cancel"); |
|
|
|
|
rcsCancelTaskDto.setReason("上游取消"); |
|
|
|
|
Result result = rcsUtil.rcsTaskCancel(rcsCancelTaskDto); |
|
|
|
|
if (!Result.isOk(result)) { |
|
|
|
|
one.setExceptionMsg(WayEnum.agv_task_cancel.getValue()); |
|
|
|
|
@ -188,8 +181,8 @@ public class BusinDataTaskServiceImpl extends ServiceImpl<BusinDataTaskMapper, B |
|
|
|
|
slotName = "SC-G2-00-00-43022"; |
|
|
|
|
} |
|
|
|
|
LambdaQueryWrapper<BusinDataTask> queryWrapper = new LambdaQueryWrapper<BusinDataTask>() |
|
|
|
|
.eq(BusinDataTask::getTaskCode, robotTaskCode); |
|
|
|
|
// .eq(BusinDataTask::getContainerCode, carrierCode);
|
|
|
|
|
.eq(BusinDataTask::getTaskCode, robotTaskCode) |
|
|
|
|
.eq(BusinDataTask::getTaskStatus, TaskStatusEnum.wait_callback.getValue()); |
|
|
|
|
BusinDataTask businDataTask; |
|
|
|
|
try { |
|
|
|
|
businDataTask = iBusinDataTaskService.getOne(queryWrapper, true); |
|
|
|
|
|