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

�

N��fL ��4�ddlmZmZmZmZmZmZmZmZm	Z	ddl
mZmZddlm
Z
mZddlmZddlZddlmZmZmZmZeejddd	d�
��Zeejddd	d�
��Zeejddd	d�
��ZGd
�d��ZdS)�)	�
create_engine�MetaData�Table�insert�null�select�update�delete�text)�and_�or_)�asc�desc)�appN)�	timedelta�date�datetime�time�DATABASE_URITi)�
pool_pre_ping�pool_recycle�future�DATABASE_URI_FK�DATABASE_URI_CONFc�J�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�ZdS)�	SyncModelc�|�	t��|_dS#t$r}t|��Yd}~dSd}~wwxYw)N)r�meta�	Exception�print)�self�es  �g/Users/santhoshgovindaraj/Dropbox/Dev Team/Santhosh Works/sep/hall scan/scan_v1/core/model/SyncModel.py�__init__zSyncModel.__init__sL����z�z�4�9�9�9��	������8�8�8�8�8�8�8�8�8��������s��
;�6�;c��t���5}td|�d|�d���}|�|�����}|rt|j��nd}|cddd��S#1swxYwYdS)Nz@select asession_id,updated_at from abs_sessions where conf_id = � and hall_id = z and is_active = 1;��engine�connectr�execute�first�dict�_mapping�r!�conf_id�hall_id�conn�stmt�results      r#�get_active_session_livez!SyncModel.get_active_session_live1s���
�~�~����4��H�SZ�H�H�kr�H�H�H�I�I�4�
�\�\�$�
�
�
%�
%�
'�
'�6�%+�5�D���!�!�!��6�
�	����������������������AA>�>B�Bc��t���5}td|�d|�d���}|�|�����}|rt|j��nd}|cddd��S#1swxYwYdS)NzJselect asession_id,updated_at,is_active from abs_sessions where conf_id = r&z! order by updated_at desc limit 1r'r.s      r#�get_last_update_session_livez&SyncModel.get_last_update_session_live8s���
�~�~����4��`�]d�`�`�u|�`�`�`�a�a�4�
�\�\�$�
�
�
%�
%�
'�
'�6�%+�5�D���!�!�!��6�
�	��������������������r5c���t���5}	td|�d|�d���}|�|��}|rtd|�d|�d|�d|�d|�d���}	|�|	��}
|���	ddd��dS#t
$r5}t
d	|��t|��cYd}~cddd��Sd}~wwxYw#1swxYwYdS)
Nz9update abs_sessions set is_active = Null where conf_id = r&�;z$update abs_sessions set is_active = z
,updated_at='z' where asession_id=z and  conf_id = �successzError: )r(r)rr*�commitrr �str)r!�active_session_id�	is_activer/r0�session_updated_at_localr1�	stmt_bulk�	restult_1�stmt_single�	restult_2r"s            r#�update_active_sessionzSyncModel.update_active_session?s���
�~�~����4�
��x�V]�x�x�nu�x�x�x�y�y�I����Y�'�'�I��Q��P�I�P�P�\t�P�P�K\�P�P�nu�P�P�FM�P�P�P�Q�Q�[����[�)�)�I��K�K�M�M�M���������������	�)�A�����q�6�6�M�M�M�M�M�����������������������������s;�C!�A5B�
C�)C�C�C!�C�C!�!C%�(C%c��t���5}td|�d���}|�|�����}|rd�|D��nd}|cddd��S#1swxYwYdS)N�select * from � ;c�6�g|]}t|j����S��r,r-��.0�rs  r#�
<listcomp>z/SyncModel.get_scan_all_data.<locals>.<listcomp>S�"��
/�
/�
/�1�d�1�:���
/�
/�
/�)r(r)rr*�all)r!�scan_table_namer1r2r3�resultss      r#�get_scan_all_datazSyncModel.get_scan_all_dataNs���
�~�~����4��4��4�4�4�5�5�4�
�\�\�$�
�
�
#�
#�
%�
%�6�39�
C�
/�
/��
/�
/�
/�
/�t�7�
���������������������s�AA3�3A7�:A7c
�*�t���5}td|�d|�d|�d���}t|��|�|�����}|rd�|D��nd}|cddd��S#1swxYwYdS)NrFz where (new_sync_at > 'z' or updated_sync_at > 'z' );c�6�g|]}t|j����SrIrJrKs  r#rNzCSyncModel.get_scan_data_from_last_sync_at_local.<locals>.<listcomp>]rOrP)r(r)rr r*rQ)r!rR�last_sync_at_localr1r2r3rSs       r#�%get_scan_data_from_last_sync_at_localz/SyncModel.get_scan_data_from_last_sync_at_localWs	��
�~�~����4��N��N�N�I[�N�N�vH�N�N�N�O�O�4���;�;�;�
�\�\�$�
�
�
#�
#�
%�
%�6�39�
C�
/�
/��
/�
/�
/�
/�t�7�
�
��������������������s�A!B�B�Bc
���	t���5}|d���}	g}
|D]:}|�d��dkr||d<d|d<|
�|���;|
r�t|
��dkr�d�d�|	D����}d|�d|�dd�|	���d	|�d
�	}
td|
��|�t|
��|
��}|�
��	ddd��dS#1swxYwYdS#t$r)}td
|��t|��cYd}~Sd}~wwxYw)Nr�new_sync_at�scan_id�, c��g|]}d|z��S�z:%srI�rL�cols  r#rNz>SyncModel.insert_update_table_data_to_live.<locals>.<listcomp>ms��H�H�H�s�u�s�{�H�H�HrPz
 INSERT INTO �.� (�
) VALUES (�)�stmt_1r:zError : )
r(r)�keys�get�append�len�joinr r*rr;rr<)r!r/�conf_keyr0�	scan_datarR�curr_dt�conf_schemar1�columns_to_insert�insert_data�data�placeholdersrer3r"s                r#� insert_update_table_data_to_livez*SyncModel.insert_update_table_data_to_liveas����������D�!�!��)�)�+�+���K�����������4�'�'�$�d�=��!�d�9�o�����������s�;�'�'�!�+�+��I�I�H�H�6G�H�H�H�I�I�\�v�k�v�v�O�v�v�t�y�y�IZ�?[�?[�v�v�gs�v�v�v�V�
�8�F�����l�l�4��<�<��5�5�V�	�[�[�]�]�]������������������������ 
������A����

