This commit is contained in:
2025-11-25 21:22:30 -05:00
parent 72971f6d3e
commit f82ba25160
16 changed files with 860 additions and 100 deletions

View File

@@ -1,33 +1,29 @@
from dataclasses import dataclass
import uuid
from models.base import BaseModel
@dataclass
class Task:
class Task(BaseModel):
name: str
points: int
is_good: bool
image_id: str | None = None
id: str | None = None
def __post_init__(self):
if self.id is None:
self.id = str(uuid.uuid4())
@classmethod
def from_dict(cls, d: dict):
return cls(
id=d.get('id'),
obj = cls(
name=d.get('name'),
points=d.get('points', 0),
is_good=d.get('is_good', True),
image_id=d.get('image_id')
)
return cls._apply_base_fields(obj, d)
def to_dict(self):
return {
'id': self.id,
base = super().to_dict()
base.update({
'name': self.name,
'points': self.points,
'is_good': self.is_good,
'image_id': self.image_id
}
})
return base