
    fm                        d dl mZmZmZ d dlmZ d dlmZ d dlm	Z	m
Z
mZmZmZ d dl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Z ed
dg      Zej5                  d       ee       ee      fdededefd       Zej5                  d       ee       ee      fde	dedefd       Zej;                  d       ee       ee      fdededefd       Zej5                  d       ee
       ee       ee      fde
dedefd       ZejA                  d       ee       ee      fdededefd       Z!ej5                  d       ee       ee      fdededefd       Z"y	)     )	APIRouterDependsResponse)get_db)Session)ContractDatumUploadContract	UserLoginSelectDocumentEmployeeexpirationDatum)DocumentEmployeeClass)ContractDataClass)DropboxClass)get_current_active_userNz/contract_dataContractData)prefixtags/select_document_employeesession_userdbc                 R    t        |      j                  | j                        }d|iS )Nmessage)r   get_allrut)r   r   r   datas       VC:\Users\jesus\OneDrive\Desktop\escritorio\newerp\app\backend\routers\contract_data.pyindexr      s)     $,,-E-I-IJDt    z/storecontract_datumc                 ^    | j                         }t        |      j                  |      }d|iS )Ndocument_message)dictr   store)r    r   r   contract_datum_inputsdocument_ids        r   r$   r$      s2    *//1'+112GHK,,r   z/delete/{id}idc                    t        |      j                  d|       }t        |      j                  |       }|dk(  rE|j                  d k7  r%t	        |      j                  d|j                        }|dk(  rd}d|iS d}d|iS d}d|iS )Nr'      /contracts/r   r   )r   getdeletesupportr   )r'   r   r   document_employeeresponser   s         r   r,   r,      s    -b155dB?$R(//3H1}$$,#B'..}>O>W>WXHq=D t	 D t tr   z/upload	form_datac                 :   t        |      }|j                  | j                  d| j                  dt        j
                  j                  t        j
                  j                  t                          }t        |      j                  | j                  |      }d|iS )Ncontrator*   )namedescriptionr   dropbox_pathcomputer_pathr   )r   uploadr   r-   ospathjoindirname__file__r   update_filer'   )r0   r   r   dropbox_clientfilenamer   s         r   r7   r7   1   s    !"%N$$)--ZV_VgVg.;277<<XZX_X_XgXghpXqKr % tH !$00xHDtr   z/download/{id}c                    t        |      j                  d|       }t        |      j                  d|j                        }t	        j                  |      }dt        |j                        z   dz   }t        |j                  d|i      S )Nr'   r*   zattachment; filename= zContent-Disposition)contentheaders)r   r+   r   r-   requestsstrr   rB   )r'   r   r   r.   r/   content_dispositions         r   downloadrG   <   s}    -b155dB?B##M3D3L3LMH||H%H137H7P7P3QQSUUH,,7LNa6bccr   z/expirationinputsc                     | j                         }t        |      j                  |      }t        |      j                  |      }||dS )N)first_expirationsecond_expiration)r#   r   rJ   rK   )rH   r   r   expiration_inputsrJ   rK   s         r   
expirationrM   G   sH    (,==>OP)"-??@PQ 0GXYYr   )#fastapir   r   r   app.backend.db.databaser   sqlalchemy.ormr   app.backend.schemasr   r	   r
   r   r   +app.backend.classes.document_employee_classr   'app.backend.classes.contract_data_classr   !app.backend.classes.dropbox_classr   app.backend.auth.auth_userr   r8   rD   pdfkitcontract_datapostr   r$   r,   intr7   r+   rG   rM    r   r   <module>r[      s)   0 0 * " q q M E : > 	  
	
 CV]^uVv  GN  OU  GV $: )   }D  
 HBIJaBbry  {A  sB - -i -ho - - n%-45L-M]dek]l c  SZ  &" I'.~'>ZabyZz  KR  SY  KZ n i   AH   #$/67N/O_fgm_n d d9 dU\ d %d M"AHI`Aaqxy  rA Zo ZY Zgn Z #Zr   