Skip to content

Plataforma técnica · Sevastopol

Remuneraciones en Sevastopol

Islands Remuneraciones

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.

SubdominioIslandsResponsabilidad
Maestro laboralEmpleados, Contratos, Cargos, DepartamentosMaestro del trabajador y estructura organizacional.
Régimen previsionalContratos APV, Contratos IsapreAdscripciones previsionales y de salud por contrato.
Tiempo trabajadoAsistencia, Vacaciones, Permisos, Jornada laboralInsumos temporales del cálculo (días trabajados, ausencias, jornadas).
Liquidaciones e imposicionesPayroll, PrevisionesMotor de cálculo mensual y planilla de imposiciones.
HonorariosHonorariosBoletas de terceros y prestadores (no empleados).
FiniquitosFiniquitosTérmino del contrato laboral con simulación + persistencia.
DecisiónMotivo
Una island por dominio en vez de un workspace único con tabsLos 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 OrchestratorEl 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 WorkspaceThemeEs 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 islandsEl tenant manda — todo cambio de tenant fuerza recarga total. Payroll, previsiones y honorarios además escuchan useActivePeriod.
Maestros sin tenant_id en el bodyCargos, departamentos, jornada laboral y empleados envían tenant_id por query — son catálogos de tenant, no documentos por período.
Preview vs persistencia separadosPayroll, previsiones y finiquitos exigen dry-run (/preview, /simulate, dry_run=true) antes de generar. El operador revisa el cálculo y aprueba.

Todas las islands de remuneraciones usan los tokens de PayrollWorkspace (alias de WorkspaceTheme):

ComponenteUso
PayrollWorkspaceHeaderHeader con controls y pills. Mismo header que el resto del sistema.
WorkspaceSectionCardSección con eyebrow, title, description, pills.
WorkspaceTabBarCambio entre tabs cuando una island tiene más de un dataset (honorarios, vacaciones).
InlineMetricPillMétricas inline en el header de cada sección.
workspacePrimaryButtonClass, workspaceSecondaryButtonClass, etc.Botones del workspace.
HookIslands que lo usan
useActiveTenantLas 14 islands. Recarga total al cambiar tenant.
useActivePeriodPayrollViewIsland, PrevisionsViewIsland, HonorariosViewIsland. El resto opera sobre el universo total del tenant.

Remuneraciones (Orchestrator) expone los servicios espejados por estos subdominios:

  • Maestro laboralEmployeeService, ContractService, CargoService + entidades organizacionales.
  • Régimen previsionalAfpService, IsapreService (catálogos) más los stores de contratos APV/Isapre.
  • Tiempo trabajadoAttendanceService, VacationService, PermissionService, WorkingDayService.
  • Liquidaciones e imposicionesPayrollService (motor de cálculo), PrevisionsService (planilla de imposiciones).
  • HonorariosHonorariosService (boletas + prestadores + contabilización).
  • FiniquitosFiniquitoService (simulación + persistencia + PDF).

Vía createProxy — ver BFF Proxy. El dominio reparte sus llamadas entre proxies dedicados y endpoints históricos:

Proxy / EndpointCubre
/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/departmentsMaestros laborales.
/api/apv_contracts, /api/isapre_contracts, /api/afp, /api/isapreRégimen previsional + catálogos.
/api/attendance, /api/vacations, /api/permissions, /api/working_dayTiempo trabajado.
  • Ciclo contable consume el paso remuneraciones cuando todas las liquidaciones del periodo están en estado CONTABILIZADO y 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.