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

�

�
�ee3���ddlmZddlmZmZmZddlmZmZmZm	Z	m
Z
ddlmZm
Z
ddlmZeejddd�	��Zeejd
dd�	��Zeejddd�	��ZGd�d
��ZdS)�)�session)�request�	Blueprint�jsonify)�
create_engine�select�MetaData�Table�text)�and_�or_)�app�DATABASE_URITi)�
pool_pre_ping�pool_recycle�DATABASE_URI_FK�DATABASE_URI_CONFc��eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�ZdS)�
FirebaseModelc��	t��|_td|jt���|_td|jt���|_td|jt���|_td|jt���|_dS#t$r}t|��Yd}~dSd}~wwxYw)N�fb_users)�
autoload_with�fb_notification�notification_logs�
fb_reports)
r	�metar
�engine_confrrrr�	Exception�print)�self�es  �g/home/numerotech/public_html/conference.numerotech.com/food_kit_scan_badges/core/model/FirebaseModel.py�__init__zFirebaseModel.__init__s���
��z�z�4�9��
�4�9�[�Q�Q�Q�4�=�!�"3�T�Y�[�Y�Y�Y�4��!�"5�t�y�{�[�[�[�4��!�,�t�y��U�U�U�4�?�?�?��
������8�8�8�8�8�8�8�8�8��������s�BB�
B?�%B:�:B?c�.�t���5}tdt|��zdz��}|�|��}|���}|rt
|j��ndcddd��S#1swxYwYdS)Nz*select * from conference  where conf_id = z
  limit 1;)�engine�connectr�str�execute�one_or_none�dict�_mapping�r �conf_id�conn�stmt�results     r"�GetConfFirebaseModelz"FirebaseModel.GetConfFirebaseModels���
