
    gj                        d Z ddlmZ ddlZddlmZmZ ddlmZ ddl	m
Z
mZmZmZmZ  eddg	      Zdd
Zej#                  d      	 d	 	 	 	 	 dd       Zy)u  Şekli eksiklik giderme — "Değişiklik Gösteren Evrak" üretim endpoint'i.

TürkPatent şekli inceleme yazısına cevaben sunulması gereken "Tarifname
Takımında Yapılan Değişikliğin Gösterildiği Evrak"ı DOCX veya PDF olarak
üretir. Şekli eksiklik tarayıcısının (formality_check) doğal devamıdır:
tarayıcı eksikleri bulur → vekil düzeltir → bu endpoint değişikliği
belgeleyen resmî evrakı üretir.
    )annotationsN)	APIRouterHTTPException)Response)AmendmentInputLibreOfficeNotFoundErrorPdfConversionErrorbuild_amendment_docxconvert_docx_to_pdfz
/amendment	amendment)prefixtagsc                `    t        j                  dd|       j                  d      }|d d xs dS )Nz[^a-zA-Z0-9_-]+_<   evrak)resubstrip)valuess     "/tmp/py-stage/app/api/amendment.py_slugr      s1    
!3.44S9ASb6W    z	/generatec                  K   |dvrt        dd      t        |       }t        | j                        dz   }|dk(  rt	        |ddd	| d
i      S 	 t        |       d{   }t	        |ddd	| di      S 7 # t        $ r}t        dt        |            |d}~wt        $ r}t        dt        |            |d}~ww xY ww)uk   Değişiklik gösteren evrakı üretir.

    Sorgu parametresi `fmt`: "docx" (varsayılan) veya "pdf".
    )docxpdfi  u   fmt 'docx' veya 'pdf' olmalı.)status_codedetail_Degisiklik_Evrakir   zGapplication/vnd.openxmlformats-officedocument.wordprocessingml.documentzContent-Dispositionzattachment; filename="z.docx")content
media_typeheadersNi  i  zapplication/pdfz.pdf")	r   r
   r   application_numberr   r   r   strr	   )payloadfmt
docx_bytesbase	pdf_bytesexcs         r   generate_amendmentr,   !   s      /!$D
 	
 &g.J++,/CCD
f}, &)?vV'L	
 		
G-j99	 $!%;D6#G
  :# GCH=3F GCH=3FGsH   ACA: A8 A: $C8A: :	CBC&B==CC)r   r%   returnr%   )r   )r&   r   r'   r%   r-   r   )__doc__
__future__r   r   fastapir   r   fastapi.responsesr   app.services.docxr   r   r	   r
   r   routerr   postr,    r   r   <module>r6      ss    # 	 , &  
,k]	;
 [ **	* * *r   