.
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
from datetime import datetime
|
from datetime import datetime, timedelta
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
from colorama import Fore
|
from colorama import Fore
|
||||||
@@ -36,7 +36,7 @@ class ClockifyAPI(ClockifyConfig):
|
|||||||
for tag_id in activity.get("tagIds", {"tagIds": []}):
|
for tag_id in activity.get("tagIds", {"tagIds": []}):
|
||||||
start = datetime.strptime(activity["timeInterval"]["start"], config.DATETIME_FORMAT)
|
start = datetime.strptime(activity["timeInterval"]["start"], config.DATETIME_FORMAT)
|
||||||
end = datetime.strptime(activity["timeInterval"]["end"], config.DATETIME_FORMAT) if activity["timeInterval"]["end"] else None
|
end = datetime.strptime(activity["timeInterval"]["end"], config.DATETIME_FORMAT) if activity["timeInterval"]["end"] else None
|
||||||
time_worked_out_total += time_to_hour((end if end else datetime.now()) - start)
|
time_worked_out_total += time_to_hour((end if end else datetime.utcnow()) - start)
|
||||||
tag = [tag for tag in self.get_tags() if tag.id == tag_id][0]
|
tag = [tag for tag in self.get_tags() if tag.id == tag_id][0]
|
||||||
try:
|
try:
|
||||||
task_id, task_title = tag.title.split(" - ")
|
task_id, task_title = tag.title.split(" - ")
|
||||||
|
|||||||
@@ -27,6 +27,12 @@ def configure_argument_parser():
|
|||||||
'--end',
|
'--end',
|
||||||
help='Дата окончания парсинга активностей в формате гггг-мм-дд'
|
help='Дата окончания парсинга активностей в формате гггг-мм-дд'
|
||||||
)
|
)
|
||||||
|
parser.add_argument(
|
||||||
|
'-p',
|
||||||
|
'--page-size',
|
||||||
|
help='Количество задач для вывода'
|
||||||
|
)
|
||||||
return parser
|
return parser
|
||||||
|
|
||||||
|
arg_parser = configure_argument_parser()
|
||||||
config = Config()
|
config = Config()
|
||||||
11
track.py
11
track.py
@@ -2,7 +2,7 @@ import logging
|
|||||||
import sys
|
import sys
|
||||||
|
|
||||||
from api import ClockifyAPI, RedmineAPI
|
from api import ClockifyAPI, RedmineAPI
|
||||||
from config import config, configure_argument_parser
|
from config import arg_parser, config
|
||||||
from utils import format_date, str_to_date, today_start, today_end
|
from utils import format_date, str_to_date, today_start, today_end
|
||||||
|
|
||||||
|
|
||||||
@@ -11,7 +11,6 @@ USER_ID = config.CLOCKIFY_USER_ID
|
|||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
arg_parser = configure_argument_parser()
|
|
||||||
args = arg_parser.parse_args()
|
args = arg_parser.parse_args()
|
||||||
start, end = None, None
|
start, end = None, None
|
||||||
if args.start:
|
if args.start:
|
||||||
@@ -30,11 +29,11 @@ def main():
|
|||||||
red = RedmineAPI(config.REDMINE_TOKEN)
|
red = RedmineAPI(config.REDMINE_TOKEN)
|
||||||
activities = clock.get_activities(
|
activities = clock.get_activities(
|
||||||
start=format_date(start),
|
start=format_date(start),
|
||||||
end=format_date(end)
|
end=format_date(end),
|
||||||
|
**{"page-size": args.page_size},
|
||||||
)
|
)
|
||||||
# tracked_activities = red.track_activities(activities)
|
tracked_activities = red.track_activities(activities)
|
||||||
# clock.mark_tracked(tracked_activities)
|
clock.mark_tracked(tracked_activities)
|
||||||
print(activities[-1])
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
|||||||
Reference in New Issue
Block a user