private void btnFacturar_Click(object sender, EventArgs e) { //Si el Puesto de trabajado esta separado o no _factura.Cliente = _clienteSeleccionado; _factura.Vendedor = _vendedorSeleccionado; _factura.TipoComprobante = (TipoComprobante)cmbTipoComprobante.SelectedItem; _factura.PuntoVentaId = (long)cmbPuestoVenta.SelectedValue; _factura.UsuarioId = Identidad.UsuarioId; if (_configuracion.PuestoCajaSeparado) { //Factura estado pendiente } else { //Forma de pago var fFormaDePago = new _00044_FormaPago(_factura); fFormaDePago.ShowDialog(); if (fFormaDePago.RealizoVenta) { LimpiarParaNuevaFactura(); txtCodigo.Focus(); } } }
private void btnFacturar_Click(object sender, EventArgs e) { _factura.Cliente = _clienteSeleccionado; _factura.Vendedor = _vendedorSeleccionado; _factura.TipoComprobante = (TipoComprobante)cmbTipoComprobante.SelectedItem; _factura.PuntoVentaId = (long)cmbPuestoVenta.SelectedValue; _factura.UsuarioId = Identidad.UsuarioId; if (_configuracion.PuestoCajaSeparado) { try { var nuevoComprobante = new FacturaDto() { EmpleadoId = _factura.Vendedor.Id, ClienteId = _factura.Cliente.Id, TipoComprobante = _factura.TipoComprobante, Descuento = _factura.Descuento, SubTotal = _factura.SubTotal, Fecha = DateTime.Now, Estado = Estado.Pendiente, PuestoTrabajoId = _factura.PuntoVentaId, Iva105 = 0, Iva21 = 0, Total = _factura.Total, UsuarioId = _factura.UsuarioId, VieneVentas = true, Eliminado = false }; foreach (var item in _factura.Items) { nuevoComprobante.Items.Add(new DetalleComprobanteDto { Cantidad = item.Cantidad, Iva = item.Iva, Descripcion = item.Descripcion, Precio = item.Precio, ArticuloId = item.ArticuloId, Codigo = item.CodigoBarra, SubTotal = item.SubTotal, Eliminado = false, }); } _facturaServicio.Insertar(nuevoComprobante); MessageBox.Show("Los datos se grabaron correctamente"); LimpiarParaNuevoFactura(); } catch (DbEntityValidationException ex) { var error = ex.EntityValidationErrors.SelectMany(v => v.ValidationErrors) .Aggregate(string.Empty, (current, validationError) => current + ($"Property: {validationError.PropertyName} Error: {validationError.ErrorMessage}. {Environment.NewLine}" )); throw new Exception($"Ocurrio un error grave al grabar la Factura. Error: {error}"); } } else { var fFormaDePago = new _00044_FormaPago(_factura); fFormaDePago.ShowDialog(); if (fFormaDePago.RealizoVenta) { LimpiarParaNuevoFactura(); txtCodigo.Focus(); } } }