Пример #1
0
        public override void RefreshSecondaryData()
        {
            ModuloList modulos = ModuloList.GetList(false);

            _combo_modulos = new Library.Instruction.HComboBoxSourceList(modulos);
            PgMng.Grow();

            _submodulos = SubmoduloList.GetList(false);
            Library.Instruction.HComboBoxSourceList _combo_submodulos = new Library.Instruction.HComboBoxSourceList(_submodulos);
            _combo_modulos.Childs    = _combo_submodulos;
            Datos_Modulos.DataSource = _combo_modulos;
            PgMng.Grow();

            _temas = TemaList.GetList(false);
            Library.Instruction.HComboBoxSourceList _combo_temas = new Library.Instruction.HComboBoxSourceList(_temas);
            _combo_modulos.Childs = _combo_temas;
            PgMng.Grow();

            //_combo_tipo = new Library.Instruction.HComboBoxSourceList();
            //_combo_tipo.Add(new ComboBoxSource(1,"Desarrollo"));
            //_combo_tipo.Add(new ComboBoxSource(2,"Test"));
            Datos_Tipos.DataSource = Library.Instruction.EnumText <ETipoPregunta> .GetList();//_combo_tipo;

            PgMng.Grow();

            //Library.Instruction.HComboBoxSourceList _combo_idiomas = new Library.Instruction.HComboBoxSourceList();
            //_combo_idiomas.Add(new ComboBoxSource(1, "Español"));
            //_combo_idiomas.Add(new ComboBoxSource(2, "Inglés"));
            Datos_Idiomas.DataSource = Library.Common.EnumText <EIdioma> .GetList();//_combo_idiomas;

            PgMng.Grow();
        }
        public override void RefreshSecondaryData()
        {
            PgMng.Grow();

            Preguntas_TB.Text = _entity.PreguntaExamenes.Count.ToString();
            PgMng.Grow();

            Desarrollo_CB.Checked = _entity.Desarrollo;
            PgMng.Grow();

            if (EntityInfo != null && EntityInfo.OidModulo != 0)
            {
                _modulo = ModuloInfo.Get(EntityInfo.OidModulo, false);
                PgMng.Grow(string.Empty, "_modulo");

                _preguntas_modulo = PreguntaList.GetPreguntasModulo(_modulo.Oid);
                PgMng.Grow(string.Empty, "_preguntas");

                _temas = TemaList.GetModuloList(_modulo.Oid, false);
                PgMng.Grow(string.Empty, "_temas");

                _submodulos = SubmoduloList.GetModuloList(_modulo.Oid, false);
                PgMng.Grow(string.Empty, "_submodulos");

                RellenaPreguntas();
            }
            PgMng.Grow();

            base.RefreshSecondaryData();
            PgMng.Grow();
        }
        public void SetSourceData(string item, ModuloInfo modulo, Examen examen)
        {
            _modulo           = modulo;
            _submodulos       = SubmoduloList.GetModuloList(_modulo.Oid, false);
            _temas            = TemaList.GetModuloList(_modulo.Oid, false);
            _preguntas_examen = examen.PreguntaExamens;
            _examen           = examen.GetInfo(false);

            this.Text = Resources.Labels.RESUMEN_EXAMEN_TITLE;
            lista     = new List <RegistroResumen>();
            string memo_preguntas = ";" + item;
            long   contador       = 0;

            foreach (SubmoduloInfo obj in _submodulos)
            {
                foreach (TemaInfo tema in _temas)
                {
                    if (tema.OidSubmodulo == obj.Oid)
                    {
                        foreach (PreguntaExamen p in _preguntas_examen)
                        {
                            if (p.OidTema == tema.Oid)
                            {
                                lista = RegistroResumen.ContabilizaPregunta(lista, obj.Oid, obj.Codigo + " " + obj.Texto, tema.Codigo);
                                contador++;
                            }
                        }
                    }
                }
            }
            lista.Add(new RegistroResumen("TODOS", "TODOS", contador));

            RefreshMainData();
        }
