from ...sync_system.strategy import DefaultSyncStrategy from ...sync_system.config import StrategyConfig, OrphanAction, UpdateDirection from schemas.company.company import CompanyResponse class CompanySyncStrategy(DefaultSyncStrategy[CompanyResponse]): """ Company 同步策略 业务规则: 1. 使用 (code) 作为业务唯一键 2. 支持自动绑定 3. 默认配置为日常推送模式(本地创建推送到远程,不拉取远程孤儿) schema 已在类定义中设置,禁止在初始化时传入其他 schema。 """ # 类变量:schema 固定为 ContractResponse schema = CompanyResponse # 类变量:默认配置 default_config = StrategyConfig( auto_bind=True, auto_bind_fields=["code"], depend_fields={}, local_orphan_action=OrphanAction.NONE, remote_orphan_action=OrphanAction.CREATE_LOCAL, update_direction=UpdateDirection.PULL, )