Обновление приложения

This commit is contained in:
2026-04-28 22:37:19 +03:00
parent 7d00cf062e
commit 52594b5dc6
99 changed files with 5736 additions and 1052 deletions

View File

@@ -0,0 +1,55 @@
from datetime import datetime, date, time
from decimal import Decimal
from pydantic import BaseModel, Field
class CalendarEventCreate(BaseModel):
title: str = Field(..., max_length=200)
description: str | None = None
event_date: date
event_time: time | None = None
is_recurring: bool = False
recurrence_pattern: str | None = Field(None, pattern="^(daily|weekly|monthly|yearly)$")
recurrence_end_date: date | None = None
related_operation_id: int | None = None
category_id: int | None = None
amount: Decimal | None = None
currency_id: int | None = None
reminder_days: int | None = Field(None, ge=0)
is_completed: bool = False
class CalendarEventUpdate(BaseModel):
title: str | None = Field(None, max_length=200)
description: str | None = None
event_date: date | None = None
event_time: time | None = None
is_recurring: bool | None = None
recurrence_pattern: str | None = None
recurrence_end_date: date | None = None
related_operation_id: int | None = None
category_id: int | None = None
amount: Decimal | None = None
reminder_days: int | None = None
is_completed: bool | None = None
class CalendarEventOut(BaseModel):
id: int
user_id: int
title: str
description: str | None = None
event_date: date
event_time: time | None = None
is_recurring: bool
recurrence_pattern: str | None = None
recurrence_end_date: date | None = None
related_operation_id: int | None = None
category_id: int | None = None
amount: Decimal | None = None
currency_id: int | None = None
reminder_days: int | None = None
is_completed: bool
created_at: datetime
model_config = {"from_attributes": True}