approval/app/schemas/feishu_external.py

36 lines
727 B
Python

from __future__ import annotations
from typing import Any, Dict, List, Optional
from pydantic import BaseModel, Field
class FeishuExternalQueryFilter(BaseModel):
key: str
value: Any
class FeishuExternalQueryRequest(BaseModel):
keyword: Optional[str] = ""
page: int = 1
page_size: int = Field(default=20, alias="pageSize")
filters: List[FeishuExternalQueryFilter] = []
raw: Dict[str, Any] = {}
class Config:
extra = "allow"
class FeishuExternalItem(BaseModel):
id: str
label: str
value: str
extra: Dict[str, Any] = {}
class FeishuExternalQueryResponse(BaseModel):
code: int = 0
msg: str = "ok"
total: int = 0
data: List[FeishuExternalItem] = []