Esempio n. 1
0
        public bool existCampo(eCampo Campo)
        {//Correcto
            try
            {
                SqlConnection Conexion = DB.Conectar();
                string        SELECT   = string.Format("SELECT * FROM Campo where Tipo ='{0}' AND Numero = {1} AND ID_Curso ='{2}'",
                                                       Campo.Tipo, Campo.Numero, Campo.Curso.Codigo + "-0" + Campo.Curso.Vez);
                SqlCommand Comando = new SqlCommand(SELECT, Conexion);

                SqlDataReader Reader = Comando.ExecuteReader();

                int rows = 0;

                while (Reader.Read())//Si la tabla obtenida tiene filas la leo
                {
                    rows++;
                }


                Reader.Close();

                return(rows >= 1? true: false); //Si devuelve una fila, quiere decir que si existe
            }
            catch (Exception e) { return(false); }
            finally { DB.Desconectar(); }
        }
Esempio n. 2
0
 public bool Registrar_Campo(eCampo Campo, out string message)//Se comprueba en la base de datos si existe ese campo
 {
     if (!Campo_DB.existCampo(Campo))
     {
         return(Campo_DB.Insertar(Campo, out message));
     }
     else
     {
         message = "YA EXISTE ESE CAMPO EN ESE CURSO";
         return(false);
     }
 }
Esempio n. 3
0
        public List <eCampo> GetCampos(out string message) //Obtengo todos los campos
        {                                                  //Correcto
            try
            {
                List <eCampo> Lista_Campos = new List <eCampo>();
                eCampo        aux          = null;

                SqlConnection Conexion = DB.Conectar();
                string        SELECT   = "SELECT * FROM Campo";
                SqlCommand    Comando  = new SqlCommand(SELECT, Conexion);
                SqlDataReader Reader   = Comando.ExecuteReader();

                while (Reader.Read())
                {
                    aux             = new eCampo();
                    aux.Tipo        = (string)Reader["Tipo"];
                    aux.Numero      = (int)Reader["Numero"];
                    aux.Descripcion = (string)Reader["Descripcion"];
                    aux.Peso        = (int)Reader["Peso"];
                    aux.Nota        = Convert.ToSingle(Reader["Nota"]);
                    aux.Rellenado   = (bool)Reader["Rellenado"];

                    /////
                    ///Desfragmentacion de ID (Codigo + Periodo)
                    /////
                    string ID_Curso = (string)Reader["ID_Curso"];
                    int    indice   = ID_Curso.IndexOf('-');
                    //ma745-01  i=5
                    aux.Curso.Codigo = ID_Curso.Substring(0, indice);
                    aux.Curso.Vez    = Convert.ToInt32(ID_Curso.Substring(indice + 1));

                    Lista_Campos.Add(aux);
                }


                Reader.Close();
                message = "Correcto";
                return(Lista_Campos);
            }
            catch (Exception e)
            {
                message = e.Message;
                return(null);
            }
            finally
            {
                DB.Desconectar();
            }
        }
Esempio n. 4
0
        public bool Insertar(eCampo obj, out string message)
        {//Correcto
            try
            {
                SqlConnection Conexion = DB.Conectar();
                string        INSERT   = string.Format("Insert into Campo Values('{0}',{1},'{2}',{3},{5},'{4}',{6})",
                                                       obj.Tipo, obj.Numero, obj.Descripcion, obj.Peso, obj.Curso.Codigo + "-0" + obj.Curso.Vez, obj.Nota, 0);
                SqlCommand Comando = new SqlCommand(INSERT, Conexion);
                Comando.ExecuteNonQuery();

                message = "Campo Registrado";
                return(true);
            }
            catch (Exception e) { message = e.Message; return(false); }
            finally { DB.Desconectar(); }
        }
