Esempio n. 1
0
        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));
        }