refactor(db)!: adopt project-routed pooled databases

Reorganize WNDB by responsibility and remove legacy scheme endpoints.\n\nRoute analysis and time-series access through project pools, preserve transactional realtime replacement, and refresh GIS materialized views after writes.\n\nAdd database architecture documentation, live pooling coverage, API contract updates, and executable container verification.\n\nBREAKING CHANGE: legacy scheme APIs and flat app.native.wndb module imports are removed.
This commit is contained in:
2026-08-25 18:35:05 +08:00
parent fdbcc5c033
commit fa188af0b1
181 changed files with 8446 additions and 33546 deletions
@@ -1,7 +1,6 @@
from fastapi import APIRouter, Request, Query, Path, Body
from typing import Any, List, Dict, Union
from app.services.tjnetwork import (
Any,
ChangeSet,
get_control,
get_control_schema,
@@ -1,7 +1,6 @@
from fastapi import APIRouter, Request, Query, Path, Body
from typing import Any, List, Dict, Union
from app.services.tjnetwork import (
Any,
ChangeSet,
add_curve,
delete_curve,
@@ -1,7 +1,6 @@
from fastapi import APIRouter, Request, Query, Path, Body
from typing import Any, List, Dict, Union
from app.services.tjnetwork import (
Any,
ChangeSet,
get_energy,
get_energy_schema,
@@ -1,7 +1,6 @@
from fastapi import APIRouter, Request, Query, Path, Body
from typing import Any, List, Dict, Union
from app.services.tjnetwork import (
Any,
ChangeSet,
add_pattern,
delete_pattern,
+2 -3
View File
@@ -1,11 +1,9 @@
from fastapi import APIRouter, Request, Query, Path, Body
from typing import Any, List, Dict, Union
from app.services.tjnetwork import (
Any,
ChangeSet,
add_mixing,
add_source,
api,
delete_mixing,
delete_source,
get_emitter,
@@ -23,6 +21,7 @@ from app.services.tjnetwork import (
get_tank_reaction,
get_tank_reaction_schema,
set_emitter,
set_mixing,
set_pipe_reaction,
set_quality,
set_reaction,
@@ -270,7 +269,7 @@ async def fastapi_set_mixing(
更新指定水池的混合属性值。
"""
props = await req.json()
return api.set_mixing(network, ChangeSet(props))
return set_mixing(network, ChangeSet(props))
@router.post("/mixing-configurations", response_model=None, summary="添加混合", description="在网络中添加一个新的混合")
async def fastapi_add_mixing(
@@ -1,7 +1,6 @@
from fastapi import APIRouter, Request, Query, Path, Body, Response
from typing import Any, List, Dict, Union
from app.services.tjnetwork import (
Any,
ChangeSet,
add_label,
add_vertex,