- 10 Sep, 2026 1 commit
-
-
- Cuando el mes de corte (ej. julio) no tiene boleta real, la proyección usa el sueldo bruto del último mes real como referencia y estima ese mes (sueldo bruto + gratificación 109% si es julio/diciembre) en vez de perderlo silenciosamente en el cálculo de renta bruta anual. - La gratificación de julio/diciembre pendiente ahora se determina por si existe boleta real de ese mes, no por comparar el número de mes de corte. - Elimina el campo utilidadesDistribuidas de BloqueIngresosDTO (no se usa). - Elimina los tests del proyecto (no se van a mantener); CLAUDE.md documenta que no se escriben tests. - Renombra rutas de grilla (/listado) y detalle completo (/detallado). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AyxL2mSnUE9XyUFHw8zDmM
Mauro Paolo Josue Zuñiga Mallqui authored
-
- 08 Sep, 2026 3 commits
-
-
Mapea la columna `utilidades` de planilla.renta_quinta en la entity y la suma al total bruto remunerativo tanto en la grilla (CONCEPTOS_MES) como en detalle-completo, donde ademas se expone en su propia columna del bloque de ingresos. Unifica la base de calculo de detalle-completo con la de la grilla: - El total bruto en memoria sale ahora de RentaQuintaMapper.totalBrutoMes(), reemplazando la lista de conceptos duplicada del service. - La base de proyeccion (sueldo bruto, basico, asignacion familiar) suma todas las filas del mes de corte para el documento, no una sola boleta: una persona puede tener varios codper/tipo de planilla y la retencion salia distinta a la de la grilla. - La boleta se toma del historial anual ya cargado, lo que ademas evita NonUniqueResultException cuando hay mas de una fila en el mes. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Dgr6nJcKn3HjiHuwGWypFd
Mauro Paolo Josue Zuñiga Mallqui authored -
Vanesa Puma Yamo authored
-
Vanesa Puma Yamo authored
-
- 07 Sep, 2026 1 commit
-
-
Los dos campos usaban rutas de agregación distintas y podían mostrar numeros diferentes para el mismo concepto en la boleta. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PE2tjptU1jH4X5WfSRnBp3
Mauro Paolo Josue Zuñiga Mallqui authored
-
- 04 Sep, 2026 7 commits
-
-
Hibernate ddl-auto validate falla con "missing table nuevo.area": JDBC metadata reporta foreign tables (FDW) como FOREIGN TABLE, no TABLE, y el schema validator solo busca TABLE. Se reemplazan las entities/repos de area, subarea, cargo y locales por JdbcTemplate con SQL nativo. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GDaQQ4oDPiTnXr2FfDLnst
Mauro Paolo Josue Zuñiga Mallqui authored -
Corrige el schema de las entities (estaba public), el FDW las expone en schema nuevo, no en el default de la app (planilla). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GDaQQ4oDPiTnXr2FfDLnst
Mauro Paolo Josue Zuñiga Mallqui authored -
Expone GET /api/v1/filtros?tipo=AREA|SUBAREA|CARGO|LOCAL sobre las foreign tables area, subarea, cargo y locales, devolviendo {id, text} por item. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GDaQQ4oDPiTnXr2FfDLnstMauro Paolo Josue Zuñiga Mallqui authored -
La grilla pasaba planillaCargada (básico+extras+gratis del mes) como base de proyección de meses restantes, en vez del sueldoBruto/remContrato real, inflando proyeccionFutura, rentaBrutaAnual e impuesto frente a /detalle-completo (que sí usa boleta.getSueldoBruto()). Se agrega sueldoBrutoMesCorte a la proyección del query y se usa en el cálculo. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GDaQQ4oDPiTnXr2FfDLnst
Mauro Paolo Josue Zuñiga Mallqui authored -
CONCEPTOS_MES (usado por /renta-quinta) omitía licenciaGoceHaber, licenciaSaludFamiliarLey30012, asignacionFallecimientoFamiliar, canastaNavidad2, valeConsumoDescuento, compensacionVacacional y bonificacionExtraordinaria2, quedando desalineado del total de /detalle-completo tras el fix anterior. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GDaQQ4oDPiTnXr2FfDLnst
Mauro Paolo Josue Zuñiga Mallqui authored -
sueldoBruto ahora suma INGRESOS FIJOS, horasExtras suma EXTRAS Y VARIABLES y gratificacionesOrdinarias suma VACACIONES Y LIQUIDACION (antes solo tomaban 1-2 columnas sueltas). Se agrega columna utilidades al bloque. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GDaQQ4oDPiTnXr2FfDLnst
Mauro Paolo Josue Zuñiga Mallqui authored -
Reemplaza UitProperties (config estática por año) por UitCache respaldado en la entidad ParametroUit, y agrega RentaQuintaDetalleCompletoDTO para la boleta con el detalle completo del cálculo. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014FmJuJaDLW5s4jZqdPjcF9
Vanesa Puma Yamo authored
-
- 03 Sep, 2026 1 commit
-
-
Vanesa Puma Yamo authored
-
- 31 Aug, 2026 1 commit
-
-
Expone la grilla de retenciones mensuales sobre planilla.renta_quinta y calcula la proyección anual por trabajador. - Entity con las 115 columnas de la tabla, repository, DTOs y mapper manual - Grilla agregada por documento (codper no identifica al trabajador en los datos reales) con filtros opcionales; solo periodo y mesCorte obligatorios - Cálculo de quinta categoría: proyección, deducción de 7 UIT, tramos progresivos y divisor de retención por mes, con la UIT configurable por año - Manejo de errores sin stack traces y Swagger UI en /docs - Tests unitarios de la calculadora e integración con Testcontainers La configuración con credenciales queda fuera del repo: partir de application.example.yml. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WkHutqxgcr62rTe48Q28X4
Mauro Paolo Josue Zuñiga Mallqui authored
-