Beispiel #1
0
        private Empleado parse(List <Object> unRegistro)
        {
            int         idPersona  = (int)unRegistro.ElementAt(6);
            IPersonaDAO personaDao = new PersonaDaoImpl();
            Persona     persona    = personaDao.leerPorId(idPersona);

            string nombre   = persona.Nombre;
            string apellido = persona.Apellido;
            string dni      = persona.Dni;


            Telefono telefono = persona.Telefonos[0];

            Domicilio domicilio = persona.Domicilioes[0];

            int    idEmpleado = (int)unRegistro.ElementAt(0);
            string legajo     = (string)unRegistro.ElementAt(1);
            string categoria  = (string)unRegistro.ElementAt(4);
            string cuil       = (string)unRegistro.ElementAt(5);

            DateTime fechaIngreso = DateTime.Parse(unRegistro.ElementAt(2).ToString());
            //string fechaEgresoString = (string)unRegistro.ElementAt(3);
            DateTime fechaEgreso;

            if (!(unRegistro.ElementAt(3) is DBNull))
            {
                fechaEgreso = DateTime.Parse(unRegistro.ElementAt(3).ToString());
            }
            else
            {
                fechaEgreso = DateTime.MinValue;
            }

            int         idUsuario  = (int)unRegistro.ElementAt(7);
            IUsuarioDAO usuarioDao = new UsuarioDaoImpl();
            Usuario     usuario    = usuarioDao.leerPorId(idUsuario);

            string password = usuario.Password;
            bool   admin    = usuario.Administrador;
            bool   activo   = usuario.Activo;

            Empleado empleado = new Empleado(nombre, apellido, dni, categoria, cuil, password, admin, fechaIngreso);

            empleado.Usuario.IdUsuario = idUsuario;
            empleado.IdPersona         = idPersona;
            empleado.Legajo            = legajo;
            empleado.FechaEgreso       = fechaEgreso;
            empleado.Telefonos.Add(telefono);
            empleado.Domicilioes.Add(domicilio);
            empleado.IdEmpleado = idEmpleado;
            //faltan crear los familiares

            IGrupoFamiliarDao grupoFamiliarDao = new GrupoFamiliarDaoImpl();

            foreach (GrupoFamiliar gf in grupoFamiliarDao.listarTodos())
            {
                if (gf.IdEmpleado == empleado.IdEmpleado)
                {
                    empleado.Familiares.Add(gf);
                }
            }

            return(empleado);
        }