From 10d9c2daaaecfccee780dc04146a8f3329e42d87 Mon Sep 17 00:00:00 2001 From: liushujing Date: Fri, 20 Dec 2024 15:52:59 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=8B=E8=AF=95=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/AppAiModelController.java | 3 +- .../controller/AppAiPluginController.java | 2 +- .../service/impl/AppAiModelServiceImpl.java | 28 +++----- .../controller/AppAiModelControllerTest.java | 68 +++++++++++++++++++ .../controller/AppAiPluginControllerTest.java | 66 ++++++++++++++++++ 5 files changed, 148 insertions(+), 19 deletions(-) create mode 100644 flx-ai/src/test/java/test/com/pjilisense/flxai/controller/AppAiModelControllerTest.java create mode 100644 flx-ai/src/test/java/test/com/pjilisense/flxai/controller/AppAiPluginControllerTest.java diff --git a/flx-ai/src/main/java/com/pjilisense/flxai/controller/AppAiModelController.java b/flx-ai/src/main/java/com/pjilisense/flxai/controller/AppAiModelController.java index d6ad5e5..85fca8b 100644 --- a/flx-ai/src/main/java/com/pjilisense/flxai/controller/AppAiModelController.java +++ b/flx-ai/src/main/java/com/pjilisense/flxai/controller/AppAiModelController.java @@ -1,6 +1,7 @@ package com.pjilisense.flxai.controller; import com.pjilisense.flxai.base.constant.Constant; +import com.pjilisense.flxai.dto.AppAiPluginDTO; import com.pjilisense.flxai.page.PageData; import com.pjilisense.flxai.utils.Result; import com.pjilisense.flxai.dto.AppAiModelDTO; @@ -70,7 +71,7 @@ public class AppAiModelController { appAiModelService.save(dto); - return new Result(); + return new Result().ok(dto); } @PutMapping diff --git a/flx-ai/src/main/java/com/pjilisense/flxai/controller/AppAiPluginController.java b/flx-ai/src/main/java/com/pjilisense/flxai/controller/AppAiPluginController.java index f1767e4..9b80225 100644 --- a/flx-ai/src/main/java/com/pjilisense/flxai/controller/AppAiPluginController.java +++ b/flx-ai/src/main/java/com/pjilisense/flxai/controller/AppAiPluginController.java @@ -70,7 +70,7 @@ public class AppAiPluginController { appAiPluginService.save(dto); - return new Result(); + return new Result().ok(dto); } @PutMapping diff --git a/flx-ai/src/main/java/com/pjilisense/flxai/service/impl/AppAiModelServiceImpl.java b/flx-ai/src/main/java/com/pjilisense/flxai/service/impl/AppAiModelServiceImpl.java index 6de89a5..31ded8d 100644 --- a/flx-ai/src/main/java/com/pjilisense/flxai/service/impl/AppAiModelServiceImpl.java +++ b/flx-ai/src/main/java/com/pjilisense/flxai/service/impl/AppAiModelServiceImpl.java @@ -62,20 +62,14 @@ public class AppAiModelServiceImpl extends CrudServiceImpl meta = new HashMap<>(); mapx.put("meta", meta); - meta.put("displayName", mapx.get("displayName")); + meta.put("displayname", mapx.get("displayname")); meta.put("description", mapx.get("description")); meta.put("title", mapx.get("title")); meta.put("enabled", mapx.get("enabled")); meta.put("category", mapx.get("category")); - meta.put("metaId", mapx.get("metaId")); - meta.put("metaTokens", mapx.get("metaTokens")); - String tags = (String) mapx.get("tags"); - if (tags!=null && tags.length() > 0) { - meta.put("tags", Arrays.asList(tags.split("\\,"))); - } else { - meta.put("tags", new ArrayList<>()); - } - mapx.remove("displayName"); + meta.put("id", mapx.get("metaId")); + meta.put("tokens", mapx.get("metaTokens")); + mapx.remove("displayname"); mapx.remove("description"); mapx.remove("title"); mapx.remove("enabled"); @@ -84,23 +78,23 @@ public class AppAiModelServiceImpl extends CrudServiceImpl 0) { - meta.put("providers", Arrays.asList(providers.split("\\,"))); + mapx.put("providers", Arrays.asList(providers.split("\\,"))); } else { - meta.put("providers", new ArrayList<>()); + mapx.put("providers", new ArrayList<>()); } HashMap socialData = new HashMap<>(); mapx.put("socialData", socialData); - meta.put("conversations", mapx.get("conversations")); - meta.put("likes", mapx.get("likes")); - meta.put("tokens", mapx.get("tokens")); + socialData.put("conversations", mapx.get("conversations")); + socialData.put("likes", mapx.get("likes")); + socialData.put("tokens", mapx.get("tokens")); mapx.remove("conversations"); mapx.remove("likes"); mapx.remove("tokens"); String suggestions = (String) mapx.get("suggestions"); if (suggestions!=null && suggestions.length() > 0) { - meta.put("suggestions", Arrays.asList(suggestions.split("\\,"))); + mapx.put("suggestions", Arrays.asList(suggestions.split("\\,"))); } else { - meta.put("suggestions", new ArrayList<>()); + mapx.put("suggestions", new ArrayList<>()); } } } diff --git a/flx-ai/src/test/java/test/com/pjilisense/flxai/controller/AppAiModelControllerTest.java b/flx-ai/src/test/java/test/com/pjilisense/flxai/controller/AppAiModelControllerTest.java new file mode 100644 index 0000000..72e1fa0 --- /dev/null +++ b/flx-ai/src/test/java/test/com/pjilisense/flxai/controller/AppAiModelControllerTest.java @@ -0,0 +1,68 @@ +/** + * Copyright (c) 2018 人人开源 All rights reserved. + *

+ * https://www.renren.io + *

+ * 版权所有,侵权必究! + */ + +package test.com.pjilisense.flxai.controller; + +import com.alibaba.fastjson.JSON; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import test.com.pjilisense.flxai.TestUtils; + +import java.util.HashMap; +import java.util.Map; + +public class AppAiModelControllerTest { + @BeforeEach + public void setUpTestDataWithinTransaction() { + // set up test data within the transaction + } + @AfterEach + public void tearDownWithinTransaction() { + // execute "tear down" logic within the transaction + } + + @Test + public void testAppAiAssistantSave() { + String url = TestUtils.WebconnectURL+"/api/robot/appaimodel"; + String charset = TestUtils.UTF8; + try { + Map params = new HashMap(); + params.put("identifier","alps-tongyi-image2"); + params.put("providers","ollama,YoungTx2"); + params.put("conversations","0"); + params.put("likes","0"); + params.put("tokens","0"); + params.put("description","此插件使用阿里巴巴的通义万象模型根据文本提示生成图像。"); + params.put("displayname","Llama 3.1 8B"); + params.put("enabled","true"); + params.put("category","ollama"); + params.put("title","Llama 3.1 8B"); + params.put("metaId","llama3.1"); + params.put("metaTokens","avatar2"); + params.put("suggestions","a,b,c"); + params.put("createdAt","2024-08-09"); + params.put("userid","flx"); + String body = TestUtils.doPost(url, JSON.toJSONString(params), charset); + System.out.println(body); + } catch (Exception e) { + e.printStackTrace(); + } + } + @Test + public void testGetAllAiAssistant() { + String url = TestUtils.WebconnectURL+"/api/robot/appaimodel/getAllAiModel?userid=flx"; + String charset = TestUtils.UTF8; + try { + String body = TestUtils.doGet(url, charset); + System.out.println(body); + } catch (Exception e) { + e.printStackTrace(); + } + } +} \ No newline at end of file diff --git a/flx-ai/src/test/java/test/com/pjilisense/flxai/controller/AppAiPluginControllerTest.java b/flx-ai/src/test/java/test/com/pjilisense/flxai/controller/AppAiPluginControllerTest.java new file mode 100644 index 0000000..f1f5d82 --- /dev/null +++ b/flx-ai/src/test/java/test/com/pjilisense/flxai/controller/AppAiPluginControllerTest.java @@ -0,0 +1,66 @@ +/** + * Copyright (c) 2018 人人开源 All rights reserved. + *

+ * https://www.renren.io + *

+ * 版权所有,侵权必究! + */ + +package test.com.pjilisense.flxai.controller; + +import com.alibaba.fastjson.JSON; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import test.com.pjilisense.flxai.TestUtils; + +import java.util.HashMap; +import java.util.Map; + +public class AppAiPluginControllerTest { + @BeforeEach + public void setUpTestDataWithinTransaction() { + // set up test data within the transaction + } + @AfterEach + public void tearDownWithinTransaction() { + // execute "tear down" logic within the transaction + } + + @Test + public void testAppAiAssistantSave() { + String url = TestUtils.WebconnectURL+"/api/robot/appaiplugin"; + String charset = TestUtils.UTF8; + try { + Map params = new HashMap(); + params.put("author","YoungTx2"); + params.put("homepage","https://github.com/YoungTx/alps-tongyi-image2"); + params.put("identifier","alps-tongyi-image2"); + params.put("locale","en-US"); + params.put("manifest","https://alps-tongyi-image.vercel.app/manifest.json"); + params.put("avatar","avatar2"); + params.put("tags","图像,通义,万象"); + params.put("title","通义万象图像生成器"); + params.put("description","此插件使用阿里巴巴的通义万象模型根据文本提示生成图像。"); + params.put("category","media-generate"); + params.put("schemaVersion","1"); + params.put("createdAt","2024-08-09"); + params.put("userid","flx"); + String body = TestUtils.doPost(url, JSON.toJSONString(params), charset); + System.out.println(body); + } catch (Exception e) { + e.printStackTrace(); + } + } + @Test + public void testGetAllAiAssistant() { + String url = TestUtils.WebconnectURL+"/api/robot/appaiplugin/getAllAiPlugin?userid=flx"; + String charset = TestUtils.UTF8; + try { + String body = TestUtils.doGet(url, charset); + System.out.println(body); + } catch (Exception e) { + e.printStackTrace(); + } + } +} \ No newline at end of file