public Asistencia(Empleado empleado)
        {
            DayOfWeek hoy = DateTime.Now.DayOfWeek;

            FechaDesde = DateTime.Now;

            if (empleado.CargaHoraria != null)
            {
                foreach (Horario unHorario in empleado.CargaHoraria.Horarios)
                {
                    if (unHorario.Dia == hoy)
                    {
                        //TODO Hacemos de cuenta que no se repiten los días de la semana
                        //por CargaHoraria -VALIDAR- y nos quedamos con el ultimo
                        FechaIngresoPautado = DateTime.Now.Date;
                        FechaIngresoPautado = FechaIngresoPautado.AddHours(unHorario.HoraEntrada.Hour);
                        FechaIngresoPautado = FechaIngresoPautado.AddMinutes(unHorario.HoraEntrada.Minute);
                        FechaIngresoPautado = FechaIngresoPautado.AddSeconds(unHorario.HoraEntrada.Second);

                        FechaEgresoPautado = DateTime.Now.Date;
                        FechaEgresoPautado = FechaEgresoPautado.AddHours(unHorario.HoraSalida.Hour);
                        FechaEgresoPautado = FechaEgresoPautado.AddMinutes(unHorario.HoraSalida.Minute);
                        FechaEgresoPautado = FechaEgresoPautado.AddSeconds(unHorario.HoraSalida.Second);
                    }
                }
            }
        }
 public EditAusencia(Empleado empleado)
 {
     this.empleado = empleado;
     InitializeComponent();
     dtpHorarioIngreso.Enabled = false;
     dtpHorarioEgreso.Enabled = false;
 }
        // construye la fila en base a un objeto de tipo empleado
        private DataGridViewRow ConstruirRow(Empleado empleado)
        {
            // crea la fila
            DataGridViewRow row = new DataGridViewRow();
            if (empleado is Vendedor)
            {
                //Creamos las celdas de fila para el tipo vendedor (con comision)
                row.CreateCells(dataGridViewEmpleados, new string[] { empleado.Legajo.ToString(), empleado.Nombre, empleado.Apellido, empleado.Direccion, empleado.Telefono, ((Vendedor)empleado).Comision.ToString("0.00"), empleado.GetType().Name });
            }
            else
            {
                //Creamos las celdas de fila para el tipo empleado (sin comision)
                row.CreateCells(dataGridViewEmpleados, new string[] { empleado.Legajo.ToString(), empleado.Nombre, empleado.Apellido, empleado.Direccion, empleado.Telefono, "0", empleado.GetType().Name });
            }
            // relaciona el objeto de tipo Empleado con la fila
            row.Tag = empleado;

            // retorna la fila creada
            return row;
        }
        // agrega fila a la grilla
        private void AgregarEmpleadoAGrilla(Empleado empleado)
        {
            DataGridViewRow row = ConstruirRow(empleado);
            dataGridViewEmpleados.Rows.Add(row);
            if (empleado is Vendedor)
                row.DefaultCellStyle.BackColor = System.Drawing.Color.LightYellow;
            else if (empleado is Administrativo)
                row.DefaultCellStyle.BackColor = System.Drawing.Color.LightSeaGreen;
            else if (empleado is Operario)
                row.DefaultCellStyle.BackColor = System.Drawing.Color.LightBlue;

            row.DefaultCellStyle.SelectionBackColor = System.Drawing.Color.DarkBlue;
        }
 // actualiza fila en grilla
 private void ActualizarEmpleadoEnGrilla(DataGridViewRow row, Empleado empleado)
 {
     int indice = row.Index;
     QuitarEmpleadoDeGrilla(row);
     DataGridViewRow newRow = ConstruirRow(empleado);
     dataGridViewEmpleados.Rows.Insert(indice, newRow);
 }