Skip to content
GitHub

Employee Service

El EmployeeService administra el maestro central de trabajadores con validaciones exhaustivas de datos personales y contractuales.

Archivo: src/domain/employees/EmployeeService.ts

MétodoDescripción
getEmployeeById(tenantDb, id)Obtiene empleado por ID
getEmployees(tenantDb, filter)Lista empleados con filtros
createEmployee(tenantDb, userId, data)Crea nuevo empleado
updateEmployee(tenantDb, userId, id, data)Actualiza empleado
deleteEmployee(tenantDb, id)Elimina empleado
  • RUT: Formato 12345678-9.
  • Sexo: M o F.
  • Estado Civil: SOLTERO, CASADO, VIUDO, DIVORCIADO, SEPARADO.
  • Estado Empleado: ACTIVO, INACTIVO, VACACIONES, LICENCIA, FINIQUITADO.
  • Tipo Cuenta: CUENTA_CORRIENTE, CUENTA_VISTA, CUENTA_AHORRO.

El servicio sanitiza automáticamente:

  • Conversión a mayúsculas (sexo, estados).
  • Trim de espacios en strings.
  • Parseo de booleanos (asignacion_familiar).
  • Valores por defecto (nacionalidad: CHILENA).
import { EmployeeService } from '@/domain/employees/EmployeeService';
await EmployeeService.createEmployee('tenant_db', 'user-123', {
rut: '12345678-9',
nombres: 'Juan',
apellidos: 'Pérez González',
fecha_nacimiento: '1990-05-15',
fecha_ingreso: '2025-01-01',
sexo: 'M'
});
  • EmployeeRepository: Acceso a datos de empleados en PostgreSQL.