3 Commits

Author SHA1 Message Date
zhouz
6db702b5cf fix:装箱区空载具搬运逻辑 2026-05-09 09:03:50 +08:00
zhouz
094d78ae45 fix:装箱区空载具搬运逻辑 2026-05-06 15:30:35 +08:00
zhouz
bf1ee590fb fix:包装关系变更校验 2026-04-17 13:51:38 +08:00
3 changed files with 48 additions and 49 deletions

View File

@@ -152,6 +152,9 @@ public class ZxDjwTask extends AbstractAcsTask {
//7.改变子卷包装状态为已装箱1
PdmBiSubpackagerelation pdmBiSubpackagerelation = subpackageRelationService
.getOne(new LambdaUpdateWrapper<PdmBiSubpackagerelation>().eq(PdmBiSubpackagerelation::getContainer_name, schBaseTask.getVehicle_code()), false);
if (!pdmBiSubpackagerelation.getStatus().equals(IOSEnum.IS_NOTANDYES.code(""))){
throw new BadRequestException("该子卷对应状态为["+pdmBiSubpackagerelation.getStatus()+"],不为生成状态,不允许进行状态变更!)");
}
pdmBiSubpackagerelation.setStatus(IOSEnum.IS_NOTANDYES.code(""));
subpackageRelationService.updateById(pdmBiSubpackagerelation);
}

View File

@@ -38,7 +38,7 @@ import java.util.stream.Collectors;
@Slf4j
@Component
@RequiredArgsConstructor
public class AutoSendVehicleToKzj extends Prun{
public class AutoSendVehicleToKzj extends Prun {
private final String THIS_CLASS = AutoSendVehicleToKzj.class.getName();
@Resource
@@ -63,7 +63,7 @@ public class AutoSendVehicleToKzj extends Prun{
try {
this.toKzjHcw();
this.sendVehicleToDjqOrGzq(IOSEnum.IS_NOTANDYES.code(""), null);
}catch (Exception ex){
} catch (Exception ex) {
log.error(ex.getMessage());
}
}
@@ -86,31 +86,29 @@ public class AutoSendVehicleToKzj extends Prun{
List<SchBaseTask> existTask = this.taskService.getExistTasks(taskTypes);
if (existTask.size() <= 1) {
List<BstIvtPackageinfoivt> empPoints = this.packageinfoivtService.selectEmpPoints(PackageInfoIvtEnum.POINT_STATUS.code("空载具缓存位"), PackageInfoIvtEnum.IVT_STATUS.code(""));
List<BstIvtPackageinfoivt> vehiclePoints = this.packageinfoivtService.selectEmpPoints(PackageInfoIvtEnum.POINT_STATUS.code("待检"), PackageInfoIvtEnum.IVT_STATUS.code("空载具"));
List<BstIvtPackageinfoivt> vehiclePoints = this.packageinfoivtService.selectEmpPoints(PackageInfoIvtEnum.POINT_STATUS.code("装箱"), PackageInfoIvtEnum.IVT_STATUS.code("空载具"));
//如果待检区没有可用的空载具
if (CollectionUtils.isEmpty(vehiclePoints)){
List<SchBaseTask> taskList = taskService.list(new LambdaQueryWrapper<SchBaseTask>()
if (CollectionUtils.isEmpty(vehiclePoints)) {
/*List<SchBaseTask> taskList = taskService.list(new LambdaQueryWrapper<SchBaseTask>()
.lt(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode())
.eq(SchBaseTask::getIs_delete, IOSEnum.IS_NOTANDYES.code("否"))
.eq(SchBaseTask::getTask_type, "010909"));
if (ObjectUtils.isEmpty(taskList)){
.eq(SchBaseTask::getTask_type, "010909"));*/
vehiclePoints = packageinfoivtService
.selectEmpPoints(PackageInfoIvtEnum.POINT_STATUS.code("装箱"), PackageInfoIvtEnum.IVT_STATUS.code("空载具"));
}
.selectEmpPoints(PackageInfoIvtEnum.POINT_STATUS.code("待检"), PackageInfoIvtEnum.IVT_STATUS.code("空载具"));
}
if (!CollectionUtils.isEmpty(empPoints) && !CollectionUtils.isEmpty(vehiclePoints) && existTask.size() < empPoints.size()) {
//增加空洞判断
//车 04 05 06
//☒☒口 ☒口☒ ☒口口:
if (existTask.size()==0 && empPoints.size() > 1 && vehiclePoints.size() > 1) {
if (existTask.size() == 0 && empPoints.size() > 1 && vehiclePoints.size() > 1) {
for (int i = 0; i < 2; i++) {
BstIvtPackageinfoivt disPoint = empPoints.get(i);
int count = packageinfoivtService.count(new QueryWrapper<BstIvtPackageinfoivt>()
.lt("sort_seq", disPoint.getSort_seq())
.eq("point_status", PackageInfoIvtEnum.POINT_STATUS.code("空载具缓存位"))
.eq("ivt_status", PackageInfoIvtEnum.IVT_STATUS.code("空载具")));
if (count>0){
log.warn("当前点位存在空洞的情况"+disPoint.getPoint_code());
if (count > 0) {
log.warn("当前点位存在空洞的情况" + disPoint.getPoint_code());
return;
}
JSONObject task = new JSONObject();
@@ -121,14 +119,14 @@ public class AutoSendVehicleToKzj extends Prun{
task.put("point_code3", disPoint.getPoint_code());
this.djqToKzjhcwTask.createTask(task);
}
}else {
} else {
BstIvtPackageinfoivt disPoint = empPoints.get(0);
int count = packageinfoivtService.count(new QueryWrapper<BstIvtPackageinfoivt>()
.lt("sort_seq", disPoint.getSort_seq())
.eq("point_status", PackageInfoIvtEnum.POINT_STATUS.code("空载具缓存位"))
.eq("ivt_status", PackageInfoIvtEnum.IVT_STATUS.code("空载具")));
if (count>0){
log.warn("当前点位存在空洞的情况"+disPoint.getPoint_code());
if (count > 0) {
log.warn("当前点位存在空洞的情况" + disPoint.getPoint_code());
return;
}
JSONObject task = new JSONObject();
@@ -196,8 +194,8 @@ public class AutoSendVehicleToKzj extends Prun{
task.put("point_code2", djqEmpList.get(0).getPoint_code());
try {
sendDjqKzjTask.createTask(task);
}catch (Exception ex){
log.error(THIS_CLASS+"任务创建失败"+ex.getMessage());
} catch (Exception ex) {
log.error(THIS_CLASS + "任务创建失败" + ex.getMessage());
}
} else {
@@ -211,8 +209,6 @@ public class AutoSendVehicleToKzj extends Prun{
}
private void getPointCode(JSONObject task, String taskType) {
List<BstIvtPackageinfoivt> packageList;
if (taskType.equals(PackageInfoIvtEnum.TASK_TYPE.code("补空(待检区->空载具缓存位)"))) {

View File

@@ -1674,7 +1674,7 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl<StIvtIostorinvOutM
jsonTaskParam.put("vehicle_code2", jsonVeExt.getString("storagevehicle_code"));
jsonTaskParam.put("table_fk", iostorinv_id);
TwoOutExceptionalTask taskBean = new TwoOutExceptionalTask();
TwoOutExceptionalTask taskBean = SpringContextHolder.getBean(TwoOutExceptionalTask.class);
String task_id = taskBean.createTask(jsonTaskParam);
taskBean.immediateNotifyAcs(task_id);