taolib.testing.data_sync.models.job#

同步作业数据模型。

定义 SyncJob 的 4-tier Pydantic 模型: Base → Create/Update → Response → Document

Classes#

SyncConnectionConfig

数据库连接配置。

SyncJobBase

同步作业基础字段。

SyncJobCreate

创建同步作业的输入模型。

SyncJobUpdate

更新同步作业的输入模型(所有字段可选)。

SyncJobResponse

同步作业的 API 响应模型。

SyncJobDocument

同步作业的 MongoDB 文档模型。

Module Contents#

class taolib.testing.data_sync.models.job.SyncConnectionConfig#

Bases: pydantic.BaseModel

数据库连接配置。

mongo_url: str = 'mongodb://localhost:27017'#
database: str#
collections: list[str] | None = None#
class taolib.testing.data_sync.models.job.SyncJobBase#

Bases: pydantic.BaseModel

同步作业基础字段。

name: str#
description: str#
scope: taolib.testing.data_sync.models.enums.SyncScope#
mode: taolib.testing.data_sync.models.enums.SyncMode#
source: SyncConnectionConfig#
target: SyncConnectionConfig#
transform_module: str | None#
field_mapping: dict[str, str] | None#
filter_query: dict[str, Any] | None#
schedule_cron: str | None#
batch_size: int#
failure_action: taolib.testing.data_sync.models.enums.FailureAction#
max_retries: int#
enabled: bool#
tags: list[str]#
class taolib.testing.data_sync.models.job.SyncJobCreate#

Bases: SyncJobBase

创建同步作业的输入模型。

class taolib.testing.data_sync.models.job.SyncJobUpdate#

Bases: pydantic.BaseModel

更新同步作业的输入模型(所有字段可选)。

description: str | None = None#
scope: taolib.testing.data_sync.models.enums.SyncScope | None = None#
mode: taolib.testing.data_sync.models.enums.SyncMode | None = None#
source: SyncConnectionConfig | None = None#
target: SyncConnectionConfig | None = None#
transform_module: str | None = None#
field_mapping: dict[str, str] | None = None#
filter_query: dict[str, Any] | None = None#
schedule_cron: str | None = None#
batch_size: int | None = None#
failure_action: taolib.testing.data_sync.models.enums.FailureAction | None = None#
max_retries: int | None = None#
enabled: bool | None = None#
tags: list[str] | None = None#
class taolib.testing.data_sync.models.job.SyncJobResponse#

Bases: SyncJobBase

同步作业的 API 响应模型。

id: str#
created_by: str#
updated_by: str#
created_at: datetime.datetime#
updated_at: datetime.datetime#
last_run_at: datetime.datetime | None = None#
last_run_status: str | None = None#
model_config#
class taolib.testing.data_sync.models.job.SyncJobDocument#

Bases: SyncJobBase

同步作业的 MongoDB 文档模型。

id: str#
created_by: str = 'system'#
updated_by: str = 'system'#
created_at: datetime.datetime#
updated_at: datetime.datetime#
last_run_at: datetime.datetime | None = None#
last_run_status: str | None = None#
model_config#
to_response() SyncJobResponse#

转换为 API 响应。