Esempio n. 1
0
        public static List <Curso> listaCursos()
        {
            List <Curso> cursos = new List <Curso>();
            Curso        cursoX;
            Conexion     con = new Conexion();

            con.Conectar();

            try
            {
                string sql = "select * from Curso";
                var    cmd = new MySqlCommand(sql, con.cn);
                var    dr  = cmd.ExecuteReader();

                while (dr.Read())
                {
                    Empleado docente = EmpleadoABM.cargarEmpleadoByID(int.Parse(dr["idDocente"].ToString()));

                    switch (dr["Modalidad"].ToString())
                    {
                    case "Presencial":
                        cursoX = new Presencial(
                            (Turno)Enum.Parse(typeof(Turno), dr.GetString("turno")),
                            docente,
                            dr["tema"].ToString(),
                            Double.Parse(dr["cuota"].ToString()),
                            Double.Parse(dr["inscripcion"].ToString()));
                        break;

                    case "SemiPresencial":
                        cursoX = new SemiPresencial(
                            (Turno)Enum.Parse(typeof(Turno), dr.GetString("turno")),
                            docente,
                            dr["tema"].ToString(),
                            Double.Parse(dr["cuota"].ToString()),
                            Double.Parse(dr["inscripcion"].ToString()));
                        break;

                    case "NoPresencial":
                        cursoX = new NoPresencial(
                            (Turno)Enum.Parse(typeof(Turno), dr.GetString("turno")),
                            docente,
                            dr["tema"].ToString(),
                            Double.Parse(dr["cuota"].ToString()),
                            Double.Parse(dr["inscripcion"].ToString()));
                        break;

                    default:
                        cursoX = null;
                        break;
                    }

                    cursos.Add(cursoX);
                }
            }
            catch (Exception)
            {
                // throw;
            }

            con.Desconectar();
            return(cursos);
        }
        //---------------------------CARGAR DATOS---------------------------//


        //---------------------------AGREGAR CURSO---------------------------//
        private void btnCurso_Click(object sender, RoutedEventArgs e)
        {
            //Control de campos vacios

            //Cambio de colores (Opcional)
            if (txbTema.Text == "")
            {
                txbTema.BorderBrush = incorrecto;
            }
            if (dtpTurno.Text == "")
            {
                txbTema.BorderBrush = incorrecto;
            }
            if (txbCuota.Text == "")
            {
                txbCuota.BorderBrush = incorrecto;
            }
            if (txbInscripcion.Text == "")
            {
                txbInscripcion.BorderBrush = incorrecto;
            }
            if (cboTipo.Text == "")
            {
                cboTipo.BorderBrush = incorrecto;
            }

            if (txbTema.Text == "" || dtpTurno.Text == "" || txbCuota.Text == "" || txbInscripcion.Text == "" || cboTipo.Text == "")
            {
                lblErrorCursos.Visibility = Visibility.Visible;
                return;
            }
            else
            {
                //Cambio de colores (Opcional)
                lblErrorCursos.Visibility  = Visibility.Collapsed;
                txbTema.BorderBrush        = correcto;
                txbTema.BorderBrush        = correcto;
                txbCuota.BorderBrush       = correcto;
                txbInscripcion.BorderBrush = correcto;
                cboTipo.BorderBrush        = correcto;
            }

            //Declaracion de variables para tomar el contenido del formulario
            string   tema        = txbTema.Text;
            DateTime turno       = dtpTurno.SelectedDate.Value;
            double   cuota       = Convert.ToDouble(txbCuota.Text);
            double   inscripcion = Convert.ToDouble(txbInscripcion.Text);
            string   tipo        = cboTipo.Text;


            //Creo nuevo curso segun el tipo y cargo los valores tomados
            Curso nuevoCurso;

            switch (tipo)
            {
            case "Presencial":
                nuevoCurso = new Presencial(turno, tema, cuota, inscripcion);
                break;

            case "Semipresencial":
                nuevoCurso = new SemiPresencial(turno, tema, cuota, inscripcion);
                break;

            case "No presencial":
                nuevoCurso = new NoPresencial(turno, tema, cuota, inscripcion);
                break;

            default:
                nuevoCurso = new Presencial(turno, tema, cuota, inscripcion);
                break;
            }
            Cursos.Add(nuevoCurso);
            lbxCursos.Items.Refresh();
        }