fix:深浅货位被锁定提示优化

This commit is contained in:
zhouz
2025-09-09 13:41:57 +08:00
parent 522abe91c7
commit 2bcaebfa14
2 changed files with 25 additions and 21 deletions

View File

@@ -460,10 +460,10 @@ public class PdmBiSubpackagerelationServiceImpl extends ServiceImpl<PdmBiSubpack
.eq("point_code1", 浅Attr.getString("struct_code")) .eq("point_code1", 浅Attr.getString("struct_code"))
.lt("task_status", TaskStatusEnum.FINISHED.getCode())); .lt("task_status", TaskStatusEnum.FINISHED.getCode()));
if (!CollectionUtils.isEmpty(list)) { if (!CollectionUtils.isEmpty(list)) {
throw new BadRequestException("当前木箱所在货位" + boxAttr.getString("struct_code") + "对应浅货位存在任务" + 浅Attr.getString("task_code")); throw new BadRequestException("当前木箱所在货位" + boxAttr.getString("struct_code") + "对应浅货位被【锁定】或【存在任务" + 浅Attr.getString("task_code"));
} }
} else { } else {
throw new BadRequestException("当前木箱所在货位" + boxAttr.getString("struct_code") + "对应浅货位存在任务" + 浅Attr.getString("task_code")); throw new BadRequestException("当前木箱所在货位" + boxAttr.getString("struct_code") + "对应浅货位被【锁定】或【存在任务" + 浅Attr.getString("task_code"));
} }
} }
} }

View File