Пример #4
0
        public void SetSourceData(Examen item, ModuloInfo modulo, SubmoduloList submodulos,
                                  TemaList temas, PreguntaList preguntas, List <long> preguntas_mismo_dia, bool propuesto)
        {
            lista_preguntas = new List <long>();
            //_memo_preguntas = item.MemoPreguntas;
            _entity = item;
            //if (propuesto) _entity.MemoPreguntas = string.Empty;
            _modulo              = modulo;
            _preguntas           = preguntas;
            _submodulos          = submodulos;
            _temas               = temas;
            _preguntas_mismo_dia = preguntas_mismo_dia;
            this.Text            = Resources.Labels.SELECT_PREGUNTAS;

            foreach (Pregunta_Examen pregunta in _entity.Pregunta_Examens)
            {
                lista_preguntas.Add(pregunta.OidPregunta);
            }

            //while (_memo_preguntas != string.Empty)
            //{
            //    long pregunta;
            //    int index = _memo_preguntas.IndexOf(";");
            //    pregunta = Convert.ToInt64(_memo_preguntas.Substring(0, index));
            //    _memo_preguntas = _memo_preguntas.Substring(index + 1);
            //    Pregunta p = _preguntas.GetItem(pregunta);
            //    lista_preguntas.Add(pregunta);
            //}
            RefreshMainData();
            RefreshSecondaryData();
        }
 /// <summary>
 /// Asigna el objeto principal al origen de datos
 /// <returns>void</returns>
 /// </summary>
 protected override void RefreshMainData()
 {
     if (_entity != null)
     {
         Datos.DataSource = TemaList.SortList(_entity.Temas, "CodigoOrden", ListSortDirection.Ascending);
     }
 }
Пример #6
0
        /// <summary>
        /// Implementa Save_button_Click
        /// </summary>
        protected override void SaveAction()
        {
            //Antes de guardar se crean todos los registros de Pregunta_Plantilla necesarios para cada submódulo
            //del módulo asociado a la plantilla que se está creando, y se inicializan todos los números de
            //preguntas a cero.
            ModuloInfo modulo = ModuloInfo.Get(Entity.OidModulo, false);

            _entity.Modulo    = modulo.Texto;
            _entity.Preguntas = Preguntas_Plantillas.NewChildList();
            SubmoduloList submodulos = SubmoduloList.GetModuloList(Entity.OidModulo, false);
            TemaList      temas      = TemaList.GetModuloList(Entity.OidModulo, false);

            foreach (SubmoduloInfo submodulo in submodulos)
            {
                foreach (TemaInfo tema in temas)
                {
                    if (submodulo.Oid == tema.OidSubmodulo)
                    {
                        Preguntas_Plantilla preguntas = Preguntas_Plantilla.NewChild(Entity);
                        preguntas.OidSubmodulo = submodulo.Oid;
                        preguntas.OidTema      = tema.Oid;
                        preguntas.NPreguntas   = 0;
                        Entity.Preguntas.AddItem(preguntas);
                    }
                }
            }

            _action_result = SaveObject() ? DialogResult.OK : DialogResult.Ignore;
        }
Пример #7
0
        public override void RefreshSecondaryData()
        {
            int validas = 0;

            foreach (PreguntaExamen item in _entity.PreguntaExamens)
            {
                if (!item.Anulada)
                {
                    validas++;
                }
            }

            Preguntas_TB.Text = validas.ToString();
            PgMng.Grow(string.Empty, "Preguntas_TB");

            Desarrollo_CB.Checked = _entity.Desarrollo;
            PgMng.Grow(string.Empty, "Desarrollo_CB");

            if (Entity != null && Entity.OidModulo != 0)
            {
                _modulo = ModuloInfo.Get(Entity.OidModulo, false);
                PgMng.Grow(string.Empty, "_modulo");
                _preguntas = _entity.PreguntaExamens;
                Datos_Preguntas.DataSource = PreguntaExamens.SortList(_entity.PreguntaExamens, "Orden", ListSortDirection.Ascending);
                PgMng.Grow(string.Empty, "_preguntas");
                _submodulos = SubmoduloList.GetModuloList(_modulo.Oid, false);
                PgMng.Grow(string.Empty, "_submodulos");
                _temas = TemaList.GetModuloList(_modulo.Oid, false);
                PgMng.Grow(string.Empty, "_temas");
            }
            PgMng.Grow();

            base.RefreshSecondaryData();
        }
        public override void RefreshSecondaryData()
        {
            TemaList temas = TemaList.GetList(false);

            _combo_temas = new Library.Instruction.HComboBoxSourceList(temas);

            Datos_Tema_Origen.DataSource = _combo_temas;
            PgMng.Grow();

            Datos_Tema_Destino.DataSource = _combo_temas;
        }
        public override void RefreshSecondaryData()
        {
            base.RefreshSecondaryData();
            PgMng.Grow();

            if (Submodulos_Grid.CurrentRow != null && ActiveOIDSubmodulo > 0)
            {
                SubmoduloInfo submodulo = _entity.Submodulos.GetItem(ActiveOIDSubmodulo);
                if (submodulo.Temas != null)
                {
                    Datos_Temas.DataSource = TemaList.SortList(submodulo.Temas,
                                                               "CodigoOrden", ListSortDirection.Ascending);
                }
            }
            PgMng.Grow();
        }
        public override void RefreshSecondaryData()
        {
            if (_entity != null)
            {
                _modulo        = ModuloInfo.Get(_entity.OidModulo, false);
                Modulo_TB.Text = _modulo.Codigo + " " + _modulo.Texto;

                _submodulos = SubmoduloList.GetModuloList(_modulo.Oid, false);
                _temas      = TemaList.GetModuloList(_modulo.Oid, false);
            }
            PgMng.Grow();

            NPreguntas_TB.Text = _entity.NPreguntas.ToString();

            PgMng.Grow();

            Datos_Idiomas.DataSource = Library.Common.EnumText <EIdioma> .GetList(false);

            PgMng.Grow();
        }
