Небольшой рефактор
This commit is contained in:
@@ -33,6 +33,8 @@ class ClockifyAPI(ClockifyConfig):
|
|||||||
"""
|
"""
|
||||||
time_entries_url = self.time_entries_url
|
time_entries_url = self.time_entries_url
|
||||||
activities = requests.get(self.base_url + time_entries_url, params=kwargs, headers={"X-API-KEY": self.token}).json()
|
activities = requests.get(self.base_url + time_entries_url, params=kwargs, headers={"X-API-KEY": self.token}).json()
|
||||||
|
if not activities:
|
||||||
|
return []
|
||||||
logger.info(f"Получено задач: {len(activities)}")
|
logger.info(f"Получено задач: {len(activities)}")
|
||||||
time_worked_out_total = 0
|
time_worked_out_total = 0
|
||||||
|
|
||||||
|
|||||||
@@ -31,9 +31,6 @@ class RedmineAPI(RedmineConfig):
|
|||||||
is_beginner = config.is_beginner
|
is_beginner = config.is_beginner
|
||||||
if is_beginner:
|
if is_beginner:
|
||||||
logging.info(f"{Fore.YELLOW}Делим трудочасы пополам{Fore.RESET}")
|
logging.info(f"{Fore.YELLOW}Делим трудочасы пополам{Fore.RESET}")
|
||||||
if len(activities) == 0:
|
|
||||||
logger.info(Fore.YELLOW + "Нет задач для занесения трудочасов" + Fore.RESET)
|
|
||||||
return
|
|
||||||
tracked = []
|
tracked = []
|
||||||
for activity in tqdm(activities, desc="Занесение трудочасов"):
|
for activity in tqdm(activities, desc="Занесение трудочасов"):
|
||||||
if not(not activity.is_tracked and activity.date_end):
|
if not(not activity.is_tracked and activity.date_end):
|
||||||
|
|||||||
1
db/db.py
1
db/db.py
@@ -257,4 +257,3 @@ class Database:
|
|||||||
)
|
)
|
||||||
finally:
|
finally:
|
||||||
self.con.commit()
|
self.con.commit()
|
||||||
|
|
||||||
|
|||||||
17
track.py
17
track.py
@@ -46,8 +46,11 @@ def main():
|
|||||||
|
|
||||||
if end:
|
if end:
|
||||||
to_ = f"{end.day} {config.MONTHS.get(end.month)} {end.year} г."
|
to_ = f"{end.day} {config.MONTHS.get(end.month)} {end.year} г."
|
||||||
|
|
||||||
logger.info(Fore.YELLOW + "Парсим задачи" + (f" с {from_} " if start else " ") + (f"до {to_}" if end else "") + Fore.RESET)
|
if start == end:
|
||||||
|
logger.info(f"{Fore.YELLOW}Парсим задачи за {from_}{Fore.RESET}")
|
||||||
|
else:
|
||||||
|
logger.info(Fore.YELLOW + "Парсим задачи" + (f" с {from_} " if start else " ") + (f"до {to_}" if end else "") + Fore.RESET)
|
||||||
|
|
||||||
clock = ClockifyAPI(
|
clock = ClockifyAPI(
|
||||||
token=config.CLOCKIFY_TOKEN,
|
token=config.CLOCKIFY_TOKEN,
|
||||||
@@ -82,18 +85,25 @@ def main():
|
|||||||
try:
|
try:
|
||||||
logging.info(f"{Fore.YELLOW}Получение Тегов{Fore.RESET}")
|
logging.info(f"{Fore.YELLOW}Получение Тегов{Fore.RESET}")
|
||||||
tags = clock.get_tags(is_updating=True, **{"page-size": clock.tags_count})
|
tags = clock.get_tags(is_updating=True, **{"page-size": clock.tags_count})
|
||||||
|
|
||||||
logging.info(f"{Fore.YELLOW}Получение Задач с Redmine{Fore.RESET}")
|
logging.info(f"{Fore.YELLOW}Получение Задач с Redmine{Fore.RESET}")
|
||||||
issues = [red.get_issue(parse_task_id(tag.title)) for tag in tags]
|
issues = [red.get_issue(parse_task_id(tag.title)) for tag in tags]
|
||||||
|
|
||||||
logging.info(f"{Fore.YELLOW}Получение Проектов Ветро{Fore.RESET}")
|
logging.info(f"{Fore.YELLOW}Получение Проектов Ветро{Fore.RESET}")
|
||||||
vetro_projects = clock.get_vetro_projects()
|
vetro_projects = clock.get_vetro_projects()
|
||||||
|
|
||||||
logging.info(f"{Fore.YELLOW}Получение Типов деятельности{Fore.RESET}")
|
logging.info(f"{Fore.YELLOW}Получение Типов деятельности{Fore.RESET}")
|
||||||
activity_types = red.get_time_entry_activities()
|
activity_types = red.get_time_entry_activities()
|
||||||
|
|
||||||
logging.info(f"{Fore.YELLOW}Сохранение Тегов{Fore.RESET}")
|
logging.info(f"{Fore.YELLOW}Сохранение Тегов{Fore.RESET}")
|
||||||
db.insert_tags(tags)
|
db.insert_tags(tags)
|
||||||
|
|
||||||
logging.info(f"{Fore.YELLOW}Сохранение Задач Redmine{Fore.RESET}")
|
logging.info(f"{Fore.YELLOW}Сохранение Задач Redmine{Fore.RESET}")
|
||||||
db.insert_tasks(issues)
|
db.insert_tasks(issues)
|
||||||
|
|
||||||
logging.info(f"{Fore.YELLOW}Сохранение Проектов Ветро{Fore.RESET}")
|
logging.info(f"{Fore.YELLOW}Сохранение Проектов Ветро{Fore.RESET}")
|
||||||
db.insert_vetro_projects(vetro_projects)
|
db.insert_vetro_projects(vetro_projects)
|
||||||
|
|
||||||
logging.info(f"{Fore.YELLOW}Сохранение Типов деятелности{Fore.RESET}")
|
logging.info(f"{Fore.YELLOW}Сохранение Типов деятелности{Fore.RESET}")
|
||||||
db.insert_activity_types(activity_types)
|
db.insert_activity_types(activity_types)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
@@ -108,6 +118,9 @@ def main():
|
|||||||
"page-size": args.page_size,
|
"page-size": args.page_size,
|
||||||
},
|
},
|
||||||
), key=lambda x: x.date_start)
|
), key=lambda x: x.date_start)
|
||||||
|
if not activities:
|
||||||
|
logger.info(Fore.YELLOW + "Нет задач для занесения трудочасов" + Fore.RESET)
|
||||||
|
return
|
||||||
db.insert_activities(activities)
|
db.insert_activities(activities)
|
||||||
if args.debug:
|
if args.debug:
|
||||||
logger.debug("Пропускаем этап загрузки трудочасов")
|
logger.debug("Пропускаем этап загрузки трудочасов")
|
||||||
|
|||||||
Reference in New Issue
Block a user