o
    âÎ5i‘  ã                   @   s¸   d dl mZ d dlmZmZmZmZ G dd„ deƒZG dd„ deƒZG dd„ deƒZ	G d	d
„ d
eƒZ
G dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZdS )é    )Ú	BaseModel)ÚListÚDictÚAnyÚOptionalc                   @   s&   e Zd ZU eed< eed< eed< dS )ÚSkillÚskill_idÚ
skill_typeÚ
skill_nameN©Ú__name__Ú
__module__Ú__qualname__ÚstrÚ__annotations__© r   r   úE/var/www/eduai.edurigo.com/my_career/testing/recommendation_models.pyr      s   
 r   c                   @   s2   e Zd ZU dZee ed< dZeee	  ed< dS )Ú
JobProfileNÚjob_profile_nameÚjob_profile_skills)
r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   	   s   
 r   c                   @   sn   e Zd ZU eed< eed< dZee ed< dZee ed< g Z	e
e ed< g Ze
e ed< g Ze
e ed	< dS )
ÚUserInfoÚ	user_nameÚ	managerIdÚ ÚdesignationNÚ
jobProfileÚassignedCoursesÚcompletedCoursesÚskills)r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r      s   
 r   c                   @   s>   e Zd ZU eed< eed< eed< eed< g Zee ed< dS )ÚCourseÚcourseIdÚnameÚshort_descriptionÚdescriptionr   N)r   r   r   r   r   r   r   r   r   r   r   r   r      s   
 r   c                   @   s   e Zd ZU eeef ed< dS )ÚUsersUnderManagerÚusersN)r   r   r   r   r   r   r   r   r   r   r   r$      s   
 r$   c                   @   sB   e Zd ZU eed< eeef ed< eed< eeee	 f ed< dS )ÚCourseRecommendationRequestÚ	client_idÚ	user_dataÚusers_under_manager_dataÚclient_all_courses_dataN)
r   r   r   r   r   r   r   r$   r   r   r   r   r   r   r&       s
   
 r&   c                   @   s.   e Zd ZU eed< eed< eed< eed< dS )ÚRelevanceFactorsÚskill_alignmentÚteam_relevanceÚcareer_progressionÚpriorityNr   r   r   r   r   r+   &   s
   
 r+   c                   @   s6   e Zd ZU eed< eed< eed< eed< eed< dS )ÚRecommendedCourser    Ú
courseNameÚ
matchScoreÚreasonÚrelevance_factorsN)r   r   r   r   r   r+   r   r   r   r   r0   ,   s   
 r0   c                   @   s2   e Zd ZU ee ed< eed< eed< eed< dS )ÚCourseRecommendationResponseÚrecommendationsÚtotal_countÚmessageÚtoken_countN)r   r   r   r   r0   r   Úintr   r   r   r   r   r5   3   s
   
 r5   N)Úpydanticr   Útypingr   r   r   r   r   r   r   r   r$   r&   r+   r0   r5   r   r   r   r   Ú<module>   s    	