Files
000-platform/backend/app/routers/health.py
111 63e38ceb60
All checks were successful
continuous-integration/drone/push Build is passing
fix: 兼容 corp_id 字段不存在 + 添加迁移 API
2026-01-24 10:23:19 +08:00

46 lines
1.4 KiB
Python

"""健康检查路由"""
from fastapi import APIRouter, Depends
from sqlalchemy.orm import Session
from sqlalchemy import text
from ..config import get_settings
from ..database import get_db
router = APIRouter(tags=["health"])
settings = get_settings()
@router.get("/health")
async def health_check():
"""健康检查"""
return {
"status": "ok",
"app": settings.APP_NAME,
"version": settings.APP_VERSION
}
@router.post("/migrate/add-corp-id")
async def migrate_add_corp_id(db: Session = Depends(get_db)):
"""迁移:添加租户 corp_id 字段"""
try:
# 检查列是否存在
result = db.execute(text(
"SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS "
"WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'platform_tenants' AND COLUMN_NAME = 'corp_id'"
))
exists = result.scalar()
if exists:
return {"success": True, "message": "字段 corp_id 已存在,无需迁移"}
# 添加列
db.execute(text(
"ALTER TABLE platform_tenants ADD COLUMN corp_id VARCHAR(100) AFTER name"
))
db.commit()
return {"success": True, "message": "字段 corp_id 添加成功"}
except Exception as e:
return {"success": False, "error": str(e)}