�~�~���4�4��=�c�'�l�l�J�<�W�X�X�4��L�L����6���� � �6�#)�
3�$�v��
�
�
�t�	4�4�4�4�4�4�4�4�4�4�4�4����4�4�4�4�4�4s�A#B
�
B�Bc��i}	t���5}|�|j���|��}|���|jrd�|jD��nd}|d|d<d|d<ddd��n#1swxYwYn)#t$r}t|��|d<Yd}~nd}~wwxYw|S)Nc��g|]}|��S�r4��.0�rs  r"�
<listcomp>z/FirebaseModel.insertFCMData.<locals>.<listcomp>*s��8�8�8�q��8�8�8�r�
fb_user_id�success�msg)	rr&r(r�insert�commit�inserted_primary_keyrr')r �data�return_datar.r0�pk_idr!s       r"�
insertFCMDatazFirebaseModel.insertFCMData#s$���+�
"������&��
�\�\�$�-�.�.�0�0�$�
7�
7�F��K�K�M�M�M�<B�<W�a�8�8�F�7�8�8�8�8�]a�E� %�a��K���%�K���&�&�&�&�&�&�&�&�&�&�&����&�&�&�&���
�"�"�"��q�6�6�;�u�����������"����
�s;�B!�A,B�	B!�B�B!�B�B!�!
C�+C�Cc���i}	t���5}|j����|jjj�|g�����|��}|�	|��|�
��||d<d|d<ddd��n#1swxYwYn)#t$r}t|��|d<Yd}~nd}~wwxYw|S)Nr:r;r<)
rr&r�update�where�cr:�in_�valuesr(r>rr')r r@r:rAr.r/r!s       r"�
UpdateFCMDatazFirebaseModel.UpdateFCMData3s3���+�"������&���=���!�!�'�'��
��(B�(F�(F�
�|�(T�(T�U�U�\�\�]a�b�b�D��L�L������K�K�M�M�M� *�K���%�K���&�&�&�&�&�&�&�&�&�&�&����&�&�&�&���
�"�"�"��q�6�6�;�u�����������"����
�s;�C�BB?�3C�?C�C�C�C�
C1�C,�,C1c�:�t���5}td|zdzt|��zdz��}|�|��}|���}|rt
|j��ndcddd��S#1swxYwYdS)Nz*SELECT * FROM fb_users where fcm_token = 'z' and conf_id = �	 limit 1 �rr&rr'r(�fetchoner*r+�r r-�	fcm_tokenr.r/r0s      r"�getUserDataByTokenz FirebaseModel.getUserDataByTokenAs��������4��
�<�Y�F�GY�Y�Z]�^e�Zf�Zf�f�gr�r�
s�
s�4��L�L����6��O�O���6�#)�
3�$�v��
�
�
�t�	4�4�4�4�4�4�4�4�4�4�4�4����4�4�4�4�4�4s�A)B�B�Bc���t���5}|�|j���|��}|���|cddd��S#1swxYwYdS�N)rr&r(rr=r>)r �insert_datar.r0s    r"�insert_fb_notificationz$FirebaseModel.insert_fb_notificationIs�����������L�L��-�4�4�6�6�{�C�C�6��;�;�=�=�=�
�����������������������AA*�*A.�1A.c�t�t���5}|r)|dkr#tdt|��zdz��}n"tdt|��zdz��}|�|�����}|rd�|D��nd}|cddd��S#1swxYwYdS)Nrz� SELECT f.fb_user_id,u.prefix,u.full_name,u.email,u.mobile,u.membership_no,u.user_id,f.conf_id, f.user_id,f.app_name,f.device_type,f.fcm_token from fb_users f  inner join numerotech_primary_db.users u  on u.user_id = f.user_id  where f.conf_id = z3 and f.is_test_user  = 1 order by fb_user_id desc ;z` SELECT fb_user_id,conf_id,user_id,app_name,device_type,fcm_token from fb_users where conf_id = z/ and is_test_user = 1  order by fb_user_id descc�6�g|]}t|j����Sr4�r*r+r5s  r"r8z/FirebaseModel.getFBUserData.<locals>.<listcomp>ds"��
0�
0�
0�1�d�1�:���
0�
0�
0r9�rr&rr'r(�all)	r r-�device_type�is_all_user�is_loggedin_user�is_commitment_userr.�get_stmt�resultss	         r"�
getFBUserDatazFirebaseModel.getFBUserDataXs<����������x�+�a�/�/��� ��L�L�)�*_�_�`�`�H�H��w�x{�}D�yE�yE�E�Fw�w�x�x�H�
�\�\�(�
#�
#�
'�
'�
)�
)�7�4;�
E�
0�
0��
0�
0�
0�
0��7�
���������������������s�BB-�-B1�4B1c�T�t���5}tdt|��zdzt|��zdz��}|�|��}|���}|rt
|j��ndcddd��S#1swxYwYdS)Nz6SELECT * FROM fb_notification where notification_id = � and conf_id = rLrM)r r-�notification_idr.r/r0s      r"�getFBNotificationByIDz#FirebaseModel.getFBNotificationByIDis��������4��
�H��_�I]�I]�]�^o�o�ps�t{�p|�p|�|�~I�I�J�J�4��L�L����6��O�O���6�#)�
3�$�v��
�
�
�t�	4�4�4�4�4�4�4�4�4�4�4�4����4�4�4�4�4�4s�A6B�B!�$B!c�h�t�d��5}|���}d}	|�|��|���d}g}|D]{}|�d|d�d|d�d|d�d|d	�d|d
�d|d�d|d�d|d
�d|d�d|d�d|d�d����||d�|��zdz}|�|��}	|���|���|	r	ddd��dS	ddd��dS#tj$rA}
td|
����|�
��d|
��cYd}
~
cddd��Sd}
~
wwxYw#1swxYwYdS)Nzfc_sessions_v1.dbzDELETE FROM notification_logsz�insert into notification_logs ( fb_user_id,notification_id, fcm_token, conf_id, notification_title, notification_content, send_user, device_type, send_at, fb_message, created_at) valuesz('r:z','rerPr-�notification_title�notification_content�	send_userr\�send_at�
fb_message�
created_atz')�,�;r;�failedzSQLite error: )�sqlite3r&�cursorr(r>�append�join�close�Errorr�rollback)r r@�sqlite_conn�
sqlite_cursor�delete_query�
head_query�
item_query�rowr/rar!s           r"�insert_demo_del_sqlitez$FirebaseModel.insert_demo_del_sqlitepsO�����*�+�+� �{�"�)�)�+�+�=�6�<� ����,�'�'�'�������M�J��J��`�`�����^�C��-�^�^�#�6G�2H�^�^�S�Q\�M]�^�^�be�fo�bp�^�^�ux�zN�vO�^�^�TW�Xn�To�^�^�tw�xC�tD�^�^�IL�MZ�I[�^�^�`c�dm�`n�^�^�sv�wC�sD�^�^�IL�MY�IZ�^�^�^�_�_�_�_���
�
�:�.�.�.��4�D��#�#�D�)�)�G����������������# � � � � � � � �&
�' � � � � � � � ��*�-� � � �	�
�1�
�
�����������A��������1 � � � � � � � �����* ����+ � � � ���� � � � � � s;�F'�DE�F$�#*F�
F$�F'�F$�$F'�'F+�.F+c��t���5}tdt|��zdz��}|�|�����}|rd�|D��ndcddd��S#1swxYwYdS)Nz/select *  from fb_notification where conf_id = roc�6�g|]}t|j����Sr4rYr5s  r"r8z5FirebaseModel.get_fb_notification.<locals>.<listcomp>��"��
,�
,�
,��4��
���
,�
,�
,r9rZr,s     r"�get_fb_notificationz!FirebaseModel.get_fb_notification�s��������A��
�@��W���M�c�Q�
R�
R�4��L�L����"�"�$�$�6�06�
@�
,�
,�V�
,�
,�
,�
,�D�A�A�A�A�A�A�A�A�A�A�A�A����A�A�A�A�A�A��AB�B�Bc��t���5}	tdt|��zdz��}|�|�����}|rt
|j��nd	cddd��S#t$r%}t|��cYd}~cddd��Sd}~wwxYw#1swxYwYdS)Nz�select notification_id, notification_type, notification_title, notification_content, image, send_user, sent_at, schedule_at from fb_notification where notification_id = ro)	rr&rr'r(r)r*r+r)r rer.r/r0r!s      r"�get_fb_notification_by_idz'FirebaseModel.get_fb_notification_by_id�sS������������@C�DS�@T�@T�T�UX�X�Y�Y�D��l�l�4� � �,�,�.�.�F�$*�4�4��� � � ��4�	��������������q�6�6�M�M�M�M�M�����������������
������������s;�B<�A B
�

