public List<Facturable> BuscarPublicacionesParaFacturar(Decimal codigoUsuario, int cantidad) { var query = String.Format(@"SELECT TOP {1} * FROM NINIRODIE.PUBLICACION " + "WHERE PUB_VENDEDOR = '{0}' AND PUB_PUBLICACION_ID NOT IN " + "(SELECT ITEM_PUBLICACION_ID FROM NINIRODIE.ITEM WHERE ITEM_MONTO = " + "(SELECT VIS_PRECIO FROM NINIRODIE.VISIBILIDAD WHERE VIS_VISIBILIDAD_CODIGO " + "= PUB_VISIBILIDAD_CODIGO))", codigoUsuario, cantidad); var publicaciones = this.BuscarPublicaciones(query); var facturables = new List<Facturable>(); foreach (Publicacion publicacion in publicaciones) { Visibilidad visibilidad = RepositorioVisibilidad.Instance.BuscarVisibilidad(publicacion.visibilidad_codigo); Facturable facturable = new Facturable(publicacion.publicacion_id, publicacion.vendedor, visibilidad.precio, 1, FechaSistema.Instance.fecha); facturables.Add(facturable); } return facturables; }
//Revisar private void PopularGrillaComprasOfertas() { var cantidad = int.Parse(this.cantidadTextBox.Text); var compras = RepositorioCompra.Instance.BuscarComprasHechasAlUsuario(codigoUsuario, cantidad); var ofertas = RepositorioOferta.Instance.BuscarOfertasHechasAlUsuario(codigoUsuario, cantidad); foreach (Compra compra in compras) { Publicacion publicacion = RepositorioPublicacion.Instance.BuscarPublicaciones(compra.id_publicacion); Decimal porcentaje = RepositorioVisibilidad.Instance.ObtenerMontoAPagarParaPublicacion(publicacion.visibilidad_codigo); var montoAFacturarPorCompra = porcentaje * publicacion.precio; Facturable facturable = new Facturable(compra.id_publicacion, this.codigoUsuario, montoAFacturarPorCompra, compra.cantidad, FechaSistema.Instance.fecha); Facturables.Add(facturable); } foreach (Oferta oferta in ofertas) { Publicacion publicacion = RepositorioPublicacion.Instance.BuscarPublicaciones(oferta.subasta_id); Decimal porcentaje = RepositorioVisibilidad.Instance.ObtenerMontoAPagarParaPublicacion(publicacion.visibilidad_codigo); var montoAFacturarPorSubasta = porcentaje * oferta.monto; Facturable facturable = new Facturable(oferta.subasta_id, this.codigoUsuario, montoAFacturarPorSubasta, 1, FechaSistema.Instance.fecha); Facturables.Add(facturable); } if (Facturables.Count < cantidad) this.compraOfertaGrilla.DataSource = Facturables; else { Facturables = Facturables.GetRange(0, cantidad); this.compraOfertaGrilla.DataSource = Facturables; } this.compraOfertaGrilla.Refresh(); }