public async Task <ContratoDetallesFactura> DetalleProductoFactura(int idProductoFactura) { ContratoDetallesFactura detalleProductoFactura = new ContratoDetallesFactura(); ProdSerXFacturaFac productoFactura = _fAFacturaBiz.GetProductoFacturaPorId(idProductoFactura); System.Diagnostics.Debug.WriteLine(productoFactura); if (productoFactura != null) { ProductosServiciosPc producto = await _cOFachada.GetPublicacionPorIdPublicacion((int)productoFactura.Idproductoservicio); if (producto != null) { detalleProductoFactura.Id = producto.Id; detalleProductoFactura.Preciofacturado = productoFactura.Preciofacturado; detalleProductoFactura.Cantidadfacturado = productoFactura.Cantidadfacturado; detalleProductoFactura.Idproductoservicio = productoFactura.Idproductoservicio; } else { throw new COExcepcion("El producto o la factura no existen."); } } else { throw new COExcepcion("El producto solicitado no existe."); } return(detalleProductoFactura); }
public async Task <RespuestaDatos> GuardarTruequeDetalle(ProdSerTruequeTrue detalle) { RespuestaDatos respuestaDatos; try { ProductosServiciosPc publicacionComprador = await _cOFachada.GetPublicacionPorIdPublicacion(detalle.Idproductoserviciocomprador); ProductosServiciosPc publicacionVendedor = await _cOFachada.GetPublicacionPorIdPublicacion(detalle.Idproductoserviciovendedor); DemografiaCor demografiaComprador = _cOGeneralFachada.GetDemografiaPorId(publicacionComprador.Idusuario); DemografiaCor demografiaVendedor = _cOGeneralFachada.GetDemografiaPorId(publicacionVendedor.Idusuario); TruequesPedidoTrue trueque = new TruequesPedidoTrue { Idcomprador = demografiaComprador.Id, Idvendedor = demografiaVendedor.Id }; respuestaDatos = await _tRTruequeBiz.GuardarTrueque(trueque, demografiaComprador, demografiaVendedor); trueque = GetTruequePorIdCompradorIdVendedor(demografiaComprador.Id, demografiaVendedor.Id); detalle.Idtruequepedido = trueque.Id; RespuestaDatos respuestaDetalle = await _tRTruequeBiz.GuardarTruequeDetalle(detalle, publicacionVendedor, publicacionComprador); respuestaDatos.Mensaje = respuestaDatos.Mensaje; } catch (COExcepcion e) { throw e; } return(respuestaDatos); }
public async Task <Boolean> ValidarPrecioProductoPedido(ProdSerXVendidosPed productoPedido) { ProductosServiciosPc producto = new ProductosServiciosPc(); //System.Diagnostics.Debug.WriteLine(productoPedido.Idproductoservico); producto = await _cOContenidoFachada.GetPublicacionPorIdPublicacion(productoPedido.Idproductoservico); //System.Diagnostics.Debug.WriteLine(producto); bool validacion = false; if (producto != null) { bool check1 = unchecked (producto.Preciounitario == (int)producto.Preciounitario); bool check2 = unchecked (productoPedido.Preciototal == (int)productoPedido.Preciototal); if (check1 && check2) { System.Diagnostics.Debug.WriteLine("Si entró"); System.Diagnostics.Debug.WriteLine(productoPedido.Preciototal); System.Diagnostics.Debug.WriteLine(producto.Preciounitario); System.Diagnostics.Debug.WriteLine(productoPedido.Cantidadespedida); if (productoPedido.Preciototal == producto.Preciounitario * productoPedido.Cantidadespedida) { System.Diagnostics.Debug.WriteLine("Si entró al otro"); validacion = true; } } } else { throw new COExcepcion("El producto solicitado no existe."); } return(validacion); }
internal async Task <RespuestaDatos> ModificarPublicacionApp(ModificarPublicacion productosServicios) { using FeContext context = new FeContext(); RespuestaDatos respuestaDatos; ProductosServiciosPc publicacion = await GetPublicacionPorIdPublicacion(productosServicios.Id); if (publicacion != null) { try { context.Attach(publicacion); publicacion.Descripcion = productosServicios.Descripcion; publicacion.Descuento = productosServicios.Descuento; publicacion.Cantidadtotal = productosServicios.Cantidad; publicacion.Nombre = productosServicios.Nombre; publicacion.Preciounitario = productosServicios.Preciounitario; publicacion.Habilitatrueque = productosServicios.Habilitatrueque; publicacion.Modificacion = DateTime.Now; context.SaveChanges(); respuestaDatos = new RespuestaDatos { Codigo = COCodigoRespuesta.OK, Mensaje = "Publicación modificada exitosamente." }; } catch (Exception e) { throw new COExcepcion("Ocurrió un problema al intentar modificar la publicación."); } } else { throw new COExcepcion("La publicación no existe"); } return(respuestaDatos); }
internal async Task <RespuestaDatos> ModificarCalificacion(int idPublicacion, decimal calificacion) { using FeContext context = new FeContext(); RespuestaDatos respuestaDatos; ProductosServiciosPc publicacion = await GetPublicacionPorIdPublicacion(idPublicacion); if (publicacion != null) { try { context.Attach(publicacion); publicacion.Calificacionpromedio = calificacion; publicacion.Modificacion = DateTime.Now; context.SaveChanges(); respuestaDatos = new RespuestaDatos { Codigo = COCodigoRespuesta.OK, Mensaje = "Calificación modificada exitosamente." }; } catch (Exception e) { throw new COExcepcion("Ocurrió un problema al intentar modificar la calificación."); } } else { throw new COExcepcion("La publicación no existe"); } return(respuestaDatos); }
internal string GetImagenProdcuto(ProductosServiciosPc publicacion) { try { if (publicacion == null) { throw new COExcepcion("La publicación no existe. "); } string fileName = publicacion.Urlimagenproductoservicio; if (!fileName.Contains($@"imagen-producto-{publicacion.Id}")) { throw new COExcepcion("No tiene acceso a esta imagen. "); } string directorio = _configuration["ImageProductos:DirectorioImagenes"] + "/Productos"; return(Path.Combine(directorio, Path.GetFileName(fileName))); } catch (COExcepcion e) { throw e; } }
public async Task <RespuestaDatos> ModificarTrueque(TruequesPedidoTrue trueque) { RespuestaDatos respuestaDatos; try { respuestaDatos = respuestaDatos = await _tRTruequeBiz.ModificarTrueque(trueque); if (trueque.Estado == COEstadosTrueque.ACEPTADO) { ProdSerTruequeTrue detalle = _tRTruequeBiz.GetDetallePorIdTrueque(trueque.Id); ProductosServiciosPc publicacionVendedor = await _cOFachada.GetPublicacionPorIdPublicacion(detalle.Idproductoserviciovendedor); ProductosServiciosPc publicacionComprador = await _cOFachada.GetPublicacionPorIdPublicacion(detalle.Idproductoserviciocomprador); publicacionComprador.Cantidadtotal = (int)(publicacionComprador.Cantidadtotal - detalle.Cantidadcomprador); publicacionVendedor.Cantidadtotal = (int)(publicacionVendedor.Cantidadtotal - detalle.Cantidadvendedor); RespuestaDatos modificarVendedor = await _cOFachada.ModificarPublicacion(publicacionVendedor); RespuestaDatos modificarComprador = await _cOFachada.ModificarPublicacion(publicacionComprador); respuestaDatos.Mensaje = respuestaDatos.Mensaje + " " + modificarVendedor.Mensaje + " " + modificarComprador.Mensaje; } } catch (COExcepcion e) { throw e; } return(respuestaDatos); }
internal async Task <ContratoPublicacionPc> DesplegarPublicacion(int idPublicacion) { ProductosServiciosPc publicacion = await _repoProducto.GetPublicacionPorIdPublicacion(idPublicacion); ContratoPublicacionPc contrato = new ContratoPublicacionPc(); if (publicacion != null) { contrato.Id = publicacion.Id; contrato.Nombre = publicacion.Nombre; contrato.Habilitatrueque = publicacion.Habilitatrueque; contrato.Cantidadtotal = publicacion.Cantidadtotal; contrato.Descripcion = publicacion.Descripcion; contrato.Descuento = publicacion.Descuento; contrato.Preciounitario = publicacion.Preciounitario; contrato.Urlimagenproductoservicio = publicacion.Urlimagenproductoservicio; contrato.Tiempoentrega = publicacion.Tiempoentrega; contrato.Tiempogarantia = publicacion.Tiempogarantia; contrato.Calificacionpromedio = publicacion.Calificacionpromedio; contrato.NombreCategoria = _repoCategoria.GetCategoriaPorIdCategoria(publicacion.Idcategoria).Nombre; contrato.TipoPublicacion = _repoTipoPublicacion.GetTipoPublicacionPorID(publicacion.Idtipopublicacion).Nombre; contrato.Resenas = _repoResena.GetResenasPorIdPublicacion(idPublicacion); contrato.PreguntasRespuestas = _repoPyR.GetPreguntasyRespuestasPorIdPublicacion(idPublicacion); } else { throw new COExcepcion("La publicación ingresada no existe."); } return(contrato); }
internal async Task <RespuestaDatos> GuardarFavorito(ProductosFavoritosDemografiaPc favorito, DemografiaCor demografiaCor, ProductosServiciosPc publicacion) { RespuestaDatos respuestaDatos; if (demografiaCor != null) { if (publicacion != null) { try { respuestaDatos = await _repoFavorito.GuardarFavorito(favorito); } catch (COExcepcion e) { throw e; } } else { throw new COExcepcion("La publicación ingresada no existe."); } } else { throw new COExcepcion("El usuario ingresado no existe."); } return(respuestaDatos); }
internal async Task <bool> FavoritoMio(DemografiaCor demografiaCor, ProductosServiciosPc publicacion) { try { bool respuesta = false; if (demografiaCor == null) { throw new COExcepcion("El usuario no existe. "); } if (publicacion == null) { throw new COExcepcion("La publicación no existe. "); } var ans = _repoFavorito.FavoritoMio(demografiaCor, publicacion); if (ans != null) { respuesta = true; } return(respuesta); } catch (COExcepcion e) { throw e; } }
internal async Task <RespuestaDatos> RemoverPublicacion(int idPublicacion) { using FeContext context = new FeContext(); RespuestaDatos respuestaDatos; ProductosServiciosPc publicacion = await GetPublicacionPorIdPublicacion(idPublicacion); if (publicacion != null) { try { context.ProductosServiciosPcs.Attach(publicacion); publicacion.Estado = COEstados.INACTIVO; publicacion.Modificacion = DateTime.Now; context.SaveChanges(); respuestaDatos = new RespuestaDatos { Codigo = COCodigoRespuesta.OK, Mensaje = "Publicación eliminada exitosamente." }; } catch (Exception e) { throw new COExcepcion("Ocurrió un problema al intentar eliminar la publicación"); } } else { throw new COExcepcion("La publicación no existe"); } return(respuestaDatos); }
internal async Task <RespuestaDatos> GuardarResena(ResenasPc resena) { RespuestaDatos respuestaDatos; try { ProductosServiciosPc publicacion = await _repoProducto.GetPublicacionPorIdPublicacion(resena.Idpublicacion); if (publicacion != null) { respuestaDatos = await _repoResena.GuardarResena(resena); try { decimal calificacion = _repoResena.GetCalificacionPromedioPorIdPublicacion(resena.Idpublicacion); await _repoProducto.ModificarCalificacion(publicacion.Id, calificacion); } catch (COExcepcion e) { throw e; } } else { throw new COExcepcion("La publicación ingresada no existe"); } } catch (COExcepcion e) { throw e; } return(respuestaDatos); }
public async Task <ContratoDetallesPedido> DetalleProductoPedido(int idProductoPedido) { ContratoDetallesPedido detalleProductoPedido = new ContratoDetallesPedido(); ProdSerXVendidosPed productoPedido = _pEPedidoBiz.GetProductoPedidoPorId(idProductoPedido); System.Diagnostics.Debug.WriteLine(productoPedido); if (productoPedido != null) { ProductosServiciosPc producto = await _cOContenidoFachada.GetPublicacionPorIdPublicacion(productoPedido.Idproductoservico); if (producto != null) { detalleProductoPedido.Id = producto.Id; detalleProductoPedido.Precio = producto.Preciounitario; detalleProductoPedido.Cantidad = productoPedido.Cantidadespedida; detalleProductoPedido.Fecha = productoPedido.Creacion; } else { throw new COExcepcion("El producto no existe."); } } else { throw new COExcepcion("El producto solicitado no existe."); } return(detalleProductoPedido); }
public async Task <bool> FavoritoMio(int idPublicacion, int idUsuario) { DemografiaCor demografiaCor = _cOGeneralFachada.GetDemografiaPorId(idUsuario); ProductosServiciosPc publicacion = await _cOContenidoBiz.GetPublicacionPorIdPublicacion(idPublicacion); return(await _cOContenidoBiz.FavoritoMio(demografiaCor, publicacion)); }
public async Task <List <ProdSerXFacturaFac> > ProductosPedidoAProductosFacturados(List <ProdSerXVendidosPed> listaPedido, List <FacturasFac> facturas) { List <ProductosServiciosPc> productos = new List <ProductosServiciosPc>(); for (int i = 0; i < listaPedido.Count; i++) { ProductosServiciosPc producto = await _cOFachada.GetPublicacionPorIdPublicacion(listaPedido[i].Idproductoservico); productos.Add(producto); } return(_fAFacturaBiz.ProductosPedidoAProductosFacturados(listaPedido, productos, facturas)); }
public async Task <List <RespuestaDatos> > Prueba(List <ProdSerXVendidosPed> listaPedido) { List <ProductosServiciosPc> productos = new List <ProductosServiciosPc>(); for (int i = 0; i < listaPedido.Count; i++) { ProductosServiciosPc producto = await _cOFachada.GetPublicacionPorIdPublicacion(listaPedido[i].Idproductoservico); productos.Add(producto); } return(await _fAFacturaBiz.Prueba(listaPedido, productos)); }
public async Task <string> FacturacionPSE(ContratoFacturaPSE contratoFacturaPSE) { List <ProdSerXVendidosPed> listaPedido = _pEFachada.GetProductosPedidosPorIdPedido(contratoFacturaPSE.IdPedido); List <ProductosServiciosPc> productos = new List <ProductosServiciosPc>(); for (int i = 0; i < listaPedido.Count; i++) { ProductosServiciosPc producto = await _cOFachada.GetPublicacionPorIdPublicacion(listaPedido[i].Idproductoservico); productos.Add(producto); } return(await _fAFacturaBiz.FacturacionPSE(contratoFacturaPSE.TicketId, listaPedido, productos)); }
public async Task <string> GetImagenProdcuto(int idPublicacion) { try { ProductosServiciosPc publicacion = await _cOContenidoBiz.GetPublicacionPorIdPublicacion(idPublicacion); return(_cOContenidoBiz.GetImagenProdcuto(publicacion)); } catch (COExcepcion e) { throw e; } }
public async Task <RespuestaDatos> ModificarPublicacion(ProductosServiciosPc productosServicios) { RespuestaDatos respuestaDatos; try { respuestaDatos = await _cOContenidoBiz.ModificarPublicacion(productosServicios); } catch (COExcepcion e) { throw e; } return(respuestaDatos); }
internal async Task <RespuestaDatos> ModificarPublicacion(ProductosServiciosPc productosServicios) { RespuestaDatos respuestaDatos; try { respuestaDatos = await _repoProducto.ModificarPublicacion(productosServicios); } catch (COExcepcion e) { throw e; } return(respuestaDatos); }
public async Task <RespuestaDatos> GuardarPublicacion(ProductosServiciosPc productosServicios, IFormFileCollection files) { RespuestaDatos respuestaDatos; try { DemografiaCor demografiaCor = _cOGeneralFachada.GetDemografiaPorId(productosServicios.Idusuario); respuestaDatos = respuestaDatos = await _cOContenidoBiz.GuardarPublicacion(productosServicios, demografiaCor, files); } catch (COExcepcion e) { throw e; } return(respuestaDatos); }
public async Task <DataPse> PagoPSE(ContratoPSE contratoPSE) { List <ProdSerXVendidosPed> listaPedido = _pEFachada.GetProductosPedidosPorIdPedido(contratoPSE.IdPedido); DemografiaCor demografiaComprador = _cOGeneralFachada.GetDemografiaPorId(contratoPSE.IdDemografiaComprador); TipoDocumentoCor documentoComprador = _cOGeneralFachada.GetTipoDocumentoPorId(demografiaComprador.Tipodocumentocorid); List <ProductosServiciosPc> productos = new List <ProductosServiciosPc>(); for (int i = 0; i < listaPedido.Count; i++) { ProductosServiciosPc producto = await _cOFachada.GetPublicacionPorIdPublicacion(listaPedido[i].Idproductoservico); productos.Add(producto); } return(await _fAFacturaBiz.PagoPSE(contratoPSE, listaPedido, demografiaComprador, documentoComprador, productos)); }
public async Task <RespuestaDatos> ModificarPublicacion([FromBody] ProductosServiciosPc productosServicios) { RespuestaDatos respuestaDatos; try { respuestaDatos = await _coFachada.ModificarPublicacion(productosServicios); } catch (COExcepcion e) { respuestaDatos = new RespuestaDatos { Codigo = COCodigoRespuesta.ERROR, Mensaje = e.Message }; } return(respuestaDatos); }
internal async Task <int> GuardarPublicacion(ProductosServiciosPc productoSservicio) { using FeContext context = new FeContext(); try { productoSservicio.Creacion = DateTime.Now; productoSservicio.Calificacionpromedio = 0.0m; productoSservicio.Ventas = 0; context.Add(productoSservicio); context.SaveChanges(); return(productoSservicio.Id); } catch (Exception e) { throw new COExcepcion("Ocurrió un problema al intentar realizar la publicación: " + e.Message); } }
public async Task <RespuestaDatos> GuardarFavorito(ProductosFavoritosDemografiaPc favorito) { RespuestaDatos respuestaDatos; try { DemografiaCor demografiaCor = _cOGeneralFachada.GetDemografiaPorId(favorito.Iddemografia); ProductosServiciosPc publicacion = await _cOContenidoBiz.GetPublicacionPorIdPublicacion(favorito.Idproductoservicio); respuestaDatos = respuestaDatos = await _cOContenidoBiz.GuardarFavorito(favorito, demografiaCor, publicacion); } catch (COExcepcion e) { throw e; } return(respuestaDatos); }
internal async Task <RespuestaDatos> GuardarLinkImagen(ProductosServiciosPc productoSservicio) { using FeContext context = new FeContext(); RespuestaDatos respuestaDatos; try { context.Update(productoSservicio); context.SaveChanges(); respuestaDatos = new RespuestaDatos { Codigo = COCodigoRespuesta.OK, Mensaje = "Publicación modificada exitosamente." }; } catch (Exception e) { throw new COExcepcion("Ocurrió un problema al intentar modificar la publicación."); } return(respuestaDatos); }
public async Task <Boolean> ValidarCantidadProductoPedido(ProdSerXVendidosPed productoPedido) { ProductosServiciosPc producto = await _cOContenidoFachada.GetPublicacionPorIdPublicacion(productoPedido.Idproductoservico); bool validacion = false; if (producto != null) { if (producto.Cantidadtotal >= productoPedido.Cantidadespedida) { validacion = true; } } else { throw new COExcepcion("El producto no existe"); } return(validacion); }
internal async Task <RespuestaDatos> GuardarTruequeDetalle(ProdSerTruequeTrue detalle, ProductosServiciosPc publicacionVendedor, ProductosServiciosPc publicacionComprador) { RespuestaDatos respuestaDatos; if (publicacionVendedor != null) { if (publicacionComprador != null) { if (detalle.Cantidadcomprador <= publicacionComprador.Cantidadtotal) { if (detalle.Cantidadvendedor <= publicacionVendedor.Cantidadtotal) { try { respuestaDatos = await _repoTruequeDetalle.GuardarTruequeDetalle(detalle); } catch (COExcepcion e) { throw e; } } else { throw new COExcepcion("La cantidad de la publicación del vendedor es inválida."); } } else { throw new COExcepcion("La cantidad de la publicación del comprador es inválida."); } } else { throw new COExcepcion("La publicación ingresada del comprador no existe."); } } else { throw new COExcepcion("La publicación ingresada del vendedor no existe."); } return(respuestaDatos); }
public async Task <RespuestaDatos> GuardarPublicacion(IFormCollection collection) { RespuestaDatos respuestaDatos; try { var formData = Request.Form; var files = Request.Form.Files; Claim claimId = User.Claims.Where(c => c.Type == "id").FirstOrDefault(); formData = Request.Form; if (formData == null) { throw new COExcepcion("El formulario de la petición enviada se encuentra vacío. "); } ProductosServiciosPc productosServicios = new ProductosServiciosPc { Idcategoria = int.Parse(Request.Form["Idcategoria"]), Idtipopublicacion = int.Parse(Request.Form["Idtipopublicacion"]), Idusuario = int.Parse(Request.Form["Idusuario"]), Descripcion = Request.Form["Descripcion"].ToString(), Cantidadtotal = int.Parse(Request.Form["Cantidad"]), Preciounitario = int.Parse(Request.Form["Precio"]), Descuento = decimal.Parse(Request.Form["Descuento"]), Habilitatrueque = int.Parse(Request.Form["Trueque"]), Nombre = Request.Form["Nombre"].ToString() }; respuestaDatos = await _coFachada.GuardarPublicacion(productosServicios, files); } catch (COExcepcion e) { respuestaDatos = new RespuestaDatos { Codigo = COCodigoRespuesta.ERROR, Mensaje = e.Message }; } return(respuestaDatos); }
internal async Task <RespuestaDatos> GuardarPreguntasyRespuestas(PreguntasRespuestasPc pyr) { RespuestaDatos respuestaDatos; ProductosServiciosPc publicacion = await _repoProducto.GetPublicacionPorIdPublicacion(pyr.Idproductoservicio); if (publicacion != null) { try { pyr.Creacion = DateTime.Now; pyr.Modificacion = DateTime.Now; respuestaDatos = await _repoPyR.GuardarPreguntasyRespuestas(pyr); } catch (COExcepcion e) { throw e; } } else { throw new COExcepcion("La publicación ingresada no existe"); } return(respuestaDatos); }