60 lines
2.4 KiB
Go
60 lines
2.4 KiB
Go
package system
|
|
|
|
import (
|
|
handler "kra/internal/server/handler/system"
|
|
"kra/internal/server/middleware"
|
|
|
|
"github.com/gin-gonic/gin"
|
|
)
|
|
|
|
type AutoCodeRouter struct{}
|
|
|
|
var (
|
|
autoCodePackageApi = handler.AutoCodePackageApi{}
|
|
autoCodeTemplateApi = handler.AutoCodeTemplateApi{}
|
|
autoCodePluginApi = handler.AutoCodePluginApi{}
|
|
autoCodeMcpApi = handler.AutoCodeMcpApi{}
|
|
)
|
|
|
|
// InitAutoCodeRouter 初始化自动代码路由
|
|
func (s *AutoCodeRouter) InitAutoCodeRouter(Router *gin.RouterGroup, PublicRouter *gin.RouterGroup) {
|
|
autoCodeRouter := Router.Group("autoCode").Use(middleware.OperationRecordMiddleware())
|
|
autoCodeRouterWithoutRecord := Router.Group("autoCode")
|
|
publicAutoCodeRouter := PublicRouter.Group("autoCode")
|
|
{
|
|
autoCodeRouterWithoutRecord.GET("getDB", autoCodeApi.GetDB) // 获取数据库
|
|
autoCodeRouterWithoutRecord.GET("getTables", autoCodeApi.GetTables) // 获取对应数据库的表
|
|
autoCodeRouterWithoutRecord.GET("getColumn", autoCodeApi.GetColumn) // 获取指定表所有字段信息
|
|
}
|
|
{
|
|
// 代码包管理
|
|
autoCodeRouter.POST("getPackage", autoCodePackageApi.All) // 获取所有包
|
|
autoCodeRouter.POST("delPackage", autoCodePackageApi.Delete) // 删除包
|
|
autoCodeRouter.POST("createPackage", autoCodePackageApi.Create) // 创建包
|
|
autoCodeRouter.GET("getTemplates", autoCodePackageApi.Templates) // 获取所有模版
|
|
}
|
|
{
|
|
// 代码模板
|
|
autoCodeRouter.POST("preview", autoCodeTemplateApi.Preview) // 预览代码
|
|
autoCodeRouter.POST("createTemp", autoCodeTemplateApi.Create) // 创建代码
|
|
autoCodeRouter.POST("addFunc", autoCodeTemplateApi.AddFunc) // 增加方法
|
|
}
|
|
{
|
|
// MCP相关
|
|
autoCodeRouter.POST("mcp", autoCodeMcpApi.MCP) // 自动创建Mcp Tool模板
|
|
autoCodeRouter.POST("mcpList", autoCodeMcpApi.MCPList) // 获取MCP ToolList
|
|
autoCodeRouter.POST("mcpTest", autoCodeMcpApi.MCPTest) // MCP 工具测试
|
|
}
|
|
{
|
|
// 插件管理
|
|
autoCodeRouter.POST("pubPlug", autoCodePluginApi.Packaged) // 打包插件
|
|
autoCodeRouter.POST("installPlugin", autoCodePluginApi.Install) // 安装插件
|
|
}
|
|
{
|
|
// 公开路由
|
|
publicAutoCodeRouter.POST("llmAuto", autoCodeApi.LLMAuto) // LLM自动生成
|
|
publicAutoCodeRouter.POST("initMenu", autoCodePluginApi.InitMenu) // 初始化插件菜单
|
|
publicAutoCodeRouter.POST("initAPI", autoCodePluginApi.InitAPI) // 初始化插件API
|
|
}
|
|
}
|