opt:优化装箱最后一个子卷临时计数方式
This commit is contained in:
@@ -506,35 +506,39 @@ public class BstIvtPackageinfoivtServiceImpl extends ServiceImpl<BstIvtPackagein
|
|||||||
if (baseTask.getTask_type().equals(PackageInfoIvtEnum.TASK_TYPE.code("满轴缓存位->待检区")) ||
|
if (baseTask.getTask_type().equals(PackageInfoIvtEnum.TASK_TYPE.code("满轴缓存位->待检区")) ||
|
||||||
baseTask.getTask_type().equals(PackageInfoIvtEnum.TASK_TYPE.code("输送线四个点任务")) ||
|
baseTask.getTask_type().equals(PackageInfoIvtEnum.TASK_TYPE.code("输送线四个点任务")) ||
|
||||||
baseTask.getTask_type().equals(PackageInfoIvtEnum.TASK_TYPE.code("放空(空载具缓存位->输送线)"))) {
|
baseTask.getTask_type().equals(PackageInfoIvtEnum.TASK_TYPE.code("放空(空载具缓存位->输送线)"))) {
|
||||||
String pointCode;
|
if (StringUtils.isNotBlank(baseTask.getRequest_param())) {
|
||||||
|
if (baseTask.getRequest_param().equals(PackageInfoIvtEnum.TASK_ACTION_TYPE.code("取货完成"))) {
|
||||||
|
throw new BadRequestException(baseTask.getTask_code() + "取货完成失败" + ",该任务已发送过取货完成信号请勿频繁发送!");
|
||||||
|
}
|
||||||
|
}
|
||||||
//取满轴
|
//取满轴
|
||||||
if (baseTask.getTask_type().equals(PackageInfoIvtEnum.TASK_TYPE.code("满轴缓存位->待检区"))) {
|
if (baseTask.getTask_type().equals(PackageInfoIvtEnum.TASK_TYPE.code("满轴缓存位->待检区"))) {
|
||||||
//过滤未二次分配的任务
|
BstIvtPackageinfoivt ivtInfo = packageinfoivtService.getOne(new LambdaQueryWrapper<BstIvtPackageinfoivt>()
|
||||||
if (StringUtils.isBlank(baseTask.getResponse_param())) {
|
|
||||||
throw new BadRequestException("取货完成失败" + baseTask.getTask_code() + ",起点未进行二次分配!");
|
|
||||||
}
|
|
||||||
List<BstIvtPackageinfoivt> ivtList = packageinfoivtService.list(new LambdaQueryWrapper<BstIvtPackageinfoivt>()
|
|
||||||
.eq(BstIvtPackageinfoivt::getIs_used, PackageInfoIvtEnum.IS_USED.code("启用"))
|
.eq(BstIvtPackageinfoivt::getIs_used, PackageInfoIvtEnum.IS_USED.code("启用"))
|
||||||
.eq(BstIvtPackageinfoivt::getPoint_code, baseTask.getPoint_code1()));
|
.eq(BstIvtPackageinfoivt::getPoint_code, baseTask.getPoint_code1()));
|
||||||
if (CollectionUtils.isEmpty(ivtList)) {
|
if (ivtInfo == null) {
|
||||||
throw new BadRequestException("取货完成失败" + baseTask.getTask_code() + "agv取货完成的目标点位不存在!");
|
throw new BadRequestException(baseTask.getTask_code() + "取货完成或放货完成失败,目标点位:" + baseTask.getPoint_code1() + "不存在!");
|
||||||
|
}
|
||||||
|
//过滤未二次分配的任务
|
||||||
|
if (StringUtils.isBlank(baseTask.getResponse_param())) {
|
||||||
|
throw new BadRequestException(baseTask.getTask_code() + "取货完成失败" + ",起点未进行二次分配!");
|
||||||
}
|
}
|
||||||
//只有子卷号相同才能清除库存
|
//只有子卷号相同才能清除库存
|
||||||
if (baseTask.getVehicle_code().equals(ivtList.get(0).getContainer_name())) {
|
if (baseTask.getVehicle_code().equals(ivtInfo.getContainer_name())) {
|
||||||
upDateIvtOrTask(baseTask, baseTask.getPoint_code1());
|
upDateIvtOrTask(baseTask, baseTask.getPoint_code1());
|
||||||
}
|
}
|
||||||
} else if (baseTask.getTask_type().equals(PackageInfoIvtEnum.TASK_TYPE.code("输送线四个点任务")) || baseTask.getTask_type().equals(PackageInfoIvtEnum.TASK_TYPE.code("放空(空载具缓存位->输送线)"))) {
|
} else if (baseTask.getTask_type().equals(PackageInfoIvtEnum.TASK_TYPE.code("输送线四个点任务")) || baseTask.getTask_type().equals(PackageInfoIvtEnum.TASK_TYPE.code("放空(空载具缓存位->输送线)"))) {
|
||||||
pointCode = baseTask.getTask_type().equals(PackageInfoIvtEnum.TASK_TYPE.code("输送线四个点任务")) ? baseTask.getPoint_code3() : baseTask.getPoint_code1();
|
String pointCode = baseTask.getTask_type().equals(PackageInfoIvtEnum.TASK_TYPE.code("输送线四个点任务")) ? baseTask.getPoint_code3() : baseTask.getPoint_code1();
|
||||||
if (StringUtils.isBlank(baseTask.getRequest_param())) {
|
upDateIvtOrTask(baseTask, pointCode);
|
||||||
upDateIvtOrTask(baseTask, pointCode);
|
|
||||||
} else if (StringUtils.isNotBlank(baseTask.getRequest_param())) {
|
|
||||||
if (!baseTask.getRequest_param().equals(PackageInfoIvtEnum.TASK_ACTION_TYPE.code("取货完成"))) {
|
|
||||||
upDateIvtOrTask(baseTask, pointCode);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
if (StringUtils.isNotBlank(baseTask.getCar_no())) {
|
||||||
|
if (baseTask.getCar_no().equals(PackageInfoIvtEnum.TASK_ACTION_TYPE.code("放货完成"))) {
|
||||||
|
throw new BadRequestException(baseTask.getTask_code() + "放货完成失败" + ",该任务已发送过放货完成信号请勿频繁发送!");
|
||||||
|
}
|
||||||
|
}
|
||||||
//放货任务
|
//放货任务
|
||||||
List<BstIvtPackageinfoivt> ivtList = packageinfoivtService.list(new LambdaQueryWrapper<BstIvtPackageinfoivt>()
|
List<BstIvtPackageinfoivt> ivtList = packageinfoivtService.list(new LambdaQueryWrapper<BstIvtPackageinfoivt>()
|
||||||
.eq(BstIvtPackageinfoivt::getIs_used, PackageInfoIvtEnum.IS_USED.code("启用"))
|
.eq(BstIvtPackageinfoivt::getIs_used, PackageInfoIvtEnum.IS_USED.code("启用"))
|
||||||
@@ -548,7 +552,12 @@ public class BstIvtPackageinfoivtServiceImpl extends ServiceImpl<BstIvtPackagein
|
|||||||
.set("container_name", baseTask.getVehicle_code())
|
.set("container_name", baseTask.getVehicle_code())
|
||||||
.set("ivt_status", PackageInfoIvtEnum.IVT_STATUS.code("有子卷"))
|
.set("ivt_status", PackageInfoIvtEnum.IVT_STATUS.code("有子卷"))
|
||||||
.eq("point_code", baseTask.getPoint_code2()));
|
.eq("point_code", baseTask.getPoint_code2()));
|
||||||
log.info("一楼装箱区二次放货分配" + baseTask.getTask_code() + ",放货完成执行成功,放货信息:点位:" + baseTask.getPoint_code2() + "子卷号为:" + baseTask.getVehicle_code());
|
//标记任务放货完成
|
||||||
|
UpdateWrapper<SchBaseTask> updateWrapper1 = new UpdateWrapper<>();
|
||||||
|
updateWrapper1.eq("task_id", baseTask.getTask_id());
|
||||||
|
updateWrapper1.set("car_no", PackageInfoIvtEnum.TASK_ACTION_TYPE.code("放货完成"));
|
||||||
|
taskService.update(updateWrapper1);
|
||||||
|
log.info("一楼装箱区二次放货完成" + baseTask.getTask_code() + ",放货完成执行成功,放货信息:点位:" + baseTask.getPoint_code2() + "子卷号为:" + baseTask.getVehicle_code());
|
||||||
} else {
|
} else {
|
||||||
throw new BadRequestException("该点位已有库存!");
|
throw new BadRequestException("该点位已有库存!");
|
||||||
}
|
}
|
||||||
@@ -560,19 +569,27 @@ public class BstIvtPackageinfoivtServiceImpl extends ServiceImpl<BstIvtPackagein
|
|||||||
* 取货完成更新点位或任务标识
|
* 取货完成更新点位或任务标识
|
||||||
*/
|
*/
|
||||||
private void upDateIvtOrTask(SchBaseTask baseTask, String pointCode) {
|
private void upDateIvtOrTask(SchBaseTask baseTask, String pointCode) {
|
||||||
|
//清空起点库存状态
|
||||||
UpdateWrapper<BstIvtPackageinfoivt> updateWrapper = new UpdateWrapper<>();
|
UpdateWrapper<BstIvtPackageinfoivt> updateWrapper = new UpdateWrapper<>();
|
||||||
updateWrapper.eq("point_code", pointCode);
|
updateWrapper.eq("point_code", pointCode);
|
||||||
updateWrapper.set("ivt_status", "0");
|
updateWrapper.set("ivt_status", "0");
|
||||||
updateWrapper.set("container_name", null);
|
updateWrapper.set("container_name", null);
|
||||||
//清空起点库存状态
|
|
||||||
bstIvtPackageinfoivtMapper.update(null, updateWrapper);
|
bstIvtPackageinfoivtMapper.update(null, updateWrapper);
|
||||||
log.info("一楼装箱区二次分配清空起点库存" + baseTask.getTask_code() + ",执行成功,点位:" + pointCode + "子卷号:" + baseTask.getVehicle_code());
|
//标记agv取满轴或四个点或两个点放满轴任务取空载具完成
|
||||||
//标记agv取满轴或四个点或两个点任务取空载具完成
|
|
||||||
UpdateWrapper<SchBaseTask> updateWrapper1 = new UpdateWrapper<>();
|
UpdateWrapper<SchBaseTask> updateWrapper1 = new UpdateWrapper<>();
|
||||||
updateWrapper1.eq("task_id", baseTask.getTask_id());
|
updateWrapper1.eq("task_id", baseTask.getTask_id());
|
||||||
updateWrapper1.set("request_param", PackageInfoIvtEnum.TASK_ACTION_TYPE.code("取货完成"));
|
updateWrapper1.set("request_param", PackageInfoIvtEnum.TASK_ACTION_TYPE.code("取货完成"));
|
||||||
taskService.update(updateWrapper1);
|
taskService.update(updateWrapper1);
|
||||||
log.info("一楼装箱区二次分配取货完成" + baseTask.getTask_code() + ",取货完成信号接收成功,点位:" + pointCode + "子卷号:" + baseTask.getVehicle_code());
|
if (baseTask.getTask_type().equals(PackageInfoIvtEnum.TASK_TYPE.code("满轴缓存位->待检区"))) {
|
||||||
|
log.info("一楼装箱区满轴缓存位->待检区二次分配清空库存" + baseTask.getTask_code() + ",执行成功,点位:" + pointCode + "子卷号:" + baseTask.getVehicle_code());
|
||||||
|
log.info("一楼装箱区满轴缓存位->待检区二次分配取货完成" + baseTask.getTask_code() + ",取货完成信号接收成功,点位:" + pointCode + "子卷号:" + baseTask.getVehicle_code());
|
||||||
|
} else if (baseTask.getTask_type().equals(PackageInfoIvtEnum.TASK_TYPE.code("输送线四个点任务"))) {
|
||||||
|
log.info("一楼装箱区输送线四个点任务二次分配清空库存" + baseTask.getTask_code() + ",执行成功,点位:" + pointCode + "子卷号:" + baseTask.getVehicle_code());
|
||||||
|
log.info("一楼装箱区输送线四个点任务二次分配取货完成" + baseTask.getTask_code() + ",取货完成信号接收成功,点位:" + pointCode + "子卷号:" + baseTask.getVehicle_code());
|
||||||
|
} else if (baseTask.getTask_type().equals(PackageInfoIvtEnum.TASK_TYPE.code("放空(空载具缓存位->输送线)"))) {
|
||||||
|
log.info("一楼放空(空载具缓存位->输送线)装箱区二次分配清空库存" + baseTask.getTask_code() + ",执行成功,点位:" + pointCode + "子卷号:" + baseTask.getVehicle_code());
|
||||||
|
log.info("一楼放空(空载具缓存位->输送线)装箱区二次分配取货完成" + baseTask.getTask_code() + ",取货完成信号接收成功,点位:" + pointCode + "子卷号:" + baseTask.getVehicle_code());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user