BUGFIX: 1、还未生成出结果但是没有失败的pose transfer需返回taskID

This commit is contained in:
2025-07-14 19:17:21 +08:00
parent e95444266b
commit f4b22fe874

View File

@@ -318,7 +318,7 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
}
ToProductImageResult toProductImageResult = toProductImageResults.get(0);
toProductImageResult.setUrl(url);
toProductImageResult.setResultType("Success");
toProductImageResult.setTaskStatus("Success");
// toProductImageResult.setResultType("ToProductImage");
toProductImageResultMapper.updateById(toProductImageResult);
@@ -1235,15 +1235,15 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
poseTransformation.setUniqueId(taskId);
poseTransformation.setProductImage(productImage);
poseTransformation.setPoseId(poseId);
poseTransformation.setIsLiked((byte) 1);
poseTransformation.setIsLiked((byte) 0);
String taskStatus = flag ? "Executing" : "Fail";
poseTransformation.setTaskStatus(taskStatus);
poseTransformation.setCreateTime(LocalDateTime.now());
poseTransformationMapper.insert(poseTransformation);
// 当需要默认like
ToProductImageResultVO toProductImageResultVO = new ToProductImageResultVO();
if (Objects.nonNull(poseTransformDTO.getIsDefaultLike()) && poseTransformDTO.getIsDefaultLike()) {
// 满足条件下添加到like
poseTransformation.setIsLiked((byte) 1);
Integer sort = addPoseTransferLike(poseTransformDTO, poseTransformation.getId());
Integer reSort = userLikeGroupService.rearrangeChildSort(poseTransformation.getId(), CollectionType.POSE_TRANSFORM.getValue(),
poseTransformDTO.getParentId(), poseTransformDTO.getUserLikeSortId());
@@ -1251,6 +1251,7 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
} else if (Objects.nonNull(poseTransformDTO.getIsDefaultLike()) && Objects.nonNull(poseTransformDTO.getParentId())) {
toProductImageResultVO.setParentId(poseTransformDTO.getParentId());
}
poseTransformationMapper.insert(poseTransformation);
if (flag) {
// 6、添加预扣除积分到redis
@@ -1371,7 +1372,8 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
}
public List<PoseTransformationVO> getPoseTransformationResultList(Long projectId, boolean like) {
List<PoseTransformation> poseTransformations = poseTransformationMapper.selectList(new QueryWrapper<PoseTransformation>().eq("project_id", projectId).eq("is_liked", like ? 1 : 0));
List<PoseTransformation> poseTransformations = poseTransformationMapper.selectList(new QueryWrapper<PoseTransformation>().eq("project_id", projectId)
.eq("is_liked", like ? 1 : 0).ne("task_status", "Fail"));
List<PoseTransformationVO> vos = new ArrayList<>();
// if (poseTransformations != null && poseTransformations.size() > 1){
if (!CollectionUtils.isEmpty(poseTransformations)) {
@@ -1403,20 +1405,22 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
}
// 添加有效数据到结果列表
if (!"Invalid".equals(poseTransformationVO.getStatus()) && !"Failed".equals(poseTransformationVO.getStatus())) {
if (!"Invalid".equals(poseTransformationVO.getStatus()) && !"Fail".equals(poseTransformationVO.getStatus())) {
vos.add(poseTransformationVO);
}
} else {
// 处理Redis中没有缓存的情况
poseTransformationVO = CopyUtil.copyObject(item, PoseTransformationVO.class);
// todo 面对没有生成成功的情况 如何处理?
if (StringUtil.isNullOrEmpty(item.getVideoUrl())) {
continue;
}
poseTransformationVO.setTaskId(taskId);
poseTransformationVO.setProductImage(
minioUtil.getPreSignedUrl(item.getProductImage(), CommonConstant.MINIO_IMAGE_EXPIRE_TIME));
// todo 面对没有生成结束的情况返回taskId
if (StringUtil.isNullOrEmpty(item.getVideoUrl())) {
vos.add(poseTransformationVO);
continue;
}
// 处理各种URL
processUrl(poseTransformationVO.getGifUrl(), url ->
poseTransformationVO.setGifUrl(minioUtil.getPreSignedUrl(url, CommonConstant.MINIO_IMAGE_EXPIRE_TIME)));