2023-01-06 15:17:37 +08:00
|
|
|
package com.ai.da.controller;
|
|
|
|
|
|
2024-03-27 13:28:48 +08:00
|
|
|
import cn.hutool.core.collection.CollectionUtil;
|
2023-10-31 14:07:43 +08:00
|
|
|
import com.ai.da.common.config.exception.BusinessException;
|
2023-01-06 15:17:37 +08:00
|
|
|
import com.ai.da.common.context.UserContext;
|
|
|
|
|
import com.ai.da.common.response.PageBaseResponse;
|
|
|
|
|
import com.ai.da.common.response.Response;
|
|
|
|
|
import com.ai.da.common.utils.CopyUtil;
|
2023-10-18 16:51:08 +08:00
|
|
|
import com.ai.da.common.utils.MinioUtil;
|
2024-01-19 16:36:34 +08:00
|
|
|
import com.ai.da.mapper.primary.TDesignPythonOutfitMapper;
|
2024-06-12 09:47:55 +08:00
|
|
|
import com.ai.da.mapper.primary.entity.*;
|
2023-01-06 15:17:37 +08:00
|
|
|
import com.ai.da.model.dto.*;
|
|
|
|
|
import com.ai.da.model.vo.*;
|
|
|
|
|
import com.ai.da.service.*;
|
2024-06-12 09:47:55 +08:00
|
|
|
import com.alibaba.fastjson.JSONObject;
|
2023-01-06 15:17:37 +08:00
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
|
|
import com.google.common.base.Function;
|
|
|
|
|
import io.swagger.annotations.Api;
|
|
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
|
|
import io.swagger.annotations.ApiParam;
|
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
|
import org.springframework.util.CollectionUtils;
|
|
|
|
|
import org.springframework.util.StringUtils;
|
|
|
|
|
import org.springframework.web.bind.annotation.*;
|
2024-06-12 09:47:55 +08:00
|
|
|
import org.springframework.web.multipart.MultipartFile;
|
2023-01-06 15:17:37 +08:00
|
|
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
|
import javax.validation.Valid;
|
2025-03-20 16:46:13 +08:00
|
|
|
import java.io.IOException;
|
2024-03-27 13:28:48 +08:00
|
|
|
import java.util.*;
|
2023-01-06 15:17:37 +08:00
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Api(tags = "History模块(saved Collection)")
|
|
|
|
|
@Slf4j
|
|
|
|
|
@RestController
|
|
|
|
|
@RequestMapping("/api/history")
|
|
|
|
|
public class SavedCollectionController {
|
|
|
|
|
@Resource
|
|
|
|
|
private UserLikeGroupService userLikeGroupService;
|
|
|
|
|
@Resource
|
|
|
|
|
private UserLikeService userLikeService;
|
|
|
|
|
@Resource
|
|
|
|
|
private AccountService accountService;
|
2023-10-18 16:51:08 +08:00
|
|
|
@Resource
|
2023-12-11 10:52:42 +08:00
|
|
|
private TDesignPythonOutfitMapper designPythonOutfitMapper;
|
|
|
|
|
@Resource
|
2023-10-18 16:51:08 +08:00
|
|
|
private MinioUtil minioUtil;
|
2024-03-27 13:28:48 +08:00
|
|
|
@Resource
|
|
|
|
|
private ClassificationService classificationService;
|
2024-07-04 11:34:51 +08:00
|
|
|
@Resource
|
|
|
|
|
private PortfolioService portfolioService;
|
2023-01-06 15:17:37 +08:00
|
|
|
|
|
|
|
|
@ApiOperation(value = "History用户分页分组列表")
|
|
|
|
|
@PostMapping("/queryUserGroup")
|
|
|
|
|
public Response<PageBaseResponse<UserLikeGroupVO>> queryUserGroup(@Valid @RequestBody QueryHistoryPageDTO query) {
|
|
|
|
|
AuthPrincipalVo authPrincipalVo = UserContext.getUserHolder();
|
|
|
|
|
// 分页数据
|
|
|
|
|
QueryWrapper<UserLikeGroup> queryWrapper = new QueryWrapper<>();
|
|
|
|
|
|
|
|
|
|
queryWrapper.eq("account_id", authPrincipalVo.getId());
|
2023-10-20 14:47:18 +08:00
|
|
|
if (!StringUtils.isEmpty(query.getCollectionName())) {
|
2023-01-06 15:17:37 +08:00
|
|
|
queryWrapper.like("name", query.getCollectionName());
|
|
|
|
|
}
|
2023-10-20 14:47:18 +08:00
|
|
|
if (Objects.nonNull(query.getStartDate())) {
|
2023-01-06 15:17:37 +08:00
|
|
|
queryWrapper.ge("update_date", new Date(query.getStartDate()));
|
|
|
|
|
}
|
2023-10-20 14:47:18 +08:00
|
|
|
if (Objects.nonNull(query.getEndDate())) {
|
2023-01-06 15:17:37 +08:00
|
|
|
queryWrapper.le("update_date", new Date(query.getEndDate()));
|
|
|
|
|
}
|
2024-03-27 13:28:48 +08:00
|
|
|
// 新增分类过滤
|
|
|
|
|
if (CollectionUtil.isNotEmpty(query.getClassificationIdList())) {
|
|
|
|
|
List<Long> historyIdList = new ArrayList<>();
|
|
|
|
|
if (query.getIntersection() == 0) {
|
|
|
|
|
for (Long classificationId : query.getClassificationIdList()) {
|
|
|
|
|
historyIdList.addAll(classificationService.getLibraryIdListByClassificationId(classificationId));
|
|
|
|
|
}
|
|
|
|
|
if (CollectionUtil.isNotEmpty(historyIdList)) {
|
|
|
|
|
queryWrapper.in("id", historyIdList);
|
|
|
|
|
}else {
|
|
|
|
|
return Response.success(PageBaseResponse.success(new Page<>()));
|
|
|
|
|
}
|
|
|
|
|
}else {
|
|
|
|
|
for (int i = 0; i < query.getClassificationIdList().size(); i++) {
|
|
|
|
|
List<Long> historyIdListByClassificationId = classificationService.getLibraryIdListByClassificationId(query.getClassificationIdList().get(i));
|
|
|
|
|
if (i == 0) {
|
|
|
|
|
historyIdList.addAll(historyIdListByClassificationId);
|
|
|
|
|
}else {
|
|
|
|
|
historyIdList.retainAll(historyIdListByClassificationId);
|
|
|
|
|
}
|
|
|
|
|
if (CollectionUtil.isEmpty(historyIdList)) {
|
|
|
|
|
return Response.success(PageBaseResponse.success(new Page<>()));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
queryWrapper.in("id", historyIdList);
|
|
|
|
|
}
|
|
|
|
|
}
|
2024-04-09 14:09:19 +08:00
|
|
|
queryWrapper.orderByDesc("update_date");
|
2023-01-06 15:17:37 +08:00
|
|
|
IPage<UserLikeGroup> page = userLikeGroupService.getBaseMapper().selectPage(
|
|
|
|
|
new Page<>(query.getPage(), query.getSize()), queryWrapper);
|
2023-10-20 14:47:18 +08:00
|
|
|
if (CollectionUtils.isEmpty(page.getRecords())) {
|
2023-01-06 15:17:37 +08:00
|
|
|
return Response.success(PageBaseResponse.success(new Page<>()));
|
|
|
|
|
}
|
|
|
|
|
List<Long> groupIds = page.getRecords().stream().map(UserLikeGroup::getId).collect(Collectors.toList());
|
|
|
|
|
List<UserLikeVO> groupDetails = userLikeService.getGroupDetails(groupIds);
|
2024-08-15 16:37:24 +08:00
|
|
|
// if (CollectionUtils.isEmpty(groupDetails)) {
|
|
|
|
|
// throw new BusinessException("groupDetails.not.found");
|
|
|
|
|
// }
|
2023-10-20 14:47:18 +08:00
|
|
|
Map<Long, List<UserLikeVO>> groupDetailMap = groupDetails.stream()
|
2023-01-06 15:17:37 +08:00
|
|
|
.collect(Collectors.groupingBy(UserLikeVO::getUserLikeGroupId));
|
|
|
|
|
|
2023-10-20 14:47:18 +08:00
|
|
|
Account account = accountService.getById(authPrincipalVo.getId());
|
2023-01-06 15:17:37 +08:00
|
|
|
IPage<UserLikeGroupVO> convert = page.convert((Function<UserLikeGroup, UserLikeGroupVO>) group -> {
|
2023-10-20 14:47:18 +08:00
|
|
|
if (group != null) {
|
|
|
|
|
UserLikeGroupVO userLikeGroupVO = CopyUtil.copyObject(group, UserLikeGroupVO.class);
|
|
|
|
|
userLikeGroupVO.setUpdateDate(group.getUpdateDate().getTime());
|
2023-01-06 15:17:37 +08:00
|
|
|
userLikeGroupVO.setAuthor(account.getUserName());
|
|
|
|
|
//count 和detail
|
2024-08-15 16:37:24 +08:00
|
|
|
if (groupDetailMap.keySet().contains(group.getId())) {
|
|
|
|
|
List<UserLikeVO> details = groupDetailMap.get(group.getId());
|
|
|
|
|
for (UserLikeVO detail : details) {
|
|
|
|
|
TDesignPythonOutfit tDesignPythonOutfit = designPythonOutfitMapper.selectById(detail.getDesignOutfitId());
|
|
|
|
|
detail.setUrl(minioUtil.getPreSignedUrl(tDesignPythonOutfit.getDesignUrl(), 24 * 60));
|
|
|
|
|
}
|
|
|
|
|
userLikeGroupVO.setGroupDetails(details);
|
|
|
|
|
userLikeGroupVO.setSketchCount(CollectionUtils.isEmpty(details) ? 0 : details.size());
|
|
|
|
|
}else {
|
|
|
|
|
userLikeGroupVO.setSketchCount(0);
|
2023-10-18 16:51:08 +08:00
|
|
|
}
|
2024-07-04 11:34:51 +08:00
|
|
|
if (userLikeGroupVO.getOriginal() == 0) {
|
|
|
|
|
userLikeGroupVO.setOriginalAccountName(accountService.getById(userLikeGroupVO.getOriginalAccountId()).getUserName());
|
2024-07-08 16:17:13 +08:00
|
|
|
Portfolio byId = portfolioService.getByIdAll(userLikeGroupVO.getOriginalPortfolioId());
|
|
|
|
|
if (Objects.nonNull(byId)) {
|
|
|
|
|
String portfolioName = byId.getPortfolioName();
|
|
|
|
|
userLikeGroupVO.setOriginalPortfolioName(portfolioName);
|
|
|
|
|
}
|
2024-07-04 11:34:51 +08:00
|
|
|
}
|
2023-01-06 15:17:37 +08:00
|
|
|
return userLikeGroupVO;
|
|
|
|
|
}
|
|
|
|
|
return null;
|
|
|
|
|
});
|
|
|
|
|
return Response.success(PageBaseResponse.success(convert));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ApiOperation(value = "History用户分组详情,目前弃用 ")
|
|
|
|
|
@GetMapping("/getUserGroupDetail")
|
|
|
|
|
public Response<List<UserLikeVO>> getUserGroupDetail(
|
|
|
|
|
@ApiParam("用户分组id") @RequestParam("userGroupId") Long userGroupId) {
|
|
|
|
|
return Response.success(userLikeService.getGroupDetail(userGroupId));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ApiOperation(value = "History修改用户分组名")
|
|
|
|
|
@PostMapping("/updateUserGroupName")
|
|
|
|
|
public Response<HistoryUpdateVO> updateUserGroupName(@Valid @RequestBody HistoryUpdateDTO historyUpdateDTO) {
|
|
|
|
|
return Response.success(userLikeGroupService.updateUserGroupName(historyUpdateDTO.getUserGroupId()
|
2023-10-20 14:47:18 +08:00
|
|
|
, historyUpdateDTO.getUserGroupName(), historyUpdateDTO.getTimeZone()));
|
2023-01-06 15:17:37 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ApiOperation(value = "History删除用户分组")
|
|
|
|
|
@PostMapping("/deleteUserGroup")
|
|
|
|
|
public Response<Boolean> deleteUserGroup(@Valid @RequestBody HistoryDeleteDTO deleteDTO) {
|
|
|
|
|
userLikeGroupService.deleteUserGroup(deleteDTO.getUserGroupId());
|
|
|
|
|
userLikeService.deleteByUserGroupId(deleteDTO.getUserGroupId());
|
|
|
|
|
return Response.success(Boolean.TRUE);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ApiOperation(value = "History choose")
|
|
|
|
|
@GetMapping("/choose")
|
|
|
|
|
public Response<UserLikeChooseVO> choose(
|
2023-10-20 14:47:18 +08:00
|
|
|
@ApiParam("用户分组id") @RequestParam("userGroupId") Long userGroupId) {
|
2023-01-06 15:17:37 +08:00
|
|
|
return Response.success(userLikeGroupService.choose(userGroupId));
|
|
|
|
|
}
|
|
|
|
|
|
2024-06-12 09:47:55 +08:00
|
|
|
@ApiOperation(value = "exportSave")
|
|
|
|
|
@PostMapping("/exportSave")
|
2025-03-26 15:12:55 +08:00
|
|
|
public Response<Boolean> exportSave(@RequestParam("file") MultipartFile file, @RequestParam("projectId") Long projectId, @RequestParam("module") String module) {
|
|
|
|
|
return Response.success(userLikeGroupService.exportSave(file, projectId, module));
|
2024-06-12 09:47:55 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ApiOperation(value = "exportSearch")
|
|
|
|
|
@PostMapping("/exportSearch")
|
|
|
|
|
public Response<JSONObject> exportSearch(@Valid @RequestBody ExportSearchDTO exportSearchDTO) {
|
2025-03-26 15:12:55 +08:00
|
|
|
return Response.success(userLikeGroupService.exportSearch(exportSearchDTO));
|
2024-06-12 09:47:55 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ApiOperation(value = "toProduct")
|
|
|
|
|
@PostMapping("/toProduct")
|
|
|
|
|
public Response<List<ToProductImageResult>> toProduct(@Valid @RequestBody ToProductImageDTO toProductImageDTO) {
|
|
|
|
|
return Response.success(userLikeGroupService.toProduct(toProductImageDTO));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ApiOperation(value = "toProductImageElementUpload")
|
|
|
|
|
@PostMapping("/toProductImageElementUpload")
|
2025-03-19 14:13:16 +08:00
|
|
|
public Response<ToProductElementVO> toProductImageElementUpload(@RequestParam("file") MultipartFile file, @RequestParam(value = "projectId") Long projectId) {
|
|
|
|
|
return Response.success(userLikeGroupService.toProductImageElementUpload(file, projectId));
|
2024-06-12 09:47:55 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ApiOperation(value = "productImageLike")
|
|
|
|
|
@PostMapping("/productImageLike")
|
2025-06-05 13:35:13 +08:00
|
|
|
public Response<Long> productImageLike(@Valid @RequestBody ProductImageLikeDTO productImageLikeDTO) {
|
2024-06-12 09:47:55 +08:00
|
|
|
return Response.success(userLikeGroupService.productImageLike(productImageLikeDTO));
|
2024-06-17 09:34:48 +08:00
|
|
|
}
|
|
|
|
|
|
2025-06-03 11:23:13 +08:00
|
|
|
@ApiOperation(value = "collectionLikeUpdate")
|
|
|
|
|
@PostMapping("/collectionLikeUpdate")
|
|
|
|
|
public Response<Boolean> collectionLikeUpdate(@Valid @RequestBody CollectionLikeUpdateDTO collectionLikeUpdateDTO) {
|
|
|
|
|
return Response.success(userLikeGroupService.collectionLikeUpdate(collectionLikeUpdateDTO));
|
|
|
|
|
}
|
|
|
|
|
|
2024-06-17 09:34:48 +08:00
|
|
|
@ApiOperation(value = "productImageUnLike")
|
|
|
|
|
@PostMapping("/productImageUnLike")
|
|
|
|
|
public Response<Boolean> productImageUnLike(@Valid @RequestBody ProductImageLikeDTO productImageLikeDTO) {
|
|
|
|
|
return Response.success(userLikeGroupService.productImageUnLike(productImageLikeDTO));
|
2024-06-12 09:47:55 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ApiOperation(value = "获取生成结果")
|
|
|
|
|
@PostMapping("/toProductImageResult")
|
2024-06-25 16:43:29 +08:00
|
|
|
public Response<List<MagicToolResultVO>> getToProductImageResult(@Valid @RequestBody List<String> taskIdList) {
|
|
|
|
|
List<MagicToolResultVO> magicToolResultVOList = userLikeGroupService.getToProductImageResultList(taskIdList);
|
|
|
|
|
return Response.success(magicToolResultVOList);
|
2024-06-12 09:47:55 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ApiOperation(value = "画布用户上传元素")
|
|
|
|
|
@PostMapping("/canvasElementUpload")
|
|
|
|
|
public Response<CanvasElementUpload> canvasElementUpload(@RequestParam("file") MultipartFile file) {
|
|
|
|
|
return Response.success(userLikeGroupService.canvasElementUpload(file));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ApiOperation("productImageLikeList")
|
|
|
|
|
@PostMapping("/productImageLikeList")
|
2024-06-27 15:33:26 +08:00
|
|
|
public Response<List<ToProductImageResultVO>> productImageLikeList(@Valid @RequestBody ToProductImageDTO toProductImageDTO) {
|
2024-06-12 09:47:55 +08:00
|
|
|
return Response.success(userLikeGroupService.productImageLikeList(toProductImageDTO));
|
|
|
|
|
}
|
2024-06-25 16:43:29 +08:00
|
|
|
|
|
|
|
|
@ApiOperation(value = "relight")
|
|
|
|
|
@PostMapping("/relight")
|
|
|
|
|
public Response<List<ToProductImageResult>> relight(@Valid @RequestBody ToProductImageDTO toProductImageDTO) {
|
|
|
|
|
return Response.success(userLikeGroupService.relight(toProductImageDTO));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ApiOperation(value = "获取relight结果")
|
|
|
|
|
@PostMapping("/relightResult")
|
|
|
|
|
public Response<List<MagicToolResultVO>> getRelightResult(@Valid @RequestBody List<String> taskIdList) {
|
|
|
|
|
List<MagicToolResultVO> magicToolResultVOList = userLikeGroupService.getRelightResult(taskIdList);
|
|
|
|
|
return Response.success(magicToolResultVOList);
|
|
|
|
|
}
|
2024-10-20 10:52:14 +08:00
|
|
|
|
|
|
|
|
@ApiOperation(value = "likeHistoryRelSketch")
|
|
|
|
|
@PostMapping("/likeHistoryRelSketch")
|
|
|
|
|
public Response<String> likeHistoryRelSketch() {
|
|
|
|
|
return Response.success(userLikeGroupService.likeHistoryRelSketch());
|
|
|
|
|
}
|
2024-12-09 13:31:30 +08:00
|
|
|
|
2024-12-02 12:02:19 +08:00
|
|
|
@ApiOperation(value = "download")
|
|
|
|
|
@PostMapping("/download")
|
|
|
|
|
public Response<String> download() {
|
|
|
|
|
return Response.success(userLikeGroupService.download());
|
|
|
|
|
}
|
2024-12-09 13:44:07 +08:00
|
|
|
|
2024-12-09 13:31:30 +08:00
|
|
|
@ApiOperation(value = "productImageInitialize")
|
|
|
|
|
@PostMapping("/productImageInitialize")
|
|
|
|
|
public Response<Boolean> productImageUpload(@Valid @RequestBody ProductImageInitializeDTO productImageInitializeDTO) {
|
|
|
|
|
return Response.success(userLikeGroupService.productImageInitialize(productImageInitializeDTO));
|
|
|
|
|
}
|
2025-03-20 16:46:13 +08:00
|
|
|
|
2025-04-08 15:15:39 +08:00
|
|
|
@ApiOperation(value = "getInitializeProgress")
|
|
|
|
|
@PostMapping("/getInitializeProgress")
|
2025-04-08 17:29:10 +08:00
|
|
|
public Response<InitializeProgressVO> getInitializeProgress(@Valid @RequestBody ProductImageInitializeDTO productImageInitializeDTO) {
|
2025-04-08 15:15:39 +08:00
|
|
|
return Response.success(userLikeGroupService.getInitializeProgress(productImageInitializeDTO));
|
|
|
|
|
}
|
|
|
|
|
|
2025-03-20 16:46:13 +08:00
|
|
|
@ApiOperation(value = "brandDNASaveOrUpdate")
|
|
|
|
|
@PostMapping("/brandDNASaveOrUpdate")
|
|
|
|
|
public Response<Boolean> brandDNASaveOrUpdate(@Valid @RequestBody BrandDNADTO brandDNADTO) {
|
|
|
|
|
return Response.success(userLikeGroupService.brandDNASaveOrUpdate(brandDNADTO));
|
|
|
|
|
}
|
|
|
|
|
|
2025-04-08 15:15:39 +08:00
|
|
|
@ApiOperation(value = "brandDNADelete")
|
|
|
|
|
@PostMapping("/brandDNADelete")
|
|
|
|
|
public Response<Boolean> brandDNADelete(@Valid @RequestBody BrandDNADTO brandDNADTO) {
|
|
|
|
|
return Response.success(userLikeGroupService.brandDNADelete(brandDNADTO));
|
|
|
|
|
}
|
|
|
|
|
|
2025-03-27 13:33:09 +08:00
|
|
|
@ApiOperation(value = "brandDNAPage")
|
|
|
|
|
@PostMapping("/brandDNAPage")
|
|
|
|
|
public Response<PageBaseResponse<BrandDNAVO>> brandDNAPage(@Valid @RequestBody BrandDNAQueryDTO brandDNAQueryDTO) {
|
|
|
|
|
return Response.success(userLikeGroupService.brandDNAPage(brandDNAQueryDTO));
|
|
|
|
|
}
|
|
|
|
|
|
2025-03-20 16:46:13 +08:00
|
|
|
@ApiOperation(value = "brandLogoUpload")
|
|
|
|
|
@PostMapping("/brandLogoUpload")
|
2025-03-27 13:55:16 +08:00
|
|
|
public Response<BrandLogoUploadVO> brandDNASaveOrUpdate(@RequestParam("file") MultipartFile file) {
|
2025-03-20 16:46:13 +08:00
|
|
|
return Response.success(userLikeGroupService.brandLogoUpload(file));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ApiOperation(value = "brandDNAUpload")
|
|
|
|
|
@PostMapping("/brandDNAUpload")
|
2025-04-10 11:01:24 +08:00
|
|
|
public Response<LibraryUpdateVo> brandDNAUpload(@RequestParam("file") MultipartFile file, @RequestParam("brandId") Long brandId) throws IOException {
|
2025-03-20 16:46:13 +08:00
|
|
|
return Response.success(userLikeGroupService.brandDNAUpload(file, brandId));
|
|
|
|
|
}
|
2025-03-27 14:32:56 +08:00
|
|
|
|
|
|
|
|
@ApiOperation(value = "brandDNAGenerate")
|
|
|
|
|
@PostMapping("/brandDNAGenerate")
|
|
|
|
|
public Response<BrandDNAGenerateVO> brandDNAGenerate(@RequestParam("prompt") String prompt) {
|
|
|
|
|
return Response.success(userLikeGroupService.brandDNAGenerate(prompt));
|
|
|
|
|
}
|
2023-01-06 15:17:37 +08:00
|
|
|
}
|