"""业务接入边界:独立于核算月份和内部平账组。""" from datetime import date from uuid import UUID from pydantic import BaseModel, ConfigDict, Field, field_validator class SyncRange(BaseModel): model_config = ConfigDict(extra="forbid") start_date: date = date(2026, 3, 1) @field_validator("start_date") @classmethod def check_start(cls, value): if value < date(2026, 3, 1): raise ValueError("本次接入从2026年3月起,更早欠款通过期初承接") return value class BusinessSyncUpdate(SyncRange): enabled: bool expected_version: int = Field(ge=0) class BusinessSyncRun(SyncRange): request_key: UUID