Ë
    .€Aj�  ã                  óV   — d dl mZ d dlmZmZ d dlmZ d dlmZ e G d„ d«      «       Zy)é    )Úannotations)Ú	dataclassÚfield)Údatetime)ÚPathc                  óò   — e Zd ZU 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<    ee¬«      Zded<   dd„Zdd„Zdd„Zdd„Zdd„Zdd„Zdd„Zdd„Zy)ÚImportReportÚstrÚcontextFÚboolÚdry_run)Údefault_factoryz	list[str]ÚcreatedÚupdatedÚskippedÚwarningsÚerrorsc                ó:   — | j                   j                  |«       y ©N)r   Úappend©ÚselfÚmsgs     ú+Y:\copro_gestion\app\excel_import\report.pyÚadd_createdzImportReport.add_created   ó   € Ø�‰×Ñ˜CÕ ó    c                ó:   — | j                   j                  |«       y r   )r   r   r   s     r   Úadd_warningzImportReport.add_warning   s   € Ø�‰×Ñ˜SÕ!r   c                ó:   — | j                   j                  |«       y r   )r   r   r   s     r   Ú	add_errorzImportReport.add_error   s   € Ø�‰×Ñ˜3Õr   c                ó:   — | j                   j                  |«       y r   )r   r   r   s     r   Úadd_skippedzImportReport.add_skipped   r   r   c                óv  — | j                   j                  |j                   «       | j                  j                  |j                  «       | j                  j                  |j                  «       | j                  j                  |j                  «       | j
                  j                  |j
                  «       y r   )r   Úextendr   r   r   r   )r   Úothers     r   ÚmergezImportReport.merge   sp   € Ø�‰×Ñ˜EŸM™MÔ*Ø�‰×Ñ˜EŸM™MÔ*Ø�‰×Ñ˜EŸM™MÔ*Ø�‰×Ñ˜UŸ^™^Ô,Ø�‰×Ñ˜5Ÿ<™<Õ(r   c           	     ó¤   — | j                   › dt        | j                  «      › dt        | j                  «      › dt        | j                  «      › d�S )Nz: +u
    crÃ©Ã©s, z	 avert., z
 erreur(s))r   Úlenr   r   r   )r   s    r   Úsummary_linezImportReport.summary_line%   sI   € à�|‰|ˆn˜C¤ D§L¡LÓ 1Ð2°*Ü�4—=‘=Ó!Ð" )¬C°·±Ó,<Ð+=¸ZðIð	
r   c                óœ  — | j                   rdnd}t        d|› | j                  j                  «       › d�«       | j                  r�t        dt        | j                  «      › d�«       | j                  d d D ]  }t        d|› �«       Œ t        | j                  «      dkD  r%t        d	t        | j                  «      dz
  › d
