Sindbad~EG File Manager

Current Path : /home/numerotech/hs.numerotech.com/scan_v1/core/model/__pycache__/
Upload File :
Current File : //home/numerotech/hs.numerotech.com/scan_v1/core/model/__pycache__/QueryModel.cpython-39.pyc

a

���d��@s�ddlmZddlmZmZmZddlmZmZmZm	Z	m
Z
ddlmZm
Z
ddlmZeejddd�Zeejd	dd�ZGd
d�d�ZdS)
�)�session)�request�	Blueprint�jsonify)�
create_engine�select�MetaData�Table�text)�and_�or_)�app�DATABASE_URIi)�pool_recycle�DATABASE_URI_CONFc@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�ZdS) �
QueryModelc
Cs>zt�|_Wn,ty8}zt|�WYd}~n
d}~00dS)N)r�meta�	Exception�print)�self�e�r�V/home/numerote/conference.numerotech.com/food_kit_scan_badges/core/model/QueryModel.py�__init__szQueryModel.__init__cCs�t���n}tdt|�d|d|d�}|�|���}|rXt|j�Wd�SWd�dSWd�n1s|0YdS)Nz)select * from conference where  conf_id =z and conf_key ='z' and 'z' <= conf_end_time ;)�engine�connectr
�str�execute�one_or_none�dict�_mapping)r�conf_id�conf_key�
current_dt�conn�stmt�resultsrrr�getConf_open_closedForQuerys
$z&QueryModel.getConf_open_closedForQuerycCs�t���d}td|d�}|�|j||d����}|rNt|j�Wd�SWd�dSWd�n1sr0YdS)N�select * from z? where conf_id =:conf_id and delegate_no =:delegate_no limit 1;)r!�delegate_no)rrr
r�
bindparamsrrr )rr!r)�del_table_namer$r%r&rrr�checkDelegateNos
zQueryModel.checkDelegateNocCs�t����}z,t|�}|�|�}|��WWd�dStyx}z*|��t|�WYd}~Wd�Sd}~00Wd�n1s�0YdS)N�success)�engine_confrr
r�commitrr)r�insert_stmtr$r%r&rrrr�insert_delegate_query's

