2026-08-31 18:01:34 +08:00
|
|
|
|
"""
|
|
|
|
|
|
unified 入口 — 同时挂载 moldinsight + inventory,供前端同域反代统一访问
|
|
|
|
|
|
"""
|
|
|
|
|
|
import os, sys
|
|
|
|
|
|
from pathlib import Path
|
|
|
|
|
|
|
|
|
|
|
|
src_root = Path(__file__).parent.parent
|
|
|
|
|
|
sys.path.insert(0, str(src_root))
|
|
|
|
|
|
|
|
|
|
|
|
os.chdir(Path(__file__).parent.parent.parent)
|
|
|
|
|
|
|
|
|
|
|
|
from shared.app_factory import create_app
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def _register_routers(app):
|
|
|
|
|
|
"""注册 unified 业务路由"""
|
|
|
|
|
|
try:
|
|
|
|
|
|
from moldinsight.api import router as moldinsight_router
|
|
|
|
|
|
app.include_router(moldinsight_router, prefix="/api")
|
|
|
|
|
|
except Exception as e:
|
|
|
|
|
|
print(f"[WARN] MoldInsight 路由: {e}")
|
|
|
|
|
|
|
2026-09-18 17:22:01 +08:00
|
|
|
|
# D11:HTML 报告代理挂根路径,URL 形状与原 StaticFiles 保持一致(/html/{filename})
|
|
|
|
|
|
try:
|
|
|
|
|
|
from moldinsight.api.html_report_router import include_into as include_html_report
|
|
|
|
|
|
include_html_report(app)
|
|
|
|
|
|
except Exception as e:
|
|
|
|
|
|
print(f"[WARN] HTML 报告路由: {e}")
|
|
|
|
|
|
|
2026-08-31 18:01:34 +08:00
|
|
|
|
try:
|
|
|
|
|
|
from inventory.api import inventory_router
|
|
|
|
|
|
app.include_router(inventory_router)
|
|
|
|
|
|
except Exception as e:
|
|
|
|
|
|
print(f"[WARN] Inventory 路由: {e}")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app = create_app(
|
|
|
|
|
|
title="Gemold - Unified Backend",
|
|
|
|
|
|
service_name="unified",
|
2026-09-18 17:22:01 +08:00
|
|
|
|
connect_rustfs=True,
|
2026-08-31 18:01:34 +08:00
|
|
|
|
serve_frontend_static=False,
|
|
|
|
|
|
register_routers=_register_routers,
|
|
|
|
|
|
)
|