Coverage for backend/PinchAnalysis/serializers/PinchOutputSerializers.py: 100%
46 statements
« prev ^ index » next coverage.py v7.10.7, created at 2025-11-06 23:27 +0000
« prev ^ index » next coverage.py v7.10.7, created at 2025-11-06 23:27 +0000
1from rest_framework import serializers
2from PinchAnalysis.models.OutputModels import GraphDataPoint, HeatReceiverUtilitySummary, HeatSupplierUtilitySummary, PinchCurve, PinchGraph, PinchGraphSet, PinchOutputs, PinchTemp, TargetSummary
4class PinchTempSerializer(serializers.ModelSerializer):
5 class Meta:
6 model = PinchTemp
7 fields = '__all__'
9class HotUtilitySummarySerializer(serializers.ModelSerializer):
10 class Meta:
11 model = HeatSupplierUtilitySummary
12 fields = '__all__'
14class ColdUtilitySummarySerializer(serializers.ModelSerializer):
15 class Meta:
16 model = HeatReceiverUtilitySummary
17 fields = '__all__'
19class TargetSummarySerializer(serializers.ModelSerializer):
20 hot_utilities = HotUtilitySummarySerializer(many=True, read_only=True)
21 cold_utilities = ColdUtilitySummarySerializer(many=True, read_only=True)
22 temp_pinch = PinchTempSerializer(read_only=True)
24 class Meta:
25 model = TargetSummary
26 fields = '__all__'
28class GraphDataPointSerializer(serializers.ModelSerializer):
29 class Meta:
30 model = GraphDataPoint
31 fields = '__all__'
33class PinchCurveSerializer(serializers.ModelSerializer):
34 data_points = GraphDataPointSerializer(many=True, required=False)
35 class Meta:
36 model = PinchCurve
37 fields = '__all__'
39class PinchGraphSerializer(serializers.ModelSerializer):
40 segments = PinchCurveSerializer(many=True, required=False)
41 class Meta:
42 model = PinchGraph
43 fields = '__all__'
45class PinchGraphSetSerializer(serializers.ModelSerializer):
46 graphs = PinchGraphSerializer(many=True, required=False)
47 class Meta:
48 model = PinchGraphSet
49 fields = '__all__'
51class PinchOutputsSerializer(serializers.ModelSerializer):
52 targets = TargetSummarySerializer(many=True, required=False)
53 graph_sets = PinchGraphSetSerializer(many=True, required=False)
55 class Meta:
56 model = PinchOutputs
57 fields = '__all__'