wcs报重复入库后,wms更改任务状态为已发生 2. 工站配置更新改为可更新多列

This commit is contained in:
bo.wu@finesys.com.cn 2025-07-18 13:12:51 +08:00
parent 06d99038cd
commit b80ed591c9
2 changed files with 45 additions and 12 deletions

View File

@ -402,6 +402,12 @@ public class KateWorkQueryController {
.set(stationConfigQuery.getOrderQuantity() != null && stationConfigQuery.getOrderQuantity() > 0, WorkStationConfig::getOrderQuantity, stationConfigQuery.getOrderQuantity()) .set(stationConfigQuery.getOrderQuantity() != null && stationConfigQuery.getOrderQuantity() > 0, WorkStationConfig::getOrderQuantity, stationConfigQuery.getOrderQuantity())
.set(StringUtils.isNotEmpty(stationConfigQuery.getWorkStation()), WorkStationConfig::getWorkStation, stationConfigQuery.getWorkStation()) .set(StringUtils.isNotEmpty(stationConfigQuery.getWorkStation()), WorkStationConfig::getWorkStation, stationConfigQuery.getWorkStation())
.set(stationConfigQuery.getStartDateAdjust() != null, WorkStationConfig::getStartDateAdjust, stationConfigQuery.getStartDateAdjust()) .set(stationConfigQuery.getStartDateAdjust() != null, WorkStationConfig::getStartDateAdjust, stationConfigQuery.getStartDateAdjust())
.set(StringUtils.isNotEmpty(stationConfigQuery.getBigBox()), WorkStationConfig::getBigBox, stationConfigQuery.getBigBox())
.set(StringUtils.isNotEmpty(stationConfigQuery.getModel()), WorkStationConfig::getModel, stationConfigQuery.getModel())
.set(StringUtils.isNotEmpty(stationConfigQuery.getSmallBox()), WorkStationConfig::getSmallBox, stationConfigQuery.getSmallBox())
.set(StringUtils.isNotEmpty(stationConfigQuery.getVehicle()), WorkStationConfig::getVehicle, stationConfigQuery.getVehicle())
.set(StringUtils.isNotEmpty(stationConfigQuery.getVehicleLocation()), WorkStationConfig::getVehicleLocation, stationConfigQuery.getVehicleLocation())
.set(StringUtils.isNotEmpty(stationConfigQuery.getWorkCenter()), WorkStationConfig::getWorkCenter, stationConfigQuery.getWorkCenter())
.eq(WorkStationConfig::getConfigId, stationConfigQuery.getConfigId())); .eq(WorkStationConfig::getConfigId, stationConfigQuery.getConfigId()));
if (updateResult) { if (updateResult) {
logger.info("更新更新工站配置成功。"); logger.info("更新更新工站配置成功。");

View File

@ -1035,20 +1035,47 @@ public class WmsJobServiceImplements implements IWmsJobService {
} }
standStackerTaskBakService.saveBatch(needSaveRecords); standStackerTaskBakService.saveBatch(needSaveRecords);
} else { } else {
// String msg = result.getMessage();
// if(StringUtils.isNotEmpty(msg)){
// //查看错误信息是否包含特定字符串请勿重复
// //任务:2825070213024217917514325621790001 已存在,请勿重复
// if (msg.contains("请勿重复")) {
// 截取字符串从冒号":"至空格的字符串
// String taskGroup = msg.substring(msg.indexOf(":") + 1, msg.indexOf(" "));
// // 更新任务状态为1
// taskService.update(new LambdaUpdateWrapper<Task>()
// .set(Task::getTaskStatus, WmsTaskStatus.WAIT.getCode())
// .eq(Task::getTaskGroup, taskGroup)
// .eq(Task::getTaskStatus, WmsTaskStatus.NEW.getCode()));
// logger.info("发送拣选出库任务错误,已处理改为已发送:{}", convertJsonString(result));
// return;
// }
// }
// 判断returnData的数据 // 判断returnData的数据
if (result.getReturnData() != null) { if (result.getReturnData() != null) {
List<WcsTaskRequest> errorTasks = JSON.parseArray(result.getReturnData().toString(), WcsTaskRequest.class); List<WcsTaskRequest> errorTasks = JSON.parseArray(result.getReturnData().toString(), WcsTaskRequest.class);
if (!errorTasks.isEmpty()) { if (!errorTasks.isEmpty()) {
List<String> failedTaskIds = errorTasks.stream().map(WcsTaskRequest::getTaskId).distinct().toList(); List<String> failedTaskIds = errorTasks.stream().map(WcsTaskRequest::getTaskId).distinct().toList();
if(Objects.equals(ResponseCode.WARNING.getCode(), result.getCode())){
taskService.update(new LambdaUpdateWrapper<Task>()
.set(Task::getTaskStatus, WmsTaskStatus.WAIT.getCode())
.in(Task::getTaskGroup, failedTaskIds)
.eq(Task::getTaskStatus, WmsTaskStatus.NEW.getCode()));
logger.info("发送拣选出库任务错误,已处理改为已发送:{}", convertJsonString(result));
return;
}else {
// 更新任务状态为异常 // 更新任务状态为异常
taskService.update(new LambdaUpdateWrapper<Task>() taskService.update(new LambdaUpdateWrapper<Task>()
.set(Task::getTaskStatus, WmsTaskStatus.EXCEPTION.getCode()) .set(Task::getTaskStatus, WmsTaskStatus.EXCEPTION.getCode())
.in(Task::getTaskGroup, failedTaskIds) .in(Task::getTaskGroup, failedTaskIds)
.eq(Task::getTaskStatus, WmsTaskStatus.NEW.getCode())); .eq(Task::getTaskStatus, WmsTaskStatus.NEW.getCode()));
} }
} }
logger.error("发送拣选出库任务错误:{}", convertJsonString(result));
} }
logger.error("发送拣选出库任务错误,{}", convertJsonString(result));
}
} }
} else { } else {
logger.error("WCS发送任务地址为空。"); logger.error("WCS发送任务地址为空。");