end=end)
def show(trackers):
- for i in today_trackers:
+ grouped = {}
+ total = 0
+ for i in trackers:
diff = i.end - i.start
- diff = parse_time(diff.seconds)
+ total += diff
+ time_passed = parse_time(diff.seconds)
+
+ key = (i.task, i.project)
+ if grouped.has_key(key):
+ grouped[key] += diff.seconds
+
+ else:
+ grouped[key] = diff.seconds
+
to_show = '%-20s | %-40s | #%-6d | %s | %s | %s'
- print to_show % (i.project, i.task, i.ticket, i.start, i.end, diff)
+ print to_show % (i.project, i.task, i.ticket, i.start, i.end,
+ time_passed)
+
+ print ''
+ for k,v in grouped.items():
+ task, project = k
+ time_passed = parse_time(v)
+ print 'Tiempo para "%s": %s' % (task, time_passed)
+
+ print '\nTotal para hoy: %s' % parse_time(total)
def show_today(delta=1):
+ # TODO yesterday no es real, hay que mirar desde las 00 del mismo dia
yesterday = datetime.datetime.now() - datetime.timedelta(delta)
today_trackers = Tracker.select(Tracker.q.start > yesterday)
show(today_trackers)
def show_grouped(trackers):
projects = {}
+ total = 0
for i in trackers:
diff = (i.end - i.start).seconds
+ total += diff
if projects.has_key(i.project):
projects[i.project] += diff
else:
for k,v in projects.items():
print 'Tiempo para %-50s: %s' % (k, parse_time(v))
+
+ print '\nTotal para hoy: %s' % parse_time(total)
+
+if __name__ == '__main__':
+ task, project, ticket = '','',0
+ args = sys.argv[1:]
+ if len(args) >= 1:
+ task = args[0]
+ if len(args) >= 2:
+ project = args[1]
+ if len(args) >= 3:
+ ticket = int(args[2])
+
+ track(task, project, ticket)