コード例 #1
0
        public void CargarDataGridCursosNoDescargados()
        {
            CursoControlador cursoControlador = new CursoControlador();

            listaCursosNoDescargadosEmpleado = cursoControlador.ObtenerCursosNoDescargados(Estado.IdUsuario).FindAll(x => DateTime.Now < x.Vigencia);

            dtgCursos.ItemsSource = listaCursosNoDescargadosEmpleado;
        }
コード例 #2
0
        public void CargarDataGridCursosDescargados()
        {
            CursoControlador cursoControlador = new CursoControlador();

            listaCursosDescargadosEmpleado = cursoControlador.ObtenerCursosDescargados(Estado.IdUsuario);

            dtgCursosDescargados.ItemsSource = listaCursosDescargadosEmpleado;
        }
コード例 #3
0
        public void CargarDataGridCursos()
        {
            CursoControlador cursoControlador = new CursoControlador();

            listaCursos = cursoControlador.ObtenerCursos();

            dtgCursos.ItemsSource = listaCursos;
        }
コード例 #4
0
        public void CargarTreeViewEvaluaciones()
        {
            trvEvaluaciones.Items.Clear();

            CursoControlador      cursoControlador      = new CursoControlador();
            EvaluacionControlador evaluacionControlador = new EvaluacionControlador();

            cursos = cursoControlador.ObtenerCursos();
            foreach (var curso in cursos)
            {
                var evaluacion = evaluacionControlador.ObtenerEvaluacion(curso.IdCurso);

                TreeViewItem cursoRoot = new TreeViewItem()
                {
                    Header = curso.Nombre
                };
                cursoRoot.Selected += delegate(object sender, RoutedEventArgs e)
                {
                    btnAgregarEditar.Content = "Agregar";
                    tipoBoton                         = 0;
                    this.txtPregunta.Text             = "";
                    this.txtRespuestaCorrecta.Text    = "";
                    this.txtRespuestaIncorrecta1.Text = "";
                    this.txtRespuestaIncorrecta2.Text = "";
                };

                int index = 0;
                foreach (var pregunta in evaluacion)
                {
                    TreeViewItem treeViewPregunta = new TreeViewItem()
                    {
                        Header = $"Pregunta {index + 1}"
                    };
                    treeViewPregunta.Selected += delegate(object sender, RoutedEventArgs e)
                    {
                        e.Handled = true;
                        btnAgregarEditar.Content = "Editar";
                        tipoBoton                         = 1;
                        this.txtPregunta.Text             = pregunta.PreguntaNombre;
                        this.txtRespuestaCorrecta.Text    = pregunta.RespuestaCorrecta;
                        this.txtRespuestaIncorrecta1.Text = pregunta.RespuestaIncorrecta1;
                        this.txtRespuestaIncorrecta2.Text = pregunta.RespuestaIncorrecta2;
                    };
                    preguntas.Add(evaluacion[index]);
                    cursoRoot.Items.Add(treeViewPregunta);
                    index++;
                }

                trvEvaluaciones.Items.Add(cursoRoot);
            }
        }
コード例 #5
0
        private void DtgCursos_MouseDoubleClick(object sender, MouseButtonEventArgs e)
        {
            CursoControlador cursoControlador = new CursoControlador();

            e.Handled = true;
            if (e.OriginalSource is TextBlock)
            {
                cursoControlador.DescargarCurso(listaCursosNoDescargadosEmpleado[dtgCursos.SelectedIndex].UrlDescarga);
                cursoControlador.MarcarCursoDescargado(Estado.IdUsuario, listaCursosNoDescargadosEmpleado[dtgCursos.SelectedIndex].IdCurso);
            }

            CargarDataGridCursosNoDescargados();
            CargarDataGridCursosDescargados();
        }
