§
    s�’jh  ã                  óÖ   — d dl mZ d dlmZ d dlmZmZ d dlmZm	Z	 ddl
mZ  G d„ de¦  «        Z G d	„ d
e¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        ZdS )é    )Úannotations)ÚAny)Ú	BaseModelÚField)ÚDOSSIER_REVIEW_ACTION_TYPESÚDOSSIER_REVIEW_SESSION_STATUSESé   )ÚDossierReviewFindingItemc                  óÞ   — e Zd ZU dZded<   ded<   dZded<   dZded<   ded	<   dZded
<   dZded<   dZ	ded<    e
e¬¦  «        Zded<    e
e¬¦  «        Zded<    e
e¬¦  «        Zded<   dS )ÚDossierReviewSnapshotItemz=Point-in-time snapshot of dossier completeness and readiness.ÚstrÚsnapshot_idÚsnapshot_typeNú
str | NoneÚlabelÚsummaryÚcaptured_atÚcaptured_by_agent_codeÚcaptured_by_employee_codeÚcaptured_by_employee_name©Údefault_factoryúdict[str, Any]Údossier_stateÚmissing_matrixÚreadiness_summary)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú__annotations__r   r   r   r   r   r   Údictr   r   r   © ó    úOC:\Projects\DSCons\app\models\workflow_review_schemas\dossier_session_models.pyr   r      sï   € € € € € € ØGÐGàÐÐÑØÐÐÑØ€EÐÐÐÑØ€GÐÐÐÑØÐÐÑØ)-ÐÐ-Ð-Ð-Ñ-Ø,0ÐÐ0Ð0Ð0Ñ0Ø,0ÐÐ0Ð0Ð0Ñ0Ø$) E¸$Ð$?Ñ$?Ô$?€MÐ?Ð?Ð?Ñ?Ø%* U¸4Ð%@Ñ%@Ô%@€NÐ@Ð@Ð@Ñ@Ø(-¨¸dÐ(CÑ(CÔ(CÐÐCÐCÐCÑCÐCÐCr$   r   c                  ó  — e Zd ZU dZded<    eddd                     e¦  «        › �¬¦  «        Zded<   ded	<   d
Z	ded<   d
Z
ded<   d
Zded<   ded<    ee¬¦  «        Zded<    ee¬¦  «        Zded<    ee¬¦  «        Zded<   ded<   d
S )ÚDossierReviewActionItemz4Audit log entry for dossier review workflow changes.r   Ú	action_id.úOne of: ú, ©ÚdescriptionÚaction_typeÚ
actor_typeNr   Úactor_employee_codeÚactor_employee_nameÚactor_agent_codeÚaction_summaryr   r   Úbefore_stateÚafter_stateÚaction_payloadÚ
created_at)r   r   r   r    r!   r   Újoinr   r-   r/   r0   r1   r"   r3   r4   r5   r#   r$   r%   r'   r'      s  € € € € € € Ø>Ð>à€N€N�NØ�uØØG˜tŸyšyÐ)DÑEÔEÐGÐGðñ ô €Kð ð ð ñ ð €O€O�OØ&*ÐÐ*Ð*Ð*Ñ*Ø&*ÐÐ*Ð*Ð*Ñ*Ø#'ÐÐ'Ð'Ð'Ñ'ØÐÐÑØ#( 5¸Ð#>Ñ#>Ô#>€LÐ>Ð>Ð>Ñ>Ø"' %¸Ð"=Ñ"=Ô"=€KÐ=Ð=Ð=Ñ=Ø%* U¸4Ð%@Ñ%@Ô%@€NÐ@Ð@Ð@Ñ@Ø€O€O�O€O€Or$   r'   c                  óò  — e Zd ZU dZded<   ded<   ded<   ded<   ded<   ded<   d	Zd
ed<   d	Zd
ed<   d	Zd
ed<   d	Zd
ed<   d	Z	d
ed<    e
ddd                     e¦  «        › �¬¦  «        Zded<   d	Zd
ed<   d	Zd
ed<    e
e¬¦  «        Zded<   dZded<   dZded<   dZded<   d	Zd
ed<   d	Zd
ed <    e
e¬¦  «        Zd!ed"<    e
e¬¦  «        Zd#ed$<    e
e¬¦  «        Zd%ed&<    e
e¬¦  «        Zd'ed(<   d	S ))ÚDossierReviewSessionRecordzJAggregated dossier review session with findings, snapshots, and audit log.r   Ú	review_idÚreview_codeÚproject_codeÚproject_nameÚdossier_scopeÚtrigger_sourceNr   Úinitiated_by_employee_codeÚinitiated_by_employee_nameÚlead_reviewer_employee_codeÚlead_reviewer_employee_nameÚlead_agent_code.r)   r*   r+   ÚstatusÚreview_reasonÚreview_summaryr   ú	list[str]Úassigned_departmentsr   ÚintÚopen_findings_countÚresolved_findings_countÚoverdue_assignments_countÚlast_reviewed_atÚ	closed_atzlist[DossierReviewFindingItem]Úfindingszlist[DossierReviewSnapshotItem]Ú	snapshotszlist[DossierReviewActionItem]Úactionsr   Úmetadata)r   r   r   r    r!   r@   rA   rB   rC   rD   r   r7   r   rE   rF   rG   ÚlistrI   rK   rL   rM   rN   rO   rP   rQ   rR   r"   rS   r#   r$   r%   r9   r9   2   s  € € € € € € ØTÐTà€N€N�NØÐÐÑØÐÐÑØÐÐÑØÐÐÑØÐÐÑØ-1ÐÐ1Ð1Ð1Ñ1Ø-1ÐÐ1Ð1Ð1Ñ1Ø.2ÐÐ2Ð2Ð2Ñ2Ø.2ÐÐ2Ð2Ð2Ñ2Ø"&€OÐ&Ð&Ð&Ñ&Ø�%ØØK˜tŸyšyÐ)HÑIÔIÐKÐKðñ ô €Fð ð ð ñ ð !%€MÐ$Ð$Ð$Ñ$Ø!%€NÐ%Ð%Ð%Ñ%Ø&+ e¸DÐ&AÑ&AÔ&AÐÐAÐAÐAÑAØ ÐÐ Ð Ð Ñ Ø#$ÐÐ$Ð$Ð$Ñ$Ø%&ÐÐ&Ð&Ð&Ñ&Ø#'ÐÐ'Ð'Ð'Ñ'Ø €IÐ Ð Ð Ñ Ø/4¨uÀTÐ/JÑ/JÔ/J€HÐJÐJÐJÑJØ16°ÀtÐ1LÑ1LÔ1L€IÐLÐLÐLÑLØ-2¨UÀ4Ð-HÑ-HÔ-H€GÐHÐHÐHÑHØ$˜u°TÐ:Ñ:Ô:€HÐ:Ð:Ð:Ñ:Ð:Ð:r$   r9   c                  ó`   — e Zd ZU dZ ee¬¦  «        Zded<   dZded<   dZ	d	ed
<   dZ
ded<   dS )ÚDossierReviewSessionsResponsez1List payload for dossier review workflow records.r   z list[DossierReviewSessionRecord]ÚitemsÚfallbackr   ÚsourceFÚboolÚused_fallbackNr   Úmessage)r   r   r   r    r   rT   rW   r!   rY   r[   r\   r#   r$   r%   rV   rV   R   si   € € € € € € Ø;Ð;à.3¨eÀDÐ.IÑ.IÔ.I€EÐIÐIÐIÑIØ€FÐÐÐÑØ€MÐÐÐÑØ€GÐÐÐÑÐÐr$   rV   c                  ó~  — e Zd ZU dZ edd¬¦  «        Zded<    edd¬¦  «        Zded<    edd¬	¦  «        Zded
<    edd¬	¦  «        Z	ded<   dZ
ded<   dZded<   dZded<    eddd                     e¦  «        › �¬¦  «        Zded<   dZded<   dZded<    ee¬¦  «        Zded<    ee¬¦  «        Zded<   dS )Ú!DossierReviewSessionCreateRequestz@Structured request payload to create one dossier review session..r	   )Ú
min_lengthr   r<   r=   Úproject_dossier)Údefaultr_   r>   Úmanualr?   Nr   r@   rB   rD   Údraftr)   r*   )ra   r,   rE   rF   rG   r   rH   rI   r   rS   )r   r   r   r    r   r<   r!   r=   r>   r?   r@   rB   rD   r7   r   rE   rF   rG   rT   rI   r"   rS   r#   r$   r%   r^   r^   [   st  € € € € € € ØJÐJà˜˜c¨aÐ0Ñ0Ô0€LÐ0Ð0Ð0Ñ0Ø˜˜c¨aÐ0Ñ0Ô0€LÐ0Ð0Ð0Ñ0Ø˜Ð'8ÀQÐGÑGÔG€MÐGÐGÐGÑGØ˜%¨¸QÐ?Ñ?Ô?€NÐ?Ð?Ð?Ñ?Ø-1ÐÐ1Ð1Ð1Ñ1Ø.2ÐÐ2Ð2Ð2Ñ2Ø"&€OÐ&Ð&Ð&Ñ&Ø�%ØØK˜tŸyšyÐ)HÑIÔIÐKÐKðñ ô €Fð ð ð ñ ð !%€MÐ$Ð$Ð$Ñ$Ø!%€NÐ%Ð%Ð%Ñ%Ø&+ e¸DÐ&AÑ&AÔ&AÐÐAÐAÐAÑAØ$˜u°TÐ:Ñ:Ô:€HÐ:Ð:Ð:Ñ:Ð:Ð:r$   r^   N)Ú
__future__r   Útypingr   Úpydanticr   r   Úapp.models.schema_constantsr   r   Údossier_finding_modelsr
   r   r'   r9   rV   r^   r#   r$   r%   ú<module>ri      sb  ðØ "Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð Ð Ð à %Ð %Ð %Ð %Ð %Ð %Ð %Ð %ðð ð ð ð ð ð ð ð
 =Ð <Ð <Ð <Ð <Ð <ðDð Dð Dð Dð D 	ñ Dô Dð Dð ð ð ð ð ˜iñ ô ð ð&;ð ;ð ;ð ;ð ; ñ ;ô ;ð ;ð@ð ð ð ð  Iñ ô ð ð;ð ;ð ;ð ;ð ;¨	ñ ;ô ;ð ;ð ;ð ;r$   