1
0
Fork 0

Expose frequency violation in Satellite API endpoint

Signed-off-by: Alfredos-Panagiotis Damkalis <fredy@fredy.gr>
spacecruft
Alfredos-Panagiotis Damkalis 2022-06-15 19:14:57 +03:00
parent 03309529a2
commit 56099d7055
1 changed files with 9 additions and 3 deletions

View File

@ -97,13 +97,14 @@ class SatelliteSerializer(serializers.ModelSerializer):
citation = serializers.SerializerMethodField()
associated_satellites = serializers.SerializerMethodField()
operator = serializers.SerializerMethodField()
is_frequency_violator = serializers.SerializerMethodField()
class Meta:
model = Satellite
fields = (
'sat_id', 'norad_cat_id', 'name', 'names', 'image', 'status', 'decayed', 'launched',
'deployed', 'website', 'operator', 'countries', 'telemetries', 'updated', 'citation',
'associated_satellites'
'is_frequency_violator', 'associated_satellites'
)
@extend_schema_field(OpenApiTypes.STR)
@ -184,12 +185,17 @@ class SatelliteSerializer(serializers.ModelSerializer):
@extend_schema_field(OpenApiTypes.OBJECT)
def get_associated_satellites(self, obj):
"""Returns Satellite decayed datetime"""
"""Returns Satellite IDs that are associated with the Satellite"""
return [
merged_satellite.satellite_identifier.sat_id
for merged_satellite in obj.associated_with.all()
]
@extend_schema_field(OpenApiTypes.BOOL)
def get_is_frequency_violator(self, obj):
"""Returns if there is a frequency violation"""
return obj.has_bad_transmitter
class TransmitterEntrySerializer(serializers.ModelSerializer):
"""SatNOGS DB TransmitterEntry API Serializer"""
@ -463,7 +469,7 @@ class TelemetrySerializer(serializers.ModelSerializer):
@extend_schema_field(OpenApiTypes.OBJECT)
def get_associated_satellites(self, obj):
"""Returns Satellite decayed datetime"""
"""Returns Satellite IDs that are associated with the Satellite"""
satellite = obj.satellite
if satellite.associated_satellite:
satellite = satellite.associated_satellite