コード例 #6
0
        public void CargarTreeViewEvaluaciones()
        {
            trvEvaluaciones.Items.Clear();

            CursoControlador      cursoControlador      = new CursoControlador();
            EvaluacionControlador evaluacionControlador = new EvaluacionControlador();

            cursosDescargados = cursoControlador.ObtenerCursosDescargados(Estado.IdUsuario);
            foreach (var curso in cursosDescargados)
            {
                var evaluacion = evaluacionControlador.ObtenerEvaluacion(curso.IdCurso);

                TreeViewItem cursoRoot = new TreeViewItem()
                {
                    Header = curso.Nombre
                };

                int index = 0;
                foreach (var pregunta in evaluacion)
                {
                    int i = index;

                    TreeViewItem treeViewPregunta = new TreeViewItem()
                    {
                        Header = $"Pregunta {index + 1}"
                    };
                    string[] respuestasOrdenAleatorio = new string[3] {
                        pregunta.RespuestaCorrecta,
                        pregunta.RespuestaIncorrecta1,
                        pregunta.RespuestaIncorrecta2
                    };
                    respuestasOrdenAleatorio = respuestasOrdenAleatorio.OrderBy(x => rnd.Next()).ToArray();

                    treeViewPregunta.Selected += delegate(object sender, RoutedEventArgs e)
                    {
                        e.Handled = true;
                        grpPregunta.Visibility = Visibility.Visible;
                        btnComenzar.Visibility = Visibility.Hidden;

                        TreeViewItem currentItem = trvEvaluaciones.SelectedItem as TreeViewItem;
                        TreeViewItem parent      = currentItem.Parent as TreeViewItem;

                        if (i == parent.Items.Count - 1)
                        {
                            btnSiguiente.Content = "Finalizar";
                        }
                        else
                        {
                            btnSiguiente.Content = "Siguiente";
                        }

                        this.grpPregunta.Header   = $"Pregunta {i + 1}";
                        this.txtPregunta.Text     = pregunta.PreguntaNombre;
                        this.rdoOpcion1.Content   = respuestasOrdenAleatorio[0];
                        this.rdoOpcion2.Content   = respuestasOrdenAleatorio[1];
                        this.rdoOpcion3.Content   = respuestasOrdenAleatorio[2];
                        this.rdoOpcion1.GroupName = $"pregunta{i + 1}";
                        this.rdoOpcion2.GroupName = $"pregunta{i + 1}";
                        this.rdoOpcion3.GroupName = $"pregunta{i + 1}";

                        btnSiguiente.Click += delegate
                        {
                            if (i != parent.Items.Count - 1) // Siguiente
                            {
                                if (this.rdoOpcion1.IsChecked == true)
                                {
                                    respuestas.Add(this.rdoOpcion1.Content.ToString());
                                }
                                else if (this.rdoOpcion2.IsChecked == true)
                                {
                                    respuestas.Add(this.rdoOpcion2.Content.ToString());
                                }
                                else if (this.rdoOpcion3.IsChecked == true)
                                {
                                    respuestas.Add(this.rdoOpcion3.Content.ToString());
                                }
                                //else
                                //{
                                //    respuestas.Add(""); // no contestó nada
                                //}

                                this.rdoOpcion1.IsChecked = false;
                                this.rdoOpcion2.IsChecked = false;
                                this.rdoOpcion3.IsChecked = false;

                                TreeViewItem nextItem = parent.Items[i + 1] as TreeViewItem;
                                nextItem.IsSelected = true;
                            }
                            else // Finalizar
                            {
                                double calificacion = 0;

                                for (int j = 0; j < respuestas.Count; j++)
                                {
                                    int idx = j;
                                    if (respuestas[idx] == evaluacion[idx].RespuestaCorrecta)
                                    {
                                        ++calificacion;
                                    }
                                }

                                calificacion = calificacion * 10 / evaluacion.Count;
                                evaluacionControlador.AsignarCalificacion(Estado.IdUsuario, curso.IdCurso, curso.Nombre, calificacion);
                                MessageBox.Show("Usted terminó exitosamente el curso, pronto recibirá su calificación por correo electrónico", "Curso completado", MessageBoxButton.OK, MessageBoxImage.Information);
                            }
                        };
                    };
                    preguntas.Add(evaluacion[index]);
                    cursoRoot.Items.Add(treeViewPregunta);
                    index++;
                }

                cursoRoot.Expanded += delegate
                {
                    cursoRoot.IsExpanded = false;
                };
                trvEvaluaciones.Items.Add(cursoRoot);
            }
        }
コード例 #7
0
        private void BtnAgregarEditar_Click(object sender, RoutedEventArgs e)
        {
            if (!ValidarCampos())
            {
                return;
            }

            if (tipoVentana == 0) // agregar
            {
                CursoControlador cursoControlador = new CursoControlador();
                DateTime         fechaVigencia    = this.dateVigencia.DisplayDate;
                fechaVigencia = fechaVigencia.AddHours(11).AddMinutes(59).AddSeconds(59);

                bool resultado = cursoControlador.CrearCurso(new Curso()
                {
                    Nombre      = this.txtNombre.Text,
                    UrlDescarga = this.txtURL.Text,
                    Vigencia    = fechaVigencia
                }, grupos[this.cmbGrupo.SelectedIndex].IdGrupo);

                if (resultado)
                {
                    MessageBox.Show("Curso creado con éxito!", "Exito!", MessageBoxButton.OK, MessageBoxImage.Information);
                }
                else
                {
                    MessageBox.Show("Error al intentar guardar el curso en la base de datos", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                }
            }
            else if (tipoVentana == 1) // editar
            {
                CursoControlador cursoControlador = new CursoControlador();
                DateTime         fechaVigencia    = this.dateVigencia.DisplayDate;
                fechaVigencia = fechaVigencia.AddHours(11).AddMinutes(59).AddSeconds(59);
                bool resultado;

                if (grupos[cmbGrupo.SelectedIndex].IdGrupo != this.idGrupo)
                {
                    resultado = cursoControlador.CrearCurso(new Curso()
                    {
                        Nombre      = this.txtNombre.Text,
                        UrlDescarga = this.txtURL.Text,
                        Vigencia    = fechaVigencia
                    }, grupos[this.cmbGrupo.SelectedIndex].IdGrupo, idCurso);
                }
                else
                {
                    resultado = cursoControlador.ActualizarCurso(new Curso()
                    {
                        Nombre      = this.txtNombre.Text,
                        UrlDescarga = this.txtURL.Text,
                        Vigencia    = this.dateVigencia.DisplayDate,
                        IdCurso     = idCurso
                    });
                }


                if (resultado)
                {
                    MessageBox.Show("Curso editado con éxito!", "Exito!", MessageBoxButton.OK, MessageBoxImage.Information);
                }
                else
                {
                    MessageBox.Show("Error al intentar guardar el curso editado en la base de datos", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                }
            }
        }
コード例 #8
0
        private void BtnSubirRecurso_Click(object sender, RoutedEventArgs e)
        {
            CursoControlador cursoControlador = new CursoControlador();

            txtURL.Text = cursoControlador.UploadCourse();
        }