Commit 5c14255a authored by alex yao's avatar alex yao

feat: database chain 异常处理

parent df3ff71a
......@@ -10,12 +10,21 @@ import java.io.Serializable;
*/
public class DBChainResult extends AbstractResult implements Serializable {
private String status;
private String sql;
private String sqlResult;
private String result;
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getSql() {
return sql;
......@@ -40,4 +49,14 @@ public class DBChainResult extends AbstractResult implements Serializable {
public void setResult(String result) {
this.result = result;
}
@Override
public String toString() {
return "DBChainResult{" +
"status='" + status + '\'' +
", sql='" + sql + '\'' +
", sqlResult='" + sqlResult + '\'' +
", result='" + result + '\'' +
'}';
}
}
......@@ -25,7 +25,12 @@ public class ChainServiceImpl implements ChainService {
@Override
public DBChainResult dbChain(DBChainResponse response) {
logger.info("dbChain response : {}", response);
return aiDialogueService.dbChain(response);
DBChainResult dbChainResult = aiDialogueService.dbChain(response);
if (dbChainResult == null || dbChainResult.getStatus().equals("error")) {
logger.error("dbChain result error : {} , response:{}", dbChainResult, response);
return null;
}
return dbChainResult;
}
}
package cn.com.poc.thirdparty.resource.demand.ai.service;
import cn.com.poc.thirdparty.resource.demand.ai.entity.dbchain.DBChainResponse;
import cn.com.poc.thirdparty.resource.demand.ai.entity.dbchain.DBChainResult;
import cn.com.poc.thirdparty.service.ChainService;
import cn.com.yict.framemax.core.spring.SingleContextInitializer;
import com.alibaba.fastjson.JSONObject;
import org.junit.runner.RunWith;
import org.junit.Test;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.test.context.web.WebAppConfiguration;
import javax.annotation.Resource;
/**
* @author alex.yao
* @date 2025/4/28
*/
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(initializers = SingleContextInitializer.class)
@WebAppConfiguration
public class ChainServiceTest {
@Resource
private ChainService chainService;
@Test
public void test_dbChain(){
DBChainResponse response = new DBChainResponse();
response.setQuestion("查询百度插件详情");
// response.setPrompt();
// response.setTableFilters();
response.setMysqlUser("dmgm_ai_root");
response.setMysqlPassword("8253f3862ab6");
response.setMysqlHost("192.168.21.31");
response.setMysqlPort(3306);
response.setMysqlDatabase("dgmg_ai_sit");
DBChainResult dbChainResult = chainService.dbChain(response);
System.out.println(JSONObject.toJSONString(dbChainResult));
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment