public void ComenzarInspeccion(OrdenDeProduccionDto op, UsuarioDto supervisorCalidadActual)
        {
            //TRAEMOS EL TURNO EN QUE SE ENCUENTRA
            TurnoDto t = this.ObtenerTurno();

            //TRAEMOS UN ARRAY DE DEFECTOS DTO Y LO HACEMOS UNA LISTA
            List <DefectoDto> ddto = new List <DefectoDto>();

            foreach (DefectoDto d in Adaptador.GetDefectos())
            {
                ddto.Add(new DefectoDto {
                    IdDefecto   = d.IdDefecto,
                    Detalle     = d.Detalle,
                    TipoDefecto = d.TipoDefecto
                });
            }


            if (t != null)
            {
                //OBTENEMOS DOS LISTAS, UNA DE DEFECTOS REPROCESO Y OTRA DE OBSERVADOS
                List <DefectoDto> observados = ddto.FindAll(
                    delegate(DefectoDto dO) {
                    return(dO.TipoDefecto == "Observado");
                });

                List <DefectoDto> reproceso = ddto.FindAll(
                    delegate(DefectoDto dr) {
                    return(dr.TipoDefecto == "Reproceso");
                });


                VistaInspeccion vistaIspeccion = new VistaInspeccion(op, supervisorCalidadActual, observados, reproceso, t);
                DatosEnLinea    datosEnLinea   = new DatosEnLinea(op, op.SupLineaAsignado, observados, reproceso, t);
                vistaIspeccion.agregarObservador(datosEnLinea);
                datosEnLinea.RellenarCamposyTablas();
                vistaIspeccion.RellenarCamposyTablas();
                vistaIspeccion.Show();
                datosEnLinea.Show();
            }
            else
            {
                MessageBox.Show("No se puede Comenzar una INSPECCION. Esta fuera del turno de Trabajo");
            }
        }
        public void MostrarDatosEnLinea(OrdenDeProduccionDto op, UsuarioDto supLinea)
        {
            TurnoDto t = this.ObtenerTurno();

            if (t != null)
            {
                //TRAEMOS UN ARRAY DE DEFECTOS DTO Y LO HACEMOS UNA LISTA
                List <DefectoDto> ddto = new List <DefectoDto>();
                foreach (DefectoDto d in Adaptador.GetDefectos())
                {
                    ddto.Add(new DefectoDto
                    {
                        IdDefecto   = d.IdDefecto,
                        Detalle     = d.Detalle,
                        TipoDefecto = d.TipoDefecto
                    });
                }

                //OBTENEMOS DOS LISTAS, UNA DE DEFECTOS REPROCESO Y OTRA DE OBSERVADOS
                List <DefectoDto> observados = ddto.FindAll(
                    delegate(DefectoDto dO) {
                    return(dO.TipoDefecto == "Observado");
                });

                List <DefectoDto> reproceso = ddto.FindAll(
                    delegate(DefectoDto dr) {
                    return(dr.TipoDefecto == "Reproceso");
                });

                DatosEnLinea vistaDatosEnLinea = new DatosEnLinea(op, supLinea, observados, reproceso, t);
                vistaDatosEnLinea.RellenarCamposyTablas();
                vistaDatosEnLinea.Show();
            }
            else
            {
                MessageBox.Show("No se puedo ver datos en linea, Esta fuera del turno de Trabajo");
            }
        }