TASK: cloud、posetransfer;

This commit is contained in:
shahaibo
2025-06-16 13:44:22 +08:00
parent fd8e6fd2e8
commit 3db0a94981
10 changed files with 120 additions and 72 deletions

View File

@@ -105,6 +105,18 @@ public class DesignController {
return Response.success(designService.designCloud(cloudTaskDTO));
}
@ApiOperation(value = "云生成修改任务名")
@PostMapping("/cloudTaskNameUpdate")
public Response<Boolean> cloudTaskNameUpdate(@Valid @RequestBody CloudTaskDTO cloudTaskDTO) {
return Response.success(designService.cloudTaskNameUpdate(cloudTaskDTO));
}
@ApiOperation(value = "云生成删除任务")
@PostMapping("/cloudTaskDelete")
public Response<Boolean> cloudTaskDelete(@Valid @RequestBody CloudTaskDTO cloudTaskDTO) {
return Response.success(designService.cloudTaskDelete(cloudTaskDTO));
}
@ApiOperation(value = "云生成page")
@PostMapping("/cloudPage")
public Response<PageBaseResponse<CloudTaskVO>> cloudPage(@Valid @RequestBody CloudPageDTO cloudPageDTO) {

View File

@@ -2,6 +2,10 @@ package com.ai.da.mapper.primary;
import com.ai.da.common.config.mybatis.plus.CommonMapper;
import com.ai.da.mapper.primary.entity.CloudTask;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Update;
public interface CloudTaskMapper extends CommonMapper<CloudTask> {
@Update("UPDATE cloud_task SET completed_num = completed_num + 1, update_time = NOW() WHERE task_id = #{taskIdBatch}")
void increaseCompletedNum(@Param("taskIdBatch") String taskIdBatch);
}

View File

@@ -23,6 +23,8 @@ public class CloudTask implements Serializable {
@TableId(value = "id", type = IdType.AUTO)
private Long id;
private String name;
private Long projectId;
private Long collectionId;
@@ -44,4 +46,6 @@ public class CloudTask implements Serializable {
private LocalDateTime createTime;
private LocalDateTime updateTime;
private Long accountId;
}

View File

@@ -31,7 +31,7 @@ public class ModuleChooseVO {
private CavasModuleChooseVO canvas;
private List<CollectionSketchVO> boundingBox;
private List<PoseTransformationVO> poseTransfer;
private PoseTransferVO poseTransfer;
// private moodBoardModuleChooseVO patternMaking3D;
private SketchReconstructionVO deReconstruction;

View File

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

View File

@@ -128,4 +128,8 @@ public interface DesignService extends IService<Design> {
CloudTaskResultVO getDesignCloudResult(DesignCloudResultQuery designCloudResultQuery);
Boolean receiveDesignParams(ReceiveDesignParam receiveDesignParam);
Boolean cloudTaskNameUpdate(CloudTaskDTO cloudTaskDTO);
Boolean cloudTaskDelete(CloudTaskDTO cloudTaskDTO);
}

View File

@@ -55,7 +55,7 @@ public interface GenerateService extends IService<Generate> {
PoseTransformationVO getPoseTransformationResult(String taskId);
List<PoseTransformationVO> getPoseTransformationResultList(Long projectId);
List<PoseTransformationVO> getPoseTransformationResultList(Long projectId, boolean like);
Object disOrLikePose(Long transformedId, String likeOrDislike, Long projectId);

View File

@@ -1884,7 +1884,7 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
Long projectId = cloudTaskDTO.getProjectId();
if (null == projectId) {
Project project = new Project();
project.setName(DesignProcess.TO_PRODUCT_IMAGE.getValue());
project.setName(DesignProcess.TO_PRODUCT_IMAGE.getValue() + "_" + cloudTaskDTO.getName());
project.setProcess(DesignProcess.TO_PRODUCT_IMAGE.name());
project.setOriginal(1);
project.setAccountId(userHolder.getId());
@@ -2061,7 +2061,7 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
Long projectId = cloudTaskDTO.getProjectId();
if (null == projectId) {
Project project = new Project();
project.setName(DesignProcess.TO_PRODUCT_IMAGE.getValue());
project.setName(DesignProcess.TO_PRODUCT_IMAGE.getValue() + "_" + cloudTaskDTO.getName());
project.setProcess(DesignProcess.TO_PRODUCT_IMAGE.name());
project.setOriginal(1);
project.setAccountId(userHolder.getId());
@@ -2214,7 +2214,7 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
AuthPrincipalVo userHolder = UserContext.getUserHolder();
if (null == projectId) {
Project project = new Project();
project.setName(DesignProcess.POSE_TRANSFER.getValue());
project.setName(DesignProcess.POSE_TRANSFER.getValue() + "_" + cloudTaskDTO.getName());
project.setProcess(DesignProcess.POSE_TRANSFER.name());
project.setOriginal(1);
project.setAccountId(userHolder.getId());
@@ -2524,18 +2524,19 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
}
}else {
String taskId = (String) designBatchResult.get("task_id");
QueryWrapper<CloudTask> qw = new QueryWrapper<>();
qw.lambda().eq(CloudTask::getTaskId, taskId);
List<CloudTask> cloudTaskList = cloudTaskMapper.selectList(qw);
if (CollectionUtil.isNotEmpty(cloudTaskList)) {
CloudTask cloudTask = cloudTaskList.get(0);
if (cloudTask.getCompletedNum() == null) {
cloudTask.setCompletedNum(1);
}else {
cloudTask.setCompletedNum(cloudTask.getCompletedNum() + 1);
}
cloudTaskMapper.updateById(cloudTask);
}
// QueryWrapper<CloudTask> qw = new QueryWrapper<>();
// qw.lambda().eq(CloudTask::getTaskId, taskId);
// List<CloudTask> cloudTaskList = cloudTaskMapper.selectList(qw);
// if (CollectionUtil.isNotEmpty(cloudTaskList)) {
// CloudTask cloudTask = cloudTaskList.get(0);
// if (cloudTask.getCompletedNum() == null) {
// cloudTask.setCompletedNum(1);
// }else {
// cloudTask.setCompletedNum(cloudTask.getCompletedNum() + 1);
// }
// cloudTaskMapper.updateById(cloudTask);
// }
cloudTaskMapper.increaseCompletedNum(taskId);
Integer i = (Integer) progress;
Map<String, Object> context;
@@ -2688,6 +2689,8 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
// Set<Long> childProjectIdSet = projectService.getChildProjectIdSet(cloudPageDTO.getProjectId());
// childProjectIdSet.add(cloudPageDTO.getProjectId());
QueryWrapper<CloudTask> queryWrapper = new QueryWrapper<>();
AuthPrincipalVo userHolder = UserContext.getUserHolder();
queryWrapper.lambda().eq(CloudTask::getAccountId, userHolder.getId());
if (null != cloudPageDTO.getProjectId()) {
queryWrapper.lambda().eq(CloudTask::getProjectId, cloudPageDTO.getProjectId());
}
@@ -2928,4 +2931,16 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
return Boolean.TRUE;
}
@Override
public Boolean cloudTaskNameUpdate(CloudTaskDTO cloudTaskDTO) {
cloudTaskMapper.updateById(cloudTaskDTO);
return Boolean.TRUE;
}
@Override
public Boolean cloudTaskDelete(CloudTaskDTO cloudTaskDTO) {
cloudTaskMapper.deleteById(cloudTaskDTO.getId());
return Boolean.TRUE;
}
}

View File

@@ -1219,18 +1219,24 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
}
}
public List<PoseTransformationVO> getPoseTransformationResultList(Long projectId){
List<PoseTransformation> poseTransformations = poseTransformationMapper.selectList(new QueryWrapper<PoseTransformation>().eq("project_id", projectId).eq("is_liked", 1));
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<>();
if (poseTransformations != null && poseTransformations.size() > 1){
poseTransformations.forEach(item -> {
PoseTransformationVO poseTransformationVO = new PoseTransformationVO();
if (StringUtils.isNotBlank(item.getVideoUrl())) {
poseTransformationVO.setId(item.getId());
poseTransformationVO.setProductImage(minioUtil.getPreSignedUrl(item.getProductImage(), CommonConstant.MINIO_IMAGE_EXPIRE_TIME));
poseTransformationVO.setGifUrl(minioUtil.getPreSignedUrl(item.getGifUrl(), CommonConstant.MINIO_IMAGE_EXPIRE_TIME));
poseTransformationVO.setVideoUrl(minioUtil.getPreSignedUrl(item.getVideoUrl(), CommonConstant.MINIO_IMAGE_EXPIRE_TIME));
poseTransformationVO.setFirstFrameUrl(minioUtil.getPreSignedUrl(item.getFirstFrameUrl(), CommonConstant.MINIO_IMAGE_EXPIRE_TIME));
poseTransformationVO.setIsLiked(item.getIsLiked());
poseTransformationVO.setStatus("Success");
}else {
poseTransformationVO.setTaskId(item.getUniqueId());
poseTransformationVO.setStatus("Invalid");
}
vos.add(poseTransformationVO);
});
}
@@ -1424,21 +1430,22 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
poseTransformationMapper.updateById(poseTransformation);
String taskIdBatch = poseTransformation.getTaskIdBatch();
QueryWrapper<CloudTask> cloudTaskQueryWrapper = new QueryWrapper<>();
cloudTaskQueryWrapper.lambda().eq(CloudTask::getTaskId, taskIdBatch);
CloudTask cloudTask = cloudTaskMapper.selectOne(cloudTaskQueryWrapper);
if (Objects.nonNull(cloudTask)) {
if (cloudTask.getCompletedNum() == null) {
cloudTask.setCompletedNum(1);
}else {
cloudTask.setCompletedNum(cloudTask.getCompletedNum() + 1);
}
if (progress.equals("OK")) {
cloudTask.setStatus(1);
cloudTask.setCompletedNum(cloudTask.getNums());
}
cloudTaskMapper.updateById(cloudTask);
}
// QueryWrapper<CloudTask> cloudTaskQueryWrapper = new QueryWrapper<>();
// cloudTaskQueryWrapper.lambda().eq(CloudTask::getTaskId, taskIdBatch);
// CloudTask cloudTask = cloudTaskMapper.selectOne(cloudTaskQueryWrapper);
// if (Objects.nonNull(cloudTask)) {
// if (cloudTask.getCompletedNum() == null) {
// cloudTask.setCompletedNum(1);
// }else {
// cloudTask.setCompletedNum(cloudTask.getCompletedNum() + 1);
// }
// if (progress.equals("OK")) {
// cloudTask.setStatus(1);
// cloudTask.setCompletedNum(cloudTask.getNums());
// }
// cloudTaskMapper.updateById(cloudTask);
// }
cloudTaskMapper.increaseCompletedNum(taskIdBatch);
String key = generateResultKey + ":" + taskId;
PoseTransformationVO poseTransformationVO = new PoseTransformationVO(

View File

@@ -1806,8 +1806,12 @@ public class UserLikeGroupServiceImpl extends ServiceImpl<UserLikeGroupMapper, U
SketchReconstructionVO sketchReconstruction = generateService.getSketchReconstruction(projectDTO.getId());
moduleChooseVO.setDeReconstruction(sketchReconstruction);
}else if (module.equals(Module.poseTransfer.name())){
List<PoseTransformationVO> poseTransformationResultList = generateService.getPoseTransformationResultList(projectDTO.getId());
moduleChooseVO.setPoseTransfer(poseTransformationResultList);
List<PoseTransformationVO> likedList = generateService.getPoseTransformationResultList(projectDTO.getId(), true);
List<PoseTransformationVO> list = generateService.getPoseTransformationResultList(projectDTO.getId(), false);
PoseTransferVO vo = new PoseTransferVO();
vo.setLikedList(likedList);
vo.setList(list);
moduleChooseVO.setPoseTransfer(vo);
}else if (module.equals(Module.patternMaking3D.name())) {
QueryWrapper<ThreeDModule> qw = new QueryWrapper<>();
qw.lambda().eq(ThreeDModule::getProjectId, projectDTO.getId());
@@ -2504,21 +2508,7 @@ public class UserLikeGroupServiceImpl extends ServiceImpl<UserLikeGroupMapper, U
toProductImageResult.setUrl(url);
toProductImageResultMapper.updateById(toProductImageResult);
String taskIdBatch = toProductImageResult.getTaskIdBatch();
QueryWrapper<CloudTask> cloudTaskQueryWrapper = new QueryWrapper<>();
cloudTaskQueryWrapper.lambda().eq(CloudTask::getTaskId, taskIdBatch);
CloudTask cloudTask = cloudTaskMapper.selectOne(cloudTaskQueryWrapper);
if (Objects.nonNull(cloudTask)) {
if (cloudTask.getCompletedNum() == null) {
cloudTask.setCompletedNum(1);
}else {
cloudTask.setCompletedNum(cloudTask.getCompletedNum() + 1);
}
if (progress.equals("OK")) {
cloudTask.setStatus(1);
cloudTask.setCompletedNum(cloudTask.getNums());
}
cloudTaskMapper.updateById(cloudTask);
}
cloudTaskMapper.increaseCompletedNum(taskIdBatch);
String key = toProductImageResultKey + ":" + taskId;
String imageName = url.substring(url.lastIndexOf("/") + 1);
@@ -2554,21 +2544,22 @@ public class UserLikeGroupServiceImpl extends ServiceImpl<UserLikeGroupMapper, U
toProductImageResultMapper.updateById(toProductImageResult);
String taskIdBatch = toProductImageResult.getTaskIdBatch();
QueryWrapper<CloudTask> cloudTaskQueryWrapper = new QueryWrapper<>();
cloudTaskQueryWrapper.lambda().eq(CloudTask::getTaskId, taskIdBatch);
CloudTask cloudTask = cloudTaskMapper.selectOne(cloudTaskQueryWrapper);
if (Objects.nonNull(cloudTask)) {
if (cloudTask.getCompletedNum() == null) {
cloudTask.setCompletedNum(1);
}else {
cloudTask.setCompletedNum(cloudTask.getCompletedNum() + 1);
}
if (progress.equals("OK")) {
cloudTask.setStatus(1);
cloudTask.setCompletedNum(cloudTask.getNums());
}
cloudTaskMapper.updateById(cloudTask);
}
// QueryWrapper<CloudTask> cloudTaskQueryWrapper = new QueryWrapper<>();
// cloudTaskQueryWrapper.lambda().eq(CloudTask::getTaskId, taskIdBatch);
// CloudTask cloudTask = cloudTaskMapper.selectOne(cloudTaskQueryWrapper);
// if (Objects.nonNull(cloudTask)) {
// if (cloudTask.getCompletedNum() == null) {
// cloudTask.setCompletedNum(1);
// }else {
// cloudTask.setCompletedNum(cloudTask.getCompletedNum() + 1);
// }
// if (progress.equals("OK")) {
// cloudTask.setStatus(1);
// cloudTask.setCompletedNum(cloudTask.getNums());
// }
// cloudTaskMapper.updateById(cloudTask);
// }
cloudTaskMapper.increaseCompletedNum(taskIdBatch);
String key = relightResultKey + ":" + taskId;
String imageName = url.substring(url.lastIndexOf("/") + 1);