z QueryModel.insert_delegate_querycCslt���P}tdt|�d�}|�|j|d����}|rFdd�|D�ndWd�S1s^0YdS)Nz$SELECT distinct(display_dt),dt from z( where conf_id=:conf_id  order by dt asc)r!cSsg|]}t|j��qSr�rr ��.0�rrrr�
<listcomp>;�z0QueryModel.getDaysQueryModel.<locals>.<listcomp>�rrr
rrr*�all)r�abs_session_tabler!r$r%r&rrr�getDaysQueryModel7s
zQueryModel.getDaysQueryModelcCsnt���R}tdt|�d�}|�|j||d����}|rHdd�|D�ndWd�S1s`0YdS)Nz1SELECT distinct(hall),hall_id,dt,display_dt from z8 where conf_id=:conf_id and dt=:conf_date order by hall;)r!�	conf_datecSsg|]}t|j��qSrr2r3rrrr6Ar7z1QueryModel.getHallsQueryModel.<locals>.<listcomp>r8)rr:r!r<r$r%r&rrr�getHallsQueryModel=s
zQueryModel.getHallsQueryModelcCslt���P}tdt|�d�}|�|j|||d��}|rFdd�|D�ndWd�S1s^0YdS)NzSELECT * from zv where conf_id=:conf_id and  hall_id=:hall_id and dt=:conf_date  and abs_session_id is not null order by starts_by asc�r!�hall_idr<cSsg|]}t|j��qSrr2r3rrrr6Gr7z2QueryModel.getSessionNameQuery.<locals>.<listcomp>)rrr
rrr*)rr:r!r?r<r$r%r&rrr�getSessionNameQueryCs
zQueryModel.getSessionNameQuerycCs�t���l}tdt|�d�}|�|j||d��}|��}|rVt|j�Wd�SWd�dSWd�n1sz0YdS)Nr(z5 where conf_id=:conf_id and asession_id=:asession_id;)r!�asession_id�	rrr
rrr*rrr )rr:r!rAr$r%r&rrr�get_sessionQueryModelIs
z QueryModel.get_sessionQueryModelc	Cs�t���v}tdt|�d|d�}|�|j|||d��}|��}|r`t|j�Wd�SWd�dSWd�n1s�0YdS)Nr(zE where conf_id =:conf_id and hall_id=:hall_id and dt=:conf_date and 'z!' between starts_by and ends_by ;r>rB)	rr:r!r#r?r<r$r%r&rrr�getCurrentSessionQueryModelSs
z&QueryModel.getCurrentSessionQueryModelcCs�t���h}tdt|�d�}|�|j||d����}|rRt|j�Wd�SWd�dSWd�n1sv0YdS)Nr(zb  where asession_id=:asession_id and date(created_at)=:conf_date order by created_at desc limit 1;)rAr<rB)r�abs_session_queries_tablerAr<r$r%r&rrr�
getQueries]s
zQueryModel.getQueriescCsnt���R}tdt|�d�}|�|j||d����}|rHdd�|D�ndWd�S1s`0YdS)Nr(zW where asession_id=:asession_id and created_at >:last_sync_at order by created_at desc;)rA�last_sync_atcSsg|]}t|j��qSrr2r3rrrr6jr7z2QueryModel.getAutoQueriesModel.<locals>.<listcomp>r8)rrErArGr$r%r&rrr�getAutoQueriesModelfs
zQueryModel.getAutoQueriesModelc	Cs�g}z�t��}|��}|�d|g�dd�|jD�}g}|��}|durJqdtt||��}|�|�q8|�t	|��|�
�dur�q�|jdur$q�q$W|��|��n|��|��0|S)NZusp_get_pre_nxt_querycSsg|]}|d�qS�rr�r4�crrrr6ur7z:QueryModel.usp_get_pre_nxt_query_model.<locals>.<listcomp>�
r.�raw_connection�cursor�callproc�description�fetchoner�zip�append�list�nextsetr/�close)	rrA�sets�
connectionrN�names�set_�row_raw�rowrrr�usp_get_pre_nxt_query_modelms,

�
z&QueryModel.usp_get_pre_nxt_query_modelcCs�g}z�t��}|��}|�d||||g�dd�|jD�}g}	|��}
|
durPqjtt||
��}|	�|�q>|�t	|	��|�
�dur�q�|jdur*q�q*W|��|��n|��|��0|S)NZusp_get_session_querycSsg|]}|d�qSrIrrJrrrr6�r7z:QueryModel.usp_get_session_query_model.<locals>.<listcomp>rL)rr!r?r<r#rWrXrNrYrZr[r\rrr�usp_get_session_query_model�s,

�
z&QueryModel.usp_get_session_query_modelc	Cs�t��}|��}|�d|||g�|jr|dd�|jD�}g}|��D]}|�tt||���qD|�	�|�
�|rv|SdSn|�	�|�
�dSdS)N�usp_generate_query_sessioncSsg|]}|d�qSrIr)r4�columnrrrr6�r7z9QueryModel.usp_generate_query_session.<locals>.<listcomp>)r.rMrNrOrP�fetchallrSrrRrVr/)	rZdb_nameZabs_sessions_tabler!rXrN�columnsr&r\rrrr_�s z%QueryModel.usp_generate_query_sessioncCs�t���d}tdt|�d�|||��}|�|�}|��|rNWd�dSWd�dSWd�n1sr0YdS)Nzupdate z5 set display_dt = '{}' where dt = '{}' and conf_id={}r-)r.rr
r�formatrr/)r�
table_name�session_dateZsession_dayr!r$r%�resultrrr�update_abs_sessions�s

zQueryModel.update_abs_sessionsN)�__name__�
__module__�__qualname__rr'r,r1r;r=r@rCrDrFrHr]r^r_rgrrrrrs
	

	!!rN)�flaskrrrr�
sqlalchemyrrrr	r
Zsqlalchemy.sqlrr�corer
�configrr.rrrrr�<module>s

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists