Reconocimiento de deuda( Url Reconocimiento de deuda PDF (1) ) - [debtRecognition] 🧾 Descripción Este servicio valida si un empleado tiene un Reconocimiento de Deuda pendiente de firma , y en caso afirmativo, genera y descarga el archivo PDF del documento , incluyendo el detalle de cuotas asociadas. El servicio consume directamente información del ERP, consultando tanto el documento principal como sus tablas hijas (detalles de deuda por mes). 🚀 Endpoint POST /debt-recognition 📥 Parámetros Recibe como parámetro directo el ID del empleado : { "employee" : "EMP-0001" } 🔐 Seguridad El servicio requiere autenticación interna vía dbErp() para consultas SQL y usa PDF::loadView() para generar el documento final. 🧠 Flujo del Servicio (resumen real) 1. Verifica si existe un Reconocimiento de Deuda pendiente Consulta en el ERP: Documento: Reconociemientos de Deuda Condiciones: docstatus = 0 (borrador) empleado = El archivo firmado no existe → reconocimiento_escaneado_firmado IS NULL or = '' Si no encuentra ningún registro: { "valor" : false , "msn" : "Usted no cuenta con un reconocimiento de deuda pendiente de firmar." } 2. Obtiene los datos del Reconocimiento de Deuda Si existe un documento pendiente: Recupera el primer registro encontrado. Extrae datos generales del reconocimiento. 3. Obtiene el detalle (tabla hija) del reconocimiento Consulta: Tabla hija: tabtable_reconocimiento_deuda Llaves: parent : ID del reconocimiento parentfield = table_21 parenttype = Reconociemientos de Deuda Los campos recuperados: { "ano" : "" , "mes" : "" , "monto" : "" } 4. Construye la data final Une: Información principal del reconocimiento ( dataEmployee ) Detalle de cuotas ( dataTable ) 5. Genera el documento PDF Renderiza la vista: pdf/Doctype/ReconocimientoDeDeuda/reconocimiento_de_deuda.blade.php Y retorna la descarga del PDF. 📤 Response – Archivo PDF El servicio retorna directamente un PDF generado con domPDF: Content-Type: application/pdf Content-Disposition: attachment; filename= "ReconocimientoDeDeuda.pdf" No devuelve un JSON en caso de éxito, sino una descarga directa del documento . ❗ Posibles Errores 1. No existe reconocimiento pendiente { "valor" : false , "msn" : "Usted no cuenta con un reconocimiento de deuda pendiente de firmar." } 2. Error en la consulta ERP { "valor" : false , "msn" : "Error al obtener datos" } 3. Error inesperado en PDF o datos { "valor" : false , "msn" : "Error inesperado" } 📚 Schemas usados Reconociemientos de Deuda (principal) { "name" : "string" , "empleado" : "string" , "monto_total" : "decimal" , "fecha" : "date" , "reconocimiento_escaneado_firmado" : "string|null" } table_reconocimiento_deuda (detalle) { "ano" : "number" , "mes" : "string" , "monto" : "decimal" } 🗃 Pseudocódigo del Servicio filters = { docstatus: 0 , empleado: employee } recognition = GET ReconociemientosDeDeuda WHERE sin archivo firmado if recognition vacío: return error detail = GET table_reconocimiento_deuda WHERE parent = recognition. name dataComplete = { dataEmployee: recognition, dataTable: detail } return PDF(dataComplete)