@@ -58,7 +58,7 @@ public class TwoOutBoxTask extends AbstractAcsTask {
private IbstIvtPackageinfoivtService packageinfoivtService; private IbstIvtPackageinfoivtService packageinfoivtService;
@Autowired @Autowired
private OutBoxManageService outBoxManageService; private OutBoxManageService outBoxManageService;
@Autowired @Autowired
private IschBaseTaskService ischBaseTaskService; private IschBaseTaskService ischBaseTaskService;
@@ -88,13 +88,15 @@ public class TwoOutBoxTask extends AbstractAcsTask {
if (attr.getString("zdepth").equals(IOSEnum.ZDEPTH_STRUCT.code(""))) { if (attr.getString("zdepth").equals(IOSEnum.ZDEPTH_STRUCT.code(""))) {
JSONObject 浅Attr = attrTab JSONObject 浅Attr = attrTab
.query("zdepth = '1' and row_num = '"+attr.getString("row_num")+"' and col_num = '" + attr.getString("col_num") + "' and layer_num = '"+attr.getString("layer_num")+"'") .query("zdepth = '1' and row_num = '" + attr.getString("row_num") + "' and col_num = '" + attr.getString("col_num") + "' and layer_num = '" + attr.getString("layer_num") + "'")
.uniqueResult(0); .uniqueResult(0);
if (ObjectUtil.isEmpty(浅Attr.getString("storagevehicle_code"))){ if (ObjectUtil.isEmpty(浅Attr.getString("storagevehicle_code"))) {
if (!浅Attr.getString("lock_type").equals(IOSEnum.LOCK_TYPE.code("未锁定"))) { if (!浅Attr.getString("lock_type").equals(IOSEnum.LOCK_TYPE.code("未锁定"))) {
json.put("remark", "当前仓位对应的浅货位【" + 浅Attr.getString("struct_code") + "被锁定无法下发任务!】");
WQLObject.getWQLObject("SCH_BASE_Task").update(json);
continue; continue;
} }
}else { } else {
if (浅Attr.getString("lock_type").equals(IOSEnum.LOCK_TYPE.code("未锁定"))) { if (浅Attr.getString("lock_type").equals(IOSEnum.LOCK_TYPE.code("未锁定"))) {
// 判断浅货位木箱和深货位木箱是否相同规格 // 判断浅货位木箱和深货位木箱是否相同规格
outBoxManageService.createBoxMove(浅Attr); outBoxManageService.createBoxMove(浅Attr);
@@ -103,12 +105,14 @@ public class TwoOutBoxTask extends AbstractAcsTask {
.eq("is_delete", "0") .eq("is_delete", "0")
.eq("point_code1", 浅Attr.getString("struct_code")) .eq("point_code1", 浅Attr.getString("struct_code"))
.lt("task_status", TaskStatusEnum.FINISHED.getCode())); .lt("task_status", TaskStatusEnum.FINISHED.getCode()));
if (!CollectionUtils.isEmpty(list)){ if (!CollectionUtils.isEmpty(list)) {
json.put("remark", "当前仓位对应的浅货位【" + 浅Attr.getString("struct_code") + "有正在执行中的任务,任务完成后才能下发!】");
WQLObject.getWQLObject("SCH_BASE_Task").update(json);
continue; continue;
}else { } else {
outBoxManageService.createBoxMove(浅Attr); outBoxManageService.createBoxMove(浅Attr);
} }
}else { } else {
continue; continue;
} }
} }
@@ -154,9 +158,9 @@ public class TwoOutBoxTask extends AbstractAcsTask {
// 执行中 // 执行中
if (status.equals(TaskStatusEnum.EXECUTING.getCode())) { if (status.equals(TaskStatusEnum.EXECUTING.getCode())) {
map.put("task_status", TaskStatusEnum.EXECUTING.getCode()); map.put("task_status", TaskStatusEnum.EXECUTING.getCode());
}else if (status.equals(IOSEnum.IS_NOTANDYES.code(""))) { } else if (status.equals(IOSEnum.IS_NOTANDYES.code(""))) {
map.put("is_delete", IOSEnum.IS_NOTANDYES.code("")); map.put("is_delete", IOSEnum.IS_NOTANDYES.code(""));
}else { } else {
map.put("task_status", TaskStatusEnum.FINISHED.getCode()); map.put("task_status", TaskStatusEnum.FINISHED.getCode());
} }
map.put("update_optid", SecurityUtils.getCurrentUserId()); map.put("update_optid", SecurityUtils.getCurrentUserId());
@@ -173,13 +177,13 @@ public class TwoOutBoxTask extends AbstractAcsTask {
//更新木箱信息 //更新木箱信息
JSONObject packageInfo = packageinfoivt.query("point_code = '" + jsonTask.getString("point_code2") + "'").uniqueResult(0); JSONObject packageInfo = packageinfoivt.query("point_code = '" + jsonTask.getString("point_code2") + "'").uniqueResult(0);
packageInfo.put("ivt_status", PackageInfoIvtEnum.IVT_STATUS.code("空载具")); packageInfo.put("ivt_status", PackageInfoIvtEnum.IVT_STATUS.code("空载具"));
packageInfo.put("container_name",jsonTask.getString("vehicle_code")); packageInfo.put("container_name", jsonTask.getString("vehicle_code"));
packageinfoivt.update(packageInfo); packageinfoivt.update(packageInfo);
RedissonUtils.lock(c->{ RedissonUtils.lock(c -> {
if (status.equals(TaskStatusEnum.FINISHED.getCode())) { if (status.equals(TaskStatusEnum.FINISHED.getCode())) {
immediateNotifyAcs(null); immediateNotifyAcs(null);
} }
},"zjInBound",20,this); }, "zjInBound", 20, this);
} }
// 取消 // 取消
if (status.equals(IOSEnum.IS_NOTANDYES.code(""))) { if (status.equals(IOSEnum.IS_NOTANDYES.code(""))) {
@@ -229,10 +233,10 @@ public class TwoOutBoxTask extends AbstractAcsTask {
throw new BadRequestException("木箱号不能为空!"); throw new BadRequestException("木箱号不能为空!");
} }
String vehicle_code = form.getString("vehicle_code"); String vehicle_code = form.getString("vehicle_code");
String point_code1 = form.getString("start_device_code"); String point_code1 = form.getString("start_device_code");
JSONObject task1 = isSingleTask(point_code1); JSONObject task1 = isSingleTask(point_code1);
if ( ObjectUtil.isNotEmpty(task1)) { if (ObjectUtil.isNotEmpty(task1)) {
throw new BadRequestException("载具:"+vehicle_code+"所在点位:" + point_code1 + "存在未完成的任务:"+task1.getString("task_code")); throw new BadRequestException("载具:" + vehicle_code + "所在点位:" + point_code1 + "存在未完成的任务:" + task1.getString("task_code"));
} }
JSONObject json = new JSONObject(); JSONObject json = new JSONObject();
json.put("task_id", IdUtil.getSnowflake(1, 1).nextId()); json.put("task_id", IdUtil.getSnowflake(1, 1).nextId());
@@ -276,13 +280,13 @@ public class TwoOutBoxTask extends AbstractAcsTask {
JSONObject task3 = WQLObject.getWQLObject("SCH_BASE_Task").query("point_code3 = '" + point_code + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); JSONObject task3 = WQLObject.getWQLObject("SCH_BASE_Task").query("point_code3 = '" + point_code + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0);
JSONObject task4 = WQLObject.getWQLObject("SCH_BASE_Task").query("point_code4 = '" + point_code + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); JSONObject task4 = WQLObject.getWQLObject("SCH_BASE_Task").query("point_code4 = '" + point_code + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0);
if(ObjectUtil.isNotEmpty(task1)){ if (ObjectUtil.isNotEmpty(task1)) {
return task1; return task1;
}else if(ObjectUtil.isNotEmpty(task2)){ } else if (ObjectUtil.isNotEmpty(task2)) {
return task2; return task2;
}else if(ObjectUtil.isNotEmpty(task3)){ } else if (ObjectUtil.isNotEmpty(task3)) {
return task3; return task3;
}else if(ObjectUtil.isNotEmpty(task4)){ } else if (ObjectUtil.isNotEmpty(task4)) {
return task4; return task4;
} }