mirror of
https://github.com/CodePhiliaX/Chat2DB.git
synced 2025-07-30 11:12:55 +08:00
support sqlserver metadata update
This commit is contained in:
@ -4,6 +4,7 @@ import java.sql.Connection;
|
||||
import java.util.List;
|
||||
|
||||
import ai.chat2db.server.domain.api.param.DlExecuteParam;
|
||||
import ai.chat2db.server.domain.api.param.UpdateSelectResultParam;
|
||||
import ai.chat2db.server.domain.api.service.DlTemplateService;
|
||||
import ai.chat2db.server.tools.base.wrapper.result.DataResult;
|
||||
import ai.chat2db.server.tools.base.wrapper.result.ListResult;
|
||||
@ -11,6 +12,7 @@ import ai.chat2db.server.web.api.aspect.ConnectionInfoAspect;
|
||||
import ai.chat2db.server.web.api.controller.rdb.converter.RdbWebConverter;
|
||||
import ai.chat2db.server.web.api.controller.rdb.request.DdlCountRequest;
|
||||
import ai.chat2db.server.web.api.controller.rdb.request.DmlRequest;
|
||||
import ai.chat2db.server.web.api.controller.rdb.request.SelectResultUpdateRequest;
|
||||
import ai.chat2db.server.web.api.controller.rdb.vo.ExecuteResultVO;
|
||||
import ai.chat2db.spi.model.ExecuteResult;
|
||||
import ai.chat2db.spi.sql.Chat2DBContext;
|
||||
@ -54,6 +56,20 @@ public class RdbDmlController {
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* update 查询结果
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value = "/execute_update", method = {RequestMethod.POST, RequestMethod.PUT})
|
||||
public DataResult<String> executeUpdate(@RequestBody SelectResultUpdateRequest request) {
|
||||
UpdateSelectResultParam param = rdbWebConverter.request2param(request);
|
||||
return dlTemplateService.updateSelectResult(param);
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 增删改查等数据运维
|
||||
*
|
||||
|
@ -174,11 +174,13 @@ public class TableController {
|
||||
tableIndex.setTableName(table.getName());
|
||||
tableIndex.setDatabaseName(request.getDatabaseName());
|
||||
}
|
||||
|
||||
return tableService.buildSql(rdbWebConverter.tableRequest2param(request.getOldTable()),table)
|
||||
.map(rdbWebConverter::dto2vo);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 数据库支持的数据类型
|
||||
*
|
||||
|
@ -2,22 +2,9 @@ package ai.chat2db.server.web.api.controller.rdb.converter;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import ai.chat2db.server.domain.api.param.DlCountParam;
|
||||
import ai.chat2db.server.domain.api.param.DlExecuteParam;
|
||||
import ai.chat2db.server.domain.api.param.DropParam;
|
||||
import ai.chat2db.server.domain.api.param.ShowCreateTableParam;
|
||||
import ai.chat2db.server.domain.api.param.TablePageQueryParam;
|
||||
import ai.chat2db.server.domain.api.param.TableQueryParam;
|
||||
import ai.chat2db.server.domain.api.param.*;
|
||||
import ai.chat2db.server.web.api.controller.data.source.vo.DatabaseVO;
|
||||
import ai.chat2db.server.web.api.controller.rdb.request.DataExportRequest;
|
||||
import ai.chat2db.server.web.api.controller.rdb.request.DdlCountRequest;
|
||||
import ai.chat2db.server.web.api.controller.rdb.request.DdlExportRequest;
|
||||
import ai.chat2db.server.web.api.controller.rdb.request.DdlRequest;
|
||||
import ai.chat2db.server.web.api.controller.rdb.request.DmlRequest;
|
||||
import ai.chat2db.server.web.api.controller.rdb.request.TableBriefQueryRequest;
|
||||
import ai.chat2db.server.web.api.controller.rdb.request.TableDeleteRequest;
|
||||
import ai.chat2db.server.web.api.controller.rdb.request.TableDetailQueryRequest;
|
||||
import ai.chat2db.server.web.api.controller.rdb.request.TableRequest;
|
||||
import ai.chat2db.server.web.api.controller.rdb.request.*;
|
||||
import ai.chat2db.server.web.api.controller.rdb.vo.ColumnVO;
|
||||
import ai.chat2db.server.web.api.controller.rdb.vo.ExecuteResultVO;
|
||||
import ai.chat2db.server.web.api.controller.rdb.vo.IndexVO;
|
||||
@ -234,4 +221,7 @@ public abstract class RdbWebConverter {
|
||||
public abstract List<DatabaseVO> databaseDto2vo(List<Database> dto);
|
||||
|
||||
public abstract MetaSchemaVO metaSchemaDto2vo(MetaSchema data);
|
||||
|
||||
|
||||
public abstract UpdateSelectResultParam request2param(SelectResultUpdateRequest request);
|
||||
}
|
||||
|
@ -0,0 +1,44 @@
|
||||
package ai.chat2db.server.web.api.controller.rdb.request;
|
||||
|
||||
import ai.chat2db.server.web.api.controller.data.source.request.DataSourceBaseRequest;
|
||||
import ai.chat2db.server.web.api.controller.data.source.request.DataSourceConsoleRequestInfo;
|
||||
import ai.chat2db.server.web.api.controller.rdb.vo.HeaderVO;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class SelectResultUpdateRequest extends DataSourceBaseRequest implements DataSourceConsoleRequestInfo {
|
||||
|
||||
/**
|
||||
* 展示头的列表
|
||||
*/
|
||||
private List<HeaderVO> headerList;
|
||||
|
||||
/**
|
||||
* 修改后数据的列表
|
||||
*/
|
||||
private List<List<String>> dataList;
|
||||
|
||||
/**
|
||||
* 数据的列表
|
||||
*/
|
||||
private List<List<String>> oldDataList;
|
||||
|
||||
/**
|
||||
* 表名
|
||||
*/
|
||||
private String tableName;
|
||||
|
||||
/**
|
||||
* 控制台id
|
||||
*/
|
||||
@NotNull
|
||||
private Long consoleId;
|
||||
@Override
|
||||
public Long getConsoleId() {
|
||||
return consoleId;
|
||||
}
|
||||
|
||||
}
|
Reference in New Issue
Block a user