README.md | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi-modules/ruoyi-system/src/main/java/org/ruoyi/system/controller/system/SysModelController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi-modules/ruoyi-system/src/main/java/org/ruoyi/system/util/DesensitizationUtil.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
README.md
@@ -52,6 +52,7 @@ - [鸣谢](#鸣谢) ### æºç å°å - é¡¹ç®ææ¡£: https://doc.pandarobot.chat - å端-åå°ç®¡ç: https://github.com/ageerle/ruoyi-admin - å端-ç¨æ·ç«¯: https://github.com/ageerle/ruoyi-web - å°ç¨åºç«¯: https://github.com/ageerle/ruoyi-uniapp @@ -60,13 +61,13 @@ - ç¨æ·å: admin å¯ç ï¼admin123 ### ç¹è²åè½ 1. å ç½®SSEãwebsocketçç½ç»åè®®ï¼æ¯æå¯¹æ¥OpenAIãAzureãChatGLMãè®¯é£æç«ç大è¯è¨æ¨¡å 2. æ¯ææ¥å ¥ä¸ªäººå¾®ä¿¡æä¼ä¸å¾®ä¿¡ 3. æ¯æææ¯ä»ã微信æ¯ä»åStripeå½é ä¿¡ç¨å¡æ¯ä» 4. æä¾é®ç®±ç»å½åå¾®ä¿¡å ¬ä¼å·ç»å½ 5. æ¯æç¥è¯åºåè½ï¼æ¯æAIç¿»è¯ãAI PPTå¶ä½ãè¯é³å éåAIç¿»å± 6. æä¾å®æ´çå端åºç¨ãåå°ç®¡ç以åå°ç¨åºåºç¨ï¼å ¨é¨å¼ç®±å³ç¨ãåºäºMIT弿ºåè®® 1. å ¨å¥å¼æºç³»ç»ï¼æä¾å®æ´çå端åºç¨ãåå°ç®¡ç以åå°ç¨åºåºç¨ï¼åºäºMITåè®®ï¼å¼ç®±å³ç¨ã 2. æ¬å°RAGæ¹æ¡ï¼éæMilvus/Weaviateåéåºãæ¬å°åé忍¡åä¸Ollamaï¼å®ç°æ¬å°åRAG 3. 䏰坿件åè½ï¼æ¯æèç½ãSQLæ¥è¯¢åText2APIæä»¶ï¼æ©å±ç³»ç»è½åä¸åºç¨åºæ¯ã 4. 丰å¯ç模åéæï¼å ç½®ç½ç»åè®®ï¼å¯å¯¹æ¥å åç§å¤§æ¨¡åï¼å¹¶ä¸ä¹æ¯æAIç»ç»åè½ã 5. 强大çå¤åªä½åè½ï¼æ¯æAIç¿»è¯ãPPTå¶ä½ãè¯é³å éåç¿»å±ç 6. æ©å±åè½ï¼æ¯æå°å¤§æ¨¡åæ¥å ¥ä¸ªäººæä¼ä¸å¾®ä¿¡ 7. æ¯ä»åè½ï¼æ¯æææ¯ä»ã微信æ¯ä»çå¤ç§æ¯ä»æ¹å¼ ### é¡¹ç®æ¼ç¤º @@ -141,7 +142,6 @@ â ââ ruoyi-common-web // web模å ââ ruoyi-modules // 模åç» â ââ ruoyi-demo // æ¼ç¤ºæ¨¡å â ââ ruoyi-generator // 代ç çææ¨¡å â ââ ruoyi-system // ä¸å¡æ¨¡å ââ .run // æ§è¡èæ¬æä»¶ ââ .editorconfig // ç¼è¾å¨ç¼ç æ ¼å¼é ç½® @@ -157,11 +157,6 @@ - [Vben Admin](https://github.com/vbenjs/vue-vben-admin) - [Naive UI](https://www.naiveui.com) - [RuoYi-Vue-Plus](https://gitee.com/dromara/RuoYi-Vue-Plus) ## è´¡ç®è <a href="https://github.com/ageerle/ruoyi-ai/graphs/contributors"> <img src="https://contrib.rocks/image?repo=ageerle/ruoyi-ai" /> </a> #### å¦ä½åä¸å¼æºé¡¹ç® ruoyi-modules/ruoyi-system/src/main/java/org/ruoyi/system/controller/system/SysModelController.java
@@ -25,12 +25,14 @@ import org.ruoyi.system.service.ISysModelService; import org.ruoyi.system.service.ISysPackagePlanService; import org.ruoyi.system.service.ISysUserService; import org.ruoyi.system.util.DesensitizationUtil; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; /** * ç³»ç»æ¨¡å @@ -49,7 +51,6 @@ private final ISysPackagePlanService sysPackagePlanService; private final ISysUserService userService; /** * æ¥è¯¢ç³»ç»æ¨¡åå表 - å ¨é¨ @@ -82,6 +83,14 @@ List<String> array = new ArrayList<>(Arrays.asList(sysPackagePlanVo.getPlanDetail().split(","))); sysModelVos.removeIf(model -> !array.contains(model.getModelName())); } sysModelVos.stream().map(vo -> { String maskedApiHost = DesensitizationUtil.maskData(vo.getApiHost()); String maskedApiKey = DesensitizationUtil.maskData(vo.getApiKey()); vo.setApiHost(maskedApiHost); vo.setApiKey(maskedApiKey); return vo; }) .collect(Collectors.toList()); return R.ok(sysModelVos); } ruoyi-modules/ruoyi-system/src/main/java/org/ruoyi/system/util/DesensitizationUtil.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,19 @@ package org.ruoyi.system.util; public class DesensitizationUtil { public static String maskData(String data) { if (data == null || data.length() <= 4) { return data; } int start = 2; int end = data.length() - 2; StringBuilder masked = new StringBuilder(); masked.append(data, 0, start); for (int i = start; i < end; i++) { masked.append('*'); } masked.append(data.substring(end)); return masked.toString(); } }