
    1h
                         S SK JrJr  S SKJr  S SKJrJrJr  S SKr\ " S S5      5       r	\ " S S5      5       r
\ " S	 S
5      5       rg)    )	dataclassasdict)datetime)ListDictAnyNc                       \ rS rSr% \\S'   \\S'   \\   \S'   \\   \S'   \\   \S'   S\\\	4   4S jr
\S	\\\	4   SS 4S
 j5       rSrg)
SkillScore   
skill_namescoreevidence	strengthsimprovement_areasreturnc                     [        U 5      $ Nr   selfs    C/var/www/eduai.edurigo.com/roleplay/production/models/assessment.pyto_dictSkillScore.to_dict       d|    datac                     U " S0 UD6$ N r   clsr   s     r   	from_dictSkillScore.from_dict       {T{r   r   N)__name__
__module____qualname____firstlineno__str__annotations__intr   r   r   r   classmethodr"   __static_attributes__r   r   r   r
   r
      sh    OJ3iCyCy c3h  T#s(^   r   r
   c                   |    \ rS rSr% \\S'   \\S'   \\S'   \\S'   S\\\4   4S jr	\
S\\\4   SS 4S	 j5       rS
rg)ConversationTurn   turn_numberspeakermessage	timestampr   c                     [        U 5      $ r   r   r   s    r   r   ConversationTurn.to_dict   r   r   r   c                     U " S0 UD6$ r   r   r    s     r   r"   ConversationTurn.from_dict   r$   r   r   N)r%   r&   r'   r(   r+   r*   r)   r   r   r   r,   r"   r-   r   r   r   r/   r/      sV    LLNc3h  T#s(^ 0B  r   r/   c                   &   \ rS rSr% \\S'   \\S'   \\S'   \\S'   \\   \S'   \\	   \S'   \
\\4   \S'   \
\\4   \S	'   \\S
'   \S\S\S\S\S\\   S\\	   S\
\\4   S	\
\\4   SS 4S j5       rS\
\\4   4S jr\S\
\\4   SS 4S j5       rSrg)SkillAssessment#   
session_idscenario_idoverall_scoreperformance_levelskill_scoresconversation_turnsconversation_analysisrecommendations
created_atr   c	                 `    U " UUUUUUUU[         R                  " 5       R                  5       S9	$ )N	r<   r=   r>   r?   r@   rA   rB   rC   rD   )r   now	isoformat)	r!   r<   r=   r>   r?   r@   rA   rB   rC   s	            r   
create_newSkillAssessment.create_new/   s;     !#'/%1"7+||~//1

 
	
r   c                     [        U 5      $ r   r   r   s    r   r   SkillAssessment.to_dict?   r   r   r   c                     US    Vs/ s H  n[         R                  U5      PM     nnUS    Vs/ s H  n[        R                  U5      PM     nnU " US   US   US   US   UUUS   US   US	   S
9	$ s  snf s  snf )Nr@   rA   r<   r=   r>   r?   rB   rC   rD   rF   )r
   r"   r/   )r!   r   r   r@   turnrA   s         r   r"   SkillAssessment.from_dictB   s     BFnAUVAU
,,U3AUVKOPdKefKe4.88>KefL)]+/"#67%1"&'>"? !23L)

 
	
 Wfs
   A4A9r   N)r%   r&   r'   r(   r)   r*   floatr   r
   r/   r   r   r,   rI   r   r"   r-   r   r   r   r:   r:   #   s   Oz""-..S>)#s(^#O
C 
c 
% 
dg 
!%j!1
GKL\G]
*.sCx.
KOPSUXPX>
^o
 
c3h  
T#s(^ 
0A 
 
r   r:   )dataclassesr   r   r   typingr   r   r   uuidr
   r/   r:   r   r   r   <module>rT      s]    )  " " 
      .
 .
 .
r   