Пример #11
0
        protected override void SetPreguntasAction()
        {
            if (!Entity.FechaEmision.Date.Equals(DateTime.MaxValue.Date) &&
                !Entity.FechaEmision.Date.Equals(DateTime.MinValue.Date))
            {
                MessageBox.Show("No se puede modificar un examen que ha sido emitido");
                return;
            }

            if (Entity.FechaExamen.Date.Equals(DateTime.MaxValue.Date))
            {
                MessageBox.Show("Debe especificar una fecha para el examen antes de añadir preguntas");
                return;
            }

            if (Entity != null && Entity.OidModulo != 0)
            {
                if (_modulo == null)
                {
                    _modulo = ModuloInfo.Get(Entity.OidModulo);
                }
                if (_submodulos == null)
                {
                    _submodulos = SubmoduloList.GetModuloList(Entity.OidModulo, false);
                }
                if (_temas == null)
                {
                    _temas = TemaList.GetModuloList(_modulo.Oid, false);
                }
                if (preguntas_mismo_dia == null)
                {
                    GetPreguntasReservadas();
                }

                PreguntasSelectForm form = new PreguntasSelectForm(true);
                form.SetSourceData(Entity, _modulo, _submodulos, _temas, _preguntas_modulo, preguntas_mismo_dia, false);
                form.ShowDialog();

                RellenaPreguntas();
            }
        }
Пример #12
0
        protected override void ProponerAction()
        {
            if (_entity.Pregunta_Examens.Count != 0)
            {
                MessageBox.Show("El examen que desea proponer contiene preguntas, bórrelas antes de continuar",
                                "Aviso");
            }
            else
            {
                PlantillaSelectForm form = new PlantillaSelectForm(true);
                form.SetSourceData(_entity, _modulo, _preguntas_modulo);
                form.ShowDialog(this);

                if (Entity != null && Entity.OidModulo != 0 && form.Guardado)
                {
                    if (_modulo == null)
                    {
                        _modulo = ModuloInfo.Get(Entity.OidModulo);
                    }
                    if (_submodulos == null)
                    {
                        _submodulos = SubmoduloList.GetModuloList(_modulo.Oid, false);
                    }
                    if (_temas == null)
                    {
                        _temas = TemaList.GetModuloList(_modulo.Oid, false);
                    }
                    if (preguntas_mismo_dia == null)
                    {
                        GetPreguntasReservadas();
                    }

                    PreguntasSelectForm select = new PreguntasSelectForm(true);
                    select.SetSourceData(Entity, _modulo, _submodulos, _temas, _preguntas_modulo, preguntas_mismo_dia, true);
                    select.ShowDialog(this);

                    RellenaPreguntas();
                }
            }
        }
Пример #13
0
        public override void RefreshSecondaryData()
        {
            _combo_submodulos           = new Library.Instruction.HComboBoxSourceList(SubModulos);
            Datos_Submodulos.DataSource = _combo_submodulos;
            _combo_submodulos.Childs    = new Library.Instruction.HComboBoxSourceList(TemaList.GetList(false));

            //HComboBoxSourceList combo_nivel = new Library.Instruction.HComboBoxSourceList();
            //combo_nivel.Add(new ComboBoxSource(0, "TODOS"));
            //combo_nivel.Add(new ComboBoxSource(1, "1"));
            //combo_nivel.Add(new ComboBoxSource(2, "2"));
            //combo_nivel.Add(new ComboBoxSource(3, "3"));
            //Datos_Temas.DataSource = combo_nivel;

            //Library.Instruction.HComboBoxSourceList combo_idioma = new Library.Instruction.HComboBoxSourceList();
            //combo_idioma.Add(new ComboBoxSource(0, "TODOS"));
            //combo_idioma.Add(new ComboBoxSource(1, "Español"));
            //combo_idioma.Add(new ComboBoxSource(2, "Inglés"));
            Datos_Idiomas.DataSource = Library.Common.EnumText <EIdioma> .GetList();//combo_idioma;
        }
