Commit 1c0cf4b860596de08a88602b2e3b8725b6f46502
1 parent
2eade5ad
【解决todo】所有转换都不依赖 convert 采用 BeanUtils
Showing
3 changed files
with
16 additions
and
98 deletions
yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/controller/admin/image/vo/AiImageListRespVO.java renamed to yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/controller/admin/image/vo/AiImagePageMyRespVO.java
| 1 | 1 | package cn.iocoder.yudao.module.ai.controller.admin.image.vo; |
| 2 | 2 | |
| 3 | 3 | import cn.iocoder.yudao.framework.common.pojo.PageParam; |
| 4 | -import com.baomidou.mybatisplus.annotation.FieldFill; | |
| 5 | -import com.baomidou.mybatisplus.annotation.IdType; | |
| 6 | -import com.baomidou.mybatisplus.annotation.TableField; | |
| 7 | -import com.baomidou.mybatisplus.annotation.TableId; | |
| 8 | 4 | import io.swagger.v3.oas.annotations.media.Schema; |
| 9 | 5 | import lombok.Data; |
| 10 | 6 | import lombok.experimental.Accessors; |
| 11 | 7 | |
| 12 | -import java.time.LocalDateTime; | |
| 13 | 8 | import java.util.Map; |
| 14 | 9 | |
| 15 | 10 | // TODO @fan:可以考虑,复用 AiImageDallRespVO,统一成 AIImageRespVO |
| ... | ... | @@ -22,7 +17,7 @@ import java.util.Map; |
| 22 | 17 | */ |
| 23 | 18 | @Data |
| 24 | 19 | @Accessors(chain = true) |
| 25 | -public class AiImageListRespVO extends PageParam { | |
| 20 | +public class AiImagePageMyRespVO extends PageParam { | |
| 26 | 21 | |
| 27 | 22 | @Schema(description = "id编号", example = "1") |
| 28 | 23 | private Long id; | ... | ... |
yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/convert/AiImageConvert.java deleted
| 1 | -package cn.iocoder.yudao.module.ai.convert; | |
| 2 | - | |
| 3 | -import org.springframework.ai.models.midjourney.MidjourneyMessage; | |
| 4 | -import cn.iocoder.yudao.module.ai.controller.admin.image.vo.AiImageDallReqVO; | |
| 5 | -import cn.iocoder.yudao.module.ai.controller.admin.image.vo.AiImageDallRespVO; | |
| 6 | -import cn.iocoder.yudao.module.ai.controller.admin.image.vo.AiImageListRespVO; | |
| 7 | -import cn.iocoder.yudao.module.ai.controller.admin.image.vo.AiImageMidjourneyOperationsVO; | |
| 8 | -import cn.iocoder.yudao.module.ai.dal.dataobject.image.AiImageDO; | |
| 9 | -import org.mapstruct.Mapper; | |
| 10 | -import org.mapstruct.factory.Mappers; | |
| 11 | - | |
| 12 | -import java.util.List; | |
| 13 | - | |
| 14 | -// TODO @fan:convert 可以考虑去掉,使用 BeanUtils.copy 替代 | |
| 15 | -/** | |
| 16 | - * ai image convert | |
| 17 | - * | |
| 18 | - * @author fansili | |
| 19 | - * @time 2024/4/18 16:39 | |
| 20 | - * @since 1.0 | |
| 21 | - */ | |
| 22 | -@Mapper | |
| 23 | -public interface AiImageConvert { | |
| 24 | - | |
| 25 | - AiImageConvert INSTANCE = Mappers.getMapper(AiImageConvert.class); | |
| 26 | - | |
| 27 | - /** | |
| 28 | - * 转换 - AiImageDallDrawingRespVO | |
| 29 | - * | |
| 30 | - * @param req | |
| 31 | - * @return | |
| 32 | - */ | |
| 33 | - AiImageDallRespVO convertAiImageDallDrawingRespVO(AiImageDO req); | |
| 34 | - | |
| 35 | - /** | |
| 36 | - * 转换 - AiImageDallDrawingRespVO | |
| 37 | - * | |
| 38 | - * @param req | |
| 39 | - * @return | |
| 40 | - */ | |
| 41 | - AiImageDallRespVO convertAiImageDallDrawingRespVO(AiImageDallReqVO req); | |
| 42 | - | |
| 43 | - /** | |
| 44 | - * 转换 - AiImageListRespVO | |
| 45 | - * | |
| 46 | - * @param list | |
| 47 | - * @return | |
| 48 | - */ | |
| 49 | - List<AiImageListRespVO> convertAiImageListRespVO(List<AiImageDO> list); | |
| 50 | - | |
| 51 | - /** | |
| 52 | - * 转换 - AiImageListRespVO | |
| 53 | - * | |
| 54 | - * @param aiImageDO | |
| 55 | - * @return | |
| 56 | - */ | |
| 57 | - AiImageListRespVO convertAiImageListRespVO(AiImageDO aiImageDO); | |
| 58 | - | |
| 59 | - /** | |
| 60 | - * 转换 - AiImageMidjourneyOperationsVO | |
| 61 | - * | |
| 62 | - * @param component | |
| 63 | - * @return | |
| 64 | - */ | |
| 65 | - AiImageMidjourneyOperationsVO convertAiImageMidjourneyOperationsVO(MidjourneyMessage.Component component); | |
| 66 | - | |
| 67 | - /** | |
| 68 | - * 转换 - AiImageDO | |
| 69 | - * | |
| 70 | - * @param req | |
| 71 | - * @return | |
| 72 | - */ | |
| 73 | - AiImageDO convertAiImageDO(AiImageDallReqVO req); | |
| 74 | -} |
yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/service/image/midjourneyHandler/YuDaoMidjourneyMessageHandler.java
| ... | ... | @@ -2,23 +2,19 @@ package cn.iocoder.yudao.module.ai.service.image.midjourneyHandler; |
| 2 | 2 | |
| 3 | 3 | import cn.hutool.core.collection.CollUtil; |
| 4 | 4 | import cn.hutool.core.util.StrUtil; |
| 5 | -import com.alibaba.fastjson.JSON; | |
| 6 | -import org.springframework.ai.models.midjourney.MidjourneyMessage; | |
| 7 | -import org.springframework.ai.models.midjourney.constants.MidjourneyGennerateStatusEnum; | |
| 8 | -import org.springframework.ai.models.midjourney.webSocket.MidjourneyMessageHandler; | |
| 9 | -import cn.iocoder.yudao.framework.common.util.json.JsonUtils; | |
| 10 | 5 | import cn.iocoder.yudao.module.ai.controller.admin.image.vo.AiImageMidjourneyOperationsVO; |
| 11 | -import cn.iocoder.yudao.module.ai.convert.AiImageConvert; | |
| 12 | 6 | import cn.iocoder.yudao.module.ai.dal.dataobject.image.AiImageDO; |
| 13 | 7 | import cn.iocoder.yudao.module.ai.dal.mysql.image.AiImageMapper; |
| 14 | 8 | import cn.iocoder.yudao.module.ai.enums.AiImageStatusEnum; |
| 9 | +import com.alibaba.fastjson.JSON; | |
| 15 | 10 | import lombok.AllArgsConstructor; |
| 16 | 11 | import lombok.extern.slf4j.Slf4j; |
| 12 | +import org.springframework.ai.models.midjourney.MidjourneyMessage; | |
| 13 | +import org.springframework.ai.models.midjourney.constants.MidjourneyGennerateStatusEnum; | |
| 14 | +import org.springframework.ai.models.midjourney.webSocket.MidjourneyMessageHandler; | |
| 17 | 15 | import org.springframework.stereotype.Component; |
| 18 | 16 | |
| 19 | -import java.util.Collections; | |
| 20 | 17 | import java.util.List; |
| 21 | -import java.util.stream.Collectors; | |
| 22 | 18 | |
| 23 | 19 | /** |
| 24 | 20 | * yudao message handler |
| ... | ... | @@ -113,15 +109,16 @@ public class YuDaoMidjourneyMessageHandler implements MidjourneyMessageHandler { |
| 113 | 109 | } |
| 114 | 110 | |
| 115 | 111 | private List<AiImageMidjourneyOperationsVO> getMidjourneyOperationsList(MidjourneyMessage midjourneyMessage) { |
| 116 | - // 为空直接返回 | |
| 117 | - if (CollUtil.isEmpty(midjourneyMessage.getComponents())) { | |
| 118 | - return Collections.emptyList(); | |
| 119 | - } | |
| 120 | - // 将 component 转成 AiImageMidjourneyOperationsVO | |
| 121 | - return midjourneyMessage.getComponents().stream() | |
| 122 | - .map(componentType -> componentType.getComponents().stream() | |
| 123 | - .map(AiImageConvert.INSTANCE::convertAiImageMidjourneyOperationsVO) | |
| 124 | - .collect(Collectors.toList())) | |
| 125 | - .toList().stream().flatMap(List::stream).toList(); | |
| 112 | +// // 为空直接返回 | |
| 113 | +// if (CollUtil.isEmpty(midjourneyMessage.getComponents())) { | |
| 114 | +// return Collections.emptyList(); | |
| 115 | +// } | |
| 116 | +// // 将 component 转成 AiImageMidjourneyOperationsVO | |
| 117 | +// return midjourneyMessage.getComponents().stream() | |
| 118 | +// .map(componentType -> componentType.getComponents().stream() | |
| 119 | +// .map(AiImageConvert.INSTANCE::convertAiImageMidjourneyOperationsVO) | |
| 120 | +// .collect(Collectors.toList())) | |
| 121 | +// .toList().stream().flatMap(List::stream).toList(); | |
| 122 | + return null; | |
| 126 | 123 | } |
| 127 | 124 | } | ... | ... |