private void changeDets(Producto producto) { switch (opc) { case "Mensualidad": lblPrecio.Text = "$" + producto.Precio; Cuota cuota = CuotaDAL.getCuotaById((Int64)dgvProductos.CurrentRow.Cells[0].Value); txtAporte.Text = (cuota.Precio - cuota.Total).ToString(); break; case "Cancelacion": if (dgvProductos.CurrentRow != null) { decimal totaldebe = DetFacturaDAL.getTotalDebeReserva((Int64)dgvProductos.CurrentRow.Cells[0].Value, IdPersona); lblPrecio.Text = "$" + producto.Precio.ToString() + " - Pendiente $" + Decimal.Round(totaldebe, 2); txtAporte.Text = Decimal.Round(totaldebe, 2).ToString(); txtDescuento.Text = "0.00"; } break; case "Contado": lblPrecio.Text = "$" + producto.Precio; txtAporte.Text = (producto.Precio).ToString(); break; default: break; } }
private void txtAporte_Leave(object sender, EventArgs e) { txtAporte.Text = txtAporte.Text == "" || txtAporte.Text == "." || txtAporte.Text == "-0" ? "0.00" : txtAporte.Text; if (Validation.Validation.Val_DecimalFormat(txtAporte.Text)) { if (dgvProductos.CurrentRow != null) { switch (opc) { case "Mensualidad": Cuota cuota = CuotaDAL.getCuotaById((Int64)dgvProductos.CurrentRow.Cells[0].Value); if (Convert.ToDecimal(txtAporte.Text) > (cuota.Precio - cuota.Total)) { txtAporte.Text = (cuota.Precio - cuota.Total).ToString(); } if (Convert.ToDecimal(txtAporte.Text) < 0) { txtAporte.Text = "0.00"; } break; case "Cancelacion": decimal totaldebe = DetFacturaDAL.getTotalDebeReserva((Int64)dgvProductos.CurrentRow.Cells[0].Value, IdPersona); if (Convert.ToDecimal(txtAporte.Text) < 0) { txtAporte.Text = "0.00"; } if (Convert.ToDecimal(txtAporte.Text) > totaldebe) { txtAporte.Text = Decimal.Round(totaldebe, 2).ToString(); } break; case "Contado": Producto producto = ProductoDAL.getProductoById((Int64)dgvProductos.CurrentRow.Cells[0].Value); txtAporte.Text = Convert.ToDecimal(txtAporte.Text) > producto.Precio ? (producto.Precio).ToString() : txtAporte.Text;; if (Convert.ToDecimal(txtAporte.Text) < 0) { txtAporte.Text = "0.00"; } break; default: break; } } valAporte.BackColor = Color.FromArgb(0, 100, 182); errAporte.Clear(); } else { errAporte.SetError(txtAporte, "El aporte no tiene un formato adecuado,\npor favor ingrese un numero entero o decimal."); valAporte.BackColor = Color.Red; } }
private void frmBuscarProducto_Load(object sender, EventArgs e) { try { switch (opc) { case "Mensualidad": checkBecado.Checked = Matricula.Becado == 1; Curso curso = CursoDAL.getCursoById(Matricula.IdCurso); FillDgv_Mensualidades(CuotaDAL.getCuotasByIdMatricula(Matricula.Id, 1000)); lblEstudiante.Text = Matricula.Estudiante.Persona.Nombre; lblCurso.Text = curso.Nombre; lblDocente.Text = curso.Contrato.Empleado.Persona.Nombre; btnRegistrarProducto.Visible = false; btnRegistrarProducto.Enabled = false; lblTituloDgv.Text = "Mensualidades pendientes"; break; case "Cancelacion": pnlParamMensualidad.Visible = false; pnlParamMensualidad.Enabled = false; checkBecado.Visible = false; FillDgv_Reservaciones(DetFacturaDAL.getDetsfacturaByIdPersona(IdPersona)); break; case "Contado": pnlParamMensualidad.Visible = false; pnlParamMensualidad.Enabled = false; checkBecado.Visible = false; FillDgv_Productos(ProductoDAL.getProductos(1000)); if (dgvProductos.CurrentRow != null) { Producto producto = ProductoDAL.getProductoById((Int64)dgvProductos.CurrentRow.Cells[0].Value); lblPrecio.Text = "$" + producto.Precio; txtAporte.Text = (producto.Precio).ToString(); } break; default: break; } ready = true; } 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 este control"); MessageBox.Show("Ha ocurrido un error al intentar cargar la información de este control, por favor comuniquese con el desarrollador al correo " + Properties.Settings.Default.developerEmail, "Error fatal", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void FillDgv_Reservaciones(List <Detfactura> lista) { try { dgvProductos.Rows.Clear(); foreach (Detfactura detfactura in lista) { dgvProductos.Rows.Add(detfactura.Id, "($" + DetFacturaDAL.getTotalDebeReserva(detfactura.Id, IdPersona) + ") " + detfactura.Producto.Nombre); } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
private void dgvProductos_CurrentCellChanged(object sender, EventArgs e) { if (dgvProductos.CurrentRow != null) { switch (opc) { case "Mensualidad": changeDets(ProductoDAL.getProductoMensualidad()); break; case "Cancelacion": changeDets(ProductoDAL.getProductoById(DetFacturaDAL.getDetfacturaById((Int64)dgvProductos.CurrentRow.Cells[0].Value).IdProducto)); break; case "Contado": changeDets(ProductoDAL.getProductoById((Int64)dgvProductos.CurrentRow.Cells[0].Value)); break; default: break; } } }
private void btnCancelacion_Click(object sender, EventArgs e) { try { if (EditingObject.IdPersona > 0) { frmBuscarProducto buscarproducto = new frmBuscarProducto(); buscarproducto.opc = "Cancelacion"; buscarproducto.IdPersona = EditingObject.IdPersona; buscarproducto.ShowDialog(); if (buscarproducto.currentDetFactura != null) { if (EditingObject.DetsFactura.Where(a => a.RefNFactura == buscarproducto.currentDetFactura.RefNFactura).SingleOrDefault() != null) { if (MessageBox.Show("Ya existe una cancelación para este producto o servicio y no se puede duplicar el detalle. ¿Desea hacer un solo detalle fusionando los datos?", "Confirmar", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { decimal totaldebe = DetFacturaDAL.getTotalDebeReserva(buscarproducto.currentDetFactura.Id, EditingObject.IdPersona); if (EditingObject.DetsFactura.Where(a => a.RefNFactura == buscarproducto.currentDetFactura.RefNFactura).SingleOrDefault().Total + buscarproducto.currentDetFactura.Total > totaldebe) { EditingObject.DetsFactura.Where(a => a.RefNFactura == buscarproducto.currentDetFactura.RefNFactura).SingleOrDefault().Total = totaldebe; } else { EditingObject.DetsFactura.Where(a => a.RefNFactura == buscarproducto.currentDetFactura.RefNFactura).SingleOrDefault().Total += buscarproducto.currentDetFactura.Total; } if (EditingObject.DetsFactura.Where(a => a.RefNFactura == buscarproducto.currentDetFactura.RefNFactura).SingleOrDefault().Descuento + buscarproducto.currentDetFactura.Descuento > totaldebe) { EditingObject.DetsFactura.Where(a => a.RefNFactura == buscarproducto.currentDetFactura.RefNFactura).SingleOrDefault().Descuento = totaldebe; } else { EditingObject.DetsFactura.Where(a => a.RefNFactura == buscarproducto.currentDetFactura.RefNFactura).SingleOrDefault().Descuento += buscarproducto.currentDetFactura.Descuento; } for (int i = 0; i < dgvCursos.Rows.Count; i++) { dgvCursos.Rows[i].Cells["descuento"].Value = (Int64)dgvCursos.Rows[i].Cells[0].Value == EditingObject.DetsFactura.Where(a => a.RefNFactura == buscarproducto.currentDetFactura.RefNFactura).SingleOrDefault().Id ? EditingObject.DetsFactura.Where(a => a.RefNFactura == buscarproducto.currentDetFactura.RefNFactura).SingleOrDefault().Descuento.ToString() : dgvCursos.Rows[i].Cells["descuento"].Value.ToString(); dgvCursos.Rows[i].Cells["subtotal"].Value = (Int64)dgvCursos.Rows[i].Cells[0].Value == EditingObject.DetsFactura.Where(a => a.RefNFactura == buscarproducto.currentDetFactura.RefNFactura).SingleOrDefault().Id ? EditingObject.DetsFactura.Where(a => a.RefNFactura == buscarproducto.currentDetFactura.RefNFactura).SingleOrDefault().Total.ToString() : dgvCursos.Rows[i].Cells["subtotal"].Value.ToString(); } CalucularTotales(); } } else { EditingObject.DetsFactura.Add(buscarproducto.currentDetFactura); dgvCursos.Rows.Add( buscarproducto.currentDetFactura.Id, buscarproducto.currentDetFactura.Producto.Nombre, "Cancelación", buscarproducto.currentDetFactura.Producto.Precio, buscarproducto.currentDetFactura.Descuento, buscarproducto.currentDetFactura.Total, buscarproducto.currentDetFactura.IdProducto); CalucularTotales(); } } } } 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 la cuenta pendiente en este control"); MessageBox.Show("Ha ocurrido un error al intentar cargar la información de la cuenta pendiente en este control, por favor comuniquese con el desarrollador al correo " + Properties.Settings.Default.developerEmail, "Error fatal", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void btnAceptar_Click(object sender, EventArgs e) { try { if (dgvProductos.CurrentRow != null && Val_NewObject()) { switch (opc) { case "Mensualidad": if (dgvProductos.CurrentRow != null) { currentDetFactura = new Detfactura( 0, "Mensualidad", Convert.ToDecimal(txtAporte.Text), Convert.ToDecimal(txtDescuento.Text), "M", null, 0, ProductoDAL.getProductoMensualidad().Id, ProductoDAL.getProductoMensualidad(), new Matricdetfac( 0, 0, (Int64)dgvProductos.CurrentRow.Cells[0].Value) ); this.Close(); } break; case "Cancelacion": if (dgvProductos.CurrentRow != null) { currentDetFactura = new Detfactura( (Int64)dgvProductos.CurrentRow.Cells[0].Value, ProductoDAL.getProductoById(DetFacturaDAL.getDetfacturaById((Int64)dgvProductos.CurrentRow.Cells[0].Value).IdProducto).Nombre, Convert.ToDecimal(txtAporte.Text), Convert.ToDecimal(txtDescuento.Text), "C", DetFacturaDAL.getDetfacturaById((Int64)dgvProductos.CurrentRow.Cells[0].Value).RefNFactura, 0, ProductoDAL.getProductoById(DetFacturaDAL.getDetfacturaById((Int64)dgvProductos.CurrentRow.Cells[0].Value).IdProducto).Id, ProductoDAL.getProductoById(DetFacturaDAL.getDetfacturaById((Int64)dgvProductos.CurrentRow.Cells[0].Value).IdProducto), null ); this.Close(); } break; case "Contado": if (dgvProductos.CurrentRow != null) { currentDetFactura = new Detfactura( 0, "Al contado", Convert.ToDecimal(txtAporte.Text), Convert.ToDecimal(txtDescuento.Text), Convert.ToDecimal(txtAporte.Text) < ProductoDAL.getProductoById((Int64)dgvProductos.CurrentRow.Cells[0].Value).Precio ? "R" : "F", null, 0, ProductoDAL.getProductoById((Int64)dgvProductos.CurrentRow.Cells[0].Value).Id, ProductoDAL.getProductoById((Int64)dgvProductos.CurrentRow.Cells[0].Value), null ); this.Close(); } break; default: break; } } } 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 seleccionar la información de este control"); MessageBox.Show("Ha ocurrido un error al intentar seleccionar la información de este control, por favor comuniquese con el desarrollador al correo " + Properties.Settings.Default.developerEmail, "Error fatal", MessageBoxButtons.OK, MessageBoxIcon.Error); } }