예제 #1
0
    def get(self):
        user = DBOHHOUser()
        query = user.get_query()
        total_count = user.get_count(query)
        today_start = OHHODatetime.get_today_start()
        utc_today_start = OHHODatetime.beijing2utc(today_start)
        today_query = user.get_great_than_equal_created_at(
            query, utc_today_start)
        today_count = user.get_count(today_query)

        return self.render(
            STATISTICS_USER_HTML,
            total_count=total_count,
            today_count=today_count,
        )
예제 #2
0
    def get_exclude_user_list(self, user_id):
        created_at = OHHODatetime.get_today_start()
        created_at = OHHODatetime.beijing2utc(created_at)
        one_day_before = OHHODatetime.get_some_hour_after(created_at, -24)
        query = self.exclude.get_query()
        query = self.exclude.get_great_than_equal_created_at(
            query, one_day_before)
        query1 = self.exclude.get_by_user(query, user_id)
        query2 = self.exclude.get_by_exclude_user(query, user_id)
        if self.exclude.is_empty(query1):
            user1_list = list()
        else:
            user1_list = [exclude.exclude_user_id for exclude in query1]

        if self.exclude.is_empty(query1):
            user2_list = list()
        else:
            user2_list = [exclude.user_id for exclude in query2]
        return list(set(user1_list + user2_list))
예제 #3
0
    def get(self):
        device = DBOHHODevice()
        query = device.get_query()
        total_count = device.get_count(query)
        today_start = OHHODatetime.get_today_start()
        utc_today_start = OHHODatetime.beijing2utc(today_start)
        today_query = device.get_great_than_equal_changed_at(query, utc_today_start)
        today_count = device.get_count(today_query)

        relation = DBOHHOUserAndDeviceRelation()
        relation_query = relation.get_query()
        relation_query = relation.get_valid(relation_query)
        total_bind_count = relation.get_count(relation_query)
        today_bind_query = relation.get_great_than_equal_changed_at(relation_query, utc_today_start)
        today_bind_count = relation.get_count(today_bind_query)

        return self.render(STATISTICS_DEVICE_HTML,
                           total_count=total_count,
                           today_count=today_count,
                           today_bind_count=today_bind_count,
                           total_bind_count=total_bind_count,
                           )