import json import uuid from datetime import datetime from enum import Enum from typing import List from pydantic import BaseModel, validator, Json from schemas import DBBase class ReportBase(BaseModel): name: str = None query: str = None project_id: str = None class ReportCreate(ReportBase): name: str desc: str project_id: str query: dict cat: str class ReportEdit(BaseModel): report_id: str query: dict name: str desc: str class ReportCopy(BaseModel): report_ids: List[str] dest_project_id: str class ReportDelete(DBBase): pass class ReportRead(BaseModel): project_id: str report_id: List = [] dashboard_id: str = None # -------------------------------------------------------------- # 数据库模型 class ReportDB(DBBase): name: str user_id: str project_id: str desc: str query: dict cat: str create_date: datetime = datetime.now()