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); } }
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)); } }
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)); } }
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)); } }
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; } }
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(); }
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; } }