Commit cb59a61a04698d498c9f9c86bf7a136f7fdff2f9

Authored by YunaiV
1 parent ef4fb7ec

【代码优化】AI:获取公开的分页

yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/controller/admin/image/AiImageController.java
... ... @@ -43,6 +43,13 @@ public class AiImageController {
43 43 return success(BeanUtils.toBean(pageResult, AiImageRespVO.class));
44 44 }
45 45  
  46 + @GetMapping("/public-page")
  47 + @Operation(summary = "获取公开的绘图分页")
  48 + public CommonResult<PageResult<AiImageRespVO>> getImagePagePublic(AiImagePublicPageReqVO pageReqVO) {
  49 + PageResult<AiImageDO> pageResult = imageService.getImagePagePublic(pageReqVO);
  50 + return success(BeanUtils.toBean(pageResult, AiImageRespVO.class));
  51 + }
  52 +
46 53 @GetMapping("/get-my")
47 54 @Operation(summary = "获取【我的】绘图记录")
48 55 @Parameter(name = "id", required = true, description = "绘画编号", example = "1024")
... ... @@ -128,10 +135,4 @@ public class AiImageController {
128 135 return success(true);
129 136 }
130 137  
131   - @GetMapping("/public-list")
132   - @Operation(summary = "发布列表")
133   - public CommonResult<PageResult<AiImageRespVO>> publicList(AiImagePublicListReqVO publicListReqVO) {
134   - PageResult<AiImageDO> pageResult = imageService.publicList(publicListReqVO);
135   - return success(BeanUtils.toBean(pageResult, AiImageRespVO.class));
136   - }
137 138 }
138 139 \ No newline at end of file
... ...
yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/controller/admin/image/vo/AiImagePublicListReqVO.java renamed to yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/controller/admin/image/vo/AiImagePublicPageReqVO.java
... ... @@ -4,9 +4,9 @@ import cn.iocoder.yudao.framework.common.pojo.PageParam;
4 4 import io.swagger.v3.oas.annotations.media.Schema;
5 5 import lombok.Data;
6 6  
7   -@Schema(description = "Ai Image 发布列表 req")
  7 +@Schema(description = "管理后台 - AI 绘画公开的分页 Request VO")
8 8 @Data
9   -public class AiImagePublicListReqVO extends PageParam {
  9 +public class AiImagePublicPageReqVO extends PageParam {
10 10  
11 11 @Schema(description = "提示词")
12 12 private String prompt;
... ...
yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/dal/mysql/image/AiImageMapper.java
... ... @@ -5,7 +5,7 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult;
5 5 import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
6 6 import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
7 7 import cn.iocoder.yudao.module.ai.controller.admin.image.vo.AiImagePageReqVO;
8   -import cn.iocoder.yudao.module.ai.controller.admin.image.vo.AiImagePublicListReqVO;
  8 +import cn.iocoder.yudao.module.ai.controller.admin.image.vo.AiImagePublicPageReqVO;
9 9 import cn.iocoder.yudao.module.ai.dal.dataobject.image.AiImageDO;
10 10 import org.apache.ibatis.annotations.Mapper;
11 11  
... ... @@ -39,15 +39,16 @@ public interface AiImageMapper extends BaseMapperX&lt;AiImageDO&gt; {
39 39 .orderByDesc(AiImageDO::getId));
40 40 }
41 41  
  42 + default PageResult<AiImageDO> selectPage(AiImagePublicPageReqVO pageReqVO) {
  43 + return selectPage(pageReqVO, new LambdaQueryWrapperX<AiImageDO>()
  44 + .eqIfPresent(AiImageDO::getPublicStatus, Boolean.TRUE)
  45 + .likeIfPresent(AiImageDO::getPrompt, pageReqVO.getPrompt())
  46 + .orderByDesc(AiImageDO::getId));
  47 + }
  48 +
42 49 default List<AiImageDO> selectListByStatusAndPlatform(Integer status, String platform) {
43 50 return selectList(AiImageDO::getStatus, status,
44 51 AiImageDO::getPlatform, platform);
45 52 }
46 53  
47   - default PageResult<AiImageDO> selectPageOfPublicList(AiImagePublicListReqVO releaseListReqVO) {
48   - return selectPage(releaseListReqVO, new LambdaQueryWrapperX<AiImageDO>()
49   - .eqIfPresent(AiImageDO::getPublicStatus, Boolean.TRUE)
50   - .eqIfPresent(AiImageDO::getPrompt, releaseListReqVO.getPrompt())
51   - .orderByDesc(AiImageDO::getId));
52   - }
53 54 }
... ...
yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/service/image/AiImageService.java
... ... @@ -28,6 +28,14 @@ public interface AiImageService {
28 28 PageResult<AiImageDO> getImagePageMy(Long userId, PageParam pageReqVO);
29 29  
30 30 /**
  31 + * 获取公开的绘图分页
  32 + *
  33 + * @param pageReqVO 分页条件
  34 + * @return 绘图分页
  35 + */
  36 + PageResult<AiImageDO> getImagePagePublic(AiImagePublicPageReqVO pageReqVO);
  37 +
  38 + /**
31 39 * 获得绘图记录
32 40 *
33 41 * @param id 绘图编号
... ... @@ -116,11 +124,4 @@ public interface AiImageService {
116 124 */
117 125 Long midjourneyAction(Long userId, AiMidjourneyActionReqVO reqVO);
118 126  
119   - /**
120   - * 发布列表
121   - * @param publicListReqVO
122   - * @return
123   - */
124   - PageResult<AiImageDO> publicList(AiImagePublicListReqVO publicListReqVO);
125   -
126 127 }
... ...
yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/service/image/AiImageServiceImpl.java
... ... @@ -70,6 +70,11 @@ public class AiImageServiceImpl implements AiImageService {
70 70 }
71 71  
72 72 @Override
  73 + public PageResult<AiImageDO> getImagePagePublic(AiImagePublicPageReqVO pageReqVO) {
  74 + return imageMapper.selectPage(pageReqVO);
  75 + }
  76 +
  77 + @Override
73 78 public AiImageDO getImage(Long id) {
74 79 return imageMapper.selectById(id);
75 80 }
... ... @@ -336,11 +341,6 @@ public class AiImageServiceImpl implements AiImageService {
336 341 return newImage.getId();
337 342 }
338 343  
339   - @Override
340   - public PageResult<AiImageDO> publicList(AiImagePublicListReqVO publicListReqVO) {
341   - return imageMapper.selectPageOfPublicList(publicListReqVO);
342   - }
343   -
344 344 /**
345 345 * 获得自身的代理对象,解决 AOP 生效问题
346 346 *
... ...