taolib.testing.email_service.repository.email_repo#
邮件 Repository。
提供邮件文档的数据访问操作。
Classes#
邮件 Repository。 |
Module Contents#
- class taolib.testing.email_service.repository.email_repo.EmailRepository(collection)#
Bases:
taolib.testing._base.repository.AsyncRepository[taolib.testing.email_service.models.email.EmailDocument]邮件 Repository。
- async find_by_status(status: taolib.testing.email_service.models.enums.EmailStatus, skip: int = 0, limit: int = 100) list[taolib.testing.email_service.models.email.EmailDocument]#
按状态查询邮件。
- async find_by_recipient(email: str, skip: int = 0, limit: int = 100) list[taolib.testing.email_service.models.email.EmailDocument]#
按收件人查询邮件。
- async find_queued_emails(limit: int = 100) list[taolib.testing.email_service.models.email.EmailDocument]#
查找待发送的队列邮件。
- async find_scheduled_ready(limit: int = 50) list[taolib.testing.email_service.models.email.EmailDocument]#
查找到期的计划邮件。
- async update_status(email_id: str, status: taolib.testing.email_service.models.enums.EmailStatus, **extra_fields: Any) taolib.testing.email_service.models.email.EmailDocument | None#
更新邮件状态。
- async increment_retry(email_id: str) taolib.testing.email_service.models.email.EmailDocument | None#
递增重试计数。
- async get_stats(start: datetime.datetime, end: datetime.datetime) dict[str, int]#
获取指定时间范围内的邮件统计。