feat: Ajout de la possibilité de supprimer une association

guardian/student + ajout de la possibilité de créer un guardian pour un
student + tri chrologique
This commit is contained in:
N3WT DE COMPET
2025-03-22 12:28:12 +01:00
parent 43ed495a9a
commit c9350a796b
12 changed files with 326 additions and 93 deletions

View File

@ -3,6 +3,9 @@ from Auth.models import Profile, ProfileRole
from Establishment.models import Establishment
from Subscriptions.models import Guardian, RegistrationForm
from School.models import Teacher
from N3wtSchool import settings
from django.utils import timezone
import pytz
class ProfileSerializer(serializers.ModelSerializer):
id = serializers.IntegerField(required=False)
@ -69,10 +72,11 @@ class ProfileRoleSerializer(serializers.ModelSerializer):
profile_data = ProfileSerializer(write_only=True, required=False)
associated_profile_email = serializers.SerializerMethodField()
associated_person = serializers.SerializerMethodField()
updated_date_formatted = serializers.SerializerMethodField()
class Meta:
model = ProfileRole
fields = ['id', 'role_type', 'establishment', 'is_active', 'profile', 'profile_data', 'associated_profile_email', 'associated_person']
fields = ['id', 'role_type', 'establishment', 'is_active', 'profile', 'profile_data', 'associated_profile_email', 'associated_person', 'updated_date_formatted']
def create(self, validated_data):
profile_data = validated_data.pop('profile_data', None)
@ -142,4 +146,11 @@ class ProfileRoleSerializer(serializers.ModelSerializer):
"classes": classes_list,
"specialities": specialities_list
}
return None
return None
def get_updated_date_formatted(self, obj):
utc_time = timezone.localtime(obj.updated_date)
local_tz = pytz.timezone(settings.TZ_APPLI)
local_time = utc_time.astimezone(local_tz)
return local_time.strftime("%d-%m-%Y %H:%M")