Esempio n. 5
0
        public ObservableCollection <eCampo> GetCampos_(string ID_Curso) //Obtengo los campos de un determinado curso, pero dentro de un ObsCollect
        {                                                                //Correcto
            try
            {
                ObservableCollection <eCampo> ObservableCollection_Campos = new ObservableCollection <eCampo>();
                eCampo aux = null;

                SqlConnection Conexion = DB.Conectar();
                string        SELECT   = string.Format("SELECT * FROM Campo where ID_Curso = '{0}'", ID_Curso);
                SqlCommand    Comando  = new SqlCommand(SELECT, Conexion);
                SqlDataReader Reader   = Comando.ExecuteReader();

                while (Reader.Read())
                {
                    aux             = new eCampo();
                    aux.Tipo        = (string)Reader["Tipo"];
                    aux.Numero      = (int)Reader["Numero"];
                    aux.Descripcion = (string)Reader["Descripcion"];
                    aux.Peso        = Convert.ToSingle(Reader["Peso"]);
                    aux.Nota        = Convert.ToSingle(Reader["Nota"]);
                    aux.Rellenado   = (bool)Reader["Rellenado"];

                    /////
                    ///Desfragmentacion de ID (Codigo + Periodo)
                    /////
                    int indice = ID_Curso.IndexOf('-');
                    //ma745-01  i=5
                    aux.Curso.Codigo = ID_Curso.Substring(0, indice);
                    aux.Curso.Vez    = Convert.ToInt32(ID_Curso.Substring(indice + 1));

                    ObservableCollection_Campos.Add(aux);
                }


                Reader.Close();

                return(ObservableCollection_Campos);
            }
            catch (Exception e)
            {
                return(null);
            }
            finally
            {
                DB.Desconectar();
            }
        }
Esempio n. 6
0
        ///////////////LOGICA GLOBAL////////////////////////
        /////////////////////////////////////////////////////
        /////////////////////////////////////////////////////
        /////////////////////////////////////////////////////
        private void Actualizar_Nota(eCiclo Ciclo_Selected, eCurso Curso_Selected, eCampo Campo_Selected) //Actualiza las notas de manera local, sin afectar a la base de datos
        {                                                                                                 //
         //Para el curso
            if (Campo_Selected.Nota != Campo_Selected.Nota_Nueva)
            {
                Ciclo_Selected.Promedio -= Curso_Selected.Promedio * Curso_Selected.Creditos / Ciclo_Selected.getPesoTotal();

                Curso_Selected.Promedio -= Campo_Selected.Nota * Campo_Selected.Peso / 100;

                Campo_Selected.Nota           = Campo_Selected.Nota_Nueva;
                Campo_Selected.Nota_Nueva     = 0;
                Curso_Selected.Promedio_Nuevo = Curso_Selected.Promedio + (Campo_Selected.Nota * Campo_Selected.Peso / 100);//El curso ya tiene su nuevo promedio
                Curso_Selected.Promedio       = Curso_Selected.Promedio_Nuevo;
                Curso_Selected.Promedio_Nuevo = 0;

                Ciclo_Selected.Promedio += Curso_Selected.Promedio * Curso_Selected.Creditos / Ciclo_Selected.getPesoTotal();
            }
        }
