This commit is contained in:
2023-02-19 14:27:56 +08:00
parent 74e662d547
commit 637c7ba45f

View File

@@ -396,30 +396,30 @@ public class InstructionServiceImpl implements InstructionService, ApplicationAu
}
if (startdevice.getDeviceDriver() instanceof EmptyVehicleStackingPositionDeviceDriver) {
logServer.createInstInfo("创建指令", task_code, start_device_code, next_device_code, "开始创建取叠盘架指令~");
log.info("创建指令:任务号:{},起点:{},终点:{},message:{}",task_code,start_device_code,next_device_code,"开始创建取叠盘架指令~");
log.info("创建指令:任务号:{},起点:{},终点:{},message:{}", task_code, start_device_code, next_device_code, "开始创建取叠盘架指令~");
emptyVehicleStackingPositionDeviceDriver = (EmptyVehicleStackingPositionDeviceDriver) startdevice.getDeviceDriver();
//已经生成指令得取空托盘数量
Integer emptyNum = taskService.queryStartNum(dto.getStart_device_code(), dto.getNext_device_code());
log.info("创建指令:任务号:{},起点:{},终点:{},message:{}",task_code,start_device_code,next_device_code,"查询到同一起点任务已经生成指令的搬运托盘的数量为:" + emptyNum);
log.info("创建指令:任务号:{},起点:{},终点:{},message:{}", task_code, start_device_code, next_device_code, "查询到同一起点任务已经生成指令的搬运托盘的数量为:" + emptyNum);
logServer.createInstInfo("创建指令", task_code, start_device_code, next_device_code, "查询到同一起点任务已经生成指令的搬运托盘的数量为:" + emptyNum);
//当前任务取得空托盘数量
Integer now_need_emptypallet_num = Integer.parseInt(taskService.findByCode(dto.getTask_code()).getEmptypallet_num());
log.info("创建指令:任务号:{},起点:{},终点:{},message:{}",task_code,start_device_code,next_device_code,"当前任务需要搬运空托盘数量:" + now_need_emptypallet_num);
log.info("创建指令:任务号:{},起点:{},终点:{},message:{}", task_code, start_device_code, next_device_code, "当前任务需要搬运空托盘数量:" + now_need_emptypallet_num);
logServer.createInstInfo("创建指令", task_code, start_device_code, next_device_code, "当前任务需要搬运空托盘数量:" + now_need_emptypallet_num);
//当前叠盘架有空托盘数量
int now_number = emptyVehicleStackingPositionDeviceDriver.getNumber();
log.info("创建指令:任务号:{},起点:{},终点:{},message:{}",task_code,start_device_code,next_device_code,"当前叠盘架上空托盘数量为:" + now_number);
log.info("创建指令:任务号:{},起点:{},终点:{},message:{}", task_code, start_device_code, next_device_code, "当前叠盘架上空托盘数量为:" + now_number);
logServer.createInstInfo("创建指令", task_code, start_device_code, next_device_code, "当前叠盘架上空托盘数量为:" + now_number);
if (now_number == 0) {
log.error("创建指令:任务号:{},起点:{},终点:{},message:{}",task_code,start_device_code,next_device_code,"当前叠盘架:" + dto.getStart_device_code() + "叠盘数为0");
log.error("创建指令:任务号:{},起点:{},终点:{},message:{}", task_code, start_device_code, next_device_code, "当前叠盘架:" + dto.getStart_device_code() + "叠盘数为0");
throw new BadRequestException("当前叠盘架:" + dto.getStart_device_code() + "叠盘数为0");
}
//判断从第几层取
int i = now_number - now_need_emptypallet_num - emptyNum + 1;
log.info("创建指令:任务号:{},起点:{},终点:{},message:{}",task_code,start_device_code,next_device_code,"该任务需要从第:" + i + "层取,即当前叠盘架上空托盘数量" + now_number + "-当前任务需要搬运的托盘数量" + now_need_emptypallet_num + "-已经生成指令的同一起点的托盘数量" + emptyNum + "+ 1");
log.info("创建指令:任务号:{},起点:{},终点:{},message:{}", task_code, start_device_code, next_device_code, "该任务需要从第:" + i + "层取,即当前叠盘架上空托盘数量" + now_number + "-当前任务需要搬运的托盘数量" + now_need_emptypallet_num + "-已经生成指令的同一起点的托盘数量" + emptyNum + "+ 1");
logServer.createInstInfo("创建指令", task_code, start_device_code, next_device_code, "该任务需要从第:" + i + "层取,即当前叠盘架上空托盘数量" + now_number + "-当前任务需要搬运的托盘数量" + now_need_emptypallet_num + "-已经生成指令的同一起点的托盘数量" + emptyNum + "+ 1");
if (i <= 0) {
log.error("创建指令:任务号:{},起点:{},终点:{},message:{}",task_code,start_device_code,next_device_code,"当前叠盘架:" + dto.getStart_device_code() + "叠盘数为0");
log.error("创建指令:任务号:{},起点:{},终点:{},message:{}", task_code, start_device_code, next_device_code, "当前叠盘架:" + dto.getStart_device_code() + "叠盘数为0");
throw new BadRequestException("当前叠盘架:" + dto.getStart_device_code() + "叠盘数为0");
}
dto.setStart_device_code(start_device_code + "." + i);
@@ -427,26 +427,26 @@ public class InstructionServiceImpl implements InstructionService, ApplicationAu
dto.setStart_point_code(start_device_code + "." + i);
}
if (nextdevice.getDeviceDriver() instanceof EmptyVehicleStackingPositionDeviceDriver) {
log.info("创建指令:任务号:{},起点:{},终点:{},message:{}",task_code,start_device_code,next_device_code,"开始创建放叠盘架指令~");
log.info("创建指令:任务号:{},起点:{},终点:{},message:{}", task_code, start_device_code, next_device_code, "开始创建放叠盘架指令~");
logServer.createInstInfo("创建指令", task_code, start_device_code, next_device_code, "开始创建放叠盘架指令~");
emptyVehicleStackingPositionDeviceDriver = (EmptyVehicleStackingPositionDeviceDriver) startdevice.getDeviceDriver();
//已经生成指令得放空托盘数量
Integer emptyNum = taskService.queryEndNum(dto.getStart_device_code(), dto.getNext_device_code());
log.info("创建指令:任务号:{},起点:{},终点:{},message:{}",task_code,start_device_code,next_device_code,"查询到同一终点任务已经生成指令的搬运托盘的数量为:" + emptyNum);
log.info("创建指令:任务号:{},起点:{},终点:{},message:{}", task_code, start_device_code, next_device_code, "查询到同一终点任务已经生成指令的搬运托盘的数量为:" + emptyNum);
logServer.createInstInfo("创建指令", task_code, start_device_code, next_device_code, "查询到同一终点任务已经生成指令的搬运托盘的数量为:" + emptyNum);
//当前任务放空托盘数量
Integer now_need_emptypallet_num = Integer.parseInt(taskService.findByCode(dto.getTask_code()).getEmptypallet_num());
log.info("创建指令:任务号:{},起点:{},终点:{},message:{}",task_code,start_device_code,next_device_code,"当前任务需要放空托盘数量:" + now_need_emptypallet_num);
log.info("创建指令:任务号:{},起点:{},终点:{},message:{}", task_code, start_device_code, next_device_code, "当前任务需要放空托盘数量:" + now_need_emptypallet_num);
logServer.createInstInfo("创建指令", task_code, start_device_code, next_device_code, "当前任务需要放空托盘数量:" + now_need_emptypallet_num);
//当前叠盘架有空托盘数量
int now_number = emptyVehicleStackingPositionDeviceDriver.getNumber();
log.info("创建指令:任务号:{},起点:{},终点:{},message:{}",task_code,start_device_code,next_device_code,"当前放叠盘架上空托盘数量为:" + now_number);
log.info("创建指令:任务号:{},起点:{},终点:{},message:{}", task_code, start_device_code, next_device_code, "当前放叠盘架上空托盘数量为:" + now_number);
logServer.createInstInfo("创建指令", task_code, start_device_code, next_device_code, "当前放叠盘架上空托盘数量为:" + now_number);
int i = now_number + emptyNum + 1;
logServer.createInstInfo("创建指令", task_code, start_device_code, next_device_code, "该任务需要从第:" + i + "层放,即当前叠盘架上空托盘数量" + now_number + "-已经生成指令的同一终点的托盘数量" + emptyNum + "+ 1");
//判断当前放叠盘架位置叠盘数量+已经生成指令的需要搬运的叠盘数量是否大于最大叠盘数量
if (i - 1 + now_need_emptypallet_num > 12) {
log.error("创建指令:任务号:{},起点:{},终点:{},message:{}",task_code,start_device_code,next_device_code,"该任务需要放的托盘数量加原有的托盘数量之和大于叠盘架最大数量!");
log.error("创建指令:任务号:{},起点:{},终点:{},message:{}", task_code, start_device_code, next_device_code, "该任务需要放的托盘数量加原有的托盘数量之和大于叠盘架最大数量!");
logServer.createInstInfo("创建指令", task_code, start_device_code, next_device_code, "该任务需要放的托盘数量加原有的托盘数量之和大于叠盘架最大数量!");
throw new BadRequestException("当前叠盘架:" + dto.getStart_device_code() + "超出最大叠盘数量!");
}
@@ -470,6 +470,7 @@ public class InstructionServiceImpl implements InstructionService, ApplicationAu
}
}
} catch (Exception e) {
log.error("下发agv任务出现异常,异常原因{}", e.getMessage());
dto.setSend_status("2");
e.printStackTrace();
}