
    hK                     (   d dl m Z  d dlmZmZ d dlmZ  G d dej                        Z G d dej                        Z G d d	ej                        Z	 G d
 dej                        Z
 G d dej                        Z G d dej                        Zy)    )datetime)generate_password_hashcheck_password_hash)dbc                       e Zd ZdZ ej
                  ej                  d      Z ej
                   ej                  d      dd      Z	d Z
y)	CitycitiesTprimary_keyd   Funiquenullablec                 "    d| j                    dS )Nz<City >nameselfs    D:\EasyAligner\app\models.py__repr__zCity.__repr__
   s    		{!$$    N)__name__
__module____qualname____tablename__r   ColumnIntegeridStringr   r    r   r   r   r      s@    M	2::4	0B299YRYYs^D5AD%r   r   c                   6   e Zd Z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d      Z ej
                   ej                  d	            Z ej
                  ej                   ej                  d
            Z ej
                  ej                        Z ej
                   ej                  d      d      Z ej
                   ej$                  dd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j2                        Z ej
                  ej2                  ej8                        Z ej
                  ej2                  ej8                  ej8                        Z ej
                  ej                  d      Z ej
                  ej2                        Z  ejB                  dd      Z"d Z#d Z$d Z%y)UserusersTr
   r   Fr   x   r      z	cities.id   doctorpatientuser_type_enumr   default   r-   onupdate   r   backrefc                 $    t        |      | _        y N)r   password_hashr   passwords     r   set_passwordzUser.set_password$   s    3H=r   c                 .    t        | j                  |      S r5   )r   r6   r7   s     r   check_passwordzUser.check_password'   s    "4#5#5x@@r   c                 6    t        j                         | _        y r5   )r   utcnow
deleted_atr   s    r   soft_deletezUser.soft_delete*   s    "//+r   N)&r   r   r   r   r   r   r   r   r    
first_name	last_nameemailphone
ForeignKeycity_idDatebirthdayr6   Enum	user_type
user_tokenBooleanis_verifiedverification_code
reset_codeDateTimereset_code_expirationr   r=   
created_at
updated_atstatusr>   relationshipcityr9   r;   r?   r!   r   r   r#   r#      s   M	2::4	0B9299S>E:J		)"))C.59IBIIibiinTEBEBIIibiim$Ebii

MBMM+$>?Gryy!HBIIibiinu=M		'"''(I<LMX]^I9299S>*J"))BJJ6K!		)"))A,/9299Q<(J%BIIbkk22;;@J2;;(//ZJRYYrzz1-F2;;'J2??673D>A,r   r#   c                      e Zd 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            Z ej
                  ej                   ej                  d            Z ej
                  ej                  ej"                  	      Z ej&                  d
d      Zy)PlakplaksTr
   r   Fr%   r(   users.idr,   r#   r2   N)r   r   r   r   r   r   r   r   r    titleTextdescription	image_urlrD   
created_byrO   r   r=   rQ   rT   r)   r!   r   r   rW   rW   -   s    M	2::4	0BBIIibiinu5E"))BGGe4K		)"))C.)I2::}r}}Z'@AJ2;;@JR__VW5Fr   rW   c                      e Zd 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                  ej                        Z ej                  d	d
      Z ej                  dd      Zy)SelectedPlakselected_plaksTr
   plaks.idFr%   rY   r,   rW   
selectionsr2   r#   N)r   r   r   r   r   r   r   r   rD   plak_id
patient_idrO   r   r=   selected_atrT   plakr*   r!   r   r   r`   r`   9   s    $M	2::4	0Bbii

MBMM*$=NG2::}r}}Z'@5QJ"))BKKAK2??6<8Dboof.>?Gr   r`   c                      e Zd 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                   ej                  d      d      Z ej
                   ej                  d      d      Z ej
                  ej                        Z ej
                   ej                  d      d      Z ej
                  ej"                  d      Z ej
                  ej&                  ej*                  	      Z ej
                  ej&                  ej*                  ej*                  
      Z ej
                  ej&                  d      Z ej2                  de	g      Z ej2                  de
g      Z ej2                  dd      Zy)TreatmentPhototreatment_photosTr
   rY   Fr%   rb   r(   r,   r/   r#   )foreign_keysrW   r2   N)r   r   r   r   r   r   r   r   rD   	doctor_idre   rd   r    rZ   r[   note
photo_pathrF   
photo_daterO   r   r=   rQ   rR   r>   rT   r)   r*   rg   r!   r   r   ri   ri   C   ss   &M	2::4	0B		"**mbmmJ&?%PI2::}r}}Z'@5QJbii

MBMM*$=NGBIIibiinu5E299RWWD9299S>E:J277U3J2;;@J2;;(//ZJ2;;6JR__V9+>FboofJ<@G2??6+=>Dr   ri   c                      e Zd ZdZ ej
                  ej                  d      Z ej
                  ej                   ej                  d      d      Z	 ej
                   ej                  d            Z ej
                  ej                        Z ej
                  ej                  d      Z ej
                  ej                   ej$                        Z ej(                  d	d
      Zy)NotificationnotificationsTr
   rY   Fr%   r(   r,   r#   r2   N)r   r   r   r   r   r   r   r   rD   user_idr    rZ   r[   messagerK   is_readrO   r   r=   rQ   rT   userr!   r   r   rq   rq   W   s    #M	2::4	0Bbii

MBMM*$=NGBIIibiin%Ebii Gbii

E2G2;;@J2??6?;Dr   rq   N)r   werkzeug.securityr   r   app.dbr   Modelr   r#   rW   r`   ri   rq   r!   r   r   <module>rz      sq     I %288 %,288 ,@	6288 	6@288 @?RXX ?(	<288 	<r   