Esempio n. 7
0
        private void Button_RegistrarEva_RegistrarCiclo_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                string Campo  = ComboBox_NombreEva_RegistrarCiclo.Text;
                string Tipo_N = Campo.Substring(0, 2);
                int    Numero_N;
                try
                {
                    Numero_N = Convert.ToInt32(Campo.Substring(2, 1));
                }
                catch (Exception E) { Numero_N = 1; }
                string Descripcion_N = Campo.Substring(Campo.IndexOf('-') + 2);

                float Peso_N = Convert.ToSingle(TextBox_PesoEva_RegistrarCiclo.Text);

                //if(Peso_N > 0 && Peso_N < 100)//Comprobar si hay peso disponible para ir agregando, en vez de 100, que sea el espacio disponible
                if (Peso_N > 0 && Peso_N <= Curso_Controller.GetPorcentajePorCompletar(Curso_Seleccionado_RC))
                {
                    eCampo Campo_Nuevo = new eCampo()
                    {
                        Descripcion = Descripcion_N, Tipo = Tipo_N, Numero = Numero_N, Peso = Peso_N
                    };
                    Campo_Nuevo.Curso = Curso_Seleccionado_RC;

                    switch (MessageBox.Show(string.Format("Se va a registrar el campo {0} al curso {1}", Campo, Curso_Seleccionado_RC.ToString()), "Registro de Campo",
                                            MessageBoxButton.OKCancel, MessageBoxImage.Information, MessageBoxResult.OK))
                    {
                    case MessageBoxResult.OK:
                        string message;
                        if (Campo_Controller.Registrar_Campo(Campo_Nuevo, out message)) //Si se pudo registrar el curso
                        {
                            Curso_Seleccionado_RC.Campos.Add(Campo_Nuevo);              //Agrego el campo al curso seleccionado

                            DataGrid_Campos_RegistrarCiclo.ItemsSource = Curso_Seleccionado_RC.Campos;

                            TextBox_PesoEva_RegistrarCiclo.Clear();

                            int Numero_Campos_Registrados;
                            int Porcentaje_Campos_Registrados;

                            Curso_Controller.GetCamposRegistrados(Curso_Seleccionado_RC, out Numero_Campos_Registrados, out Porcentaje_Campos_Registrados);

                            TextBlock_EvasRegistradas_RegistrarCiclo.Text      = Numero_Campos_Registrados.ToString();
                            TextBlock_PorcentajeRegistrado_RegistrarCiclo.Text = Porcentaje_Campos_Registrados.ToString();

                            //Verifico si ya estan todos los campos registrados

                            if (Porcentaje_Campos_Registrados == 100)    //Si ya estan registrados todos los campos
                            {
                                ComboBox_NombreEva_RegistrarCiclo.IsEnabled  = false;
                                TextBox_PesoEva_RegistrarCiclo.IsEnabled     = false;
                                Button_RegistrarEva_RegistrarCiclo.IsEnabled = false;

                                MessageBox.Show("Este curso ya tiene todos sus campos registrados", "Curso Completo");
                            }
                            else if (Porcentaje_Campos_Registrados > 100)
                            {
                                //Mostrar mensaje de error y eliminar el ultimo campo registrado
                            }
                            else
                            {
                                ComboBox_NombreEva_RegistrarCiclo.IsEnabled  = true;
                                TextBox_PesoEva_RegistrarCiclo.IsEnabled     = true;
                                Button_RegistrarEva_RegistrarCiclo.IsEnabled = true;
                            }
                            MessageBox.Show(message);

                            /*if (isComplete_Ciclo(Ciclo_Seleccionado_RC))
                             * {
                             *  Button_RegistrarCurso_RegistrarCiclo.IsEnabled = false;
                             *  TextBox_NombreCurso_RegistrarCiclo.IsEnabled = false;
                             *  TextBox_CodigoCurso_RegistrarCiclo.IsEnabled = false;
                             *  TextBox_CreditosCurso_RegistrarCiclo.IsEnabled = false;
                             *  TextBox_EvaluacionesCurso_RegistrarCiclo.IsEnabled = false;
                             *  ComboBox_NumeroVeces_RegistrarCiclo.IsEnabled = false;
                             *
                             *  MessageBox.Show("Este ciclo ya tiene todos sus cursos registrados", "Ciclo Completo");
                             * }*/
                        }
                        else
                        {
                            MessageBox.Show(message);
                        }

                        break;

                    case MessageBoxResult.Cancel:
                        TextBox_PesoEva_RegistrarCiclo.Focus();
                        break;
                    }
                }
                else
                {
                    MessageBox.Show("Ingrese un peso correcto");
                    TextBox_PesoEva_RegistrarCiclo.Focus();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Esempio n. 8
0
 private void DataGrid_Evaluaciones_RegistrarNota_SelectionChanged(object sender, SelectionChangedEventArgs e)
 {
     ComboBox_Evaluaciones_RegistrarNota.SelectedItem = DataGrid_Evaluaciones_RegistrarNota.SelectedItem;
     Campo_Seleccionado_RN = ComboBox_Evaluaciones_RegistrarNota.SelectedItem as eCampo;
 }
Esempio n. 9
0
 private void DataGrid_Evaluaciones_VerInfo_SelectionChanged(object sender, SelectionChangedEventArgs e)
 {
     Campo_Seleccionado_VI = DataGrid_Evaluaciones_VerInfo.SelectedItem as eCampo;
 }
Esempio n. 10
0
 public bool Actualizar_Nota(eCampo Campo)
 {
     return(Campo_DB.Actualizar(Campo.Tipo, Campo.Numero, Campo.Curso.Codigo + "-0" + Campo.Curso.Vez, Campo.Nota));
 }