�a�&�&�=�=�=�=�=�=��������sA�D-�C8D �D-� D$�$D-�'D$�(D-�-
E �7E�E �E c� �	t���5}|d���}|s	ddd��dS|D]}	||	d<||	d<d|	d<�d�d�|D����}
d|�d	d�|���d
|
�d�}|�t|��|��}|���	ddd��dS#1swxYwYdS#t$r}
t|
��cYd}
~
Sd}
~
wwxYw)
NrzNo data to insertrZ�updated_sync_atr[r\c��g|]}d|z��Sr^rIr_s  r#rNz7SyncModel.insert_table_data_to_live.<locals>.<listcomp>�s��G�G�G�c�e�c�k�G�G�GrPzINSERT INTO rbrcrdr:)	r(r)rfrjr*rr;rr<)r!r/rkr0rlrRrmr1rorqrrrer3r"s              r#�insert_table_data_to_livez#SyncModel.insert_table_data_to_livews����������D�!�!��)�)�+�+��� ����������
�!�!��#�T�-�� '�T�
��!�T�)�_�_��9�9�G�G�5F�G�G�G�H�H�L�
f�O�
f�
f�t�y�y�9J�/K�/K�
f�
f�Wc�
f�
f�
f�F�
�\�\�$�v�,�,�	�
2�
2�F��K�K�M�M�M�
�'����������������������(
����

