From 77f3226d278ac2d180d4480d63f1a4726000cafb Mon Sep 17 00:00:00 2001 From: cherishsince Date: Wed, 24 Apr 2024 20:20:51 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=20ai=20modal=20=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E6=A8=A1=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ai/enums/AiChatModalDisableEnum.java | 26 +++++++++++++++++++ .../ai/controller/AiChatModalController.java | 2 +- .../module/ai/convert/ChatModalConvert.java | 16 +++++++++++- .../ai/dal/dataobject/AiChatModalDO.java | 4 --- .../service/impl/AiChatModalServiceImpl.java | 8 +++++- .../yudao/module/ai/vo/AiChatModalAddReq.java | 20 ++++++++++++++ 6 files changed, 69 insertions(+), 7 deletions(-) create mode 100644 yudao-module-ai/yudao-module-ai-api/src/main/java/cn/iocoder/yudao/module/ai/enums/AiChatModalDisableEnum.java diff --git a/yudao-module-ai/yudao-module-ai-api/src/main/java/cn/iocoder/yudao/module/ai/enums/AiChatModalDisableEnum.java b/yudao-module-ai/yudao-module-ai-api/src/main/java/cn/iocoder/yudao/module/ai/enums/AiChatModalDisableEnum.java new file mode 100644 index 000000000..5b780ec6e --- /dev/null +++ b/yudao-module-ai/yudao-module-ai-api/src/main/java/cn/iocoder/yudao/module/ai/enums/AiChatModalDisableEnum.java @@ -0,0 +1,26 @@ +package cn.iocoder.yudao.module.ai.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * ai modal disable + * + * @author fansili + * @time 2024/4/24 20:15 + * @since 1.0 + */ +@AllArgsConstructor +@Getter +public enum AiChatModalDisableEnum { + + NO(0, "未禁用"), + YES(1, "禁用"), + + + ; + + private Integer value; + + private String name; +} diff --git a/yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/controller/AiChatModalController.java b/yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/controller/AiChatModalController.java index 2258e2ee0..fa3c679dc 100644 --- a/yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/controller/AiChatModalController.java +++ b/yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/controller/AiChatModalController.java @@ -44,7 +44,7 @@ public class AiChatModalController { } @Operation(summary = "ai模型 - 模型照片上传") - @PutMapping("/modal/{id}/updateImage") + @PostMapping("/modal/{id}/updateImage") public CommonResult updateImage(@PathVariable("id") Long id, MultipartFile file) { // todo yunai 文件上传这里放哪里 diff --git a/yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/convert/ChatModalConvert.java b/yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/convert/ChatModalConvert.java index 9611953ac..a83d4f0ef 100644 --- a/yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/convert/ChatModalConvert.java +++ b/yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/convert/ChatModalConvert.java @@ -1,6 +1,7 @@ package cn.iocoder.yudao.module.ai.convert; import cn.iocoder.yudao.module.ai.dal.dataobject.AiChatModalDO; +import cn.iocoder.yudao.module.ai.vo.AiChatModalAddReq; import cn.iocoder.yudao.module.ai.vo.AiChatModalListRes; import org.mapstruct.Mapper; import org.mapstruct.factory.Mappers; @@ -19,6 +20,19 @@ public interface ChatModalConvert { ChatModalConvert INSTANCE = Mappers.getMapper(ChatModalConvert.class); - + /** + * 转换 - AiChatModalListRes + * + * @param list + * @return + */ List convertAiChatModalListRes(List list); + + /** + * 转换 - AiChatModalDO + * + * @param req + * @return + */ + AiChatModalDO convertAiChatModalDO(AiChatModalAddReq req); } diff --git a/yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/dal/dataobject/AiChatModalDO.java b/yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/dal/dataobject/AiChatModalDO.java index b4b8f4414..9eab9e37b 100644 --- a/yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/dal/dataobject/AiChatModalDO.java +++ b/yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/dal/dataobject/AiChatModalDO.java @@ -35,10 +35,6 @@ public class AiChatModalDO extends BaseDO { * 模型配置JSON */ private String modelConfig; - /** - * 模型图片 - */ - private String modelImage; /** * 禁用 0、正常 1、禁用 */ diff --git a/yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/service/impl/AiChatModalServiceImpl.java b/yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/service/impl/AiChatModalServiceImpl.java index 60e510902..533895a23 100644 --- a/yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/service/impl/AiChatModalServiceImpl.java +++ b/yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/service/impl/AiChatModalServiceImpl.java @@ -5,6 +5,7 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.module.ai.convert.ChatModalConvert; import cn.iocoder.yudao.module.ai.dal.dataobject.AiChatModalDO; +import cn.iocoder.yudao.module.ai.enums.AiChatModalDisableEnum; import cn.iocoder.yudao.module.ai.mapper.AiChatModalMapper; import cn.iocoder.yudao.module.ai.service.AiChatModalService; import cn.iocoder.yudao.module.ai.vo.AiChatModalAddReq; @@ -48,6 +49,11 @@ public class AiChatModalServiceImpl implements AiChatModalService { @Override public void add(AiChatModalAddReq req) { - + // 转换 do + AiChatModalDO insertChatModalDO = ChatModalConvert.INSTANCE.convertAiChatModalDO(req); + // + insertChatModalDO.setDisable(AiChatModalDisableEnum.NO.getValue()); + // 保存数据库 + aiChatModalMapper.insert(insertChatModalDO); } } diff --git a/yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/vo/AiChatModalAddReq.java b/yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/vo/AiChatModalAddReq.java index 1af1d8768..b20c92d5b 100644 --- a/yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/vo/AiChatModalAddReq.java +++ b/yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/vo/AiChatModalAddReq.java @@ -1,5 +1,8 @@ package cn.iocoder.yudao.module.ai.vo; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import lombok.Data; import lombok.experimental.Accessors; @@ -13,4 +16,21 @@ import lombok.experimental.Accessors; @Data @Accessors(chain = true) public class AiChatModalAddReq { + + @NotNull + @Schema(description = "模型名字") + @Size(max = 60, message = "模型名字最大60") + private String modelName; + + @NotNull + @Schema(description = "模型类型(qianwen、yiyan、xinghuo、openai)") + @Size(max = 32, message = "模型类型最大32") + private String modelType; + + @Schema(description = "模型照片") + private String modalImage; + + @Schema(description = "模型配置JSON") + private String modelConfig; + }