
    i	                     |    d dl mZ d dlmZ d dlmZ  G d dej
                        Z G d dej
                        Zy)	    )
SQLAlchemy)datetime)dbc                      e Zd Z ej                  ej
                  d      Z ej                   ej                  d      d      Z ej                  ej                  d      Z
 ej                   ej                  d      d      Z ej                   ej                  d      d      Z ej                   ej                  d      d      Z ej                  ej
                  d      Z ej                  ej
                  d	      Z ej                  ej                   d	      Z ej                  ej                   d	      Z ej                  ej&                  ej*                  	      Z ej.                  d
dd      Zd Zd Zy)DownloadFileTprimary_key   Fnullable2     r   defaultDownloadLogfile)backreflazyc                 "    d| j                    dS )Nz<DownloadFile >)nameselfs    H/home/kdj-ubuntu1/mlink_AI_Server/mlink-backend/./src/models/download.py__repr__zDownloadFile.__repr__   s    		{!,,    c                 6   | j                   | j                  | j                  | j                  | j                  | j
                  | j                  | j                  | j                  | j                  | j                  r| j                  j                         dS d dS )N)idr   description	file_typeversion	file_path	file_sizedownload_count	is_latest	is_active
created_at)r   r   r   r    r!   r"   r#   r$   r%   r&   r'   	isoformatr   s    r   to_dictzDownloadFile.to_dict   s}    ''II++||"119=$//335
 	
 OS
 	
r   N)__name__
__module____qualname__r   ColumnIntegerr   Stringr   Textr   r    r!   r"   r#   r$   Booleanr%   r&   DateTimer   utcnowr'   relationshipdownload_logsr   r)    r   r   r   r      s0   	2::4	0B299YRYYs^e4D"))BGGd3K		)"))B-%8Ibii			"6G		)"))C.59I		"**u5IRYYrzz15N		"**e4I		"**d3I2;;@J $BOOM6MM-
r   r   c                   <   e Zd Z ej                  ej
                  d      Z ej                  ej
                   ej                  d      d      Z ej                  ej
                   ej                  d      d      Z	 ej                   ej                  d      d      Z ej                   ej                  d      d      Z ej                  ej                  ej                  	      Z ej"                  d
 ej$                  dd            Zd Zd Zy)r   Tr   zdownload_file.idFr   zuser.id-   r   r   Userr5   )r   )r   c                 "    d| j                    dS )Nz<DownloadLog r   )r   r   s    r   r   zDownloadLog.__repr__2   s    twwiq))r   c                    | j                   | j                  | j                  | j                  r| j                  j                  nd| j
                  | j                  | j                  r| j                  j                         dS d dS )N	Anonymous)r   file_iduser_idusername
ip_address
user_agentdownloaded_at)	r   r=   r>   userr?   r@   rA   rB   r(   r   s    r   r)   zDownloadLog.to_dict5   so    ''||||.2ii		**[////?C?Q?QT//99;
 	
 X\
 	
r   N)r*   r+   r,   r   r-   r.   r   
ForeignKeyr=   r>   r/   r@   rA   r2   r   r3   rB   r4   r   rC   r   r)   r6   r   r   r   r   '   s    	2::4	0Bbii

MBMM2D$EPUVGbii

MBMM)$<tLG9299R=59J9299S>D9JBIIbkk8??CM 2??6:2::oD+QRD*	
r   r   N)flask_sqlalchemyr   r   src.models.userr   Modelr   r   r6   r   r   <module>rH      s/    '   
288  
D
"(( 
r   