public IRepositorio getRepositorio(RepoType repoType)
 {
     IRepositorio repo = null;
     switch (repoType) {
         case RepoType.ADMINISTRADOR:
             repo = new clsRepositorioAdministrador();
             break;
         case RepoType.ALUMNO:
             repo = new clsRepositorioAlumno();
             break;
         case RepoType.CURSO:
             repo = new clsRepositorioCurso();
             break;
         case RepoType.INSCRIPCION:
             repo = new clsRepositorioInscripcion();
             break;
         case RepoType.PROFESOR:
             repo = new clsRepositorioProfesor();
             break;
         case RepoType.CUOTA:
             repo = new clsRepositorioCuota();
             break;
         case RepoType.NOTA:
             repo = new clsRepositorioNota();
             break;
     }
     return repo;
 }
        private void frmFacturas_Load(object sender, EventArgs e)
        {
            repo = (clsRepositorioCuota)repoF.getRepositorio(RepoType.CUOTA);

            listCuota.AddRange(repo.Pagos_Por_Cursos());

            dgvFacturas.Columns.Add("IdCuota", "Nro de Inscripcion");
            dgvFacturas.Columns.Add("IdAlumno", "Alumno");
            dgvFacturas.Columns.Add("IdCurso", "Curso");
            dgvFacturas.Columns.Add("Fecha", "Fecha");
            dgvFacturas.Columns.Add("Monto", "Monto en $");

            foreach(clsCuotaFormateada cf in listCuota)
            {
                dgvFacturas.Rows.Add(cf.Id, cf.IdAlumno, cf.IdCurso, cf.Fecha, cf.Precio);
            }
        }
        private void Procedimiento_sin_campos(DateTime Fecha_Inicio,DateTime Fecha_Fin)
        {
            List<IEntidad> Resultado = new List<IEntidad>();

            switch (seleccion)
            {
                case IngresosPor.Todo:
                    clsRepositorioCuota consultador = new clsRepositorioCuota();
                    Resultado = consultador.Lista_Formateada(Fecha_Inicio, Fecha_Fin);
                    dgvDatos.Rows.Clear();
                    double result = 0;
                    foreach (clsCuotaFormateada temp in Resultado)
                    {
                        dgvDatos.Rows.Add(temp.IdCurso, temp.IdAlumno, temp.Fecha,"$ "+ temp.Precio.ToString());
                        result += temp.Precio;
                    }
                    lblVariableTotal.Text = "$" + result.ToString();
                    lblVariableTotal.ForeColor = Color.Red;
                    break;
                case IngresosPor.Cursos:
                    clsRepositorioCurso consultador2 = new clsRepositorioCurso();
                    Resultado = consultador2.Cursos_Formateados(Fecha_Inicio,Fecha_Fin);
                    dgvDatos.Rows.Clear();
                    double result2 = 0;
                    foreach (clsCursoFormateado temp in Resultado)
                    {
                        dgvDatos.Rows.Add(temp.Nombre, temp.FechaInicio, temp.FechaFin, temp.Estado, "$ " + temp.Recaudado.ToString(), "$ " + temp.Esperado.ToString(), temp.Porcentaje_pagado.ToString() + " %");
                        result2 += temp.Recaudado;
                    }
                    lblVariableTotal.Text = "$" + result2.ToString();
                    lblVariableTotal.ForeColor = Color.Red;
                    break;
                case IngresosPor.Alumno:
                    clsRepositorioAlumno consultador3 = new clsRepositorioAlumno();
                    Resultado = consultador3.Alumnos_Formateados(Fecha_Inicio, Fecha_Fin);
                    dgvDatos.Rows.Clear();
                    double result3 = 0;
                    foreach (clsAlumnoFormateado temp in Resultado)
                    {
                        dgvDatos.Rows.Add(temp.Dni,temp.Nombre,temp.Apellido,temp.Estado,"$ " + temp.Pagado.ToString(),"$ " + temp.Esperado,temp.Porcentaje + " %");
                        result3 += temp.Pagado;
                    }
                    lblVariableTotal.Text = "$" + result3.ToString();
                    lblVariableTotal.ForeColor = Color.Red;
                    ; break;
            }
            this.Chart(Resultado);
        }
 private void frmAlumnosMorosos_Load(object sender, EventArgs e)
 {
     Alumno = new clsAlumnoFormateado();
     consultador = new clsRepositorioCuota();
     this.ActualizarGrillaAlumnos();
     rdNombre.Checked = true;
 }
        private void btnContinuar_Click(object sender, EventArgs e)
        {
            try
            {
                Cuota = new clsCuota();
                if (Alumno.Id == -1)
                {
                    MessageBox.Show("El Alumno es null");
                }
                if (Curso.Id == -1)
                {
                    MessageBox.Show("El curso tambien lo rompiste");
                }
                Cuota.IdAlumno = Alumno.Id;
                Cuota.IdCurso = Curso.Id;
                Cuota.Fecha = DateTime.Today;
                clsRepositorioCuota consultador = new clsRepositorioCuota();
                consultador.Agregar(Cuota);
                DialogResult Recibo = MessageBox.Show("¿Desea imprimir el recibo de la operacion?", "¡Exito!", MessageBoxButtons.YesNo);
                if (Recibo == DialogResult.Yes)
                {
                    crReciboCobroMatricula Comprobante = new crReciboCobroMatricula();
                    //Comprobante.SetParameterValue("NombreAlumno", Alumno.Nombre);
                    //Comprobante.SetParameterValue("nroPago", Cuota.Id);

                    DataSetReportes reporte = new DataSetReportes();
                    DataTable Datos = reporte.Tables["ReciboMatricula"];

                    Datos.Rows.Add(Curso.Nombre, Curso.Precio, Cuota.Fecha);

                    Comprobante.SetDataSource(Datos);

                    frmEmisionRecibo EmisionRecibo = new frmEmisionRecibo(Comprobante,Alumno.Nombre,Cuota.Id);

                    EmisionRecibo.Show();

                }
                DialogResult continuar = MessageBox.Show("Cuota Registrada correctamente, ¿desea registrar otra?", "¡Exito!", MessageBoxButtons.YesNo);
                if (continuar == System.Windows.Forms.DialogResult.Yes)
                {
                    dgvEtapaUno.Rows.Clear();
                    dgvEtapaDos.Rows.Clear();
                    this.ActualizarGrillaAlumnos();
                }
                else
                {
                    this.Close();
                }
            }
            catch (Exception a)
            {
                MessageBox.Show("Ha ocurrido el siguiente error: " + a.Message);
            }
        }