TASK: 默认不like时,不要将元素添加到父元素子集但是要返回parentId

This commit is contained in:
2025-07-09 12:10:10 +08:00
parent 1dc6c6f8c4
commit 9f548d299b
2 changed files with 39 additions and 14 deletions

View File

@@ -1244,11 +1244,13 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
ArrayList<PoseTransformationVO> poseTransformationVOS = new ArrayList<>();
for (String taskId : taskIdList){
String type = resolveModelType(taskId, CreditsEventsEnum.POSE_TRANSFORMATION.getValue());
PoseTransformation poseTransformation = poseTransformationMapper.selectOne(new QueryWrapper<PoseTransformation>().eq("unique_id", taskId));
String key = generateResultKey + ":" + taskId;
String resultJson = redisUtil.getFromString(key);
PoseTransformationVO poseTransformationVO;
if (!StringUtil.isNullOrEmpty(resultJson)){
PoseTransformationVO poseTransformationVO = new Gson().fromJson(redisUtil.getFromString(key), PoseTransformationVO.class);
poseTransformationVO = new Gson().fromJson(redisUtil.getFromString(key), PoseTransformationVO.class);
if (poseTransformationVO.getStatus().equals("Success") && !type.equals("wx")){
// 处理各种URL
processUrl(poseTransformationVO.getGifUrl(), url ->
@@ -1259,18 +1261,27 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
poseTransformationVO.setFirstFrameUrl(minioUtil.getPreSignedUrl(url, CommonConstant.MINIO_IMAGE_EXPIRE_TIME)));
}
poseTransformationVO.setResultType(CollectionType.POSE_TRANSFORM.getValue());
Long parentId = userLikeGroupService.getParentIdByElementIdAndElementType(poseTransformationVO.getId(), CollectionType.POSE_TRANSFORM.getValue());
poseTransformationVO.setParentId(parentId);
poseTransformationVOS.add(poseTransformationVO);
} else if(type.equals("wx")){
poseTransformationVOS.add(getAnimateResult(taskId));
poseTransformationVO = getAnimateResult(taskId);
} else {
poseTransformationVOS.add(new PoseTransformationVO(taskId, "Executing"));
poseTransformationVO = new PoseTransformationVO(taskId, "Executing");
}
ToProductImageResult productResultByPath = getProductResultByPath(poseTransformation.getProductImage());
if (Objects.nonNull(productResultByPath)){
Long parentId = userLikeGroupService.getParentIdByElementIdAndElementType(productResultByPath.getId(), CollectionType.TO_PRODUCT_IMAGE.getValue());
poseTransformationVO.setParentId(parentId);
}
poseTransformationVOS.add(poseTransformationVO);
}
return poseTransformationVOS;
}
private ToProductImageResult getProductResultByPath(String minioPath){
QueryWrapper<ToProductImageResult> qw = new QueryWrapper<>();
qw.lambda().eq(ToProductImageResult::getUrl, minioPath);
return toProductImageResultMapper.selectOne(qw);
}
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<PoseTransformationVO> vos = new ArrayList<>();
@@ -1926,8 +1937,6 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
if (!StringUtil.isNullOrEmpty(poseTransformation.getFirstFrameUrl())){
poseTransformationVO.setFirstFrameUrl(minioUtil.getPreSignedUrl(poseTransformation.getFirstFrameUrl(), CommonConstant.MINIO_IMAGE_EXPIRE_TIME));
}
Long parentId = userLikeGroupService.getParentIdByElementIdAndElementType(poseTransformation.getId(), CollectionType.POSE_TRANSFORM.getValue());
poseTransformationVO.setParentId(parentId);
// 执行积分扣除
Long accountId = poseTransformation.getAccountId();
Boolean flag = creditsService.taskCreditsDeduction(accountId, taskId);

View File

