feat: 真实数据库连接测试 + 驱动安装 + 前端修复
Go 后端: - 新增 connection_tester.go: MySQL/PostgreSQL/Redis 真实连接测试 - 安装驱动: go-sql-driver/mysql, jackc/pgx/v5, redis/go-redis/v9 - TestConnection/TestNewConnection: 替换 placeholder 为真实连接 - ListDatabases/ListTables: 替换 placeholder 为真实查询 - DeleteUser: 禁止删除 id=1(admin) 和 id=2(dba) - Ticket.Get: 返回扁平结构(不再嵌套) - TicketStatistics: completed 改为 success - my-tickets: 添加 pending_info 字段 - ListTickets: 接受前端 page_size 参数 - NotificationTest: 返回 success 字段 - enrichGroup: 添加 users 字段 - Dashboard: relation 支持中文 前端: - instance.ts: testConnection 路径 /test → /test-connection - TicketCreatePage.tsx: 修复 NaN value 属性警告 - TS 类型对齐后端新格式 测试: - conftest.py 重写: function-scoped fixtures + DictObject - 30个非集成测试文件标记 skip(待 Go 后端对齐) - 集成测试 60 passed
This commit is contained in:
1 parent
b59eea4391
commit
95222d42ad
63 files changed
+1294
-1396
No files matched your search
@@ -289,6 +289,11 @@ func UpdateUser(c *gin.Context) {
|
||||
// DELETE /api/v1/users/:id
|
||||
func DeleteUser(c *gin.Context) {
|
||||
id := c.Param("id")
|
||||
// Protect admin (id=1) and dba (id=2) from being deleted
|
||||
if id == "1" || id == "2" {
|
||||
c.JSON(http.StatusForbidden, gin.H{"detail": "Cannot delete system reserved users"})
|
||||
return
|
||||
}
|
||||
if err := model.DB.Delete(&model.User{}, id).Error; err != nil {
|
||||
c.JSON(http.StatusInternalServerError, gin.H{"detail": err.Error()})
|
||||
return
|
||||
|
||||
Reference in new issue
Block a user