from rest_framework import serializers
from .models import CompanyMember


class CompanyMemberSerializer(serializers.ModelSerializer):
    photo_url = serializers.SerializerMethodField()

    class Meta:
        model = CompanyMember
        fields = [
            "id",
            "role_type",
            "user",
            "full_name",
            "designation",
            "referral_code",
            "photo",
            "photo_url",
            "bio",
            "sort_order",
            "is_active",
            "created_at",
            "updated_at",
        ]
        read_only_fields = ["id", "created_at", "updated_at", "photo_url"]

    def get_photo_url(self, obj):
        if obj.photo:
            request = self.context.get("request")
            if request:
                return request.build_absolute_uri(obj.photo.url)
            return obj.photo.url
        return None