@@ -501,7 +501,7 @@ public class UserLikeGroupServiceImpl extends ServiceImpl<UserLikeGroupMapper, U
}else if (Objects.nonNull(toProductImageDTO.getIsDefaultLike()) && Objects.nonNull(toProductImageVO.getParentId())){
toProductImageResult.setParentId(toProductImageVO.getParentId());
// 默认不添加到like,但是需要有parentId,所以这里添加到collectionSort表中
designService.addCollectionSort(toProductImageResult.getId(), CollectionType.TO_PRODUCT_IMAGE.getValue(), toProductImageDTO.getProjectId(), toProductImageVO.getParentId());
// designService.addCollectionSort(toProductImageResult.getId(), CollectionType.TO_PRODUCT_IMAGE.getValue(), toProductImageDTO.getProjectId(), toProductImageVO.getParentId());
}
result.add(toProductImageResult);
}else {
@@ -555,7 +555,7 @@ public class UserLikeGroupServiceImpl extends ServiceImpl<UserLikeGroupMapper, U
}else if (Objects.nonNull(toProductImageDTO.getIsDefaultLike()) && Objects.nonNull(toProductImageVO.getParentId())){
toProductImageResult.setParentId(toProductImageVO.getParentId());
// 默认不添加到like,但是需要有parentId,所以这里添加到collectionSort表中
designService.addCollectionSort(toProductImageResult.getId(), CollectionType.TO_PRODUCT_IMAGE.getValue(), toProductImageDTO.getProjectId(), toProductImageVO.getParentId());
// designService.addCollectionSort(toProductImageResult.getId(), CollectionType.TO_PRODUCT_IMAGE.getValue(), toProductImageDTO.getProjectId(), toProductImageVO.getParentId());
}
result.add(toProductImageResult);
}
@@ -842,15 +842,31 @@ public class UserLikeGroupServiceImpl extends ServiceImpl<UserLikeGroupMapper, U
if (toProductImageResult.getElementType().equals("ProductElement")) {
ToProductElement toProductElement = toProductElementMapper.selectById(toProductImageResult.getElementId());
magicToolResultVO.setSourceUrl(minioUtil.getPreSignedUrl(toProductElement.getUrl(), 24 * 60));
Long parentId = getParentIdByElementIdAndElementType(toProductImageResult.getElementId(), toProductImageResult.getElementType());
magicToolResultVO.setParentId(parentId);
} else if (toProductImageResult.getElementType().equals("DesignOutfit")){
TDesignPythonOutfit tDesignPythonOutfit = designPythonOutfitMapper.selectById(toProductImageResult.getElementId());
magicToolResultVO.setSourceUrl(minioUtil.getPreSignedUrl(tDesignPythonOutfit.getDesignUrl(), 24 * 60));
QueryWrapper<UserLike> userLikeQueryWrapper = new QueryWrapper<>();
userLikeQueryWrapper.lambda().eq(UserLike::getDesignOutfitId, tDesignPythonOutfit.getId());
List<UserLike> userLikeList = userLikeMapper.selectList(userLikeQueryWrapper);
if (!CollectionUtils.isEmpty(userLikeList)) {
UserLike userLike = userLikeList.get(0);
Long parentId = getParentIdByElementIdAndElementType(userLike.getId(), toProductImageResult.getElementType());
magicToolResultVO.setParentId(parentId);
}
} else if (toProductImageResult.getElementType().equals("ToProductImage")){
ToProductImageResult toProductImage = toProductImageResultMapper.selectById(toProductImageResult.getElementId());
magicToolResultVO.setSourceUrl(minioUtil.getPreSignedUrl(toProductImage.getUrl(), 24 * 60));
}
Long parentId = getParentIdByElementIdAndElementType(toProductImageResult.getId(), toProductImageResult.getResultType());
Long parentId = getParentIdByElementIdAndElementType(toProductImageResult.getElementId(), toProductImageResult.getElementType());
magicToolResultVO.setParentId(parentId);
}
// Long parentId = getParentIdByElementIdAndElementType(toProductImageResult.getId(), toProductImageResult.getResultType());
// magicToolResultVO.setParentId(parentId);
return magicToolResultVO;
}
@@ -1160,7 +1176,7 @@ public class UserLikeGroupServiceImpl extends ServiceImpl<UserLikeGroupMapper, U
}else if (Objects.nonNull(toProductImageDTO.getIsDefaultLike()) && Objects.nonNull(toProductImageVO.getParentId())){
toProductImageResult.setParentId(toProductImageVO.getParentId());
// 默认不添加到like,但是需要有parentId,所以这里添加到collectionSort表中
designService.addCollectionSort(toProductImageResult.getId(), CollectionType.RELIGHT.getValue(), toProductImageDTO.getProjectId(), toProductImageVO.getParentId());
// designService.addCollectionSort(toProductImageResult.getId(), CollectionType.RELIGHT.getValue(), toProductImageDTO.getProjectId(), toProductImageVO.getParentId());
}
result.add(toProductImageResult);
}else {
@@ -1204,7 +1220,7 @@ public class UserLikeGroupServiceImpl extends ServiceImpl<UserLikeGroupMapper, U
}else if (Objects.nonNull(toProductImageDTO.getIsDefaultLike()) && Objects.nonNull(toProductImageVO.getParentId())){
toProductImageResult.setParentId(toProductImageVO.getParentId());
// 默认不添加到like,但是需要有parentId,所以这里添加到collectionSort表中
designService.addCollectionSort(toProductImageResult.getId(), CollectionType.RELIGHT.getValue(), toProductImageDTO.getProjectId(), toProductImageVO.getParentId());
// designService.addCollectionSort(toProductImageResult.getId(), CollectionType.RELIGHT.getValue(), toProductImageDTO.getProjectId(), toProductImageVO.getParentId());
}
result.add(toProductImageResult);
}