35 lines
1.0 KiB
Python
35 lines
1.0 KiB
Python
from typing import Any
|
|
|
|
from sqlalchemy.ext.asyncio import AsyncSession
|
|
|
|
from app.core.base_crud import CRUDBase
|
|
from app.core.base_schema import AuthSchema
|
|
|
|
from .model import DusDescriptorModel, DusObservationModel, DusTestModel
|
|
|
|
|
|
class DusDescriptorCRUD(CRUDBase[DusDescriptorModel, Any, Any]):
|
|
"""DUS 描述符模板 CRUD —— 直接复用 CRUDBase(自动注入数据权限过滤)。"""
|
|
|
|
def __init__(self, auth: AuthSchema, db: AsyncSession) -> None:
|
|
super().__init__(DusDescriptorModel, auth, db)
|
|
|
|
|
|
class DusTestCRUD(CRUDBase[DusTestModel, Any, Any]):
|
|
"""DUS 测试记录 CRUD。"""
|
|
|
|
def __init__(self, auth: AuthSchema, db: AsyncSession) -> None:
|
|
super().__init__(DusTestModel, auth, db)
|
|
|
|
|
|
class DusObservationCRUD(CRUDBase[DusObservationModel, Any, Any]):
|
|
"""DUS 观测 CRUD。"""
|
|
|
|
def __init__(self, auth: AuthSchema, db: AsyncSession) -> None:
|
|
super().__init__(DusObservationModel, auth, db)
|
|
|
|
|
|
dus_descriptor_crud = DusDescriptorCRUD
|
|
dus_test_crud = DusTestCRUD
|
|
dus_observation_crud = DusObservationCRUD
|