mirror of
https://gitcode.com/ageerle/ruoyi-ai.git
synced 2026-04-15 12:53:42 +00:00
feat: 代码优化
This commit is contained in:
@@ -344,7 +344,6 @@ public class OpenAiStreamClient {
|
|||||||
|
|
||||||
BillingUsage billingUsage = billingUsage(start.toInstant().atZone(ZoneId.systemDefault()).toLocalDate(), end.toInstant().atZone(ZoneId.systemDefault()).toLocalDate());
|
BillingUsage billingUsage = billingUsage(start.toInstant().atZone(ZoneId.systemDefault()).toLocalDate(), end.toInstant().atZone(ZoneId.systemDefault()).toLocalDate());
|
||||||
double totalUsage = billingUsage.getTotalUsage().doubleValue() / 100;
|
double totalUsage = billingUsage.getTotalUsage().doubleValue() / 100;
|
||||||
System.out.println(totalUsage);
|
|
||||||
Subscription subscription = subscription();
|
Subscription subscription = subscription();
|
||||||
KeyInfo keyInfo = new KeyInfo();
|
KeyInfo keyInfo = new KeyInfo();
|
||||||
String start_key = key.substring(0, 6);
|
String start_key = key.substring(0, 6);
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ public class TestOpenAIAPI {
|
|||||||
.build();
|
.build();
|
||||||
|
|
||||||
try (Response response = client.newCall(request).execute()) {
|
try (Response response = client.newCall(request).execute()) {
|
||||||
System.out.println(response.body().string());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,13 +0,0 @@
|
|||||||
package org.ruoyi.common.chat.plugin;
|
|
||||||
|
|
||||||
|
|
||||||
import lombok.Data;
|
|
||||||
import org.ruoyi.common.chat.openai.plugin.PluginParam;
|
|
||||||
|
|
||||||
@Data
|
|
||||||
public class CmdReq extends PluginParam {
|
|
||||||
/**
|
|
||||||
* 指令
|
|
||||||
*/
|
|
||||||
private String cmd;
|
|
||||||
}
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
package org.ruoyi.common.chat.plugin;
|
|
||||||
|
|
||||||
import lombok.Data;
|
|
||||||
|
|
||||||
@Data
|
|
||||||
public class CmdResp {
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 返回结果
|
|
||||||
*/
|
|
||||||
private String result;
|
|
||||||
}
|
|
||||||
@@ -1,88 +0,0 @@
|
|||||||
package org.ruoyi.common.chat.plugin;
|
|
||||||
|
|
||||||
import org.ruoyi.common.chat.openai.plugin.PluginAbstract;
|
|
||||||
|
|
||||||
import java.sql.*;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author ageer
|
|
||||||
*/
|
|
||||||
public class SqlPlugin extends PluginAbstract<SqlReq, SqlResp> {
|
|
||||||
|
|
||||||
public SqlPlugin(Class<?> r) {
|
|
||||||
super(r);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public SqlResp func(SqlReq args) {
|
|
||||||
SqlResp resp = new SqlResp();
|
|
||||||
resp.setUserBalance(getBalance(args.getUsername()));
|
|
||||||
return resp;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public String content(SqlResp resp) {
|
|
||||||
return "用户余额:"+resp.getUserBalance();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public String getBalance(String userName) {
|
|
||||||
// MySQL 8.0 以下版本 - JDBC 驱动名及数据库 URL
|
|
||||||
String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver";
|
|
||||||
String DB_URL = "jdbc:mysql://43.139.70.230:3306/ry-vue";
|
|
||||||
// 数据库的用户名与密码,需要根据自己的设置
|
|
||||||
String USER = "ry-vue";
|
|
||||||
String PASS = "BXZiGsY35K523Xfx";
|
|
||||||
Connection conn = null;
|
|
||||||
Statement stmt = null;
|
|
||||||
String balance = "0.1";
|
|
||||||
|
|
||||||
try{
|
|
||||||
// 注册 JDBC 驱动
|
|
||||||
Class.forName(JDBC_DRIVER);
|
|
||||||
|
|
||||||
// 打开链接
|
|
||||||
System.out.println("连接数据库...");
|
|
||||||
conn = DriverManager.getConnection(DB_URL,USER,PASS);
|
|
||||||
|
|
||||||
// 执行查询
|
|
||||||
System.out.println(" 实例化Statement对象...");
|
|
||||||
stmt = conn.createStatement();
|
|
||||||
String sql;
|
|
||||||
sql = "SELECT user_balance FROM sys_user where user_name ='" + userName + "'";
|
|
||||||
ResultSet rs = stmt.executeQuery(sql);
|
|
||||||
// 展开结果集数据库
|
|
||||||
while(rs.next()){
|
|
||||||
// 通过字段检索
|
|
||||||
balance = rs.getString("user_balance");
|
|
||||||
// 输出数据
|
|
||||||
System.out.print("余额: " + balance);
|
|
||||||
System.out.print("\n");
|
|
||||||
}
|
|
||||||
// 完成后关闭
|
|
||||||
rs.close();
|
|
||||||
stmt.close();
|
|
||||||
conn.close();
|
|
||||||
}catch(SQLException se){
|
|
||||||
// 处理 JDBC 错误
|
|
||||||
se.printStackTrace();
|
|
||||||
}catch(Exception e){
|
|
||||||
// 处理 Class.forName 错误
|
|
||||||
e.printStackTrace();
|
|
||||||
}finally{
|
|
||||||
// 关闭资源
|
|
||||||
try{
|
|
||||||
if(stmt!=null) stmt.close();
|
|
||||||
}catch(SQLException se2){
|
|
||||||
}// 什么都不做
|
|
||||||
try{
|
|
||||||
if(conn!=null) conn.close();
|
|
||||||
}catch(SQLException se){
|
|
||||||
se.printStackTrace();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return balance;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
package org.ruoyi.common.chat.plugin;
|
|
||||||
|
|
||||||
|
|
||||||
import lombok.Data;
|
|
||||||
import org.ruoyi.common.chat.openai.plugin.PluginParam;
|
|
||||||
|
|
||||||
@Data
|
|
||||||
public class SqlReq extends PluginParam {
|
|
||||||
/**
|
|
||||||
* 用户名称
|
|
||||||
*/
|
|
||||||
private String username;
|
|
||||||
}
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
package org.ruoyi.common.chat.plugin;
|
|
||||||
|
|
||||||
import lombok.Data;
|
|
||||||
|
|
||||||
@Data
|
|
||||||
public class SqlResp {
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 用户余额
|
|
||||||
*/
|
|
||||||
private String userBalance;
|
|
||||||
}
|
|
||||||
@@ -45,11 +45,7 @@ import tech.ordinaryroad.live.chat.client.douyu.netty.handler.DouyuConnectionHan
|
|||||||
|
|
||||||
import java.beans.PropertyChangeEvent;
|
import java.beans.PropertyChangeEvent;
|
||||||
import java.beans.PropertyChangeListener;
|
import java.beans.PropertyChangeListener;
|
||||||
import java.io.IOException;
|
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.concurrent.Executors;
|
|
||||||
import java.util.concurrent.ScheduledExecutorService;
|
|
||||||
import java.util.concurrent.TimeUnit;
|
|
||||||
import java.util.concurrent.atomic.AtomicBoolean;
|
import java.util.concurrent.atomic.AtomicBoolean;
|
||||||
import java.util.concurrent.locks.Lock;
|
import java.util.concurrent.locks.Lock;
|
||||||
import java.util.concurrent.locks.ReentrantLock;
|
import java.util.concurrent.locks.ReentrantLock;
|
||||||
@@ -95,12 +91,9 @@ class DouyuLiveChatClientTest implements IDouyuConnectionListener, IDouyuMsgList
|
|||||||
.build();
|
.build();
|
||||||
|
|
||||||
long startTime = System.currentTimeMillis(); // 获取开始时间的毫秒数
|
long startTime = System.currentTimeMillis(); // 获取开始时间的毫秒数
|
||||||
System.out.println("执行前.......");
|
|
||||||
Thread.sleep(3000);
|
Thread.sleep(3000);
|
||||||
System.out.println("执行后.......");
|
|
||||||
long endTime = System.currentTimeMillis(); // 获取结束时间的毫秒数
|
long endTime = System.currentTimeMillis(); // 获取结束时间的毫秒数
|
||||||
long timeDiff = endTime - startTime; // 计算时间差
|
long timeDiff = endTime - startTime; // 计算时间差
|
||||||
System.out.println("执行时间 " + timeDiff / 1000 + " 秒。");
|
|
||||||
|
|
||||||
try (Response response = okClient.newCall(request).execute()) {
|
try (Response response = okClient.newCall(request).execute()) {
|
||||||
if (response.body() != null) {
|
if (response.body() != null) {
|
||||||
|
|||||||
@@ -48,7 +48,6 @@ class DouyuCodecUtilTest {
|
|||||||
Map<String, Object> stringObjectMap = DouyuCodecUtil.parseDouyuSttStringToMap(mapkb);
|
Map<String, Object> stringObjectMap = DouyuCodecUtil.parseDouyuSttStringToMap(mapkb);
|
||||||
assertNotNull(stringObjectMap);
|
assertNotNull(stringObjectMap);
|
||||||
stringObjectMap.forEach((string, o) -> {
|
stringObjectMap.forEach((string, o) -> {
|
||||||
System.out.println(string);
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -58,7 +57,6 @@ class DouyuCodecUtilTest {
|
|||||||
Map<String, Object> stringObjectMap = DouyuCodecUtil.parseDouyuSttStringToMap(pdrinfo);
|
Map<String, Object> stringObjectMap = DouyuCodecUtil.parseDouyuSttStringToMap(pdrinfo);
|
||||||
assertNotNull(stringObjectMap);
|
assertNotNull(stringObjectMap);
|
||||||
stringObjectMap.forEach((string, o) -> {
|
stringObjectMap.forEach((string, o) -> {
|
||||||
System.out.println(string);
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -78,7 +76,6 @@ class DouyuCodecUtilTest {
|
|||||||
}});
|
}});
|
||||||
}});
|
}});
|
||||||
}});
|
}});
|
||||||
System.out.println(douyuSttString);
|
|
||||||
assertEquals("key1@=value1/key2@=2/key3@=11@AA=11@AS12@AA=12@AS@S22@AA=22@AS21@AA=21@AS@S/".length(), douyuSttString.length());
|
assertEquals("key1@=value1/key2@=2/key3@=11@AA=11@AS12@AA=12@AS@S22@AA=22@AS21@AA=21@AS@S/".length(), douyuSttString.length());
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -87,8 +84,6 @@ class DouyuCodecUtilTest {
|
|||||||
String mapkb = "type@=mapkb/pk_time@=600/teams@=team@AA=5@ASres@AA=1@ASsc@AA=660000@ASbf@AA=0@AS@Steam@AA=6@ASres@AA=2@ASsc@AA=600000@ASbf@AA=0@AS@Steam@AA=4@ASres@AA=3@ASsc@AA=456000@ASbf@AA=0@AS@Steam@AA=2@ASres@AA=4@ASsc@AA=302000@ASbf@AA=0@AS@Steam@AA=3@ASres@AA=5@ASsc@AA=100000@ASbf@AA=0@AS@Steam@AA=1@ASres@AA=6@ASsc@AA=200@ASbf@AA=0@AS@S/";
|
String mapkb = "type@=mapkb/pk_time@=600/teams@=team@AA=5@ASres@AA=1@ASsc@AA=660000@ASbf@AA=0@AS@Steam@AA=6@ASres@AA=2@ASsc@AA=600000@ASbf@AA=0@AS@Steam@AA=4@ASres@AA=3@ASsc@AA=456000@ASbf@AA=0@AS@Steam@AA=2@ASres@AA=4@ASsc@AA=302000@ASbf@AA=0@AS@Steam@AA=3@ASres@AA=5@ASsc@AA=100000@ASbf@AA=0@AS@Steam@AA=1@ASres@AA=6@ASsc@AA=200@ASbf@AA=0@AS@S/";
|
||||||
IDouyuMsg iDouyuMsg = DouyuCodecUtil.parseDouyuSttString(mapkb, DouyuCodecUtil.MSG_TYPE_RECEIVE);
|
IDouyuMsg iDouyuMsg = DouyuCodecUtil.parseDouyuSttString(mapkb, DouyuCodecUtil.MSG_TYPE_RECEIVE);
|
||||||
String douyuSttString = DouyuCodecUtil.toDouyuSttString(iDouyuMsg);
|
String douyuSttString = DouyuCodecUtil.toDouyuSttString(iDouyuMsg);
|
||||||
System.out.println(mapkb);
|
|
||||||
System.out.println(douyuSttString);
|
|
||||||
assertEquals(mapkb.length(), douyuSttString.length());
|
assertEquals(mapkb.length(), douyuSttString.length());
|
||||||
IDouyuMsg douyuSttStringMsg = DouyuCodecUtil.parseDouyuSttString(douyuSttString, DouyuCodecUtil.MSG_TYPE_RECEIVE);
|
IDouyuMsg douyuSttStringMsg = DouyuCodecUtil.parseDouyuSttString(douyuSttString, DouyuCodecUtil.MSG_TYPE_RECEIVE);
|
||||||
assertNotNull(douyuSttStringMsg);
|
assertNotNull(douyuSttStringMsg);
|
||||||
@@ -97,6 +92,5 @@ class DouyuCodecUtilTest {
|
|||||||
@Test
|
@Test
|
||||||
void unescape() {
|
void unescape() {
|
||||||
String unescape = DouyuCodecUtil.unescape("team@AA=5@ASres@AA=1@ASsc@AA=660000@ASbf@AA=0@AS@Steam@AA=6@ASres@AA=2@ASsc@AA=600000@ASbf@AA=0@AS@Steam@AA=4@ASres@AA=3@ASsc@AA=456000@ASbf@AA=0@AS@Steam@AA=2@ASres@AA=4@ASsc@AA=302000@ASbf@AA=0@AS@Steam@AA=3@ASres@AA=5@ASsc@AA=100000@ASbf@AA=0@AS@Steam@AA=1@ASres@AA=6@ASsc@AA=200@ASbf@AA=0@AS@S");
|
String unescape = DouyuCodecUtil.unescape("team@AA=5@ASres@AA=1@ASsc@AA=660000@ASbf@AA=0@AS@Steam@AA=6@ASres@AA=2@ASsc@AA=600000@ASbf@AA=0@AS@Steam@AA=4@ASres@AA=3@ASsc@AA=456000@ASbf@AA=0@AS@Steam@AA=2@ASres@AA=4@ASsc@AA=302000@ASbf@AA=0@AS@Steam@AA=3@ASres@AA=5@ASsc@AA=100000@ASbf@AA=0@AS@Steam@AA=1@ASres@AA=6@ASsc@AA=200@ASbf@AA=0@AS@S");
|
||||||
System.out.println(unescape);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -26,7 +26,6 @@ class HuyaCodecUtilTest {
|
|||||||
ConnectParaInfo wsConnectParaInfo = ConnectParaInfo.newWSConnectParaInfo(ver, exp, appSrc);
|
ConnectParaInfo wsConnectParaInfo = ConnectParaInfo.newWSConnectParaInfo(ver, exp, appSrc);
|
||||||
byte[] byteArray = wsConnectParaInfo.toByteArray();
|
byte[] byteArray = wsConnectParaInfo.toByteArray();
|
||||||
String s = HuyaCodecUtil.ab2str(byteArray);
|
String s = HuyaCodecUtil.ab2str(byteArray);
|
||||||
System.out.println(s);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -36,7 +35,6 @@ class HuyaCodecUtilTest {
|
|||||||
String s = HuyaCodecUtil.ab2str(byteArray);
|
String s = HuyaCodecUtil.ab2str(byteArray);
|
||||||
|
|
||||||
String btoa = HuyaCodecUtil.btoa(s);
|
String btoa = HuyaCodecUtil.btoa(s);
|
||||||
System.out.println(btoa);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -67,7 +65,6 @@ class HuyaCodecUtilTest {
|
|||||||
LiveLaunchReq liveLaunchReq = new LiveLaunchReq();
|
LiveLaunchReq liveLaunchReq = new LiveLaunchReq();
|
||||||
liveLaunchReq = wupReq.getUniAttribute().getByClass("tReq", liveLaunchReq);
|
liveLaunchReq = wupReq.getUniAttribute().getByClass("tReq", liveLaunchReq);
|
||||||
UserId tId = liveLaunchReq.getTId();
|
UserId tId = liveLaunchReq.getTId();
|
||||||
System.out.println(wupReq.getTarsServantRequest().getVersion());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -96,4 +93,4 @@ class HuyaCodecUtilTest {
|
|||||||
|
|
||||||
UserId tId = getLivingInfoReq.getTId();
|
UserId tId = getLivingInfoReq.getTId();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -28,13 +28,5 @@ class KuaishouApisTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
void sendComment() {
|
void sendComment() {
|
||||||
System.out.println(KuaishouApis.sendComment(System.getenv("cookie"),
|
|
||||||
"3x6pb6bcmjrarvs",
|
|
||||||
KuaishouApis.SendCommentRequest
|
|
||||||
.builder()
|
|
||||||
.liveStreamId("XKLoBv2mAEo")
|
|
||||||
.content("666666a")
|
|
||||||
.build()
|
|
||||||
));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -84,7 +84,6 @@ public class SingleHttpClient {
|
|||||||
if (params != null) {
|
if (params != null) {
|
||||||
String paramStr = EntityUtils.toString(new UrlEncodedFormEntity(params, Consts.UTF_8));
|
String paramStr = EntityUtils.toString(new UrlEncodedFormEntity(params, Consts.UTF_8));
|
||||||
httpGet = new HttpGet(url + "?" + paramStr);
|
httpGet = new HttpGet(url + "?" + paramStr);
|
||||||
// System.out.println(url + "?" + paramStr);
|
|
||||||
} else {
|
} else {
|
||||||
httpGet = new HttpGet(url);
|
httpGet = new HttpGet(url);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -292,9 +292,6 @@ public class CommonTools {
|
|||||||
sb.append(content.substring(lastStart));
|
sb.append(content.substring(lastStart));
|
||||||
}
|
}
|
||||||
if (sb.length() != 0) {
|
if (sb.length() != 0) {
|
||||||
System.out.println(EmojiParser.parseToUnicode(sb.toString()));
|
|
||||||
System.out.println(EmojiParser.parseToAliases(EmojiParser.parseToUnicode(sb.toString())));
|
|
||||||
System.out.println(EmojiParser.removeAllEmojis(sb.toString()));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -61,7 +61,6 @@ public class MD5Util {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
System.out.println(MD5Encrypt("wxwobot"));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -70,8 +70,7 @@ public class ChatController {
|
|||||||
@PostMapping("/audio")
|
@PostMapping("/audio")
|
||||||
@ResponseBody
|
@ResponseBody
|
||||||
public WhisperResponse audio(@RequestParam("file") MultipartFile file) {
|
public WhisperResponse audio(@RequestParam("file") MultipartFile file) {
|
||||||
WhisperResponse whisperResponse = sseService.speechToTextTranscriptionsV2(file);
|
return sseService.speechToTextTranscriptionsV2(file);
|
||||||
return whisperResponse;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -62,7 +62,6 @@ public class OllamaServiceImpl implements IChatService {
|
|||||||
OllamaStreamHandler streamHandler = (s) -> {
|
OllamaStreamHandler streamHandler = (s) -> {
|
||||||
String substr = s.substring(response.length());
|
String substr = s.substring(response.length());
|
||||||
response.append(substr);
|
response.append(substr);
|
||||||
System.out.println(substr);
|
|
||||||
try {
|
try {
|
||||||
emitter.send(substr);
|
emitter.send(substr);
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
|
|||||||
Reference in New Issue
Block a user