private List <ProductoPedido> BuscarProdsPedidos(int id) { List <ProductosPorPedido> productosPors = RNProductosPorPedidos.ProdPorPed(id); List <ProductoPedido> response = new List <ProductoPedido>(); foreach (var item in productosPors) { Producto p = RNProduct.BuscarProducto(item.ProductoId); if (p == null) { item.ProductoId++; RNProduct.BuscarProducto(item.ProductoId); } else { response.Add(new ProductoPedido { Producto = p, Cantidad = item.Cantidad, Total = p.Precio * item.Cantidad }); } } return(response); }
public List <Product> SearchAllProducts() { //List<Product> products = new List<Product>(); //foreach (Product p in this.Stock) //{ // products.Add(p); //} return(RNProduct.SearchAllProducts()); }
public AdminModel Procesar() { var user = SessionHelper.UsuarioLogueado; AdminModel modelo = new AdminModel() { UsuarioLogueado = user.Usuario, PedidosRealizados = RNPedidos.ContarPedidosEnFechasEspecificas(fechaInicio, fechaFin), ProductosMasVendidos = RNProduct.ProductosMasVendidos(fechaInicio, fechaFin) }; return(modelo); }
public ActionResult Detalle(int id) { ActionResult res; var usuario = SessionHelper.UsuarioLogueado; res = Redirect("/Home/Index"); if (SessionHelper.ComprobarPersmisos(usuario)) { Producto prod = RNProduct.BuscarProducto(id); res = View("EditProd", prod); } return(res); }
public List <Product> SearchProductsBySeller(int idSeller) { //List<Product> products = new List<Product>(); //foreach (Product p in this.Stock) //{ // if (p.Seller.IdSeller == idSeller && p.Active) // { // products.Add(p); // } //} return(RNProduct.SearchProductsBySeller(idSeller)); }
/** * Busca un producto en el stock por el codigo */ public Product FindProductInStock(int idProduct) { //Product product = null; //int i = 0; //while (product == null && i < this.Stock.Count) //{ // Product aux = this.Stock.ElementAt(i); // if (aux.IdProduct == idProduct) // { // product = aux; // } // i++; //} return(RNProduct.FindProduct(idProduct)); }
public ActionResult Add(Producto prod) { var existe = RNProduct.BuscarProductoPorNombre(prod.Nombre); ActionResult response = View("CrearProducto"); if (!existe) { HttpPostedFileBase archivo = Request.Files["Imagen"]; GuardarImagen(archivo); prod.Imagen = archivo.FileName; RNProduct.Agregar(prod); response = Redirect("/Product/Index"); } return(response); }
public ActionResult Edit(Producto prod) { ActionResult result; var usuario = SessionHelper.UsuarioLogueado; result = Redirect("/Home/Index"); if (SessionHelper.ComprobarPersmisos(usuario)) { HttpPostedFileBase archivo = Request.Files["Imagen"]; if (archivo != null) { GuardarImagen(archivo); prod.Imagen = archivo.FileName; } RNProduct.Editar(prod); result = Redirect("/Product/Index"); } return(result); }
// GET: Product public ActionResult Index() { var user = SessionHelper.UsuarioLogueado; var prod = RNProduct.ListarProductos(); ActionResult validar = Redirect("/Home/Index"); if (user == null) { validar = Redirect("/Login/Index"); } else if (SessionHelper.ComprobarPersmisos(user)) { ProductosModel modelo = new ProductosModel { Productos = prod, }; validar = View("Productos", modelo); } return(validar); }
public ActionResult Agregar(int id) { ProductoPedido producto = this.BuscarProducto(id); if (producto != null) { producto.Cantidad++; producto.Total = producto.Cantidad * producto.Producto.Precio; } else { Producto productoObject = RNProduct.BuscarProducto(id); ProductoPedido nuevoProducto = new ProductoPedido { Producto = productoObject, Cantidad = 1, Total = productoObject.Precio }; SessionHelper.ProductosCarrito.Add(nuevoProducto); } return(this.CarritoActualizado()); }
/** * Realiza la venta del producto a nivel de datos. Decrementa el stock del producto o lo elimina si correcponde */ public void DoSell(int idProduct, int idSeller) { //Buscar en el stock, decrementar, remover del stock si queda cero, agregar a la lista de vendidos Product p = this.FindProductInStock(idProduct); Seller s = this.FindSellerById(idSeller); if (p != null && s != null) { p.Stock--; if (p.Stock < 0) { //this.Stock.Remove(p); //RNProduct.Remove(p); } else { RNProduct.UpdateProduct(p); ProductSeller ps = new ProductSeller(idProduct, idSeller, p.Price); //this.Sold.Add(ps); RNProductSeller.AddProductSeller(ps); } } }
/** * Agrega el producto en la base de productos. En caso que ya este incrementa el stock */ public void AddToStock(Product newProduct) { //Si el producto ya existe solo debe incrementar el stock y actualizar los datos del producto. //Primero se debe hacer una busqueda para validar si el producto ya existe en la base Product existingProduct = this.FindProductInStock(newProduct.IdProduct); if (existingProduct != null) { existingProduct.Name = newProduct.Name; existingProduct.Stock += newProduct.Stock; existingProduct.Price = newProduct.Price; existingProduct.Active = newProduct.Active; existingProduct.IdSeller = newProduct.IdSeller; //existingProduct.Seller = DBService.GetInstance().FindSellerById(newProduct.Seller.IdSeller); //existingProduct.Seller = RNSeller.SearchSeller(newProduct.Seller.IdSeller); RNProduct.UpdateProduct(existingProduct); } else { // this.Stock.Add(newProduct); RNProduct.AddProduct(newProduct); } }
public ActionResult Delete(int id) { RNProduct.Eliminar(id); return(Redirect("/Product/Index")); }
/* * Cambia el estado del producto a Activado o Desactivado */ internal void ChangeProductStatus(Product product) { product.Active = !product.Active; RNProduct.UpdateProduct(product); }