
    ciL                     t   d dl mZ d dlZd dl mZ d dlmZ  G d dej
                        Zd dl mZ d dlmZ d dl	m
Z
  G d d	ej
                        Zd dl mZ  G d
 dej
                        Z G d dej
                        Z G d dej
                        Zd dl mZ d dlmZ  G d dej
                        Zy)    )modelsNtimezonec                   n   e Zd Z ej                  ej                        Z ej                  d      Z	 ej                         Z ej                         Z ej                         Z ej                         Z ej                         Z ej                         Z ej                         Z G d d      Zy)DataSetSnapshotdefaultd   
max_lengthc                       e Zd ZdgZy)DataSetSnapshot.Metaz-created_atN)__name__
__module____qualname__ordering     (/var/www/extractly/houslyspace/models.pyMetar      s	    !?r   r   N)r   r   r   r   DateTimeFieldr   now
created_at	CharField
model_nameIntegerFieldtotaltitle_filledtitle_emptyoriginal_filledoriginal_emptyimages_filledimages_emptyr   r   r   r   r   r      s    %%%hll;J!!!S1JF!E&6&&(L%&%%'K)f))+O(V((*N'F'')M&6&&(L# #r   r   )settings)	AdsManualc                   ~   e Zd ZdZ ej
                  eej                  d      Z ej                  dd      Z
 ej                  dd      Z ej                  dd      Z ej                  ddd      Z ej                  d	      Z ej"                  dd      Z ej                  d
      Z G d d      Zd Zy)AdsInactiveSyncux   
    Ewidencja ostatniego wysłania stanu 'inactive' do chmury.
    Pozwala wysłać tylko zmiany (delta po dacie).
    inactive_sync)	on_deleterelated_nameT)nullblank@   )r   r+   r,   r   r   auto_nowc                   :    e Zd ZdZ ej
                  dg      gZy)AdsInactiveSync.Metaads_inactive_synclast_inactive_sent_at)fieldsN)r   r   r   db_tabler   Indexindexesr   r   r   r   r1   :   s     &FLL!8 9:
r   r   c                 <    d| j                    d| j                   dS )NzInactiveSync(ad_id=z, sent=))ad_idr3   selfs    r   __str__zAdsInactiveSync.__str__@   s#    $TZZL8R8R7SSTUUr   N)r   r   r   __doc__r   OneToOneFieldr%   CASCADEadr   last_sent_atlast_inactive_valuer3   r   last_payload_hashPositiveIntegerFieldattempts	TextField
last_error
updated_atr   r=   r   r   r   r'   r'   $   s     
		..$
B (6''T>L /&..DE0F00d$G(((BTN*v**15H!!!t48J%%%t4J
 
Vr   r'   c                       e Zd Z ej                  dd      Z ej                  d      Z ej                  d      Z	 ej                  dd      Zd Zy	)
ScraperStatusr
   Tr   uniquer.   Fr   )r,   r+   c                 H    | j                    d| j                  rd dS d dS )Nz (OKFAILr9   )namesuccessr;   s    r   r=   zScraperStatus.__str__P   s-    ))Bt||t@BB@BBr   N)r   r   r   r   r   rQ   r   last_runBooleanFieldrR   rG   messager=   r   r   r   rK   rK   J   sT    6s48D#v##T2H!f!!%0GfT5GCr   rK   c                   `    e Zd Z ej                  dd      Z ej                  d      Zd Zy)ScraperConfigr
   TrL      r   c                 8    | j                    d| j                   S )Nz = )rQ   valuer;   s    r   r=   zScraperConfig.__str__Z   s    ))C

|,,r   N)r   r   r   r   r   rQ   rZ   r=   r   r   r   rW   rW   V   s-    6s48DF,E-r   rW   c                       e Zd Z ej                  d      Z ej                         Z ej                         Z ej                  d      Z
d Zy)PhotoConsistencyLogr
   r   T)auto_now_addc                 l    | j                    d| j                   d| j                   d| j                   S )Nz | z
 checked, z updated at )r   checkedupdatedr   r;   s    r   r=   zPhotoConsistencyLog.__str__e   s4    //"#dll^:dll^<X\XgXgWhiir   N)r   r   r   r   r   r   rE   r_   r`   r   r   r=   r   r   r   r\   r\   _   sL    !!!S1J)f))+G)f))+G%%%48Jjr   r\   c                       e Zd Z ej                  dd      Z ej                  ej                        Z	 ej                  ej                        Z
ddZy)ScraperWorkerLockr
   TrL   r   c                 r    ddl m} | j                   |j                          |j                  |      z
  k\  S )Nr   r   )minutes)django.utilsr   	pinged_atr   	timedelta)r<   timeout_minutesr   s      r   is_alivezScraperWorkerLock.is_aliver   s/    )~~2D(2D2D_2]!]]]r   N)   )r   r   r   r   r   rQ   r   r   r   
started_atrf   ri   r   r   r   rb   rb   m   sH    6s48D%%%hll;J$$$X\\:I^r   rb   )	django.dbr   uuidre   r   Modelr   django.confr$   extractly.modelsr%   r'   rK   rW   r\   rb   r   r   r   <module>rq      s     
  !#fll #*    &Vfll VH CFLL C-FLL -j&,, j  !^ ^r   