fmatituy/selectospromanager
0
1import sqlite32import os3 4def get_db_path():5 root_db = os.path.join(os.getcwd(), 'selectos.db')6 if os.path.exists(root_db):7 return root_db8 return 'selectos.db'9 10DB_PATH = get_db_path()11 12def fix_missing_items():13 conn = sqlite3.connect(DB_PATH)14 c = conn.cursor()15 16 # 1. BOTIQUINES17 c.execute("SELECT id FROM sst_inspeccion_plantillas WHERE nombre = 'Inspección de Botiquines'")18 row = c.fetchone()19 if row:20 tid = row[0]21 c.execute("SELECT COUNT(*) FROM sst_inspeccion_items WHERE plantilla_id = ?", (tid,))22 if c.fetchone()[0] == 0:23 items = [('Inventario completo según FURAT', 'Contenido'), ('Elementos con fecha vigente', 'Cumplimiento'), ('Gasa y vendas limpias', 'Salud'), ('Caja en buen estado', 'Protección')]24 for text, cat in items:25 c.execute("INSERT INTO sst_inspeccion_items (plantilla_id, item_texto, categoria_item) VALUES (?,?,?)", (tid, text, cat))26 print(f"Items añadidos a Botiquines (ID: {tid})")27 28 # 2. ALTURAS29 c.execute("SELECT id FROM sst_inspeccion_plantillas WHERE nombre = 'Checklist Alturas'")30 row = c.fetchone()31 if row:32 tid = row[0]33 c.execute("SELECT COUNT(*) FROM sst_inspeccion_items WHERE plantilla_id = ?", (tid,))34 if c.fetchone()[0] == 0:35 items = [('Arnés sin costuras rotas', 'EPP'), ('Eslinga con absorbedor intacto', 'Seguridad'), ('Conectores sin oxidación', 'Equipo'), ('Puntos de anclaje certificados', 'Infraestructura')]36 for text, cat in items:37 c.execute("INSERT INTO sst_inspeccion_items (plantilla_id, item_texto, categoria_item) VALUES (?,?,?)", (tid, text, cat))38 print(f"Items añadidos a Alturas (ID: {tid})")39 40 # 3. HERRAMIENTAS41 c.execute("SELECT id FROM sst_inspeccion_plantillas WHERE nombre = 'Herramientas Manuales'")42 row = c.fetchone()43 if row:44 tid = row[0]45 c.execute("SELECT COUNT(*) FROM sst_inspeccion_items WHERE plantilla_id = ?", (tid,))46 if c.fetchone()[0] == 0:47 items = [('Mangos sin grietas o fisuras', 'Físico'), ('Filos con protección', 'Seguridad'), ('Orden y aseo en el cajón', 'Entorno')]48 for text, cat in items:49 c.execute("INSERT INTO sst_inspeccion_items (plantilla_id, item_texto, categoria_item) VALUES (?,?,?)", (tid, text, cat))50 print(f"Items añadidos a Herramientas (ID: {tid})")51 52 conn.commit()53 conn.close()54 55if __name__ == '__main__':56 fix_missing_items()57 