public eCiclo GetCiclo(string ID_Ciclo, out string message) //Lo recomendable seria obtener un solo ciclo, depende de la opcion escogida { //Correcto try { eCiclo aux = null; SqlConnection Conexion = DB.Conectar(); string SELECT = string.Format("SELECT * FROM Ciclo WHERE ID = '{0}'", ID_Ciclo); SqlCommand Comando = new SqlCommand(SELECT, Conexion); SqlDataReader Reader = Comando.ExecuteReader(); while (Reader.Read()) { aux = new eCiclo(); aux.Periodo = ID_Ciclo; aux.Promedio = Convert.ToSingle(Reader["Promedio"]); aux.Numero_Cursos = (int)Reader["Cantidad_Cursos"]; } Reader.Close(); message = "Correcto"; return(aux); } catch (Exception e) { message = e.Message; return(null); } finally { DB.Desconectar(); } }
public bool Actualizar_PromedioBeca(eCiclo obj, out string message) //Guardo en la base de datos el promedio para la beca { //Correcto try { SqlConnection Conexion = DB.Conectar(); string UPDATE = string.Format("UPDATE Ciclo Set Promedio_Beca = {0} where ID ='{1}'", obj.Promedio_Beca, obj.Periodo); SqlCommand Comando = new SqlCommand(UPDATE, Conexion); int rows = Comando.ExecuteNonQuery(); message = "Promedio de Beca registrado"; return(true); } catch (Exception e) { message = e.Message; return(false); } finally { DB.Desconectar(); } }
public bool Insertar(eCiclo obj, out string message) {//Correcto try { SqlConnection Conexion = DB.Conectar(); string INSERT = string.Format("Insert into Ciclo(ID,[Cantidad_Cursos],Promedio) Values('{0}',{1},{2})", obj.Periodo, obj.Numero_Cursos, obj.Promedio); SqlCommand Comando = new SqlCommand(INSERT, Conexion); Comando.ExecuteNonQuery(); message = string.Format("Ciclo {0} Registrado", obj.Periodo); return(true); } catch (Exception e) { message = e.Message; return(false); } finally { DB.Desconectar(); } }
public bool Registrar_Ciclo(eCiclo Ciclo, out string message) {//En Observacion //Por cuestiones de prueba, proceder a comentar la seccion del IF /*if (status) * { * nCurso Curso_N = new nCurso(); * //Registro los cursos * foreach (eCurso x in Ciclo.Cursos) * { * status= Curso_N.Registrar_Curso(x, out message); * } * }*/ return(Ciclo_DB.Insertar(Ciclo, out message)); //Registro los datos del ciclo }
public List <eCiclo> GetCiclos() {//Correcto try { List <eCiclo> Lista_Ciclos = new List <eCiclo>(); eCiclo aux = null; SqlConnection Conexion = DB.Conectar(); string SELECT = "SELECT * FROM Ciclo"; SqlCommand Comando = new SqlCommand(SELECT, Conexion); SqlDataReader Reader = Comando.ExecuteReader(); while (Reader.Read()) { aux = new eCiclo(); aux.Periodo = (string)Reader["ID"]; aux.Promedio = Convert.ToSingle(Reader["Promedio"]); aux.Numero_Cursos = (int)Reader["Cantidad_Cursos"]; try { aux.Promedio_Beca = Convert.ToSingle(Reader["Promedio_Beca"]); } catch (Exception ex) { aux.Promedio_Beca = 0; } Lista_Ciclos.Add(aux); } Reader.Close(); return(Lista_Ciclos); } catch (Exception e) { return(null); } finally { DB.Desconectar(); } }//Para Analytics
///////////////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(); } }
///////////////REGISTRAR NOTA//////////////////////// ///////////////////////////////////////////////////// ///////////////////////////////////////////////////// ///////////////////////////////////////////////////// private void ComboBox_Ciclo_RegistrarNota_SelectionChanged(object sender, SelectionChangedEventArgs e) { try { Ciclo_Seleccionado_RN = ComboBox_Ciclo_RegistrarNota.SelectedItem as eCiclo; TextBlock_Ciclo_RegistrarNota.Text = Ciclo_Seleccionado_RN.Periodo; TextBlock_PromedioCiclo_RegistrarNota.Text = Ciclo_Seleccionado_RN.Promedio.ToString("N2"); ComboBox_Curso_RegistrarNota.ItemsSource = Curso_Controller.GetCursos(Ciclo_Seleccionado_RN.Periodo); Ciclo_Seleccionado_RN.Cursos = ComboBox_Curso_RegistrarNota.ItemsSource as ObservableCollection <eCurso>; foreach (eCurso x in Ciclo_Seleccionado_RN.Cursos) { x.Campos = Campo_Controller.GetCampos_(x.Codigo + "-0" + x.Vez); } ComboBox_Curso_RegistrarNota.SelectedIndex = 0; } catch (Exception ex) { } }
private void ComboBox_Ciclos_RegistrarCiclo_SelectionChanged(object sender, SelectionChangedEventArgs e) { try { Ciclo_Seleccionado_RC = ComboBox_Ciclos_RegistrarCiclo.SelectedItem as eCiclo; TextBlock_Ciclo_RegistrarCiclo.Text = Ciclo_Seleccionado_RC.Periodo; TextBox_PromedioBeca_RegistrarCiclo.Text = Ciclo_Seleccionado_RC.Promedio_Beca.ToString(); TextBlock_CursosRegistrados_RegistrarCiclo.Text = Ciclo_Controller.GetCursosRegistrados(Ciclo_Seleccionado_RC.Periodo).ToString(); TextBlock_CursosPorRegistrar_RegistrarCiclo.Text = Ciclo_Seleccionado_RC.Numero_Cursos.ToString(); TextBlock_Ciclo2_RegistrarCiclo.Text = Ciclo_Seleccionado_RC.Periodo; //Agregar una variable booleana para determinar si aun se pueden registrar cursos o campos para bloquear los textbox respectivos //MessageBox.Show(isComplete_Ciclo(Ciclo_Seleccionado_RC).ToString()); Ciclo_Seleccionado_RC.Cursos = Curso_Controller.GetCursos(Ciclo_Seleccionado_RC.Periodo); ListBox_Cursos_RegistrarCiclo.ItemsSource = Ciclo_Seleccionado_RC.Cursos; ListBox_Cursos_RegistrarCiclo.SelectedIndex = 0; if (isComplete_Ciclo(Ciclo_Seleccionado_RC)) //si ya estan todos los cursos registrados { //Bloqueo la entradas 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//O si falta un curso por registrar { Button_RegistrarCurso_RegistrarCiclo.IsEnabled = true; TextBox_NombreCurso_RegistrarCiclo.IsEnabled = true; TextBox_CodigoCurso_RegistrarCiclo.IsEnabled = true; TextBox_CreditosCurso_RegistrarCiclo.IsEnabled = true; TextBox_EvaluacionesCurso_RegistrarCiclo.IsEnabled = true; ComboBox_NumeroVeces_RegistrarCiclo.IsEnabled = true; } } catch (Exception ex) { } }
///////////////VER INFORMACION/////////////////////// ///////////////////////////////////////////////////// ///////////////////////////////////////////////////// ///////////////////////////////////////////////////// private void ComboBox_Ciclo_VerInfo_SelectionChanged(object sender, SelectionChangedEventArgs e) { try { Ciclo_Seleccionado_VI = ComboBox_Ciclo_VerInfo.SelectedItem as eCiclo; //Obtengo los datos del ciclo seleccionado //Actualizo los datos del ciclo seleccionado TextBlock_Ciclo_VerInfo.Text = Ciclo_Seleccionado_VI.Periodo; TextBlock_PromedioCiclo_VerInfo.Text = Ciclo_Seleccionado_VI.Promedio.ToString(); TextBlock_PromedioBeca_VerInfo.Text = Ciclo_Seleccionado_VI.Promedio_Beca.ToString(); TextBlock_PromedioAcumulado_VerInfo.Text = Ciclo_Controller.getPromedio_Acumulado().ToString("N1"); Ciclo_Seleccionado_VI.Cursos = Curso_Controller.GetCursos(Ciclo_Seleccionado_VI.Periodo); //Relleno los campos de cada curso foreach (eCurso x in Ciclo_Seleccionado_VI.Cursos) { x.Campos = Campo_Controller.GetCampos_(x.Codigo + "-0" + x.Vez); } ListBox_Cursos_VerInfo.ItemsSource = Ciclo_Seleccionado_VI.Cursos;//Obtengo y muestro los cursos del ciclo escogido ListBox_Cursos_VerInfo.SelectedIndex = 0; //Muestra de promedio de ciclo anterior int indexCiclo = ComboBox_Ciclo_VerInfo.SelectedIndex; if (indexCiclo != 0) { TextBlock_PromedioCicloAnterior_VerInfo.Text = (ComboBox_Ciclo_VerInfo.ItemsSource as List <eCiclo>).ElementAt(indexCiclo - 1).Promedio.ToString("N2"); } else { TextBlock_PromedioCicloAnterior_VerInfo.Text = "-"; } } catch (Exception ex) { } }
public bool Actualizar_Nota(eCiclo Ciclo) { return(Ciclo_DB.Actualizar(Ciclo.Periodo, Ciclo.Promedio)); }
public bool Registrar_PromedioBeca(eCiclo Ciclo, out string message) { return(Ciclo_DB.Actualizar_PromedioBeca(Ciclo, out message)); }
private bool isComplete_Ciclo(eCiclo Ciclo_Selected) { return(Ciclo_Controller.GetCursosRegistrados(Ciclo_Selected.Periodo) == Ciclo_Selected.Numero_Cursos? true:false); }
///////////////REGISTRAR CICLO/////////////////////// ///////////////////////////////////////////////////// ///////////////////////////////////////////////////// ///////////////////////////////////////////////////// private void Button_RegistrarCiclo_RegistrarCiclo_Click(object sender, RoutedEventArgs e) { try { string Periodo_Ciclo_Nuevo = TextBox_Periodo_RegistrarCiclo.Text; int Numero_Cursos_Ciclo_Nuevo = Convert.ToInt32(TextBox_NumCursos_RegistrarCiclo.Text); if (isPeriod(Periodo_Ciclo_Nuevo))//Comprobar formato, clase Ciclo_Controller { if (Numero_Cursos_Ciclo_Nuevo > 0 && Numero_Cursos_Ciclo_Nuevo <= 10) { string message; eCiclo Ciclo_Nuevo = new eCiclo() { Periodo = Periodo_Ciclo_Nuevo, Numero_Cursos = Numero_Cursos_Ciclo_Nuevo }; //Creo el nuevo ciclo para registrar switch (MessageBox.Show(string.Format("Se va a registrar el ciclo {0} en el sistema", Ciclo_Nuevo.Periodo), "Registro de Ciclo", MessageBoxButton.OKCancel, MessageBoxImage.Information, MessageBoxResult.OK)) { case MessageBoxResult.OK: if (Ciclo_Controller.Registrar_Ciclo(Ciclo_Nuevo, out message)) //Si registro el ciclo de manera exitosa en la base de datos { ComboBox_Ciclos_RegistrarCiclo.ItemsSource = Ciclo_Controller.GetCiclos().OrderBy(x => x.Periodo); //Actualizo el combobox ComboBox_Ciclos_RegistrarCiclo.SelectedValue = Ciclo_Nuevo.Periodo; //Ciclo_Seleccionado_RC = ComboBox_Ciclos_RegistrarCiclo.SelectedItem as eCiclo; TextBox_Periodo_RegistrarCiclo.Clear(); TextBox_NumCursos_RegistrarCiclo.Clear(); TextBox_NombreCurso_RegistrarCiclo.Focus(); MessageBox.Show(message); } else { MessageBox.Show(message); } break; case MessageBoxResult.Cancel: TextBox_Periodo_RegistrarCiclo.Focus(); break; } } else { MessageBox.Show("Ingrese una cantidad correcta"); TextBox_NumCursos_RegistrarCiclo.Clear(); TextBox_NumCursos_RegistrarCiclo.Focus(); } } else { MessageBox.Show("Ingrese un periodo correcto"); TextBox_Periodo_RegistrarCiclo.Clear(); TextBox_Periodo_RegistrarCiclo.Focus(); } } catch (Exception ex) { MessageBox.Show(ex.Message); } }