
    pi}                         S r SSKJrJrJrJrJr  SSKJr  SSK	J	r	  SSK
Jr   " S S\5      r " S	 S
\5      r " S S\5      rg)z
Reservation Domain Models

SQLAlchemy ORM models for reservations and related tables:
- Reservation: Main reservation entity
- ReservationStudent: Many-to-many link between reservations and students
- JugadorGasto: Player expenses/payments tracking
    )ColumnIntegerStringText
ForeignKey)relationship)datetime   )Basec                   8   \ rS rSrSrSr\" \SSS9r\" \	SS S9r
\" \	SS	9r\" \	5      r\" \5      r\" \SS
S9r\" \	5      r\" \	5      r\" \	5      r\" \5      r\" \\" SSS95      r\" \	SSS9r\" \\" SSS9SS	9r\" \SS
S9r\" SSSS9r\" SSSS9rS rSrg)Reservation   z'Reservation model for training sessionsreservationsTprimary_keyautoincrementFc                  J    [         R                  " 5       R                  S5      $ Nz%Y-%m-%dT%H:%M:%Sr	   nowstrftime     =/home/mario/Escritorio/thel4footbal/app/models/reservation.py<lambda>Reservation.<lambda>       @W@WXk@lr   nullabledefaultr   r   users.idzSET NULLondelete
confirmadaCASCADEReservationStudentreservationzall, delete-orphan)back_populatescascadeJugadorGastoc                 V    SU R                    SU R                   SU R                   S3$ )Nz<Reservation(id=z, date='z', status='z')>)iddatestatusselfs    r   __repr__Reservation.__repr__'   s*    !$''(499+[UXYYr   r   N)__name__
__module____qualname____firstlineno____doc____tablename__r   r   r-   r   
created_atr.   timeduration_minutesprice_centsnameemailphoner   notesr   user_idr/   
docente_idpaidr   studentsgastosr2   __static_attributes__r   r   r   r   r      s    1"M	T	>B8lmJ&5)D&>Dg5!<K&>D6NE6NE4LEWjjIJGFULAFJ!KVZ[J'E15D 0XlmH.PdeFZr   r   c                       \ rS rSrSrSr\" \\" SSS9SSS	9r	\" \\" S
SS9SSS	9r
\" \SSS9r\" SSS9r\" S5      rS rSrg)r'   +   z;Many-to-many relationship between reservations and studentsreservation_studentsreservations.idr&   r#   TF)r   r   r"   r   r   r   rE   r)   Userc                 V    SU R                    SU R                   SU R                   S3$ )Nz#<ReservationStudent(reservation_id=
, user_id=z, paid=)>)reservation_idrB   rD   r0   s    r   r2   ReservationStudent.__repr__7   s6    4T5H5H4ITXT`T`Saahimirirhssuvvr   r   N)r4   r5   r6   r7   r8   r9   r   r   r   rQ   rB   rD   r   r(   userr2   rG   r   r   r   r'   r'   +   si    E*MGZ0AI%VdhsxyNWjiHVZejkG'E15D }ZHKDwr   r'   c                       \ rS rSrSrSr\" \SSS9r\" \	SS S9r
\" \	SS	9r\" \\" S
SS95      r\" \\" SSS95      r\" \SS	9r\" \	5      r\" \	5      r\" \5      r\" SSS9rS rSrg)r+   ;   z$Player expenses and payment trackingjugadores_gastosTr   Fc                  J    [         R                  " 5       R                  S5      $ r   r   r   r   r   r   JugadorGasto.<lambda>@   r   r   r   r!   r"   r&   r#   rK   r   rF   rL   c                 V    SU R                    SU R                   SU R                   S3$ )Nz<JugadorGasto(id=rO   z, amount_cents=rP   )r-   rB   amount_centsr0   s    r   r2   JugadorGasto.__repr__L   s.    "477):dll^?SWSdSdReeghhr   r   N)r4   r5   r6   r7   r8   r9   r   r   r-   r   r:   r.   r   rB   rQ   rZ   categoryconceptr   rA   r   r(   r2   rG   r   r   r   r+   r+   ;   s    .&M	T	>B8lmJ&5)DWjiHIGGZ0AI%VWN'E2Lf~HVnG4LE }XFKir   r+   N)r8   
sqlalchemyr   r   r   r   r   sqlalchemy.ormr   r	   baser   r   r'   r+   r   r   r   <module>ra      sF    A @ '  Z$ Z6w w i4 ir   