Exemplo n.º 1
0
    def get_usage_for_month(self, dateobj):
        """
        Returns all C{UsageItem} for month C{dateobj}
        """
        if not isinstance(dateobj, datetime.date):
            raise ValueError("Don't know what to do with %s" % dateobj)

        first_current_month_day = dateobj.replace(day=1).timetuple()
        if dateobj.month < 12:
            nextmonth = dateobj.month + 1
            nextyear = dateobj.year
        else:
            nextmonth = 1
            nextyear = dateobj.year + 1

        first_next_month_day = dateobj.replace(day=1,
                                               month=nextmonth,
                                               year=nextyear).timetuple()

        return list(
            self.store.query(
                UsageItem,
                AND(
                    UsageItem.start_time >=
                    Time.fromStructTime(first_current_month_day),
                    UsageItem.start_time <
                    Time.fromStructTime(first_next_month_day))))
 def get_usage_for_day(self, dateobj):
     """
     Returns all C{UsageItem} for day C{dateobj}
     """
     if not isinstance(dateobj, datetime.date):
         raise ValueError("Don't know what to do with %s" % dateobj)
     
     today = dateobj.timetuple()
     tomorrow = (dateobj + datetime.timedelta(hours=24)).timetuple()
     
     return list(self.store.query(UsageItem,
                 AND(UsageItem.start_time >= Time.fromStructTime(today),
                     UsageItem.end_time < Time.fromStructTime(tomorrow)))
             )
Exemplo n.º 3
0
    def get_usage_for_day(self, dateobj):
        """
        Returns all C{UsageItem} for day C{dateobj}
        """
        if not isinstance(dateobj, datetime.date):
            raise ValueError("Don't know what to do with %s" % dateobj)

        today = dateobj.timetuple()
        tomorrow = (dateobj + datetime.timedelta(hours=24)).timetuple()

        return list(
            self.store.query(
                UsageItem,
                AND(UsageItem.start_time >= Time.fromStructTime(today),
                    UsageItem.end_time < Time.fromStructTime(tomorrow))))
    def get_usage_for_month(self, dateobj):
        """
        Returns all C{UsageItem} for month C{dateobj}
        """
        if not isinstance(dateobj, datetime.date):
            raise ValueError("Don't know what to do with %s" % dateobj)

        first_current_month_day = dateobj.replace(day=1).timetuple()
        if dateobj.month < 12:
            nextmonth = dateobj.month + 1
            nextyear = dateobj.year
        else:
            nextmonth = 1
            nextyear = dateobj.year + 1
        
        first_next_month_day = dateobj.replace(day=1, month=nextmonth,
                                                year=nextyear).timetuple()

        return list(self.store.query(UsageItem,
                AND(UsageItem.start_time >= Time.fromStructTime(
                                            first_current_month_day),
                    UsageItem.start_time < Time.fromStructTime(
                                            first_next_month_day)))
                )