class _Response(BaseModel): jsonrpc: StrictStr = Field('2.0', const=True, example='2.0') id: Union[StrictStr, int] = Field(None, example=0) result: result_model class Config: extra = 'forbid'
class _Request(BaseModel): jsonrpc: StrictStr = Field('2.0', const=True, example='2.0') id: Union[StrictStr, int] = Field(None, example=0) method: StrictStr = Field(name, const=True, example=name) class Config: extra = 'forbid'
class Product(BaseModel): id: UUID4 instrument_type_id: Optional[str] = Field(None, alias="instrumentTypeID") symbol: str description: str category: Optional[str] = None currency_id: Optional[str] = Field(None, alias="currencyID") url_image: str sector: Optional[str] = None parent_id: Optional[str] = Field(None, alias="parentID") name: str daily_return: float daily_return_percentage: float last_traded: float monthly_return: int yearly_return_percentage: Optional[float] = None yearly_return_value: Optional[float] = None popularity: int watched: int news: int bought: int viewed: int product_type: str trade_status: Optional[int] encoded_name: str period: str inception_date: Optional[str] instrument_tags: List[Any] child_instruments: List[Instrument] class Config: alias_generator = camelcase
class UserM(BaseModel): name: str = Field(..., title="User Name", max_length=30) pwd: str = Field('123456', title="User pwd", max_length=100) email: str = Field(None, title="User email", max_length=50) state: int = Field(1, title="User state") # state: Optional[int] = 1 role: int = Field(3, title="User role")
class _ErrorResponseModel(BaseModel): jsonrpc: StrictStr = Field('2.0', const=True, example='2.0') id: Union[StrictStr, int] = Field(None, example=0) error: _JsonRpcErrorModel class Config: extra = 'forbid'
class OracleConfig(BasicSQLAlchemyConfig): # defaults scheme: str = Field( default="oracle+cx_oracle", description="Will be set automatically to default value.", ) service_name: Optional[str] = Field( default=None, description="Oracle service name. If using, omit `database`.") database: Optional[str] = Field( default=None, description="If using, omit `service_name`.") @pydantic.validator("service_name") def check_service_name(cls, v, values): if values.get("database") and v: raise ValueError( "specify one of 'database' and 'service_name', but not both") return v def get_sql_alchemy_url(self): url = super().get_sql_alchemy_url() if self.service_name: assert not self.database url = f"{url}/?service_name={self.service_name}" return url
class Model(BaseModel): modelID: int=Field(...) modelName: Optional[str]='Default Model' modelType: Optional[str] pickleFolderPath: Optional[str] pickleFilePath: Optional[str] belongsToUserID: int=Field(...) belongsToProjectID: int=Field(...) belongsToDataID: Optional[int] class Config: allow_population_by_field_name=True arbitrary_types_allowed=True schema_extra={ "example":{ "modelID": 13, "modelName": "Linear Regression", "modelType": "Default Model", "pickleFolderPath": "/path/to/pickel/data/", "pickleFilePath": "/path/to/pickle/data/model.pkl", "belongsToUserID": 101, "belongsToProjectID": 45, "belongsToDataID": 2 } }
class Project(BaseModel): projectID:int=Field(...) projectName:Optional[str] rawDataPath: Optional[str] projectFolderPath: Optional[str] belongsToUserID: int=Field(...) listOfDataIDs: Optional[List[int]] autoConfigFileLocation: Optional[str] plotsPath: Optional[str] projectType: Optional[str] isAuto: Optional[bool] target: Optional[str] class Config: arbitrary_types_allowed=True allow_population_by_field_name=True schema_extra={ "example":{ "projectID": 45, "projectName": "Boston Housing", "rawDataPath": "/path/to/data/rawfile.csv", "projectFolderPath": "/path/to/data", "belongsToUserID": 101, "listOfDataIDs": [2,4], "autoConfigFileLocation": "path/to/auto/config/file.yaml", "plotsPath": "path/to/plot/file.html", "projectType":"regression", "isAuto": "true", "target": "target" } }
class LineageFileSourceConfig(ConfigModel): file: str = Field(description="Path to lineage file to ingest.") preserve_upstream: bool = Field( default=True, description= "Whether we want to query datahub-gms for upstream data. False means it will hard replace upstream data for a given entity. True means it will query the backend for existing upstreams and include it in the ingestion run", )
class BaseUsageConfig(BaseTimeWindowConfig): top_n_queries: pydantic.PositiveInt = Field( default=10, description="Number of top queries to save to each table.") user_email_pattern: AllowDenyPattern = Field( default=AllowDenyPattern.allow_all(), description="regex patterns for user emails to filter in usage.", ) include_operational_stats: bool = Field( default=True, description="Whether to display operational stats.") format_sql_queries: bool = Field( default=False, description="Whether to format sql queries") @pydantic.validator("top_n_queries") def ensure_top_n_queries_is_not_too_big(cls, v: int) -> int: minimum_query_size = 20 max_queries = int( GenericAggregatedDataset.total_budget_for_query_list / minimum_query_size) if (int(GenericAggregatedDataset.total_budget_for_query_list / v) < minimum_query_size): raise ValueError( f"top_n_queries is set to {v} but it can be maximum {max_queries}" ) return v
class PlayerErrorResponse(HALBase): message: str = Field( ..., description="Error message", ) location: str = Field( ..., description="Error location", ) param: str = Field( ..., description="Parameters of request", ) value: Union[ tuple[list[str], PlayerAIInfo, PlayerAIInfo, int], tuple[PlayerAIInfo, PlayerAIInfo], tuple[PlayerAIInfo, PlayerAIInfo, int], ] = Field( ..., description="Values of request", ) error: str = Field( ..., description="Error type", )
def build_resp_model(cls): ns = { 'code': Field(cls.CODE, const=True, example=cls.CODE), 'message': Field(cls.MESSAGE, const=True, example=cls.MESSAGE), '__annotations__': { 'code': int, 'message': str, } } data_model = cls.get_data_model() if data_model is not None: if not cls.data_required: data_model = Optional[data_model] # noinspection PyTypeChecker ns['__annotations__']['data'] = data_model name = cls._component_name or cls.__name__ _JsonRpcErrorModel = ModelMetaclass.__new__(ModelMetaclass, '_JsonRpcErrorModel', (BaseModel, ), ns) _JsonRpcErrorModel = component_name(name, cls.__module__)(_JsonRpcErrorModel) @component_name(f'_ErrorResponse[{name}]', cls.__module__) class _ErrorResponseModel(BaseModel): jsonrpc: StrictStr = Field('2.0', const=True, example='2.0') id: Union[StrictStr, int] = Field(None, example=0) error: _JsonRpcErrorModel class Config: extra = 'forbid' return _ErrorResponseModel
class TimelogsById(BaseEndpoint): timelog_ids: Sequence[TimelogId] = Field(..., max_length=100) plain_text: Optional[StrictBool] fields_: Optional[Sequence[Literal[ TimelogOptionalFields.BILLING_TYPE]]] = Field(None, alias="fields") @property def endpoint_data(self) -> EndpointData: return EndpointData( method="GET", url=f"/timelogs/{','.join(self.timelog_ids)}", query_params=self._query_params, ) @property def _query_params(self) -> WrApiQueryParams: params = WrApiQueryParams() if self.plain_text is not None: params["plainText"] = self._convert_bool(self.plain_text) if self.fields_: params["fields"] = self._convert_seq(self.fields_) return params
class GetEducationalBookingsRequest(BaseModel): redactorEmail: Optional[str] = Field(description="Email of querying redactor") status: Optional[Union[EducationalBookingStatus, BookingStatus]] = Field( description="Status of retrieved preboookings" ) class Config: title = "Prebookings query filters"
class GTFSRTParams(BaseAVLParams, BoundingBoxMixin): class Config(BaseAVLParams.Config): pass route_id: Optional[str] = Field(None, alias="routeId") start_time_after: Optional[datetime] = Field(None, alias="startTimeAfter") start_time_before: Optional[datetime] = Field(None, alias="startTimeBefore")
class AnomalousRegion(BaseModel): bounding_box: conlist(int, min_items=4, max_items=4) = Field( ..., description=("[x left, y top, x right, y bottom]. " "Must be an absolute type value.")) score: confloat(ge=0., le=1.0) = Field( ..., description=("Score for the region. " "For GT, value must be 1."))
class Add_Certificate(BaseModel): belong_committee: str = Field(title='证书所属委员会', description='证书所属委员会') level: int = Field(title='证书等级', description='证书等级') certificate_image: str = Field(None, title='证书图片路径', description='证书图片路径') get_time: datetime = Field(title='证书获得时间', description='证书获得时间') class Config: orm_mode = True
class MessageContent(BaseModel): type: MessageType content: Optional[str] url: Optional[str] = Field( description= "URL to download the media file. Only filled if type is a media type.") geo_point: Optional[GeoPoint] = Field( description="The geo point. Only filled if type is geo.")
class GetOrder(Order): sys_order_id: str = Field(title='id', description='本系统为订单生成的id') # 时间+ status: int = Field(title='订单状态', description='1.支付成功 2.支付失败') creat_time: datetime = Field(title='订单创建时间', description='订单创建时间') pay_time: datetime = Field(None, title='订单付款时间', description='订单付款时间') class Config: orm_mode = True
class JsonRpcRequest(BaseModel): jsonrpc: StrictStr = Field('2.0', const=True, example='2.0') id: Union[StrictStr, int] = Field(None, example=0) method: StrictStr params: dict class Config: extra = 'forbid'
class EducationalInstitutionResponse(AdageBaseResponseModel): credit: int = Field(description="Total credit granted to the educational institution") isFinal: bool = Field(description="Flag to know if the credit has been approved and is now final") prebookings: list[EducationalBookingResponse] class Config: title = "School response model" alias_generator = to_camel allow_population_by_field_name = True
class DynamicTypedConfig(ConfigModel): type: str = Field(description="The type of the dynamic object", ) # This config type is declared Optional[Any] here. The eventual parser for the # specified type is responsible for further validation. config: Optional[Any] = Field( default=None, description= "The configuration required for initializing the state provider. Default: The datahub_api config if set at pipeline level. Otherwise, the default DatahubClientConfig. See the defaults (https://github.com/datahub-project/datahub/blob/master/metadata-ingestion/src/datahub/ingestion/graph/client.py#L19).", )
class GetBrank(BaseModel): brank_id: str = Field(title='银行账户信息id', description='银行账户信息id') # 时间+ sys_order_id: str = Field(title='sys_order_id', description='本系统为订单生成的id') # 时间+ brank_number: str = Field(title='银行账户号', description='银行账户号') # 时间+ brank_number_name: str = Field(title='银行账户名称', description='银行账户名称') # 时间+ class Config: orm_mode = True
class PlayerGameRequest(BaseModel): white: PlayerAIInfo = Field( ..., description="Information of white-side AI", ) black: PlayerAIInfo = Field( ..., description="Information of black-side AI", )
class PlayerMeasurementResponse(HALBase): white: PlayerAIMeasurement = Field( ..., description="Measurement of white-side AI", ) black: PlayerAIMeasurement = Field( ..., description="Measurement of black-side AI", )
class Major_Base(BaseModel): id: int = Field(title='专业id', description='专业表的id') major_name: str = Field(title='专业名称', description='专业名称') level: str = Field(title='专业等级', description='专业等级') level_test_id: int = Field(title='水平考试id', description='水平考试id') is_delete: int = Field(None, title='是否删除', description='是否删除') class Config: orm_mode = True
class VolumeDeviceModel(BaseModel): available: bool device_id: str human_readable_type: str = Field("") lsm_data: Dict[str, Any] lvs: List[LogicalVolumeEntryModel] = Field([]) path: str rejected_reasons: List[str] sys_api: DeviceSysInfoModel
class ClickHouseUsageConfig( ClickHouseConfig, BaseUsageConfig, EnvBasedSourceConfigBase ): email_domain: str = Field(description="") options: dict = Field(default={}, description="") query_log_table: str = Field(default="system.query_log", exclude=True) def get_sql_alchemy_url(self): return super().get_sql_alchemy_url()
class LevelTest(BaseModel): id: int = Field(None, title='水平考试id', description='水平考试表的主键') test_name: str = Field(title='水平考试名称', description='水平考试名称') start_time: datetime = Field(title='水平考试开始时间', description='水平考试开始时间') end_time: datetime = Field(title='水平考试结束时间', description='水平考试结束时间') is_delete:int = Field(None,title='是否删除', description='是否删除') class Config: orm_mode = True
class ContactBase(DispatchBase): email: EmailStr name: Optional[str] = Field(None, nullable=True) is_active: Optional[bool] = True is_external: Optional[bool] = False company: Optional[str] = Field(None, nullable=True) contact_type: Optional[str] = Field(None, nullable=True) notes: Optional[str] = Field(None, nullable=True) owner: Optional[str] = Field(None, nullable=True)