CoolFace
Apppublic

fmatituy/selectospromanager

sourceHugging Faceupdated 6mo agoView on Hugging Face
0likes
queries_epp.cpython-313.pyc59 linesDownload Raw Back to __pycache__
1�

2Y޸i���z�SSKJr SSKrSSKJrJr SSjrSSjrSrSrSS	jr	S3r4SrSrS
r
SSjrSrg)�)�DB_PATH�N)�datetime�	timedeltac��[R"[5nUR5nUR	X5 UR5 UR
5 g�N)�sqlite3�connectr�cursor�execute�commit�close)�query�params�conn�cs    �ZC:\Users\faust\.gemini\antigravity\scratch\selectos_promanager\src\database\queries_epp.py�5db_executers9���?�?�7�#�D����
�A��I�I�e���K�K�M��J�J�L�c�"�[R"[5n[RUlUR5nUR
X5 UR5Vs/sHn[U5PM nnUR5 U$s snfr)6r	r7r�Row�row_factoryrr�fetchall�dictr)rrrr�row�ress      r�db_fetchallrsd���?�?�7�#�D��{�{�D�����
�A��I�I�e�� !�8�9��10-���4��9��C�11-��J�J�L��J��.s�#Bc��[S5$)Nz2SELECT * FROM sst_epp_catalogo ORDER BY nombre ASC�r�rr�get_epp_catalogor!s���K�L�Lrc
��[SUSUSUSUSUSUSUS[R"5RS	545 g)12Nz�13        INSERT INTO sst_epp_catalogo (nombre, categoria, vida_util_meses, descripcion, stock_minimo, stock_actual, ubicacion, fecha_ingreso)14        VALUES (?, ?, ?, ?, ?, ?, ?, ?)15    �nombre�	categoria�vida_util_meses�descripcion�stock_minimo�stock_actual�	ubicacion�%Y-%m-%d�rr�now�strftime)�datas r�create_epp_itemr/s_�����x�.�$�{�+�T�2C�-D�d�=�FY�16�~�17��^� 4�d�;�6G�����I`�I`�ak�Il�18n�orc�:�US:XaSOSn[SUS3X45 g)N�Suma�+�-z8UPDATE sst_epp_catalogo SET stock_actual = stock_actual z ? WHERE id = ?)r)�epp_id�cantidad�tipo�ops    r�update_epp_stockr8!s'������C�B��I�"��_�]�`h�_q�rrc�j�[SUS45Sn[R"USS5nU[SUS-S9-R	S5n[S	US19USUSUSUSX0R
S
5UR
S5UR
S5US4205 [USUSSS9 g)Nz9SELECT vida_util_meses FROM sst_epp_catalogo WHERE id = ?r4r�
fecha_entregar*�r%)�daysz�21        INSERT INTO sst_epp_entregas (trabajador_id, epp_id, fecha_entrega, cantidad, estado_epp, fecha_vencimiento, firma_digital, foto_url, observacion, responsable_id)22        VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)23    �
trabajador_idr5�24estado_epp�firma�foto�observacion�responsable_id�Resta)r6)rr�strptimerr-r�getr8)r.�eppr:�fecha_vencimientos    r�registrar_entrega_epprH's���25�Q�TX�Ya�Tb�Sd�26e�fg�27h�C��%�%�d�?�&;�Z�H�M�&���S�AR�=S�8S�)T�T�^�^�_i�j������28��h���o�1F��Z�HX�29�|�30�/���'�1B�D�H�H�V�DT�VZ�V^�V^�_l�Vm�os�uE�pF�31G�H��T�(�^�T�*�%5�G�Drc��[S5$)Nah32        SELECT e.*, u.nombre as trabajador_nombre, c.nombre as epp_nombre, c.categoria, resp.nombre as responsable_nombre33        FROM sst_epp_entregas e34        JOIN usuarios u ON e.trabajador_id = u.id35        JOIN sst_epp_catalogo c ON e.epp_id = c.id36        LEFT JOIN usuarios resp ON e.responsable_id = resp.id37        ORDER BY e.fecha_entrega DESC38    rr rr�get_entregas_historialrJ6s����	�	rc��[SU45$)Nz�39        SELECT e.*, c.nombre as epp_nombre, c.categoria40        FROM sst_epp_entregas e41        JOIN sst_epp_catalogo c ON e.epp_id = c.id42        WHERE e.trabajador_id = ?43        ORDER BY e.fecha_entrega DESC44    r)r=s r�get_epp_por_trabajadorrL@s�����	�
�rc��[S5$)Na45        SELECT r.*, u.nombre as trabajador_nombre, c.nombre as epp_nombre46        FROM sst_epp_reposiciones r47        JOIN usuarios u ON r.trabajador_id = u.id48        JOIN sst_epp_catalogo c ON r.epp_id = c.id49        ORDER BY r.fecha_solicitud DESC50    rr rr�get_epp_reposicionesrNKs����	�	rc	�h�[SXU[R"5RS5U45 g)Nz�51        INSERT INTO sst_epp_reposiciones (trabajador_id, epp_id, motivo, fecha_solicitud, estado, entrega_id_original)52        VALUES (?, ?, ?, ?, 'Pendiente', ?)53    r*r+)r=r4�motivo�entrega_original_ids    r�create_reposicion_epprRTs0����������)@�)@��)L�Na�	b�drc�R�[R"[5nUR5n0nUR	S5 UR5SUS'UR	S5 UR5SUS'UR	S5 UR5SUS'UR	S5 UR5SUS	'UR	S545 UR5SUS'UR	S5 UR5SUS
'UR
5 U$)Nz%SELECT COUNT(*) FROM sst_epp_catalogor�total_itemsz]SELECT COUNT(*) FROM sst_epp_catalogo WHERE stock_actual <= stock_minimo AND stock_actual > 0�55stock_bajoz=SELECT COUNT(*) FROM sst_epp_catalogo WHERE stock_actual == 0�
stock_agotadozZSELECT COUNT(*) FROM sst_epp_entregas WHERE fecha_entrega >= date('now', 'start of month')�entregas_meszKSELECT COUNT(*) FROM sst_epp_entregas WHERE fecha_vencimiento < date('now')�vencidosz}SELECT COUNT(*) FROM sst_epp_entregas WHERE fecha_vencimiento >= date('now') AND fecha_vencimiento <= date('now', '+30 days')�56por_vencer)r	r57rrr�fetchoner)rr�statss   r�
get_epp_statsr\\s���?�?�7�#�D����
�A��E��I�I�5�6��:�:�<��?�E�-���I�I�m�n��*�*�,�q�/�E�,���I�I�M�N��Z�Z�\�!�_�E�/���I�I�j�k��J�J�L��O�E�.���I�I�[�\��58�59��Q��E�*���I�I�N�O��*�*�,�q�/�E�,���J�J�L��Lr)r )r1r)�dbrr	rrrrr!r/r8rHrJrLrNrRr\r rr�<module>r^sJ����(���M�o�s�
E�	��	�d�r