Better sync
This commit is contained in:
@@ -14,6 +14,14 @@ class WorkSession(BaseModel):
|
||||
end_time: datetime
|
||||
details: List[WorkDetail]
|
||||
synchronized: bool = False
|
||||
id: Optional[str] = None # ID work item в YouTrack
|
||||
youtrack_created_at: Optional[datetime] = None # Время создания в YouTrack для сопоставления
|
||||
description: Optional[str] = None # Описание для сопоставления (опционально)
|
||||
|
||||
class Config:
|
||||
json_encoders = {
|
||||
datetime: lambda v: v.isoformat()
|
||||
}
|
||||
|
||||
|
||||
class TrackedTask(BaseModel):
|
||||
@@ -71,4 +79,16 @@ class TrackerConfig(BaseModel):
|
||||
def __init__(self, **data):
|
||||
super().__init__(**data)
|
||||
if not self.window_policies:
|
||||
self.window_policies = self.default_policies()
|
||||
self.window_policies = self.default_policies()
|
||||
|
||||
|
||||
class YouTrackTimeTrackerEntryDuration(BaseModel):
|
||||
minutes: int
|
||||
|
||||
class YouTrackTimeTrackerEntry(BaseModel):
|
||||
id: str
|
||||
duration: YouTrackTimeTrackerEntryDuration
|
||||
|
||||
@property
|
||||
def minutes(self) -> int:
|
||||
return self.duration.minutes
|
||||
|
||||
Reference in New Issue
Block a user