o
    ĉh                     @   s   d dl mZ ddlmZmZmZmZmZmZm	Z	 G dd dej
ZG dd dej
ZG dd	 d	ej
ZG d
d dej
ZG dd dej
ZG dd dej
ZG dd dej
ZdS )    )serializers   )JobPostJobApplicationAcademicQualification
DepartmentCountryStateCityc                   @      e Zd ZG dd dZdS )DepartmentSerializerc                   @      e Zd ZeZddgZdS )zDepartmentSerializer.MetaidnameN)__name__
__module____qualname__r   modelfields r   r   '/var/www/apihucms/career/serializers.pyMeta       r   Nr   r   r   r   r   r   r   r   r          r   c                   @   :   e Zd ZeddZejej	 dddZ
G dd dZdS )JobPostSerializerT	read_only
departmentquerysetsource
write_onlyc                   @      e Zd ZeZg dZdS )zJobPostSerializer.Meta)r   titler   department_iddescriptionjob_created_atjob_last_dateN)r   r   r   r   r   r   r   r   r   r   r      r   r   N)r   r   r   r   r   r   PrimaryKeyRelatedFieldr   objectsallr&   r   r   r   r   r   r   
   s    
r   c                   @   r   )CountrySerializerc                   @   r   )zCountrySerializer.Metar   r   N)r   r   r   r   r   r   r   r   r   r   r      r   r   Nr   r   r   r   r   r-      r   r-   c                   @   r   )StateSerializerTr   countryr    c                   @   r$   )zStateSerializer.Meta)r   r   r/   
country_idN)r   r   r   r	   r   r   r   r   r   r   r      r   r   N)r   r   r   r-   r/   r   r*   r   r+   r,   r0   r   r   r   r   r   r.          
r.   c                   @   r   )CitySerializerTr   stater    c                   @   r$   )zCitySerializer.Meta)r   r   r3   state_idN)r   r   r   r
   r   r   r   r   r   r   r   "   r   r   N)r   r   r   r.   r3   r   r*   r	   r+   r,   r4   r   r   r   r   r   r2      r1   r2   c                   @   r   )AcademicQualificationSerializerc                   @   r$   )z$AcademicQualificationSerializer.Meta)r   degreespecialization	instituteyearmarksN)r   r   r   r   r   r   r   r   r   r   r   '   r   r   Nr   r   r   r   r   r5   &   r   r5   c                   @   s   e Zd ZeddZejej	 dddZ
eddZejej	 dddZeddZejej	 dddZeddZejej	 dddZeddd	ZG d
d dZdd ZdS )JobApplicationSerializerTr   r/   r    r3   cityr   F)manyrequiredc                   @   r$   )zJobApplicationSerializer.Meta)r   
first_name	last_namefather_namedate_of_birthgenderemailmobiler/   r0   r3   r4   r<   city_idcategorynationalitycorrespondence_addresspermanent_addressmarital_statusposition_applied_forr   r&   job_postqualificationsN)r   r   r   r   r   r   r   r   r   r   r   7   r   r   c                 C   sB   | dg }tjjdi |}|D ]}tjjdd|i| q|S )NrN   job_applicationr   )popr   r+   creater   )selfvalidated_dataqualifications_datarO   	qual_datar   r   r   rQ   @   s
   zJobApplicationSerializer.createN)r   r   r   r-   r/   r   r*   r   r+   r,   r0   r.   r3   r	   r4   r2   r<   r
   rF   r   r   r   r&   r5   rN   r   rQ   r   r   r   r   r;   ,   s    



	r;   N)rest_frameworkr   modelsr   r   r   r   r   r	   r
   ModelSerializerr   r   r-   r.   r2   r5   r;   r   r   r   r   <module>   s    $	