Lista Sucursales (1) - [listSucursalSupervition] 🧾 Descripción Este servicio obtiene todas las supervisiones realizadas por un Supervisor Nacional , junto con información adicional relacionada a: Las sucursales supervisadas La fecha de registro El documento generado La programación de supervisión vinculada La fecha real en la que se ejecutó dicha supervisión El servicio consolida datos procedentes de: Check List del Supervisor Nacional 2 Tabla supervisores Programación de Supervisores y devuelve una lista enriquecida de supervisiones. 🚀 Endpoint POST /list-sucursal-supervition 📥 Parámetros de Entrada (Request) Body / FormData Parámetro Tipo Obligatorio Descripción Employe string ✔️ Código del empleado supervisor cuyo historial de supervisiones será consultado. Ejemplo: { "Employe" : "EMP-001245" } 🔐 Seguridad Requiere autenticación interna del ERP (token manejado por ServiceErp() y dbErp() ). Solo accesible para usuarios válidos dentro del entorno de capacitación. 🧠 Flujo del Servicio (Resumen Detallado) 1️⃣ Validar parámetro recibido Si Employe viene vacío, se retorna un mensaje de validación. 2️⃣ Listar supervisiones creadas por el supervisor Consulta en el ERP: GET resource/Check List del Supervisor Nacional 2 Filters: supervisor = Employe Fields: sucursal, fecha, name Si no hay resultados → Retorna mensaje indicando ausencia de registros. 3️⃣ Obtener la relación con Tabla Supervisores Con los name obtenidos, se consulta: POST send - query - database FROM tabCheck List del Supervisor Nacional 2 spr LEFT JOIN tabTabla supervisores tab ON spr.name = tab.id_doctype WHERE spr.name IN (...) SELECT spr.name, tab.parent Construye: $datanew[parent] = name $data_alrevez[name] = parent 4️⃣ Obtener programación de supervisores Si existen supervisiones relacionadas, consulta: POST send-query- database FROM tabProgramacion de Supervisores WHERE name IN parents SELECT name , prog_supervisores, fecha_real_de_la_supervicion Se agrega esta información a cada supervisión detectada. 5️⃣ Unir los datos Cada supervisión final contendrá: sucursal fecha del checklist nombre del documento checklist programación de supervisión ( prog_supervisores ) fecha real de supervisión ( fecha_real_de_la_supervicion ) 📤 Response (200 – Ejemplo) { "valor" : true , "msn" : "Lista de Sucursales" , "data" : [ { "sucursal" : "SUC-014" , "fecha" : "2024-10-03" , "name" : "CHK-SUP-00045" , "supervision" : "SUP-NACIONAL-05" , "fechaSupervision" : "2024-10-04" } ] } ❗ Posibles Errores 1. Supervisor no enviado { "valor" : false , "msn" : "El campo empleado es obligatorio" , "data" : [ ] } 2. Error del servicio ERP { "valor" : false , "msn" : "Ocurrio un error al listar" , "data" : [ ] } 3. Supervisor sin supervisiones registradas { "valor" : false , "msn" : "No hay ningun registro creado" , "data" : [ ] } 📚 Tablas / Recursos involucrados Check List del Supervisor Nacional 2 Campos usados: { "sucursal" : "string" , "fecha" : "date" , "name" : "string" , "supervisor" : "string" } Tabla supervisores Relación entre registros checklist y programaciones. Programación de Supervisores Campos utilizados: { "name" : "string" , "prog_supervisores" : "string" , "fecha_real_de_la_supervicion" : "date" } 🗃 Pseudocódigo del Servicio if Employe is empty: return error listName = GET Check List supervisor where supervisor=Employe if listName empty: return sin registros names = extract "name" from listName relations = QUERY tabla supervisores WHERE spr.name IN names parents = extract unique parent programaciones = QUERY programacion supervisores WHERE name IN parents merge programaciones into listName return listName enriched