TASK:to product\relight的结果分like 没like返回

This commit is contained in:
2025-07-07 16:34:22 +08:00
parent e92bb0c7cd
commit 9af1bc867a
6 changed files with 69 additions and 59 deletions

View File

@@ -25,8 +25,8 @@ public class ModuleChooseVO {
private List<CollectionElementVO> sketchBoard; private List<CollectionElementVO> sketchBoard;
// private moodBoardModuleChooseVO mannequin; // private moodBoardModuleChooseVO mannequin;
private DesignModuleChooseVO design; private DesignModuleChooseVO design;
private List<ToProductImageResultVO> toProduct; private ToProductOrRelightVO toProduct;
private List<ToProductImageResultVO> relight; private ToProductOrRelightVO relight;
private CavasModuleChooseVO canvas; private CavasModuleChooseVO canvas;

View File

@@ -0,0 +1,11 @@
package com.ai.da.model.vo;
import lombok.Data;
import java.util.List;
@Data
public class ToProductOrRelightVO {
private List<ToProductImageResultVO> likedList;
private List<ToProductImageResultVO> list;
}

View File

@@ -1,8 +0,0 @@
package com.ai.da.model.vo;
import com.ai.da.mapper.primary.entity.UserLike;
import lombok.Data;
@Data
public class ToProductVO extends UserLike {
}

View File

@@ -596,7 +596,11 @@ public class DesignItemServiceImpl extends ServiceImpl<DesignItemMapper, DesignI
if (!designSingleIncludeLayersDTO.getIsPreview()){ if (!designSingleIncludeLayersDTO.getIsPreview()){
updateUserLikeDate(designSingleIncludeLayersDTO.getDesignItemId(),designSingleIncludeLayersDTO.getTimeZone()); updateUserLikeDate(designSingleIncludeLayersDTO.getDesignItemId(),designSingleIncludeLayersDTO.getTimeZone());
// 更新项目更新时间 // 更新项目更新时间
projectService.modifyProjectUpdateTime(designSingleIncludeLayersDTO.getProjectId()); if (Objects.nonNull(designSingleIncludeLayersDTO.getProjectId())){
projectService.modifyProjectUpdateTime(designSingleIncludeLayersDTO.getProjectId());
}else {
log.error("design single projectId传入空值导致项目修改时间没有更新");
}
}else { }else {
updateUserLikeConvertStatus(designSingleIncludeLayersDTO.getDesignItemId(),designSingleIncludeLayersDTO.getTimeZone()); updateUserLikeConvertStatus(designSingleIncludeLayersDTO.getDesignItemId(),designSingleIncludeLayersDTO.getTimeZone());
} }

View File

@@ -634,7 +634,7 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
times = 1; times = 1;
} }
} else if (generateThroughImageTextDTO.getLevel1Type().equals(SKETCH_BOARD.getRealName())) { } else if (generateThroughImageTextDTO.getLevel1Type().equals(SKETCH_BOARD.getRealName())) {
creditsEventsEnum = CreditsEventsEnum.LOCAL_TEXT2IMG; creditsEventsEnum = CreditsEventsEnum.SKETCH_BOARD;
if (!StringUtil.isNullOrEmpty(generateThroughImageTextDTO.getModelName()) && generateThroughImageTextDTO.getModelName().equals("high")){ if (!StringUtil.isNullOrEmpty(generateThroughImageTextDTO.getModelName()) && generateThroughImageTextDTO.getModelName().equals("high")){
creditsEventsEnum = CreditsEventsEnum.LOCAL_TEXT2IMG_HIGH; creditsEventsEnum = CreditsEventsEnum.LOCAL_TEXT2IMG_HIGH;
times = 1; times = 1;

View File

@@ -1932,60 +1932,49 @@ public class UserLikeGroupServiceImpl extends ServiceImpl<UserLikeGroupMapper, U
vo.setBeenPublished(beenPublished); vo.setBeenPublished(beenPublished);
vo.setPortfolioDTO(portfolioDTO); vo.setPortfolioDTO(portfolioDTO);
moduleChooseVO.setCanvas(vo); moduleChooseVO.setCanvas(vo);
}else if (module.equals(Module.toProduct.name())) { }else if (module.equals(Module.toProduct.name()) || module.equals(Module.relight.name())) {
Long projectId = projectDTO.getId(); Long projectId = projectDTO.getId();
// UserLikeGroup userLikeGroup = getByProjectId(projectDTO.getId()); String resultType = module.equals(Module.toProduct.name()) ? "ToProductImage" : "Relight";
// Long userLikeGroupId = userLikeGroup.getId();
// 查询所有结果(包括喜欢和不喜欢的)
QueryWrapper<ToProductImageResult> qw = new QueryWrapper<>(); QueryWrapper<ToProductImageResult> qw = new QueryWrapper<>();
// qw.lambda().eq(ToProductImageResult::getIsLike, 1); qw.lambda()
qw.lambda().eq(ToProductImageResult::getProjectId, projectId); .eq(ToProductImageResult::getProjectId, projectId)
qw.lambda().eq(ToProductImageResult::getResultType, "ToProductImage"); .eq(ToProductImageResult::getResultType, resultType);
List<ToProductImageResult> toProductImageResults = toProductImageResultMapper.selectList(qw);
for (ToProductImageResult toProductImageResult : toProductImageResults) { List<ToProductImageResult> allResults = toProductImageResultMapper.selectList(qw);
toProductImageResult.setUrl(getMinioUrl(toProductImageResult.getUrl()));
} // 准备返回对象
List<ToProductImageResultVO> toProductImageResultVOS = CopyUtil.copyList(toProductImageResults, ToProductImageResultVO.class); ToProductOrRelightVO resultVO = new ToProductOrRelightVO();
for (ToProductImageResultVO toProductImageResultVO : toProductImageResultVOS) {
if (toProductImageResultVO.getElementType().equals("ProductElement")) { // 处理URL转换和分类
ToProductElement toProductElement = toProductElementMapper.selectById(toProductImageResultVO.getElementId()); List<ToProductImageResultVO> likedList = new ArrayList<>();
toProductImageResultVO.setSourceUrl(getMinioUrl(toProductElement.getUrl())); List<ToProductImageResultVO> normalList = new ArrayList<>();
}else if ((toProductImageResultVO.getElementType().equals("DesignOutfit"))) {
TDesignPythonOutfit tDesignPythonOutfit = designPythonOutfitMapper.selectById(toProductImageResultVO.getElementId()); for (ToProductImageResult result : allResults) {
toProductImageResultVO.setSourceUrl(getMinioUrl(tDesignPythonOutfit.getDesignUrl())); // 转换URL
}else { result.setUrl(getMinioUrl(result.getUrl()));
ToProductImageResult toProductImageResult1 = toProductImageResultMapper.selectById(toProductImageResultVO.getElementId()); // 复制到VO对象
toProductImageResultVO.setSourceUrl(getMinioUrl(toProductImageResult1.getUrl())); ToProductImageResultVO vo = CopyUtil.copyObject(result, ToProductImageResultVO.class);
// 设置sourceUrl
setSourceUrl(vo);
// 按isLike分类
if (result.getIsLike() != null && result.getIsLike() == 1) {
likedList.add(vo);
} else {
normalList.add(vo);
} }
} }
moduleChooseVO.setToProduct(toProductImageResultVOS); // 设置结果
}else if (module.equals(Module.relight.name())) { resultVO.setLikedList(likedList);
Long projectId = projectDTO.getId(); resultVO.setList(normalList);
// UserLikeGroup userLikeGroup = getByProjectId(projectDTO.getId());
// Long userLikeGroupId = userLikeGroup.getId();
QueryWrapper<ToProductImageResult> qw = new QueryWrapper<>(); // 根据模块设置返回结果
// qw.lambda().eq(ToProductImageResult::getIsLike, 1); if (module.equals(Module.toProduct.name())) {
qw.lambda().eq(ToProductImageResult::getProjectId, projectId); moduleChooseVO.setToProduct(resultVO);
qw.lambda().eq(ToProductImageResult::getResultType, "Relight"); } else {
List<ToProductImageResult> toProductImageResults = toProductImageResultMapper.selectList(qw); moduleChooseVO.setRelight(resultVO);
for (ToProductImageResult toProductImageResult : toProductImageResults) {
toProductImageResult.setUrl(getMinioUrl(toProductImageResult.getUrl()));
} }
List<ToProductImageResultVO> toProductImageResultVOS = CopyUtil.copyList(toProductImageResults, ToProductImageResultVO.class);
for (ToProductImageResultVO toProductImageResultVO : toProductImageResultVOS) {
if (toProductImageResultVO.getElementType().equals("ProductElement")) {
ToProductElement toProductElement = toProductElementMapper.selectById(toProductImageResultVO.getElementId());
toProductImageResultVO.setSourceUrl(getMinioUrl(toProductElement.getUrl()));
}else if ((toProductImageResultVO.getElementType().equals("DesignOutfit"))) {
TDesignPythonOutfit tDesignPythonOutfit = designPythonOutfitMapper.selectById(toProductImageResultVO.getElementId());
toProductImageResultVO.setSourceUrl(getMinioUrl(tDesignPythonOutfit.getDesignUrl()));
}else {
ToProductImageResult toProductImageResult1 = toProductImageResultMapper.selectById(toProductImageResultVO.getElementId());
toProductImageResultVO.setSourceUrl(getMinioUrl(toProductImageResult1.getUrl()));
}
}
moduleChooseVO.setRelight(toProductImageResultVOS);
}else if (module.equals(Module.deReconstruction.name())){ }else if (module.equals(Module.deReconstruction.name())){
SketchReconstructionVO sketchReconstruction = generateService.getSketchReconstruction(projectDTO.getId()); SketchReconstructionVO sketchReconstruction = generateService.getSketchReconstruction(projectDTO.getId());
moduleChooseVO.setDeReconstruction(sketchReconstruction); moduleChooseVO.setDeReconstruction(sketchReconstruction);
@@ -2061,6 +2050,20 @@ public class UserLikeGroupServiceImpl extends ServiceImpl<UserLikeGroupMapper, U
return null; return null;
} }
// 提取出的公共方法
private void setSourceUrl(ToProductImageResultVO vo) {
if (vo.getElementType().equals("ProductElement")) {
ToProductElement element = toProductElementMapper.selectById(vo.getElementId());
vo.setSourceUrl(getMinioUrl(element.getUrl()));
} else if (vo.getElementType().equals("DesignOutfit")) {
TDesignPythonOutfit outfit = designPythonOutfitMapper.selectById(vo.getElementId());
vo.setSourceUrl(getMinioUrl(outfit.getDesignUrl()));
} else {
ToProductImageResult result = toProductImageResultMapper.selectById(vo.getElementId());
vo.setSourceUrl(getMinioUrl(result.getUrl()));
}
}
private CollectionElementRelModel getCollectionElementRelModel(Long id) { private CollectionElementRelModel getCollectionElementRelModel(Long id) {
QueryWrapper<CollectionElementRelModel> qw = new QueryWrapper<>(); QueryWrapper<CollectionElementRelModel> qw = new QueryWrapper<>();
qw.lambda().eq(CollectionElementRelModel::getCollectionElementId, id); qw.lambda().eq(CollectionElementRelModel::getCollectionElementId, id);