
    jJh                         d dl mZ d dlmZ d dlmZ d dlmZ d dl	m
Z
  G d de      Z G d d	e
ej                        Zy
)    )absolute_import)Query)db)replace_chars)TimestampMixinc                   ,    e Zd Zd Zd Zd ZddZd Zy)TimecategoryQueryc                 b    | j                  t        j                  |k(        j                         S N)filterTimecategoryidfirst)selftime_category_ids     5/var/www/dostadmin/dostadmin/db_model/timecategory.py	get_by_idzTimecategoryQuery.get_by_id	   s$    {{<??.>>?EEGG    c                 \    | j                  t        j                        j                         S r   )order_byr   timeallr   s    r   get_timecategory_logz&TimecategoryQuery.get_timecategory_log   s     }}\../3355r   c                 b    | j                  t        j                  |k(        j                         S r   )r   r   r   r   )r   current_hours     r   !get_timecategory_for_current_hourz3TimecategoryQuery.get_timecategory_for_current_hour   s%    {{<,,<=CCEEr   c                     | j                  t        j                  t        |j	                               k(        j                         }|r|j                  S y)N)r   r   namer   lowerr   r   )r   ip_name	batch_recs      r   find_timecategory_id_with_namez0TimecategoryQuery.find_timecategory_id_with_name   sE    KKw}}!??

%' 	 <<r   c                     | j                  t        j                  j                  |            j	                  t        j
                        j                         S r   )r   r   r    in_r    active_user_count_till_yesterdayr   )r   	timeslotss     r   get_least_users_timeslotz*TimecategoryQuery.get_least_users_timeslot   s;    KK))--i89XlCCDUW	
r   N)6p)__name__
__module____qualname__r   r   r   r$   r)    r   r   r	   r	      s    H6F
r   r	   c                      e Zd ZdZeZ G d d      Z G d d      Z G d d      Z e	j                  e	j                  d	      Z e	j                   e	j                  d
      dd      Z e	j                   e	j                  d
      d      Z e	j                  e	j                        Z e	j"                  ddd      Zd Zy)r   timecategoryc                       e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdedfedfedfedfedfedfe	dfe
dfedfedfedfedfedffZy)%Timecategory.AnnouncementTimeCategoryz08:00:00z09:00:00z10:00:00z11:00:00z12:00:00z13:00:00z14:00:00z15:00:00z16:00:00z17:00:00z18:00:00z19:00:00z20:00:00) zUser's timeslotz8 AMz9 AMz10 AMz11 AMz12 noonz1 PMz2 PMz3 PMz4 PMz5 PMz6 PMz7 PMz8 PMN)r+   r,   r-   EIGHT_AMNINE_AMTEN_AM	ELEVEN_AM	TWELVE_PMONE_PMTWO_PMTHREE_PMFOUR_PMFIVE_PMSIX_PMSEVEN_PMEIGHT_PMCHOICESr.   r   r   AnnouncementTimeCategoryr2   &   s    		 $vfW 	"VVvffVvv
r   rB   c                   P    e Zd ZdZdZdZdZdZdZedfedfedffZ	edfedfedffZ
y)Timecategory.TimeRangeMORNING_TIME_RANGEAFTERNOON_TIME_RANGEEVENING_TIME_RANGEu)   सुबह समय श्रेणीu,   दोपहर समय श्रेणीu&   शाम समय श्रेणीN)r+   r,   r-   rE   rF   rG   MORNING_TIME_RANGE_HINDIAFTERNOON_TIME_RANGE_HINDIEVENING_TIME_RANGE_HINDIRANGEHINDI_RANGEr.   r   r   	TimeRangerD   F   sn    151#N %S"#K   !56!#9:!56
  !LM!#QR!IJ
r   rM   c                   D    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZy)Timecategory.Category8a9a10a11a12p1p2p3p4p5pr*   7p8p9pN)r+   r,   r-   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   NINE_PMr.   r   r   CategoryrO   Y   sH    		r   r^   T)primary_key   F)uniquenullable)rb   
Experiencetime_categoryz-Timecategory.id == Experience.timecategory_id)back_populatesprimaryjoinc                 R    d| j                   z   dz   t        | j                        z   S )NzTimeCategory  )r    strr   r   s    r   __repr__zTimecategory.__repr__t   s#    *S03tww<??r   N)r+   r,   r-   __tablename__r	   query_classrB   rM   r^   r   ColumnIntegerr   Stringr    r   r'   relationshipexperiencesrj   r.   r   r   r   r   "   s    "M#K
 
@
 
&   
2::4	0B299YRYYr]4%@D299YRYYr]U3D'0ryy'<$!"//&CK@r   r   N)
__future__r   flask_sqlalchemy.queryr   	BaseQuery	dostadminr   utils.helpers.helpersr   dostadmin.mixinsr   r	   Modelr   r.   r   r   <module>ry      s6    & 5  / +
	 
4S@>288 S@r   