def done_in_week(self, year=None, month=None, day=None, date=None): """ Kards that were completed in the week of the specified day. """ if not date: date = munge_date(year, month, day) date = make_end_date(date=date) start_date, end_date = week_range(date) results = self.done().filter(done_date__lte=date, done_date__gte=start_date) return results
def test_week_range(self): from kardboard.util import week_range today = datetime.datetime(year=2011, month=5, day=12) start, end = week_range(today) self.assertEqual(5, start.month) self.assertEqual(8, start.day) self.assertEqual(2011, start.year) self.assertEqual(5, end.month) self.assertEqual(14, end.day) self.assertEqual(2011, end.year) today = datetime.datetime(year=2011, month=6, day=5) start, end = week_range(today) self.assertEqual(6, start.month) self.assertEqual(5, start.day) self.assertEqual(2011, start.year) self.assertEqual(6, end.month) self.assertEqual(11, end.day) self.assertEqual(2011, end.year)
def _make_backlog_markers(lead_time, weekly_throughput, backlog_cards): backlog_markers = [] if not isnan(lead_time) and app.config.get('BACKLOG_MARKERS', False): counter = 0 batch_counter = 0 for k in backlog_cards: if counter % weekly_throughput == 0: batch_counter += 1 est_done_date = datetime.datetime.now() + relativedelta.relativedelta(days=lead_time * batch_counter) start_date, end_date = week_range(est_done_date) est_done_monday = end_date + relativedelta.relativedelta(days=2) # Adjust to Monday backlog_markers.append(est_done_monday) counter +=1 return backlog_markers
def _make_backlog_markers(lead_time, weekly_throughput, backlog_cards): backlog_markers = [] if lead_time is None or isnan(lead_time) or weekly_throughput <= 0: return backlog_markers counter = 0 batch_counter = 0 for k in backlog_cards: if counter % weekly_throughput == 0: batch_counter += 1 est_done_date = datetime.datetime.now() + relativedelta.relativedelta(days=lead_time * batch_counter) start_date, end_date = week_range(est_done_date) est_done_monday = end_date + relativedelta.relativedelta(days=2) # Adjust to Monday backlog_markers.append(est_done_monday) counter += 1 return backlog_markers