§
    Y†i4  ã                   ó�   — d dl mZmZmZ d dlmZ d dlmZ d dlm	Z	 d dl
Z
d dlZddlmZ ddlmZ dd	lmZ dd
lmZ d„ Zd„ Zd„ ZdS )é    )ÚrenderÚredirectÚget_object_or_404)Úmessages)ÚHttpResponse)ÚsettingsNé   )ÚNormalizedInvoice)ÚExtractInvoiceUploadForm)Úingest_invoice_file)Úrender_extracted_invoice_pdfc           
      ó´  — t          | j        pd| j        pd¦  «        }|                     ¦   «         �r|j        d         }|j                             ¦   «                              d¦  «        s(t          j	        | d¦  «         t          | dd|i¦  «        S 	 t          j        dt          j                             |j        ¦  «        d         ¬	¦  «        5 }|                     ¦   «         D ]}|                     |¦  «         Œ|j        }ddd¦  «         n# 1 swxY w Y   	 t%          ||j        d
         j        |j        d         |j                             d¦  «        pd|j                             d¦  «        pd|j                             d¦  «        pd¬¦  «        }t          j        | d¦  «         t-          d|j        ¬¦  «        	 t          j        |¦  «         S # t0          $ r Y S w xY w# 	 t          j        |¦  «         w # t0          $ r Y w w xY wxY w# t0          $ r"}t          j	        | d|› �¦  «         Y d}~nd}~ww xY wt          | dd|i¦  «        S )u`   Formulaire : sociÃ©tÃ©, client, upload PDF/image â†’ extraction â†’ redirection vers impression.NÚfile)z.pdfz.pngz.jpgz.jpegz.gifz.bmpz.tiffu0   Format acceptÃ© : PDF ou image (PNG, JPG, etc.).zextratfile/upload.htmlÚformFr	   )ÚdeleteÚsuffixÚsocieteÚ
client_nomÚ
client_nifÚ Úclient_telephoneÚclient_adresse)Ú
societe_idr   r   r   r   z'Facture extraite. Vous pouvez imprimer.zextratfile:print©ÚpkzErreur lors de l'extraction : )r   ÚPOSTÚFILESÚis_validÚcleaned_dataÚnameÚlowerÚendswithr   Úerrorr   ÚtempfileÚNamedTemporaryFileÚosÚpathÚsplitextÚchunksÚwriter   r   ÚgetÚsuccessr   ÚunlinkÚ	Exception)Úrequestr   ÚfÚtmpÚchunkÚtmp_pathÚinvoiceÚes           ú2D:\djangoapp\venvfact\factures\extratfile\views.pyÚextract_uploadr7      sÉ  € å# G¤LÐ$8°D¸'¼-Ð:OÈ4ÑPÔP€DØ‡}‚}�„ñ JØÔ˜fÔ%ˆØŒv�|Š|‰~Œ~×&Ò&Ð'aÑbÔbð 	MÝŒN˜7Ð$VÑWÔWÐWÝ˜'Ð#;¸fÀd¸^ÑLÔLÐLð	JÝÔ,°EÅ"Ä'×BRÒBRÐSTÔSYÑBZÔBZÐ[\ÔB]Ð^Ñ^Ô^ð $ÐbeØŸXšX™ZœZð %ð %�EØ—I’I˜eÑ$Ô$Ð$Ð$Øœ8�ð$ð $ð $ñ $ô $ð $ð $ð $ð $ð $ð $øøøð $ð $ð $ð $ðÝ-ØØ#Ô0°Ô;Ô>Ø#Ô0°Ô>Ø#Ô0×4Ò4°\ÑBÔBÐHÀbØ%)Ô%6×%:Ò%:Ð;MÑ%NÔ%NÐ%TÐRTØ#'Ô#4×#8Ò#8Ð9IÑ#JÔ#JÐ#PÈbðñ ô �õ Ô  Ð*SÑTÔTÐTÝÐ 2°w´zÐBÑBÔBðÝ”I˜hÑ'Ô'Ð'Ð'øÝ ð ð ð Ø�DðøøøøðÝ”I˜hÑ'Ô'Ð'Ð'øÝ ð ð ð Ø�Dðøøøøøøøåð 	Jð 	Jð 	JÝŒN˜7Ð$HÀQÐ$HÐ$HÑIÔIÐIÐIÐIÐIÐIÐIøøøøð	Jøøøå�'Ð3°f¸d°^ÑDÔDÐDs‘   Â>H Ã4DÄH ÄDÄH ÄDÄH Ä B(G. Ç	GÇ
G+Ç(H Ç*G+Ç+H Ç.HÇ0HÈHÈ
HÈHÈHÈHÈH È
IÈ"H?È?Ic                 ó„   — t          t          j                             d¦  «        |¬¦  «        }t	          | dd|i¦  «        S )u/   AperÃ§u facture extraite + bouton Imprimer PDF.Úlinesr   zextratfile/print.htmlr4   )r   r
   ÚobjectsÚprefetch_relatedr   )r/   r   r4   s      r6   Úextract_printr<   1   s?   € åÕ 1Ô 9× JÒ JÈ7Ñ SÔ SÐXZÐ[Ñ[Ô[€GÝ�'Ð2°YÀÐ4HÑIÔIÐIó    c                 óð   — t          t          j                             d¦  «        |¬¦  «        }t	          |¦  «        }t          |                     ¦   «         d¬¦  «        }d|j        p|j        › d�|d<   |S )u,   TÃ©lÃ©chargement PDF de la facture extraite.r9   r   zapplication/pdf)Úcontent_typez#inline; filename="facture-extraite-z.pdf"zContent-Disposition)	r   r
   r:   r;   r   r   ÚgetvalueÚinvoice_numberÚid)r/   r   r4   ÚbufferÚresponses        r6   Úextract_pdfrE   7   sx   € åÕ 1Ô 9× JÒ JÈ7Ñ SÔ SÐXZÐ[Ñ[Ô[€GÝ)¨'Ñ2Ô2€FÝ˜FŸOšOÑ-Ô-Ð<MÐNÑNÔN€HØ&wÈGÔLbÐLpÐfmÔfpÐ&wÐ&wÐ&w€HÐ"Ñ#Ø€Or=   )Údjango.shortcutsr   r   r   Údjango.contribr   Údjango.httpr   Údjango.confr   r&   r$   Úmodelsr
   Úformsr   Úservicesr   Ú	pdf_utilsr   r7   r<   rE   © r=   r6   ú<module>rO      sñ   ðØ @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ø #Ð #Ð #Ð #Ð #Ð #Ø $Ð $Ð $Ð $Ð $Ð $Ø  Ð  Ð  Ð  Ð  Ð  Ø 	€	€	€	Ø €€€à %Ð %Ð %Ð %Ð %Ð %Ø +Ð +Ð +Ð +Ð +Ð +Ø )Ð )Ð )Ð )Ð )Ð )Ø 3Ð 3Ð 3Ð 3Ð 3Ð 3ð Eð  Eð  EðFJð Jð Jðð ð ð ð r=   