Ejemplo n.º 1
0
        private void btnNuevaMatricula_Click(object sender, EventArgs e)
        {
            try
            {
            }
            catch (Exception ex)
            {
                string folderName = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\\Errores_" + Assembly.GetExecutingAssembly().GetName().Name + "_V_" + Assembly.GetExecutingAssembly().GetName().Version.ToString();
                string fileName   = "Exeptions_" + Name + ".txt";

                Validation.FormManager frmManager = new Validation.FormManager();
                frmManager.writeException(folderName, fileName, ex, "Ha ocurrido un error al intentar cargar la información de cursos de este control");
                MessageBox.Show("Ha ocurrido un error al intentar cargar la información cursos de este control, por favor comuniquese con el desarrollador al correo [email protected]", "Error fatal", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            List <Curso> cursos = CursoDAL.getCursosByIdSucursal(Inicio.CurrentSucursal.Id, Inicio.CurrentYear);

            if (cursos.Count > 0)
            {
                FrmMatricula frmmatricula = new FrmMatricula();
                frmmatricula.opc = "newObject";
                frmmatricula.ShowDialog();
                FillDgv(rdbParametros.Checked ? MatriculaDAL.searchMatriculasParametro(Validation.Validation.Val_Injection(txtBuscar.Text), Inicio.CurrentYear.Id, cbxCursos.Items.Count == 0 ? 0 : (cbxCursos.SelectedItem as Curso).Id) : MatriculaDAL.searchMatriculasNoParametro(Validation.Validation.Val_Injection(txtBuscar.Text), Inicio.CurrentSucursal.Id, 100));
            }
            else
            {
                MessageBox.Show("No hay cursos registrados en el año seleccionado, para matricular estudiantes primero debe registrar un curso.", "Alerta de validación", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
Ejemplo n.º 2
0
 private void cbxCursos_SelectedIndexChanged(object sender, EventArgs e)
 {
     if (cbxCursos.Enabled)
     {
         FillDgv(rdbParametros.Checked ? MatriculaDAL.searchMatriculasParametro(Validation.Validation.Val_Injection(txtBuscar.Text), Inicio.CurrentYear.Id, cbxCursos.Items.Count == 0 ? 0 : (cbxCursos.SelectedItem as Curso).Id) : MatriculaDAL.searchMatriculasNoParametro(Validation.Validation.Val_Injection(txtBuscar.Text), Inicio.CurrentSucursal.Id, 100));
     }
 }
Ejemplo n.º 3
0
 private void cbxYear_SelectedIndexChanged(object sender, EventArgs e)
 {
     if (cbxYear.Enabled)
     {
         cbxCursos.Enabled       = false;
         cbxCursos.DataSource    = CursoDAL.getCursosByIdSucursal(Inicio.CurrentSucursal.Id, cbxYear.SelectedItem as Year);
         cbxCursos.ValueMember   = "Id";
         cbxCursos.DisplayMember = "Nombre";
         cbxCursos.Enabled       = true;
         FillDgv(rdbParametros.Checked ? MatriculaDAL.searchMatriculasParametro(Validation.Validation.Val_Injection(txtBuscar.Text), Inicio.CurrentYear.Id, cbxCursos.Items.Count == 0 ? 0 : (cbxCursos.SelectedItem as Curso).Id) : MatriculaDAL.searchMatriculasNoParametro(Validation.Validation.Val_Injection(txtBuscar.Text), Inicio.CurrentSucursal.Id, 100));
     }
 }
Ejemplo n.º 4
0
 private void dgvMatriculas_DoubleClick(object sender, EventArgs e)
 {
     if (dgvMatriculas.CurrentRow != null)
     {
         FrmMatricula frmmatricula = new FrmMatricula();
         frmmatricula.opc           = "updObject";
         frmmatricula.CurrentObject = MatriculaDAL.getMatriculaById((Int64)dgvMatriculas.CurrentRow.Cells[0].Value);
         frmmatricula.EditingObject = MatriculaDAL.getMatriculaById((Int64)dgvMatriculas.CurrentRow.Cells[0].Value);
         frmmatricula.ShowDialog();
         FillDgv(rdbParametros.Checked ? MatriculaDAL.searchMatriculasParametro(Validation.Validation.Val_Injection(txtBuscar.Text), Inicio.CurrentYear.Id, cbxCursos.Items.Count == 0 ? 0 : (cbxCursos.SelectedItem as Curso).Id) : MatriculaDAL.searchMatriculasNoParametro(Validation.Validation.Val_Injection(txtBuscar.Text), Inicio.CurrentSucursal.Id, 100));
     }
 }
Ejemplo n.º 5
0
        private void lknSync_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
        {
            try
            {
                if (MessageBox.Show("¿Esta seguro que desea sincronizar las cuotas para este curso seleccionado? Si lo hace se crearan o eliminaran cuotas a partir de la fecha de matricula de cada estudiante si llegase a faltar algun registro.", "Confirmación", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    if (cbxCursos.Items.Count > 0 && cbxYear.Items.Count > 0)
                    {
                        dgvMatriculas.Enabled = false;
                        Cursor = Cursors.WaitCursor;
                        if (CuotaDAL.syncCuotas((cbxCursos.SelectedItem as Curso).Id, Inicio.CurrentUser.Id))
                        {
                            MessageBox.Show("Las cuotas del curso seleccionado han sido sincronizadas exitosamente!!!.", "Operación realizada", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            FillDgv(rdbParametros.Checked ? MatriculaDAL.searchMatriculasParametro(Validation.Validation.Val_Injection(txtBuscar.Text), cbxYear.Items.Count == 0 ? 0 : (Int64)cbxYear.SelectedValue, cbxCursos.Items.Count == 0 ? 0 : (Int64)cbxCursos.SelectedValue) : MatriculaDAL.searchMatriculasNoParametro(Validation.Validation.Val_Injection(txtBuscar.Text), Inicio.CurrentSucursal.Id, 100));
                            tmrTaskDgv.Stop();
                        }
                        else
                        {
                            MessageBox.Show("Ocurrrió un error inesperado al intentar sincronizar las cuotas del curso seleccionado.", "Operación erronea", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                        dgvMatriculas.Enabled = true;

                        Cursor = Cursors.Arrow;
                    }
                }
            }
            catch (Exception ex)
            {
                string folderName = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\\Errores_" + Assembly.GetExecutingAssembly().GetName().Name + "_V_" + Assembly.GetExecutingAssembly().GetName().Version.ToString();
                string fileName   = "Exeptions_" + Name + ".txt";
                Validation.FormManager frmManager = new Validation.FormManager();
                frmManager.writeException(folderName, fileName, ex, "Ocurrio un error inesperado al intentar registrar el egreso");
                MessageBox.Show("Ocurrio un error inesperado al intentar sincronizar las cuotas, por favor cierre el formulario y vuelva a intentarlo. Si el problema persiste contacte con el desarrollador al correo " + Properties.Settings.Default.developerEmail, "Registro interrumpido", MessageBoxButtons.OK, MessageBoxIcon.Error);
                dgvMatriculas.Enabled = true;
                Cursor = Cursors.Arrow;
            }
        }
Ejemplo n.º 6
0
 private void tmrTaskDgv_Tick(object sender, EventArgs e)
 {
     FillDgv(rdbParametros.Checked ? MatriculaDAL.searchMatriculasParametro(Validation.Validation.Val_Injection(txtBuscar.Text), cbxYear.Items.Count == 0 ? 0 : (Int64)cbxYear.SelectedValue, cbxCursos.Items.Count == 0 ? 0 : (Int64)cbxCursos.SelectedValue) : MatriculaDAL.searchMatriculasNoParametro(Validation.Validation.Val_Injection(txtBuscar.Text), Inicio.CurrentSucursal.Id, 100));
     tmrTaskDgv.Stop();
 }
Ejemplo n.º 7
0
        public void GenerarRepMorosos(AxAcroPDFLib.AxAcroPDF VisorPDF, Int64 IdYear, Int64 IdCurso)
        {
            try
            {
                EliminarTemporal();
                VisorPDF.src = "";
                getDatos();

                Document pdf1 = new Document(PageSize.LETTER, 36.6929f, 36.6929f, 36.6929f, 36.6929f);

                string title = "Reporte de alumnos con mora" + "_" + DateTime.Now.ToString("yyyy_MM_dd_mm_hh_ss") + ".pdf";

                RutaArchivo = Path.GetTempPath() + "/" + title;

                PdfWriter       wri         = PdfWriter.GetInstance(pdf1, new FileStream(RutaArchivo, FileMode.Create));
                PageEventHelper eventHelper = new PageEventHelper();
                eventHelper.Reporte = 1;
                wri.PageEvent       = eventHelper;

                iTextSharp.text.Font fontEncabezado  = FontFactory.GetFont("Calibri", 11, iTextSharp.text.Font.BOLD, BaseColor.BLACK);
                iTextSharp.text.Font fontCuerpoSmall = FontFactory.GetFont("Calibri", 8, iTextSharp.text.Font.NORMAL, BaseColor.BLACK);

                iTextSharp.text.Font fontHeaderTabla      = FontFactory.GetFont("Calibri", 10, iTextSharp.text.Font.BOLD, BaseColor.BLACK);
                iTextSharp.text.Font fontHeaderTablaSmall = FontFactory.GetFont("Calibri", 8, iTextSharp.text.Font.BOLD, BaseColor.BLACK);
                iTextSharp.text.Font fontMotivo           = FontFactory.GetFont("Calibri", 8, iTextSharp.text.Font.NORMAL, BaseColor.BLACK);

                pdf1.Open();
                pdf1.AddTitle(title);

                DocActual = pdf1;


                //encabezado
                float[] medCellsEncabezado = new float[] { 150.0394f, 400.0394f, 150.0394f };

                PdfPTable tblEcabezado = new PdfPTable(3);

                tblEcabezado.WidthPercentage = 100;
                tblEcabezado.SetWidths(medCellsEncabezado);
                iTextSharp.text.Image imagenLogo = iTextSharp.text.Image.GetInstance(Properties.Resources.goll_Logo_png, BaseColor.WHITE);
                imagenLogo.BorderWidth = 0;
                imagenLogo.Alignment   = Element.ALIGN_LEFT;
                float percentage = 0.0f;
                percentage = 150 / imagenLogo.Width;
                imagenLogo.ScalePercent(percentage * 40);

                PdfPCell cImagenLogo = new PdfPCell(imagenLogo);
                cImagenLogo.BorderWidth = 0;
                tblEcabezado.AddCell(cImagenLogo);

                Paragraph myheader1 = new Paragraph("\n\nACADEMIA DE INGLES Y COMPUTACIÓN GOLL", fontEncabezado);
                Paragraph myheader2 = new Paragraph("\nREPORTE DE ALUMNOS CON PAGOS PENDIENTES", fontEncabezado);
                Paragraph myheader3 = new Paragraph("\n" + CursoDAL.getCursoById(IdCurso).Nombre.ToUpper() + " " + Convert.ToDateTime(YearDAL.getYearById(IdYear).Desde).ToString("yyyy") + "\n\n", fontEncabezado);

                myheader1.Alignment = Element.ALIGN_CENTER;
                myheader2.Alignment = Element.ALIGN_CENTER;
                myheader3.Alignment = Element.ALIGN_CENTER;

                myheader1.SetLeading(0, 0.8f);
                myheader2.SetLeading(0, 0.8f);
                myheader3.SetLeading(0, 0.8f);

                PdfPCell clEncabezado = new PdfPCell(myheader1);
                clEncabezado.AddElement(myheader1);
                clEncabezado.AddElement(myheader2);
                clEncabezado.AddElement(myheader3);

                clEncabezado.BorderWidth = 0;

                tblEcabezado.AddCell(clEncabezado);

                iTextSharp.text.Image imagenSV = iTextSharp.text.Image.GetInstance(Properties.Resources.Goll_Logo, BaseColor.WHITE);
                imagenSV.BorderWidth = 0;
                imagenSV.Alignment   = Element.ALIGN_TOP;
                float percentageSV = 0.0f;
                percentageSV = 150 / imagenSV.Width;
                imagenSV.ScalePercent(percentageSV * 70);

                PdfPCell cImagenSV = new PdfPCell(imagenSV);
                cImagenSV.BorderWidth = 0;
                tblEcabezado.AddCell(cImagenSV);
                DocActual.Add(tblEcabezado);
                //header de tabla

                PdfPTable tabla = new PdfPTable(3);
                PdfPCell  celda = new PdfPCell();
                celda.HorizontalAlignment = 1;
                celda.VerticalAlignment   = 5;
                tabla.WidthPercentage     = 100;

                celda.BackgroundColor = BaseColor.LIGHT_GRAY;

                List <Matricula> matriculas = MatriculaDAL.searchMatriculasParametro("", IdYear, IdCurso);
                DateTime         serverDate = YearDAL.getServerDate();

                foreach (Matricula matricula in matriculas)
                {
                    float[] medColumnas = new float[] { 180f, 180f, 80f, 140f };

                    tabla = new PdfPTable(4);
                    tabla.WidthPercentage = 100;
                    tabla.SetWidths(medColumnas);

                    tabla.AddCell(GetCellHeaderTable("Alumno", 1, 1, fontHeaderTabla));
                    tabla.AddCell(GetCellHeaderTable("Dirección", 1, 1, fontHeaderTabla));
                    tabla.AddCell(GetCellHeaderTable("Teléfono", 1, 1, fontHeaderTabla));
                    tabla.AddCell(GetCellHeaderTable("Total Pendiente", 1, 1, fontHeaderTablaSmall));
                    List <Cuota> atrasadas = matricula.Cuotas.Where(a => (Convert.ToDateTime(a.FhRegistro) < serverDate.AddDays(Properties.Settings.Default.DaysMora)) && a.Total < a.Precio).ToList();
                    if (atrasadas.Count > 0)
                    {
                        tabla.AddCell(GetCellBodyTable("" + matricula.Estudiante.Persona.Nombre.ToUpper(), fontCuerpoSmall));
                        tabla.AddCell(GetCellBodyTable("" + matricula.Estudiante.Persona.Direccion.ToUpper(), fontCuerpoSmall));
                        tabla.AddCell(GetCellBodyTable("" + matricula.Estudiante.Telefono.ToUpper(), fontCuerpoSmall));
                        string  pendiente    = "";
                        string  totales      = "";
                        decimal mensualiades = 0;
                        foreach (Cuota cuota in atrasadas)
                        {
                            pendiente    += Convert.ToDateTime(cuota.FhRegistro).ToString("MMMM", new CultureInfo("ES-es")) + " $" + Decimal.Round((cuota.Precio - cuota.Total), 2) + "\n";
                            mensualiades += Decimal.Round((cuota.Precio - cuota.Total));
                        }
                        totales += "TOTAL EN CUOTAS $" + mensualiades;
                        totales += "        TOTAL EN MORA $" + Decimal.Round(Properties.Settings.Default.Mora * atrasadas.Count, 2);
                        totales += "        TOTAL A PAGAR $" + Decimal.Round((mensualiades + Properties.Settings.Default.Mora * atrasadas.Count), 2);

                        tabla.AddCell(GetCellBodyTable(pendiente.ToUpper(), fontMotivo));
                        tabla.AddCell(GetCellBodyTable(totales.ToUpper(), 4, 1, fontHeaderTabla));
                        DocActual.Add(tabla);
                        DocActual.Add(new Paragraph("\n", fontEncabezado));
                        //  DocActual.Add(new Chunk("\n"));
                    }
                }
                pdf1.Close();
                DocActual.Close();
                VisorPDF.src = RutaArchivo;
                VisorPDF.setZoom(95);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }