Plataforma técnica · Sevastopol
Remuneraciones en Sevastopol
Islands Remuneraciones
Propósito
Section titled “Propósito”El dominio remuneraciones del frontend cubre el ciclo laboral completo del tenant: maestros (empleados, contratos, cargos, departamentos), régimen previsional (APV, Isapre), tiempo trabajado (asistencia, vacaciones, permisos, jornada), cálculo mensual (liquidaciones, previsiones), honorarios y finiquitos.
Cada subdominio agrupa una o más islands que operan sobre endpoints distintos del Orchestrator y modelan reglas laborales separadas. No son pestañas de un único flujo — son entradas independientes que el operador navega según la tarea del periodo.
La lectura contable se alinea con NIC 19: los beneficios a empleados se reconocen cuando el trabajador presta servicios, no sólo cuando se pagan.
Subdominios
Section titled “Subdominios”| Subdominio | Islands | Responsabilidad |
|---|---|---|
| Maestro laboral | Empleados, Contratos, Cargos, Departamentos | Maestro del trabajador y estructura organizacional. |
| Régimen previsional | Contratos APV, Contratos Isapre | Adscripciones previsionales y de salud por contrato. |
| Tiempo trabajado | Asistencia, Vacaciones, Permisos, Jornada laboral | Insumos temporales del cálculo (días trabajados, ausencias, jornadas). |
| Liquidaciones e imposiciones | Payroll, Previsiones | Motor de cálculo mensual y planilla de imposiciones. |
| Honorarios | Honorarios | Boletas de terceros y prestadores (no empleados). |
| Finiquitos | Finiquitos | Término del contrato laboral con simulación + persistencia. |
Decisiones de UX
Section titled “Decisiones de UX”| Decisión | Motivo |
|---|---|
| Una island por dominio en vez de un workspace único con tabs | Los volúmenes y ciclos son muy distintos (mensual para payroll, anual para vacaciones, eventual para finiquitos). Tabbing forzaría compartir filtros que no son comparables. |
| Subdominios espejo del Orchestrator | El backend ya organiza los servicios en 6 áreas. Mantener el mismo corte en el frontend evita drift conceptual y facilita la navegación dev → orchestrator. |
PayrollWorkspace re-exporta WorkspaceTheme | Es un alias local que da a las islands de payroll un import estable. El lenguaje visual real vive en WorkspaceTheme.tsx y se comparte con gastos, ingresos, declaraciones, etc. |
useActiveTenant en todas las islands | El tenant manda — todo cambio de tenant fuerza recarga total. Payroll, previsiones y honorarios además escuchan useActivePeriod. |
| Maestros sin tenant_id en el body | Cargos, departamentos, jornada laboral y empleados envían tenant_id por query — son catálogos de tenant, no documentos por período. |
| Preview vs persistencia separados | Payroll, previsiones y finiquitos exigen dry-run (/preview, /simulate, dry_run=true) antes de generar. El operador revisa el cálculo y aprueba. |
Lenguaje compartido
Section titled “Lenguaje compartido”Todas las islands de remuneraciones usan los tokens de PayrollWorkspace (alias de WorkspaceTheme):
| Componente | Uso |
|---|---|
PayrollWorkspaceHeader | Header con controls y pills. Mismo header que el resto del sistema. |
WorkspaceSectionCard | Sección con eyebrow, title, description, pills. |
WorkspaceTabBar | Cambio entre tabs cuando una island tiene más de un dataset (honorarios, vacaciones). |
InlineMetricPill | Métricas inline en el header de cada sección. |
workspacePrimaryButtonClass, workspaceSecondaryButtonClass, etc. | Botones del workspace. |
Hooks compartidos
Section titled “Hooks compartidos”| Hook | Islands que lo usan |
|---|---|
useActiveTenant | Las 14 islands. Recarga total al cambiar tenant. |
useActivePeriod | PayrollViewIsland, PrevisionsViewIsland, HonorariosViewIsland. El resto opera sobre el universo total del tenant. |
Backend de referencia
Section titled “Backend de referencia”Remuneraciones (Orchestrator) expone los servicios espejados por estos subdominios:
- Maestro laboral —
EmployeeService,ContractService,CargoService+ entidades organizacionales. - Régimen previsional —
AfpService,IsapreService(catálogos) más los stores de contratos APV/Isapre. - Tiempo trabajado —
AttendanceService,VacationService,PermissionService,WorkingDayService. - Liquidaciones e imposiciones —
PayrollService(motor de cálculo),PrevisionsService(planilla de imposiciones). - Honorarios —
HonorariosService(boletas + prestadores + contabilización). - Finiquitos —
FiniquitoService(simulación + persistencia + PDF).
Endpoints base
Section titled “Endpoints base”Vía createProxy — ver BFF Proxy. El dominio reparte sus llamadas entre proxies dedicados y endpoints históricos:
| Proxy / Endpoint | Cubre |
|---|---|
/api/remuneraciones/payroll/* | Cálculo mensual (liquidaciones, preview, status, PDF). |
/api/previsiones/* | Planilla de imposiciones generada desde liquidaciones. |
/api/honorarios/* | Boletas, prestadores, contabilización, reversa. |
/api/finiquitos/* | Simulación, generación, descarga PDF. |
/api/employees, /api/contracts, /api/cargos, /api/departments | Maestros laborales. |
/api/apv_contracts, /api/isapre_contracts, /api/afp, /api/isapre | Régimen previsional + catálogos. |
/api/attendance, /api/vacations, /api/permissions, /api/working_day | Tiempo trabajado. |
Relación con otros dominios
Section titled “Relación con otros dominios”- Ciclo contable consume el paso
remuneracionescuando todas las liquidaciones del periodo están en estadoCONTABILIZADOy la previsión está generada. - Declaraciones lee liquidaciones (F29: PPM, retenciones, IUSC) y honorarios (DJ 1879) y remuneraciones (DJ 1887).
- Gastos y Honorarios comparten el plan de cuentas (
/api/admin/chart-of-accounts) para definir la cuenta de gasto del prestador. - Operaciones SII no alimenta directamente, pero el cuadre del F29 cruza retenciones de honorarios contra ventas/compras.
Cada destino documenta su propio mecanismo de integración.