�«       | j                  rAt        dt        | j                  «      › d�«       | j                  D ]  }t        d|› �«       Œ | j                  rAt        dt        | j                  «      › d�«       | j                  D ]  }t        d|› �«       Œ | j                  rDt        dt        | j                  «      › d�«       | j                  d d D ]  }t        d|› �«       Œ t        d| j                  «       › �«       y )Nz[simulation] Ú z
=== z ===u     CrÃ©Ã©s (z):é   z    + u
       â€¦ (+Ú)z  Avertissements (z    ! z  Erreurs (z    x u     IgnorÃ©s (é
   z    - z  -> )
r   Úprintr   Úupperr   r)   r   r   r   r*   )r   ÚprefixÚlines      r   Úprint_reportzImportReport.print_report+   sƒ  € Ø$(§L¢L‘°bˆÜ��v�h˜tŸ|™|×1Ñ1Ó3Ð4°DÐ9Ô:Ø�<Š<Ü�K¤ D§L¡LÓ 1Ð2°"Ð5Ô6ØŸ™ S bÓ)�Ü˜˜t˜f�oÕ&ð *ä�4—<‘<Ó  2Ò%Ü˜
¤3 t§|¡|Ó#4°rÑ#9Ð":¸!Ð<Ô=Ø�=Š=ÜÐ&¤s¨4¯=©=Ó'9Ð&:¸"Ð=Ô>ØŸœ�Ü˜˜t˜f�oÕ&ð &à�;Š;Ü�K¤ D§K¡KÓ 0Ð1°Ð4Ô5ØŸœ�Ü˜˜t˜f�oÕ&ð $à�<Š<Ü�L¤ T§\¡\Ó!2Ð 3°2Ð6Ô7ØŸ™ S bÓ)�Ü˜˜t˜f�oÕ&ð *ä��d×'Ñ'Ó)Ð*Ð+Õ,r   c                ó   — |j                  dd¬«       t        j                  «       j                  d«      }|d| j                  › d|› d�z  }d| j                  › �d| j
                  › �d	t        | j                  «      › �d
t        | j                  «      › �dt        | j                  «      › �dg}d| j                  fd| j                  fd| j                  fd| j                  ffD ]B  \  }}|sŒ	|j                  |«       |j                  d„ |D «       «       |j                  d«       ŒD |j                  dj                  |«      d¬«       |S )NT)ÚparentsÚexist_okz%Y%m%d-%H%M%Szimport-Ú-z.txtz
Contexte: zSimulation: u	   CrÃ©Ã©s: zAvertissements: z	Erreurs: r,   u   CRÃ‰Ã‰SÚAVERTISSEMENTSÚERREURSu   IGNORÃ‰Sc              3  ó&   K  — | ]	  }d |› �–— Œ y­w)z  N© )Ú.0Úxs     r   Ú	<genexpr>z$ImportReport.save.<locals>.<genexpr>V   s   è ø€ Ð5©u¨!˜r ! œX©uùs   ‚Ú
zutf-8)Úencoding)Úmkdirr   ÚnowÚstrftimer   r   r)   r   r   r   r   r   r%   Ú
write_textÚjoin)r   Ú	directoryÚtsÚpathÚlinesÚtitleÚitemss          r   ÚsavezImportReport.saveB   s8  € Ø�‰ ¨tˆÔ4Ü�\‰\‹^×$Ñ$ _Ó5ˆØ˜W T§\¡\ N°!°B°4°tÐ<Ñ<ˆà˜Ÿ™˜Ð'Ø˜4Ÿ<™<˜.Ð)Øœ˜DŸL™LÓ)Ð*Ð+Øœs 4§=¡=Ó1Ð2Ð3Øœ˜DŸK™KÓ(Ð)Ð*Øð
ˆð ˜Ÿ™Ð%Ø˜tŸ}™}Ð-Ø˜Ÿ™Ð$Ø˜Ÿ™Ð&ó	
‰LˆE�5ò Ø—‘˜UÔ#Ø—‘Ñ5©uÓ5Ô5Ø—‘˜RÕ ð
ð 	�‰˜Ÿ	™	 %Ó(°7ˆÔ;Øˆr   N)r   r
   ÚreturnÚNone)r&   z'ImportReport'rN   rO   )rN   r
   )rN   rO   )rG   r   rN   r   )Ú__name__Ú
__module__Ú__qualname__Ú__annotations__r   r   Úlistr   r   r   r   r   r   r   r!   r#   r'   r*   r4   rM   r<   r   r   r	   r	      s„   … àƒLØ€GˆTÓÙ¨tÔ4€GˆYÓ4Ù¨tÔ4€GˆYÓ4Ù¨tÔ4€GˆYÓ4Ù°Ô5€HˆiÓ5Ù¨dÔ3€FˆIÓ3ó!ó"ó ó!ó)ó
ó-ô.r   r	   N)	Ú
__future__r   Údataclassesr   r   r   Úpathlibr   r	   r<   r   r   Ú<module>rX      s-   ðÝ "ç (Ý Ý ð ÷Pð Pó ñPr   