class ClientMatchingReader(ObjectSerializer): class HistoryReader(ObjectSerializer): created_by = CreatedByReader(read_only=True) class Meta: model = ClientMatchingHistory fields = ('id', 'object', 'step', 'outcome', 'created_by', 'created_at') class NotesReader(ObjectSerializer): created_by = CreatedByReader(read_only=True) class Meta: model = ClientMatchingNote fields = ('id', 'object', 'step', 'note', 'created_by', 'created_at') config = MatchingConfigReader() client = ClientReader() program = ProgramReader() notes = NotesReader(many=True, read_only=True) history = HistoryReader(many=True, read_only=True) created_by = CreatedByReader(read_only=True) class Meta: model = ClientMatching fields = ('id', 'object', 'config', 'client', 'program', 'start_date', 'end_date', 'history', 'notes', 'created_at', 'modified_at', 'created_by')
class EnrollmentReader(ObjectSerializer): client = ClientReader() program = ProgramReader() class Meta: model = Enrollment fields = ('id', 'object', 'status', 'client', 'program', 'created_at', 'modified_at')
class ProgramEligibilityReader(ObjectSerializer): client = ClientReader() program = ProgramReader() class Meta: model = ProgramEligibility fields = ('id', 'object', 'status', 'client', 'program', 'created_at', 'modified_at')
class ClientEligibilityReader(ObjectSerializer): eligibility = EligibilityReader() client = ClientReader() created_by = CreatedByReader(read_only=True) class Meta: model = ClientEligibility fields = ('id', 'object', 'client', 'eligibility', 'status', 'created_at', 'modified_at', 'created_by')
class ClientEligibilityReader(ObjectSerializer): # eligibility = EligibilityReader() client = ClientReader() created_by = CreatedByReader(read_only=True) class Meta: model = ClientEligibility fields = ( "id", "object", "client", "status", "created_at", "modified_at", "created_by", )
class EnrollmentReader(ObjectSerializer): client = ClientReader() program = ProgramReader() class Meta: model = Enrollment fields = ( "id", "object", "status", "client", "program", "start_date", "projected_end_date", "end_date", "created_at", "modified_at", )
class EligibilityQueueReader(ObjectSerializer): client = ClientReader() requestor = AgencyReader() resolved_by = UserReader() created_by = CreatedByReader(read_only=True) class Meta: model = EligibilityQueue fields = ( "id", "object", "client", "requestor", "status", "resolved_by", "created_at", "modified_at", "created_by", )
class ResponseReader(ObjectSerializer): created_by = CreatedByReader() response_context = ContentObjectRelatedField(read_only=True) client = ClientReader() survey = SurveyReader() answers = AnswerReader(many=True) class Meta: model = Response fields = ( "id", "object", "client", "survey", "answers", "response_context", "created_by", "created_at", "modified_at", )
class ClientIEPReader(ObjectSerializer): created_by = CreatedByReader() client = ClientReader() enrollments = ClientIEPEnrollmentReader(many=True, source="iep_enrollments") client_is_eligible = serializers.SerializerMethodField() resolved_by = serializers.SerializerMethodField() job_placement = JobPlacementReader(required=False) def get_resolved_by(self, obj): user = None if obj.eligibility_request: user = obj.eligibility_request.resolved_by return UserReader(instance=user).data if user else None class Meta: model = ClientIEP fields = ( "id", "object", "client", "orientation_completed", "status", "resolved_by", "client_is_eligible", "enrollments", "start_date", "end_date", "projected_end_date", "outcome", "job_placement", "created_by", "created_at", "modified_at", ) def get_client_is_eligible(self, object) -> bool: return ClientEligibility.is_eligible(object.client)