B9�B4�"B9�#B<�4B9�9B<�<C�Cc��t���5}|j����|jjj�|g�����|��}|�	|��}|�
��|rdndcddd��S#1swxYwYdS)Nr;�fail)rr&rrErFrGrerHrIr(r>)r re�update_datar.r/r0s      r"�update_fb_notificationz$FirebaseModel.update_fb_notification�s��������*����&�&�(�(�.�.�t�/C�/E�/U�/Y�/Y�[j�Zk�/l�/l�m�m�t�t�vA�B�B�4�
�\�\�$�
�
�6��;�;�=�=�=��
)�)�)�6�	*�*�*�*�*�*�*�*�*�*�*�*����*�*�*�*�*�*s�BB8�8B<�?B<c���t���5}|�|j���|��}|���|cddd��S#1swxYwYdSrS�rr&r(rr=r>)r �insert_logs_datar.r0s    r"�insert_notification_logsz&FirebaseModel.insert_notification_logs�s�����������L�L��/�6�6�8�8�9I�J�J�6��;�;�=�=�=�
���������������������rVc�\�t���5}d}|rdt|��zdz}nd}dt|��zdz}t||z��}|�|�����}|rd�|D��ndcddd��S#1swxYwYdS)N�� and fcm_token = '�' z1select *  from notification_logs where conf_id = � c�6�g|]}t|j����Sr4rYr5s  r"r8z7FirebaseModel.get_notification_logs.<locals>.<listcomp>�r�r9)rr&r'rr(r[)r r-rPr.�	where_conr/r`r0s        r"�get_notification_logsz#FirebaseModel.get_notification_logs�s�������
A���9���$�S��^�^�3�D�8�I�I��I�A�#�g�,�,�N�s�R�4��D�9�$�&�&�8��L�L��"�"�&�&�(�(�6�06�
@�
,�
,�V�
,�
,�
,�
,�D�
A�
A�
A�
A�
A�
A�
A�
A�
A�
A�
A�
A����
A�
A�
A�
A�
A�
As�A:B!�!B%�(B%c���t���5}|�|j���|��}|���ddd��dS#1swxYwYdSrSr��r r-r@r.r0s     r"�saveNotificationLogsMysqlz'FirebaseModel.saveNotificationLogsMysql�s�����������L�L��/�6�6�8�8��>�>�6��;�;�=�=�=���������������������s�AA)�)A-�0A-c�p�t���5}|r)tdt|��zdz|zdz��}n"tdt|��zdz��}|�|�����}|rd�|D��ndcddd��S#1swxYwYdS)Nz1 SELECT * FROM notification_logs where conf_id = r�z' order by send_at DESCz order by send_at DESCc�6�g|]}t|j����Sr4rYr5s  r"r8z:FirebaseModel.GetNotificationLogsMysql.<locals>.<listcomp>�r�r9rZrOs      r"�GetNotificationLogsMysqlz&FirebaseModel.GetNotificationLogsMysql�s#�������A���k��C�C��L�L�P�Qe�e�fo�o�qJ�J�K�K�D�D��C�C��L�L�P�Qi�i�j�j�D��L�L����"�"�$�$�6�06�
@�
,�
,�V�
,�
,�
,�
,�D�
A�A�A�A�A�A�A�A�A�A�A�A����A�A�A�A�A�As�BB+�+B/�2B/c�v�t���5}tdt|��zdzt|��zdzt|��zdz��}|�|�����}|rt
|j��ndcddd��S#1swxYwYdS)Nz+ SELECT * FROM fb_users where fb_user_id = z and user_id = rdrLrM)r r:�user_idr-r.r/r0s       r"�checkFBUserzFirebaseModel.checkFBUser�s�������4��
�<�S��_�_�L�M^�^�_b�cj�_k�_k�k�l}�}�B�CJ�K�K�K�LW�W�X�X�4��L�L����'�'�)�)�6�#)�
3�$�v��
�
�
�t�4�4�4�4�4�4�4�4�4�4�4�4����4�4�4�4�4�4s�BB.�.B2�5B2c��t���5}tdt|��zdz��}|�|�����}|rd�|D��ndcddd��S#1swxYwYdS)NaRselect c.user_id,fbu.fb_user_id,concat( ifnull(u.prefix,''), ' ' ,u.full_name) as full_name ,c.fb_commitments as notification_content,  c.conf_id,fbu.device_type,fbu.fcm_token from fb_commitments c  inner join  numerotech_primary_db.users u on u.user_id = c.user_id  inner join  fb_users fbu on fbu.user_id = c.user_id  where c.conf_id = z" and c.fb_commitments is not null;c�6�g|]}t|j����Sr4rYr5s  r"r8z5FirebaseModel.getFBCommitmentUser.<locals>.<listcomp>�r�r9rZr,s     r"�getFBCommitmentUserz!FirebaseModel.getFBCommitmentUser�s��������A��
�� ��L�L�	)�*N�	N�O�O�4�
�L�L����"�"�$�$�6�06�
@�
,�
,�V�
,�
,�
,�
,�D�A�A�A�A�A�A�A�A�A�A�A�A����A�A�A�A�A�Ar�c���t���5}|�|j���|��}|���	ddd��dS#1swxYwYdS)Nr;)rr&r(rr=r>r�s     r"�saveNotificationReportsz%FirebaseModel.saveNotificationReports�s�����������L�L���/�/�1�1�$�7�7�6��;�;�=�=�=�
���������������������rVc��g}	t���}|���}|�d|pd|pd|pdg��	d�|jD��}g}	|���}	|	�n3t
t||	����}
|�|
���J|�t|����|�
���n	|j�n��|���|���n-#|���|���wxYw|S)N�usp_firebase_notification_index�c��g|]
}|d��S)rr4)r6rGs  r"r8z<FirebaseModel.get_usp_notification_index.<locals>.<listcomp>
s��.�.�.�a�Q�q�T�.�.�.r9)
r�raw_connectionrr�callproc�descriptionrNr*�ziprs�list�nextsetr>ru)r r-rer:�sets�
connectionrr�names�set_�row_rawr}s           r"�get_usp_notification_indexz(FirebaseModel.get_usp_notification_indexs`��	�$���*�*�,�,�:������6�	�?�?�4�w��$��I`�\`�cm�cu�qu�5w�x�x�x��.�.�6�-�.�.�.�E�
�D����� � �W������E�7�#�#�$�$�S�	�[�[�����
�	�K�K��T�
�
����
�~�~����
���!�
�'�,������
��������������
����������	
�+s�C+D�*Ec��	t���5}td��}|�|��}td|zdz|zdzdzt	|��zdz��}|�|��}|���tdt	|��zdz|zd	z��}|�|�����}|rt|j��ndcddd��S#1swxYwYdS#t$r}t	|��cYd}~Sd}~wwxYw)
NzSET SQL_SAFE_UPDATES = 0 z�Update fb_users fb inner join numerotech_primary_db.users u on u.user_id = fb.user_id  set fb.full_name = concat(u.prefix,' ', u.full_name) , fb.name_updated_at ='z' ,fb.updated_at ='r�zH where fb.full_name is null and fb.user_id is not null and fb.conf_id = r�zsselect count(fb.fb_user_id) as total_updated_count from fb_users fb  where fb.user_id is not null and fb.conf_id = z and fb.name_updated_at= '�')
rr&rr(r'r>rNr*r+r)	r r-�curr_dtr.�safe_updater0r/r`r!s	         r"�update_fbuser_namez FirebaseModel.update_fbuser_name's���������5���2�3�3�K��,�,�{�+�+�F��X�X_�`�`u�v�v}�~�C�C�R�S�SV�W^�S_�S_�`�`c�d�e�e�D��\�\�$�
�
�F��K�K�M�M�M��:�:=�g�,�,�G�Gc�d�dk�l�lo�p�q�q�H�
�\�\�(�
#�
#�
,�
,�
.�
.�F�$*�4�4��� � � ��5�5�5�5�5�5�5�5�5�5�5�5����5�5�5�5�5�5��
����

�a�&�&�=�=�=�=�=�=��������sA�D�C%D
�D�
D�D�D�D�
D=�$D8�2D=�8D=N)�__name__�
__module__�__qualname__r#r1rCrJrQrUrbrfr~r�r�r�r�r�r�r�r�r�r�r�r�r4r9r"rr
s\���������4�4�4���� ���4�4�4����
�
�
�"4�4�4� � � �:A�A�A����*�*�*����A�A�A�<���A�A�A�,4�4�4�	A�	A�	A�������D����r9rN)�flaskrrrr�
sqlalchemyrrr	r
r�sqlalchemy.sqlrr
�corer�configr%�	engine_fkrrr4r9r"�<module>r�s#��������-�-�-�-�-�-�-�-�-�-�B�B�B�B�B�B�B�B�B�B�B�B�B�B�$�$�$�$�$�$�$�$��������m�C�J�~�6�T�W[�\�\�\���m�C�J�'8�9��Z^�_�_�_�	��m�C�J�':�;�$�\`�a�a�a��l�l�l�l�l�l�l�l�l�lr9

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