1、修改batchOperation
This commit is contained in:
@@ -4039,11 +4039,77 @@ public class TaskServiceImpl implements ITaskService {
|
||||
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
||||
return SdmResponse.failed("新建任务:" + task.getTaskName() + "的文件夹失败,原因:" + taskCreateDirResponse.getMessage());
|
||||
}
|
||||
}else {
|
||||
// 查询原来的任务是否有文件夹
|
||||
GetFileBaseInfoReq getFileBaseInfoReq = new GetFileBaseInfoReq();
|
||||
getFileBaseInfoReq.setUuid(taskId);
|
||||
log.info("调用获取文件的基本信息的参数为:{}",getFileBaseInfoReq);
|
||||
SdmResponse<FileMetadataInfoResp> fileBaseInfo = dataClientFeignClient.getFileBaseInfo(getFileBaseInfoReq);
|
||||
log.info("调用获取文件的基本信息的返回值为:{}",fileBaseInfo);
|
||||
if (fileBaseInfo.isSuccess() && ObjectUtils.isNotEmpty(fileBaseInfo.getData())) {
|
||||
log.info("当前任务:{},已创建过文件夹",taskId);
|
||||
}else {
|
||||
log.info("当前任务:{},没有创建过文件夹,进行创建,兼容原来的逻辑",taskId);
|
||||
String maxNonEmptyTag = getMaxNonEmptyTag(spdmBatchTaskOprTagReq);
|
||||
log.info("maxNonEmptyTag为:{}",maxNonEmptyTag);
|
||||
if (StringUtils.isBlank(maxNonEmptyTag)) {
|
||||
log.error("新建任务:{}的文件夹失败,原因为:{}", task.getTaskName(), "未查询到任务上层节点");
|
||||
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
||||
return SdmResponse.failed("新建任务:" + task.getTaskName() + "的文件夹失败,原因:" + "未查询到任务上层节点");
|
||||
}
|
||||
SdmResponse taskCreateDirResponse = createDirNew(task.getUuid(), NodeTypeEnum.TASK.getValue(), maxNonEmptyTag, task.getTaskName());
|
||||
if (ObjectUtils.isEmpty(taskCreateDirResponse) || taskCreateDirResponse.getCode() != ResultCode.SUCCESS.getCode()) {
|
||||
log.error("新建任务:{}的文件夹失败,原因为:{}", task.getTaskName(), taskCreateDirResponse.getMessage());
|
||||
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
||||
return SdmResponse.failed("新建任务:" + task.getTaskName() + "的文件夹失败,原因:" + taskCreateDirResponse.getMessage());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return SdmResponse.success();
|
||||
}
|
||||
|
||||
/**
|
||||
* 返回 tag 数字最大的不为空的值
|
||||
* @param req SpdmBatchTaskOprTagReq 对象
|
||||
* @return 最大编号的非空 tag 值,无则返回 null
|
||||
*/
|
||||
public static String getMaxNonEmptyTag(SpdmBatchTaskOprTagReq req) {
|
||||
// 空对象校验
|
||||
if (req == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
// 按编号从大到小检查,找到第一个非空值立即返回
|
||||
if (StringUtils.isNotBlank(req.getTag8())) {
|
||||
return req.getTag8();
|
||||
}
|
||||
if (StringUtils.isNotBlank(req.getTag7())) {
|
||||
return req.getTag7();
|
||||
}
|
||||
if (StringUtils.isNotBlank(req.getTag6())) {
|
||||
return req.getTag6();
|
||||
}
|
||||
if (StringUtils.isNotBlank(req.getTag5())) {
|
||||
return req.getTag5();
|
||||
}
|
||||
if (StringUtils.isNotBlank(req.getTag4())) {
|
||||
return req.getTag4();
|
||||
}
|
||||
if (StringUtils.isNotBlank(req.getTag3())) {
|
||||
return req.getTag3();
|
||||
}
|
||||
if (StringUtils.isNotBlank(req.getTag2())) {
|
||||
return req.getTag2();
|
||||
}
|
||||
if (StringUtils.isNotBlank(req.getTag1())) {
|
||||
return req.getTag1();
|
||||
}
|
||||
|
||||
// 所有 tag 都为空
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 返回不同字段的最大tag
|
||||
@@ -4057,13 +4123,13 @@ public class TaskServiceImpl implements ITaskService {
|
||||
if (spdmBatchTaskOprReq == null || spdmBatchTaskOprTagReq == null) {
|
||||
throw new IllegalArgumentException("比较的对象不能为null");
|
||||
}
|
||||
// 倒序遍历(10到1),找到第一个不同的直接返回
|
||||
if (!equalsWithNull(spdmBatchTaskOprReq.getTag10(), spdmBatchTaskOprTagReq.getTag10())) {
|
||||
return spdmBatchTaskOprReq.getTag10();
|
||||
}
|
||||
if (!equalsWithNull(spdmBatchTaskOprReq.getTag9(), spdmBatchTaskOprTagReq.getTag9())) {
|
||||
return spdmBatchTaskOprReq.getTag9();
|
||||
}
|
||||
// 倒序遍历(8到1),找到第一个不同的直接返回
|
||||
// if (!equalsWithNull(spdmBatchTaskOprReq.getTag10(), spdmBatchTaskOprTagReq.getTag10())) {
|
||||
// return spdmBatchTaskOprReq.getTag10();
|
||||
// }
|
||||
// if (!equalsWithNull(spdmBatchTaskOprReq.getTag9(), spdmBatchTaskOprTagReq.getTag9())) {
|
||||
// return spdmBatchTaskOprReq.getTag9();
|
||||
// }
|
||||
if (!equalsWithNull(spdmBatchTaskOprReq.getTag8(), spdmBatchTaskOprTagReq.getTag8())) {
|
||||
return spdmBatchTaskOprReq.getTag8();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user