public int CrearEmpleado(string nombre, string apellido, DateTime fechaNacimiento, int documento, string descripcion, DateTime fechaInicio, EnumTipoEmpleado tipoEmpleado) { Empleado buscado = bdEmpleado.BuscarPorClavesUnicas(documento); if (buscado != null && buscado.EstadoEmpleado == EnumEstadoEmpleado.Baja) { buscado.EstadoEmpleado = EnumEstadoEmpleado.Activo; buscado.Persona.Nombre = nombre; buscado.Persona.Apellido = apellido; buscado.Persona.FechaNacimiento = fechaNacimiento; buscado.DescripcionTarea = descripcion; buscado.TipoEmpleado = tipoEmpleado; buscado.FechaInicio = fechaInicio; bdEmpleado.Actualizar(buscado); return(-1); } else if (buscado != null) { return(-2); } Persona pers = controladorPersona.BuscarPersonaPorClavesUnicas(documento); if (pers == null) { pers = new Persona { Nombre = nombre, Apellido = apellido, FechaNacimiento = fechaNacimiento, DNI = documento }; pers.Foto = CargarFotoPorDefecto(); new BDPersona().Crear(pers); } Empleado unEmpleado = null; switch (tipoEmpleado) { case EnumTipoEmpleado.Secretaria: unEmpleado = new Secretaria(); break; case EnumTipoEmpleado.Profesor: unEmpleado = new Profesor(); break; default: unEmpleado = new Empleado(); break; } unEmpleado.FechaInicio = fechaInicio; unEmpleado.DescripcionTarea = descripcion; unEmpleado.TipoEmpleado = tipoEmpleado; unEmpleado.EstadoEmpleado = EnumEstadoEmpleado.Activo; unEmpleado.Persona = pers; return(bdEmpleado.Crear(unEmpleado)); }