fix: 防止横移多次请求

This commit is contained in:
2025-05-06 17:17:04 +08:00
parent e6331956be
commit ac957794a6

View File

@@ -1678,19 +1678,18 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
if ("3".equals(type)) {
// task_jo托盘到out的任务|剩余轴回库
String product_area = task_jo.getString("product_area");
// 如果有下发的取轴桁架任务,则跳过
// List<SchBaseTask> list = taskService.list(new LambdaQueryWrapper<SchBaseTask>()
// .eq(SchBaseTask::getProduct_area, product_area)
// .eq(SchBaseTask::getIs_delete, "0")
// .ne(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode())
// .eq(SchBaseTask::getTask_type, "010606")
// .gt(SchBaseTask::getTask_status, TaskStatusEnum.SURE_START.getCode()));
// if (list.size() > 0) {
// return result;
// }
//判断对应的内包间区域是否启用
JSONObject pack_jo = WQLObject.getWQLObject("st_ivt_shaftivt").query("point_type = '9' AND product_area = '" + product_area + "'").uniqueResult(0);
if ((task_jo.getString("task_type").equals("010401") || task_jo.getString("task_type").equals("010409")) && pack_jo.getString("is_used").equals("1")) {
// 判断是否存在in点的任务
JSONObject haveTask = WQLObject.getWQLObject("sch_base_task")
.query("point_code2 = '" + product_area + "_FQSS_IN' AND is_delete = '0' AND task_status < '07' AND task_status > '04'").uniqueResult(0);
// 防止多次请求
if (ObjectUtil.isNotEmpty(haveTask)) {
result.put("message", "反馈成功-多次请求!");
return result;
}
String vehicle_code = task_jo.getString("vehicle_code2");
log.info("内包间托盘{}正在执行横移完毕操作!", vehicle_code);
// 托盘属性
@@ -1801,16 +1800,19 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
// 判断当前托盘区域位置与当前即将套轴的位置是否一致,一致则等待
if (RenUtils.isOpenTzArea(product_area) && !need_wait) {
log.info("判断当前托盘区域位置与当前即将套轴的位置是否一致");
JSONObject tggw_jo = WQLObject.getWQLObject("st_ivt_shaftivt").query("point_type = '4' AND product_area = '" + product_area + "'").uniqueResult(0);
if (ObjectUtil.isEmpty(tggw_jo.getString("container_name1"))) {
return need_wait;
}
PdmBiSlittingproductionplan plan = slittingproductionplanService.getByContainerName(tggw_jo.getString("container_name1"));
// 查询设备
StIvtCutpointivt device = cutpointivtService.getPintByExtCode(plan.getResource_name(), false);
if (device.getPoint_location().equals(point_location)) {
need_wait = true;
need_wait = false;
} else {
PdmBiSlittingproductionplan plan = slittingproductionplanService.getByContainerName(tggw_jo.getString("container_name1"));
// 查询设备
StIvtCutpointivt device = cutpointivtService.getPintByExtCode(plan.getResource_name(), false);
if (device.getPoint_location().equals(point_location)) {
need_wait = true;
}
}
// 如果有取轴任务,则不回去。
if (!need_wait) {
List<SchBaseTask> gxTasks = taskService.getAllTaskByTypeAndLtStatus("010606", "07", product_area, false);