Пример #14
0
        private void Select_Button_Click(object sender, EventArgs e)
        {
            _plantilla = PlantillaExamenInfo.Get(ActiveOID);

            if (_plantilla != null)
            {
                _guardado = true;

                if (!_plantilla.Desarrollo)
                {
                    TemaList temas = TemaList.GetModuloList(_modulo.Oid, false);

                    foreach (Preguntas_PlantillaInfo item in _plantilla.Preguntas)
                    {
                        long count = item.NPreguntas;

                        PreguntaList preguntas_tema = PreguntaList.GetPreguntasDisponiblesTema(item.OidTema, _entity.Desarrollo, _entity.FechaExamen, count);

                        if (preguntas_tema != null)
                        {
                            foreach (PreguntaInfo info in preguntas_tema)
                            {
                                if (count == 0)
                                {
                                    break;
                                }

                                Pregunta_Examen pregunta = Pregunta_Examen.NewChild(_entity);
                                pregunta.OidPregunta = info.Oid;
                                _entity.Pregunta_Examens.AddItem(pregunta);
                                count--;
                            }
                        }

                        if (count != 0)
                        {
                            TemaInfo tema = temas.GetItem(item.OidTema);
                            MessageBox.Show("No hay suficientes preguntas disponibles para el tema " + tema.Codigo);
                        }
                    }
                }
                else
                {
                    long count = _plantilla.NPreguntas;

                    PreguntaList preguntas = PreguntaList.GetPreguntasDisponiblesModulo(_entity.OidModulo, _entity.Desarrollo, _entity.FechaExamen, count);

                    if (preguntas != null)
                    {
                        foreach (PreguntaInfo info in preguntas)
                        {
                            if (count == 0)
                            {
                                break;
                            }

                            Pregunta_Examen pregunta = Pregunta_Examen.NewChild(_entity);
                            pregunta.OidPregunta = info.Oid;
                            _entity.Pregunta_Examens.AddItem(pregunta);
                            count--;
                        }
                    }

                    if (count != 0)
                    {
                        MessageBox.Show("No hay suficientes preguntas disponibles en el submódulo");
                    }
                }
            }

            Cerrar();
            Close();
        }
        /// <summary>
        /// Función recursiva que va creando el árbol de preguntas por submódulo
        /// </summary>
        /// <param name="padre"></param>
        /// <param name="apartado"></param>
        private void SetSubmodulosValues(TreeNode padre, ModuloInfo modulo, SubmoduloList submodulos, TemaList temas)
        {
            TreeNode nodo = new TreeNode(modulo.NumeroModulo + " - " + modulo.Texto);

            nodo.NodeFont         = new Font("Tahoma", (float)8.25, FontStyle.Regular);
            nodo.ForeColor        = System.Drawing.Color.Black;
            nodo.Tag              = EntityInfo;
            nodo.SelectedImageKey = "modulo";

            if (padre == null)
            {
                while (Arbol_TV.Nodes.Count != 0)
                {
                    foreach (TreeNode t in Arbol_TV.Nodes)
                    {
                        Arbol_TV.Nodes.Remove(t);
                    }
                }

                Arbol_TV.Nodes.Add(nodo);
            }
            else
            {
                padre.Nodes.Add(nodo);
            }

            //foreach (SubmoduloInfo item in submodulos)
            //{
            foreach (TemaInfo tema in temas)
            {
                //if (p.OidSubmodulo == item.Oid)
                //{
                TreeNode pregunta         = null;
                Preguntas_PlantillaInfo p = null;

                foreach (Preguntas_PlantillaInfo obj in EntityInfo.Preguntas)
                {
                    if (obj.OidTema == tema.Oid)
                    {
                        p = obj;
                        break;
                    }
                }

                if (p != null)
                {
                    pregunta           = new TreeNode(tema.Codigo + " - " + tema.Nombre + " - Nivel : " + tema.Nivel.ToString() + " | Nº Preguntas : " + p.NPreguntas.ToString());
                    pregunta.NodeFont  = new Font("Tahoma", (float)8.25, FontStyle.Regular);
                    pregunta.ForeColor = System.Drawing.Color.Black;
                    pregunta.Tag       = p;
                    if (p.NPreguntas == 0)
                    {
                        pregunta.ImageKey = "submodulo_verde";
                    }
                    else
                    {
                        pregunta.ImageKey = "submodulo";
                    }

                    nodo.Nodes.Add(pregunta);
                }
                //}
            }
            //}

            Arbol_TV.ExpandAll();
        }