archive.py 文件源码

python
阅读 35 收藏 0 点赞 0 评论 0

项目:dsmr-reader 作者: dennissiemensma 项目源码 文件源码
def get_context_data(self, **kwargs):
        context_data = super(ArchiveXhrSummary, self).get_context_data(**kwargs)
        context_data['capabilities'] = dsmr_backend.services.get_capabilities()
        context_data['frontend_settings'] = FrontendSettings.get_solo()

        selected_datetime = timezone.make_aware(timezone.datetime.strptime(
            self.request.GET['date'], formats.get_format('DSMR_STRFTIME_DATE_FORMAT')
        ))
        selected_level = self.request.GET['level']

        context_data['statistics'] = {
            'days': dsmr_stats.services.day_statistics(selected_datetime.date()),
            'months': dsmr_stats.services.month_statistics(selected_datetime.date()),
            'years': dsmr_stats.services.year_statistics(selected_datetime.date()),
        }[selected_level]

        context_data['title'] = {
            'days': formats.date_format(selected_datetime.date(), 'DSMR_GRAPH_LONG_DATE_FORMAT'),
            'months': formats.date_format(selected_datetime.date(), 'DSMR_DATEPICKER_MONTH'),
            'years': selected_datetime.date().year,
        }[selected_level]

        # Only day level allows some additional data.
        if selected_level == 'days':
            try:
                # This WILL fail when we either have no prices at all or conflicting ranges.
                context_data['energy_price'] = EnergySupplierPrice.objects.by_date(
                    target_date=selected_datetime.date()
                )
            except (EnergySupplierPrice.DoesNotExist, EnergySupplierPrice.MultipleObjectsReturned):
                # Default to zero prices.
                context_data['energy_price'] = EnergySupplierPrice()

            context_data['notes'] = Note.objects.filter(day=selected_datetime.date())

        context_data['selected_level'] = selected_level
        context_data['selected_datetime'] = selected_datetime
        context_data['django_date_format'] = 'DJANGO_DATE_FORMAT'
        return context_data
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号