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__/AttendanceModel.cpython-311.pyc

�

�
�ep���ddlmZddlmZmZmZddlmZmZmZm	Z	m
Z
ddlmZm
Z
ddlmZeejdddd�	��ZGd
�d��ZdS)
�)�session)�request�	Blueprint�jsonify)�
create_engine�select�MetaData�Table�text)�and_�or_)�app�DATABASE_URITi)�
pool_pre_ping�pool_recycle�futurec�b�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�ZdS)�AttendanceModelc��	t��|_td|jt���|_dS#t
$r}t
|��Yd}~dSd}~wwxYw)N�session_attendance_log)�
autoload_with)r	�metar
�enginer�	Exception�print)�self�es  �i/home/numerotech/public_html/conference.numerotech.com/food_kit_scan_badges/core/model/AttendanceModel.py�__init__zAttendanceModel.__init__si����z�z�4�9�"'�(@���Z`�"a�"a�"a�4�����	������8�8�8�8�8�8�8�8�8��������s�48�
A�A�Ac�f�t���5}tdt|��zdz|zdz|zdz��}|�|�����}|rt
|j��nd}|r|cddd��S	ddd��dS#1swxYwYdS)Nz)select * from conference where  conf_id =z and conf_key ='�' and 'z' <= conf_end_time ;)r�connectr�str�execute�first�dict�_mapping)r�conf_id�conf_key�
current_dt�conn�stmt�result�resultss        r�getConf_open_closedz#AttendanceModel.getConf_open_closeds%��
�~�~����4�	
�9�#�g�,�,�F�GY�Y�Zb�b�cl�l�mw�w�yO�O�
P�
P�4��L�L����$�$�&�&�6�&,�
6�T�&�/�
"�
"�
"�$�7�
���
�����������������������������s�A1B&�B&�&B*�-B*c�d�t���5}tdt|��zdzt|��zdz��}|�|�����}|rd�|D��nd}|r|cddd��S	ddd��dS#1swxYwYdS)Nz$SELECT distinct(display_dt),dt from � where conf_id=z  order by dt ascc�6�g|]}t|j����S��r&r'��.0�rs  r�
<listcomp>z+AttendanceModel.getDays.<locals>.<listcomp>%�"��/�/�/�!�T�!�*�
�
�/�/�/��rr"rr#r$�all)r�abs_session_tabler(r+r,r.r-s       r�getDayszAttendanceModel.getDays!s*��
�~�~����4�
�6�s�;L�7M�7M�M�N_�_�`c�dk�`l�`l�l�nA�A�B�B�4�
�\�\�$�
�
�
#�
#�
%�
%�7�3:�D�/�/�w�/�/�/�/��6���������������������������������s�A0B%�B%�%B)�,B)c��t���5}tdt|��zdzt|��zdzt|��zdz��}|�|�����}|rd�|D��nd}|r|cddd��S	ddd��dS#1swxYwYdS)Nz1SELECT distinct(hall),hall_id,dt,display_dt from r1�
 and dt= 'z' order by hall_id ;c�6�g|]}t|j����Sr3r4r5s  rr8z,AttendanceModel.getHalls.<locals>.<listcomp>/r9r:r;)rr=r(�	conf_dater+r,r.r-s        r�getHallszAttendanceModel.getHalls+sY��
�~�~����4�
�C�C�HY�DZ�DZ�Z�[l�l�mp�qx�my�my�y�{G�G�HK�LU�HV�HV�V�Wm�m�n�n�4�
�\�\�$�
�
�
#�
#�
%�
%�7�3:�D�/�/�w�/�/�/�/��6���������������������������������s�BB8�*B8�8B<�?B<c��t���5}tdt|��zdzt|��zdzt|��zdzt|��zdz��}|�|�����}|rd�|D��nd}|r|cddd��S	ddd��dS#1swxYwYdS)NzSELECT * from r1z and  hall_id=r@z!' and abs_session_id is not null c�6�g|]}t|j����Sr3r4r5s  rr8z2AttendanceModel.getSessionName.<locals>.<listcomp>9r9r:r;)	rr=r(�hall_idrBr+r,r.r-s	         r�getSessionNamezAttendanceModel.getSessionName5sj��
�~�~����4�
� ��%6�!7�!7�7�8I�I�#�g�,�,�V�Wg�g�hk�ls�ht�ht�t�vB�B�CF�GP�CQ�CQ�Q�Ru�u�v�v�4�
�\�\�$�
�
�
#�
#�
%�
%�7�3:�D�/�/�w�/�/�/�/��6���������������������������������s�BC�=C�C�Cc�<�g}	t���}|���}d}d}|�d||||g��	d�|jD��}g}		|���}
|
�n3t
t||
����}|	�|���J|�t|	����|�
���n	|j�n��|���n#|���wxYw|S)N� usp_get_abstract_session_spakers�c��g|]
}|d��S�rr3�r6�cs  rr8z/AttendanceModel.get_session.<locals>.<listcomp>H���.�.�.�a�Q�q�T�.�.�.r:�r�raw_connection�cursor�callproc�description�fetchoner&�zip�append�list�nextset�close)rr(�asession_id�sets�
connectionrR�date�hall�names�set_�row_raw�rows            r�get_sessionzAttendanceModel.get_session?s2��	�$���%�%�'�'�:��!�!�#�#�6��4��4�	�?�?�5�w�t�D��6U�V�V�V�
�.�.�6�-�.�.�.�E�
�D����� � �W������E�7�#�#�$�$�S�	�[�[������	�K�K��T�
�
����
�~�~����
�
��!�
�
���������:����������	
�+s�C*D�Dc��t���5}tdt|��zdzt|��zdzt|��zdzt|��zdzt|��zdz��}|�|�����}|r|jndcddd��S#1swxYwYdS)Nzselect * from z where conf_id =z and hall_id='z' and dt= 'r!z!' between starts_by and ends_by ;)rr"rr#r$r%r')	rr=r(r*rFrBr+r,r.s	         r�getCurrentSessionz!AttendanceModel.getCurrentSessionYsS��
�~�~���0�4�
���$5� 6� 6�6�7I�I�#�g�,�,�V�Wg�g�hk�ls�ht�ht�t�vC�C�DG�HQ�DR�DR�R�S\�\�]`�ak�]l�]l�l�mP�P�Q�Q�4�
�\�\�$�
�
�
%�
%�
'�
'�7�%�
/�'�
�
�4�0�0�0�0�0�0�0�0�0�0�0�0����0�0�0�0�0�0s�B C�C�Cc�4�g}	t���}|���}|�d||||g��	d�|jD��}g}		|���}
|
�n3t
t||
����}|	�|���J|�t|	����|�
���n	|j�n��|���n#|���wxYw|S)N�usp_get_session_queryrJc��g|]
}|d��SrLr3rMs  rr8z9AttendanceModel.usp_get_session_query.<locals>.<listcomp>jrOr:rP)rr(rFrBr*r\r]rRr`rarbrcs            rrhz%AttendanceModel.usp_get_session_querybs*��	�$���%�%�'�'�:������6�	�?�?�*�G�G�I�j�+Q�R�R�R��.�.�6�-�.�.�.�E�
�D����� � �W������E�7�#�#�$�$�S�	�[�[�����
�	�K�K��T�
�
����
�~�~����
���!�
�'�,��������:����������	
�+s�C&C?�?Dc�0�t���5}td|�d���}|�|�����}|rt|j��nd}|r|cddd��S	ddd��dS#1swxYwYdS)Nz7select * from  abs_session_types  where abs_session_id=�;)rr"rr$r%r&r'�rr[r+r,r.r-s      r�getsessiondata_session_idz)AttendanceModel.getsessiondata_session_id�s���
�~�~����4�
�W��W�W�W�
X�
X�4�
�\�\�$�
�
�
%�
%�
'�
'�7�'.�8�D��!�"�"�"�D�6���������������������������������s�AB�=B�B�Bc�2�t���5}d}d}dg}g}g}|D]�}||zdz}||zdz}|D]�}	t|	d��dkrK|	|rB|dzt|	d��zd	z|	|z}|�|	d���f|	|rB|d
zt|	d��zd	z|	|z}|�|	d����|dz}|dz}��|dd�}|dd�}d
�d�|D����}d
�d�|D����}|dzt|��zdz}|dzt|��zdz}t
|��dkr(||z}|�t|����}
n5t
|��dkr"|�t|����}
|�	��	ddd��dS#1swxYwYdS)NzUPDATE abs_topics SET zUPDATE abs_judges SET �
is_presentz = case �is_judgerz When topic_id = �pk_idz then z When judges_id = z END, ����,c3�4K�|]}t|��V��dS�N�r#�r6rs  r�	<genexpr>z4AttendanceModel.update_attendance.<locals>.<genexpr>�s(����7�7�a�3�q�6�6�7�7�7�7�7�7r:c3�4K�|]}t|��V��dSrurvrws  rrxz4AttendanceModel.update_attendance.<locals>.<genexpr>�s(����5�5�Q�#�a�&�&�5�5�5�5�5�5r:z Where topic_id in (z );z Where judges_id in (�Success)
rr"�intr#rW�join�lenr$r�commit)r�speaker_datar+r,�stmt1�keyname�
judge_pkid�author_pkid�j�ir-s           r�update_attendancez!AttendanceModel.update_attendance�s���
�~�~��� �4�
"�4�#�5��^�7��:��;��
�
�q��!�8�Z��D��A�I�z�!�E�
�%�%���A�j�M���a���	
�1��&��(�(�3�q��z�?�?�:�X�E��!��L�t����!�G�*�%�%�%��	
�1��%��+�+�c�!�G�*�o�o�=��H�1�Q�4�O�u�����7��$�$�$���(�?�D��H��E�E�
�s��s�)�4���"��:�5��(�(�7�7�;�7�7�7�7�7�;����5�5�*�5�5�5�5�5�:�
�'�
'��[�)9�)9�
9�%�
?�4��*�*�C�
�O�O�;�E�A�5�	�*�o�o�q�����:�D�
�\�\�$�t�*�*�
%�
%�F�F��K���!���
�\�\�$�t�*�*�
%�
%�F��;�;�=�=�=�
�A � � � � � � � � � � � ���� � � � � � s�G%H�H�Hc��t���5}td�|||����}|�|��}|���	ddd��dS#1swxYwYdS)NzZupdate abs_session_types set attendance_on = '{}',remarks = '{}' where abs_session_id = {}�success)rr"r�formatr$r~)rr[�datetime�remarksr+r,r.s       r�update_sessionzAttendanceModel.update_session�s���
�~�~����4�
�k�r�r�s{�}D�EP�Q�Q�R�R�4�
�\�\�$�
�
�7��;�;�=�=�=�
�	��������������������s�AA6�6A:�=A:c���t���5}|�|j���|��}|���	ddd��dS#1swxYwYdS)Nr�)rr"r$r�insertr~)r�datar+r-s    r�insert_session_attendance_logz-AttendanceModel.insert_session_attendance_log�s���
�~�~����4��L�L��4�;�;�=�=�t�D�D�6��;�;�=�=�=�
���������������������s�AA*�*A.�1A.c	��t���}|���}|�d||g��d�|jD��}g}|���D]2}|�tt||�������3|�	��|�
��|rdSdS)N�#usp_generate_certificate_by_sessionc��g|]
}|d��SrLr3)r6�columns  rr8z9AttendanceModel.generate_certificates.<locals>.<listcomp>�s��8�8�8�6�V�A�Y�8�8�8r:r��fail)rrQrRrSrT�fetchallrWr&rVrZr~)rr(�
session_idr]rR�columnsr.rcs        r�generate_certificatesz%AttendanceModel.generate_certificates�s����$�$�&�&�*������&��/�/�7���8L�M�M�M�8�8�V�%7�8�8�8�'��'�
�_�_�
�
�+�+�c�
�>�>�$�s�7�C�(�(�)�)�*�*�*�*��,�,�.�.�.���������
�)�
�&r:c� �t���5}td|�d���}|�|�����}|rd�|D��nd}|r|cddd��S	ddd��dS#1swxYwYdS)Nz<select * from session_attendance_log where abs_session_id = z order by loged_onc�6�g|]}t|j����Sr3r4r5s  rr8z9AttendanceModel.get_session_volunteer.<locals>.<listcomp>�r9r:)rr"rr$r<rls      r�get_session_volunteerz%AttendanceModel.get_session_volunteer�s���
�~�~����4�
�n�{�n�n�n�
o�
o�4�
�\�\�$�
�
�
#�
#�
%�
%�7�3:�D�/�/�w�/�/�/�/��6���������������������������������s�AB�5B�B�
BN)�__name__�
__module__�__qualname__rr/r>rCrGrdrfrhrmr�r�r�r�r�r3r:rrr
s����������	�	�	�������������40�0�0����@���!�!�!�F��������� ����r:rN)�flaskrrrr�
sqlalchemyrrr	r
r�sqlalchemy.sqlrr
�corer�configrrr3r:r�<module>r�s���������-�-�-�-�-�-�-�-�-�-�B�B�B�B�B�B�B�B�B�B�B�B�B�B�$�$�$�$�$�$�$�$�������	��s�z�.�1��RV�^b�	c�	c�	c��J�J�J�J�J�J�J�J�J�Jr:

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