protected void btnGuardar_Click(object sender, EventArgs e) { OcultarMensajes(); try{ List <VentaDetalleDTO> detalles = new List <VentaDetalleDTO>(); ReservaDTO reserva = (ReservaDTO)Session["Reserva"]; List <ReservaDetalleDTO> detallesReserva = (List <ReservaDetalleDTO>)Session["detalles"]; foreach (ReservaDetalleDTO dr in detallesReserva) { if (!dr.Comprada) { DangerMessage.Visible = true; LblDanger.Text = "No se puede realizar la venta porque uno o mas items no han sido comprados."; return; } if (dr.Efectuada) { DangerMessage.Visible = true; LblDanger.Text = "No se puede realizar la venta porque uno o mas items ya han sido vendidas."; return; } VentaDetalleDTO vd = new VentaDetalleDTO(); dr.IsNew = true; vd.idDetalleReservaDTO = dr.IdDetallaReserva; vd.idTipoDocumentoViajeDTO = dr.IdDocumentoViaje; vd.idPasajeroDTO = dr.IdPasajero; vd.idSeguroViajeroDTO = dr.IdSeguroViajero; vd.idSeguroViajeroDTO = dr.IdServicioAlojamiento; vd.idServicioTrasladoDTO = dr.IdServicioTraslado; vd.Monto = dr.Monto; detalles.Add(vd); } VentaDTO venta = new VentaDTO(); venta.IsNew = true; venta.idClienteDTO = reserva.IdCliente; venta.fechaVentaDTO = DateTime.Now; if (txtComision.Text != "") { venta.comisionDTO = float.Parse(txtComision.Text); } venta.NumeroFactura = Convert.ToInt32(txtNroFactura.Text); venta.DetallesVenta = detalles; VentaManager.SaveVenta(venta); SuccessMessage.Visible = true; LblSuccess.Text = "La venta se ha guardado correctamente"; VentaSection.Visible = false; SectionDetalleReserva.Visible = false; } catch (Exception) { DangerMessage.Visible = true; LblDanger.Text = "No se pudo guardar la venta, verifique que los datos ingresados sean válidos."; } }
internal override DTOBase PopulateDTO(SqlDataReader reader) { VentaDetalleDTO VentaDetalle = new VentaDetalleDTO(); if (!reader.IsDBNull(Ord_idPasajeroDTO)) { VentaDetalle.idPasajeroDTO = reader.GetInt32(Ord_idPasajeroDTO); } // IdReserva if (!reader.IsDBNull(Ord_idDetalleReservaDTO)) { VentaDetalle.idDetalleReservaDTO = reader.GetInt32(Ord_idDetalleReservaDTO); } // IdCliente if (!reader.IsDBNull(Ord_idSeguroViajeroDTO)) { VentaDetalle.idSeguroViajeroDTO = reader.GetInt32(Ord_idSeguroViajeroDTO); } if (!reader.IsDBNull(Ord_idServicioAlojamientoDTO)) { VentaDetalle.idServicioAlojamientoDTO = reader.GetInt32(Ord_idServicioAlojamientoDTO); } // IdDocumentoViaje if (!reader.IsDBNull(Ord_idVentaDetalleDTO)) { VentaDetalle.idDetalleVentaDTO = reader.GetInt32(Ord_idVentaDetalleDTO); } // FechaReserva if (!reader.IsDBNull(Ord_idServicioTrasladoDTO)) { VentaDetalle.idServicioTrasladoDTO = reader.GetInt32(Ord_idServicioTrasladoDTO); } // IdSeguroViajero if (!reader.IsDBNull(Ord_idTipoDocumentoViajeDTO)) { VentaDetalle.idTipoDocumentoViajeDTO = reader.GetInt32(Ord_idTipoDocumentoViajeDTO); } return(VentaDetalle); }
public List <VentaDetalleDTO> GetDetallesVenta(int IdVenta) { con.Open(); SqlCommand cmd = new SqlCommand(); SqlDataReader reader; cmd.CommandText = "SELECT ISNULL([IdDetalle],0) AS [IdDetalle] " + ",ISNULL([IdVenta],0) AS[IdVenta] " + ",ISNULL([CodProd],'') AS[CodProd] " + ",ISNULL([Correlativo],0) AS[Correlativo] " + ",ISNULL([Cantidad],0) AS[Cantidad] " + ",ISNULL([Precio],0) AS[Precio] " + ",ISNULL([SubTotal],0) AS[SubTotal] " + ",ISNULL([Descuento],0) AS[Descuento] " + ",ISNULL([Total],0) AS[Total] " + ",[Fecha] " + " FROM[dbo].[VentaDetalle] " + " WHERE[IdVenta] = " + IdVenta + ""; cmd.CommandType = CommandType.Text; cmd.Connection = con; reader = cmd.ExecuteReader(); List <VentaDetalleDTO> retorno = new List <VentaDetalleDTO>(); while (reader.Read()) { VentaDetalleDTO item = new VentaDetalleDTO(); item.IdDetalle = Convert.ToInt32(reader["IdDetalle"]); item.IdVenta = Convert.ToInt32(reader["IdVenta"]); item.CodProducto = Convert.ToString(reader["CodProd"]); item.Correlativo = Convert.ToInt32(reader["Correlativo"]); item.Cantidad = Convert.ToDecimal(reader["Cantidad"]); item.Precio = Convert.ToDecimal(reader["Precio"]); item.SubTotal = Convert.ToDecimal(reader["SubTotal"]); item.Descuento = Convert.ToDecimal(reader["Descuento"]); item.Total = Convert.ToDecimal(reader["Total"]); item.Fecha = Convert.ToDateTime(reader["Fecha"]); retorno.Add(item); } reader.Close(); con.Close(); return(retorno); }