From e7cbffcd700951b661e3dcfcb33269c618cea7c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=AD=D0=B4=D1=83=D0=B0=D1=80=D0=B4?= Date: Tue, 16 Jun 2026 17:44:20 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A3=D0=B1=D1=80=D0=B0=D0=BB=20billable=20?= =?UTF-8?q?=D0=B8=20=D0=B7=D0=B0=D0=BC=D0=B5=D0=BD=D0=B8=D0=BB=20=D0=BF?= =?UTF-8?q?=D1=80=D0=BE=D0=B2=D0=B5=D1=80=D0=BA=D1=83=20=D0=BE=20"=D0=B7?= =?UTF-8?q?=D0=B0=D1=82=D1=80=D0=B5=D0=BA=D0=B0=D0=BD=D0=BD=D0=BE=D1=81?= =?UTF-8?q?=D1=82=D0=B8"=20=D0=BD=D0=B0=20=D0=B7=D0=B0=D0=BF=D0=B8=D1=81?= =?UTF-8?q?=D1=8C=20=D0=B8=D0=B7=20=D0=B1=D0=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/clockify.py | 3 ++- db/db.py | 9 +++++++++ track.py | 2 +- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/api/clockify.py b/api/clockify.py index 3709456..8fe6f2f 100644 --- a/api/clockify.py +++ b/api/clockify.py @@ -91,7 +91,7 @@ class ClockifyAPI(ClockifyConfig): time_spent=time_to_hour((end if end else datetime.utcnow()) - start), date_start=start, date_end=end, - is_tracked=activity["billable"], + is_tracked=db.has_time_entry(activity["id"]), author_id=author["id"] ) ) @@ -159,6 +159,7 @@ class ClockifyAPI(ClockifyConfig): title=vetro_project["name"] ) for vetro_project in vetro_projects] + # DEPRECATED def mark_tracked(self, activities: list[Activity]): """ Помечает активности затреканными (Billable) на сервере Clockify diff --git a/db/db.py b/db/db.py index 4c50df6..db07efc 100644 --- a/db/db.py +++ b/db/db.py @@ -309,3 +309,12 @@ class Database: ] except Exception as e: logger.error(e) + + def has_time_entry(self, activity_id: str) -> bool: + """Проверяет, есть ли запись о времени для активности""" + try: + result = self.cursor.execute("SELECT * FROM time_entry WHERE activity_id = ?", (activity_id,)).fetchone() + return bool(result) + except Exception as e: + logger.error(e) + return False diff --git a/track.py b/track.py index 64492bc..0ff9f62 100644 --- a/track.py +++ b/track.py @@ -62,7 +62,7 @@ def main(): db.insert_activities(activities) try: tracked_activities = red.track_activities(activities) - clock.mark_tracked(tracked_activities) + # clock.mark_tracked(tracked_activities) if not is_debug: db.insert_time_entries(tracked_activities) db.insert_activities(tracked_activities)