�a�&�&�=�=�=�=�=�=��������sL�C*�C�C*�B
C�C*�C!�!C*�$C!�%C*�*
D
�4D�D
�D
c	���t���}|���}|�d|g��|jr�d�|jD��}g}|���D]2}|�tt||�������3|�	��|�
��|r|SdS|�	��|jdS)N�0usp_conf_generate_session_table_scan_logs_by_dayc��g|]
}|d��S)rrI)rL�columns  r#rNzISyncModel.usp_generate_session_table_scan_logs_by_day.<locals>.<listcomp>�s��=�=�=��&��)�=�=�=rP)r(�raw_connection�cursor�callproc�description�fetchallrhr,�zip�closer;�co)r!r/�
connectionr}�columnsrS�rows       r#�+usp_generate_session_table_scan_logs_by_dayz5SyncModel.usp_generate_session_table_scan_logs_by_day�s����%�%�'�'�*��!�!�#�#�&��/�/�D�g�Y�O�O�O���
�=�=�&�*<�=�=�=�7��7��o�o���,�,�s��N�N�4��G�S�)�)�*�*�+�+�+�+�	�<�<�>�>�>�
������
���N��4�	�<�<�>�>�>�
�=�=�=�=rPc��	t���5}|s	ddd��dSd}tt|����|D]`}|d|d<|d}	|d}
d�d�|���D����}|d|�d	|�d
|�d|	�d�	z}�atd
|��|�t|����}|���td|zdz��}
|�|
��}|�	��}|rt|j��ndcddd��S#1swxYwYdS#t$r}t|��cYd}~Sd}~wwxYw)NzNo data to update��exist_atru�delegate_nor\c�\�g|])\}}|dk�|�d|pd�d��dd����*S)r[z = '�NULL�'z'NULL')�replace)rL�key�values   r#rNz7SyncModel.update_table_data_to_live.<locals>.<listcomp>�sq��K�K�K�[e�[^�`e�y|�AJ�zJ�zJ��<�<�%�/�6�<�<�<�D�D�X�v�V�V�zJ�zJ�zJrPzUPDATE z SET z WHERE conf_id = z/ AND new_sync_at IS NOT NULL and delegate_no = rGzupdate query- z8select MAX(updated_sync_at) as last_update_sync_at from z> where updated_sync_at is not null and  exist_at is not null ;)r(r)r �lengthrj�itemsr*rr;�one_or_noner,r-rr<)r!r/rkr0�update_scan_datarRr1�stmt_updaterqr�r��
set_valuesr3r2rSr"s                r#�update_table_data_to_livez#SyncModel.update_table_data_to_live�sf���
	�����7�D�� ��7�7�7�7�7�7�7�7��K�	�&�!�
"�
"�#�#�#� �f�f��#�J�/�T�
���
�&�[��
�#�X��)�)�K�K�im�is�is�iu�iu�K�K�K�L�L�Z��"f�?�"f�"f��"f�"f�^e�"f�"f�Wb�"f�"f�"f�f�[�[�	�
�;�'�'�'�
�\�\�$�{�+�+�
,�
,�F��K�K�M�M�M��K�O�[�]]�]�
^�
^�D�
�\�\�$�
�
�F�� � �"�"�G�%,�6�4�� �!�!�!�$�'7�7�7�7�7�7�7�7�7�7�7�7����7�7�7�7�7�7��.
����

�a�&�&�=�=�=�=�=�=��������sK�E"�E�E"�DE�E"�E�E"�E�E"�"
F�,F�:F�FN)
�__name__�
__module__�__qualname__r$r4r7rDrTrXrsrwr�r�rIrPr#rrs����������<������������������,���4���(����rPr)�
sqlalchemyrrrrrrr	r
r�sqlalchemy.sqlrr
rr�corer�jsonrrrr�configr(�	engine_fk�engine_conf_liverrIrPr#�<module>r�sZ��^�^�^�^�^�^�^�^�^�^�^�^�^�^�^�^�^�^�^�^�^�^�$�$�$�$�$�$�$�$� � � � � � � � �����������1�1�1�1�1�1�1�1�1�1�1�1��m�C�J�~�6�T�W[�cg�h�h�h���m�C�J�'8�9��Z^�fj�k�k�k�	� �=���,?�!@�t�ae�mq�r�r�r��q�q�q�q�q�q�q�q�q�qrP

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