48 lines
860 B
Python
48 lines
860 B
Python
from dataclasses import dataclass
|
|
from datetime import datetime, timedelta
|
|
|
|
from enums import ClockifyProjects, VetroProjects
|
|
|
|
|
|
@dataclass
|
|
class Activity:
|
|
id: str
|
|
vetro_project_id: VetroProjects
|
|
task_id: int
|
|
tag_id: str
|
|
description: str
|
|
project_id: ClockifyProjects
|
|
time_spent: float
|
|
date_start: datetime
|
|
date_end: datetime = None
|
|
is_tracked: bool = False
|
|
|
|
def __str__(self):
|
|
return f'{self.date_start + timedelta(hours=3)}|{self.description} для задачи #{self.task_id}'
|
|
|
|
|
|
@dataclass
|
|
class Tag:
|
|
id: str
|
|
title: str
|
|
|
|
def __str__(self):
|
|
return self.title
|
|
|
|
|
|
@dataclass
|
|
class ActivityType:
|
|
id: int
|
|
title: str
|
|
|
|
def __str__(self):
|
|
return self.title
|
|
|
|
@dataclass
|
|
class VetroProject:
|
|
id: str
|
|
title: str
|
|
|
|
def __str__(self):
|
|
return self.title
|