Files
aida_back/src/main/java/com/ai/da/controller/DesignController.java

131 lines
5.4 KiB
Java
Raw Normal View History

2023-01-06 15:17:37 +08:00
package com.ai.da.controller;
import com.ai.da.common.config.exception.BusinessException;
2025-04-17 16:07:50 +08:00
import com.ai.da.common.response.PageBaseResponse;
2023-01-06 15:17:37 +08:00
import com.ai.da.common.response.Response;
2025-04-17 16:07:50 +08:00
import com.ai.da.mapper.primary.entity.CloudTask;
2025-06-03 11:23:13 +08:00
import com.ai.da.mapper.primary.entity.CollectionSort;
2023-01-06 15:17:37 +08:00
import com.ai.da.model.dto.*;
2025-04-17 16:07:50 +08:00
import com.ai.da.model.vo.*;
2023-01-06 15:17:37 +08:00
import com.ai.da.service.DesignService;
2025-04-21 18:51:43 +08:00
import com.ai.da.service.UserLikeGroupService;
2023-01-06 15:17:37 +08:00
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
2025-11-25 16:46:05 +08:00
import jakarta.annotation.Resource;
import jakarta.validation.Valid;
2023-01-06 15:17:37 +08:00
import java.math.BigDecimal;
2023-11-28 15:57:32 +08:00
import java.util.List;
2023-01-06 15:17:37 +08:00
@Api(tags = "design模块")
@Slf4j
@RestController
@RequestMapping("/api/design")
public class DesignController {
@Resource
private DesignService designService;
2025-04-21 18:51:43 +08:00
@Resource
private UserLikeGroupService userLikeGroupService;
2023-01-06 15:17:37 +08:00
@ApiOperation(value = "设计 Conllection")
@PostMapping("/designCollection")
2024-02-20 10:12:44 +08:00
@CrossOrigin
2024-12-09 13:31:30 +08:00
public Response<String> designCollection(@Valid @RequestBody DesignCollectionDTO designDTO) {
2023-01-06 15:17:37 +08:00
return Response.success(designService.designCollection(designDTO));
}
2023-10-05 13:37:42 +08:00
@ApiOperation(value = "design进度条")
@GetMapping("/designProcess")
public Response<Integer> designProcess(@RequestParam("processId") String processId) {
return Response.success(designService.designProcess(processId));
}
2023-01-06 15:17:37 +08:00
@ApiOperation(value = "重新设计 Collection")
@PostMapping("/reDesignCollection")
2024-12-09 13:31:30 +08:00
public Response<String> reDesignCollection(@Valid @RequestBody ReDesignCollectionDTO reDesignDTO) {
2023-01-06 15:17:37 +08:00
return Response.success(designService.reDesignCollection(reDesignDTO));
}
2023-10-20 14:47:18 +08:00
2023-01-06 15:17:37 +08:00
@ApiOperation(value = "designItem list,刷新用")
@GetMapping("/designItemList")
public Response<DesignCollectionVO> designItemList(@ApiParam("designId") @RequestParam("designId") Long designId) {
return Response.success(designService.designItemList(designId));
}
@ApiOperation(value = "统计design进度")
@PostMapping("/countDesignProcess")
public Response<BigDecimal> countDesignProcess() {
return Response.success(designService.countDesignProcess());
}
@ApiOperation(value = "Design Like")
@PostMapping("/like")
public Response<DesignLikeVO> like(@Valid @RequestBody DesignLikeDTO designLikeDTO) {
return Response.success(designService.like(designLikeDTO));
}
@ApiOperation(value = "Design Dislike")
@PostMapping("/dislike")
public Response<Boolean> dislike(@Valid @RequestBody DisDesignLikeDTO disDesignLikeDTO) {
return Response.success(designService.dislike(disDesignLikeDTO));
}
2025-01-06 10:46:51 +08:00
@ApiOperation(value = "Design sort")
@PostMapping("/sort")
2025-06-03 11:23:13 +08:00
public Response<Boolean> sort(@Valid @RequestBody CollectionSortDTO userLikeSortDTO) {
2025-01-06 10:46:51 +08:00
return Response.success(designService.sort(userLikeSortDTO));
}
2023-11-23 15:27:01 +08:00
@ApiOperation(value = "sketchBoard upload generate design前裁剪")
@PostMapping("/sketchBoardsBoundingBox")
2024-09-27 14:42:30 +08:00
public Response<List<CollectionSketchVO>> sketchesBoundingBox(@Valid @RequestBody ReDesignCollectionDTO reDesignCollectionDTO) {
return Response.success(designService.sketchesBoundingBox(reDesignCollectionDTO));
2023-11-23 15:27:01 +08:00
}
2023-12-14 11:26:12 +08:00
@ApiOperation(value = "通过designItemId获取模特图")
@PostMapping("/getModel")
public Response<List<String>> getModel(@RequestBody List<Long> designItemIdList){
return Response.success(designService.getModel(designItemIdList));
}
2024-12-09 13:31:30 +08:00
@ApiOperation(value = "获取design结果")
@GetMapping("/getDesignResult")
public Response<DesignCollectionVO> getDesignResult(@RequestParam("requestId") String requestId, @RequestParam("objectSignList") List<String> objectSignList){
return Response.success(designService.getDesignResult(requestId, objectSignList));
}
@ApiOperation(value = "云生成")
@PostMapping("/designCloud")
2025-04-17 16:07:50 +08:00
public Response<String> designCloud(@Valid @RequestBody CloudTaskDTO cloudTaskDTO) {
return Response.success(designService.designCloud(cloudTaskDTO));
}
2025-06-16 13:44:22 +08:00
@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));
}
2025-04-17 16:07:50 +08:00
@ApiOperation(value = "云生成page")
@PostMapping("/cloudPage")
public Response<PageBaseResponse<CloudTaskVO>> cloudPage(@Valid @RequestBody CloudPageDTO cloudPageDTO) {
return Response.success(PageBaseResponse.success(designService.cloudPage(cloudPageDTO)));
}
@ApiOperation(value = "获取design云生成结果")
@PostMapping("/getDesignCloudResult")
2025-04-21 18:51:43 +08:00
public Response<CloudTaskResultVO> getDesignCloudResult(@Valid @RequestBody DesignCloudResultQuery designCloudResultQuery) {
return Response.success(designService.getDesignCloudResult(designCloudResultQuery));
}
2023-01-06 15:17:37 +08:00
}