def get_monthly_statistics(request): if not request.user.is_superuser: raise PermissionDenied end = get_past_time(use_view=True) start = end + dateutil.relativedelta.relativedelta(years=-1) sensor_values = SensorValueMonthlySum.objects.filter(timestamp__gte=start, timestamp__lte=end) months = sensor_values.extra({ 'month': "date_trunc('month', timestamp)" }).values('month').annotate(count=Count('id')) output = [] for month in months: month_start = month['month'] month_end = month['month'] + dateutil.relativedelta.relativedelta( months=1) - timedelta(days=1) month_data = [] month_data += functions.get_statistics_for_cogeneration_unit( month_start, month_end) month_data += functions.get_statistics_for_peak_load_boiler( month_start, month_end) month_data += functions.get_statistics_for_thermal_consumer( month_start, month_end) month_data += functions.get_statistics_for_electrical_consumer( month_start, month_end) month_data += functions.get_statistics_for_power_meter( month_start, month_end) output.append(month_data) return create_json_response(output, request)
def get_monthly_statistics(request): if not request.user.is_superuser: raise PermissionDenied end = get_past_time(use_view=True) start = end + dateutil.relativedelta.relativedelta(years=-1) sensor_values = SensorValueMonthlySum.objects.filter( timestamp__gte=start, timestamp__lte=end) months = sensor_values.extra({'month': "date_trunc('month', timestamp)"}).values( 'month').annotate(count=Count('id')) output = [] for month in months: month_start = month['month'] month_end = month['month'] + dateutil.relativedelta.relativedelta( months=1) - timedelta(days=1) month_data = [] month_data += functions.get_statistics_for_cogeneration_unit( month_start, month_end) month_data += functions.get_statistics_for_peak_load_boiler( month_start, month_end) month_data += functions.get_statistics_for_thermal_consumer( month_start, month_end) month_data += functions.get_statistics_for_electrical_consumer( month_start, month_end) month_data += functions.get_statistics_for_power_meter( month_start, month_end) output.append(month_data) return create_json_response(output, request)
def get_statistics(request): if not request.user.is_superuser: raise PermissionDenied end = get_past_time(use_view=True) start = end + dateutil.relativedelta.relativedelta(months=-1) output = [] output += functions.get_statistics_for_cogeneration_unit(start, end) output += functions.get_statistics_for_peak_load_boiler(start, end) output += functions.get_statistics_for_thermal_consumer(start, end) output += functions.get_statistics_for_electrical_consumer(start, end) output += functions.get_statistics_for_power_meter(start, end) return create_json_response(output, request)