"""工区数据接口""" from fastapi import APIRouter, Depends from sqlalchemy.orm import Session from app.core.database import get_tunnel_db from app.core.logging_config import get_logger from app.schemas.work_area import WorkAreaBatchImport, WorkAreaQuery from app.schemas.common import BatchImportResponse, PageResponse from app.servives.work_area_service import WorkAreaService router = APIRouter(prefix="/work_area", tags=["工区数据"]) logger = get_logger(__name__) @router.post("/import", response_model=BatchImportResponse) async def batch_import( request: WorkAreaBatchImport, db: Session = Depends(get_tunnel_db) ): """批量导入工区数据""" logger.info(f"工区数据导入请求: account_id={request.account_id}, 数据量={len(request.data)}") return WorkAreaService.batch_import(db, request.account_id, request.data) @router.post("/query") async def query( request: WorkAreaQuery, db: Session = Depends(get_tunnel_db) ): """查询工区数据""" logger.info(f"工区数据查询请求: {request}") items, total = WorkAreaService.query(db, request) return { "total": total, "page": request.page, "page_size": request.page_size, "items": items }