Skip to content

Plataforma técnica · Sevastopol

Empleados en Sevastopol

Islands Remuneraciones Empleados

EmployeesViewIsland mantiene el maestro de trabajadores del tenant. Es la entrada al dominio remuneraciones — sin empleado no hay contrato, ni APV, ni asistencia, ni liquidación. La island consolida en un sólo formulario los datos personales, organizacionales (cargo + departamento), previsionales (AFP + Isapre), bancarios y documentales.

El estado laboral (activos por defecto) determina qué empleados participan del cálculo mensual.

DecisiónMotivo
Paginación servidor + filtros localesEmployeesViewIsland envía scope=activos, q, estado, limit, offset al backend. El servidor pagina; los filtros se reflejan en query.
5 catálogos cargados al cambiar tenantAFP, Isapre, cargos, departamentos y contratos se hidratan en paralelo en loadCatalogs(tenant) para que el modal abra sin esperas.
AFP/Isapre como catálogos globales/api/afp y /api/isapre se cargan sin tenant (fetchStatic) — son institucionales, no del tenant.
Form con muchos campos opcionalesRUT, nombres, apellidos, fecha nacimiento, fecha ingreso y sexo son obligatorios; el resto se persiste como null si vacío. Evita registros inflados con strings vacíos.
Eliminar con confirm nativoEl empleado eliminado no es soft-delete del Orchestrator — la UI obliga ratificación.
estado heredado del filtroCambiar el filtro de estado recarga con setOffset(0) para que el paginado no quede en página huérfana.
GrupoCampos esperados
IdentificaciónRUT, nombres, apellidos, fecha de nacimiento, sexo.
OrganizaciónCargo (FK), departamento (FK), estado laboral.
DomicilioDirección, comuna, región, código postal.
PrevisiónAFP, Isapre, cargas familiares, hijos, asignación familiar.
PagoBanco, tipo de cuenta, número de cuenta.
ContactoEmail, teléfono, celular.
DocumentoFoto, observaciones.
Método + rutaUso
GET /api/employees?tenant_id=&scope=activos&q=&estado=&limit=&offset=Listado paginado.
GET /api/employees?id=&tenant_id=Carga puntual para editar.
POST /api/employees?tenant_id=Alta.
PUT /api/employees?id=&tenant_id=Edición.
DELETE /api/employees?id=&tenant_id=Eliminación.
GET /api/afp · GET /api/isapreCatálogos globales (sin tenant).
GET /api/cargos?tenant_id= · GET /api/departments?tenant_id= · GET /api/contracts?tenant_id=Catálogos del tenant.

EmployeeService — CRUD del maestro con normalización de RUT y validación de duplicados.