static public void CrearOrden(Orden orden, List <CarritoItem> carrito, Usuario usuario) { try { foreach (CarritoItem item in carrito) { OrdenItem o_item = new OrdenItem(); o_item.cantidad = item.cantidad; o_item.id_producto = item.id_producto; o_item.precio = item.Producto.precio_real; orden.OrdenItem.Add(o_item); CarritoModelo.EliminarCarritoItem(item); Producto prod = ProductoModelo.ObtenerProductoPorID((int)o_item.id_producto); prod.stock -= o_item.cantidad; ProductoModelo.ModificarProducto(prod); } orden.id_usuario = usuario.id; orden.fecha_compra = DateTime.Now; orden.costo_total = carrito.Sum(i => i.Producto.precio_real * i.cantidad) + 50; OrdenModelo.InsertarOrden(orden); EnviarCorreo(usuario.email, orden); } catch (Exception ex) { throw new Exception(ex.Message); } }
public static void ModificarProducto(Producto producto) { try { if (string.IsNullOrEmpty(producto.nombre)) { throw new Exception("Nombre faltante"); } if (producto.precio < 0) { throw new Exception("Precio no valido"); } if (producto.stock < 0) { throw new Exception("Existencias no validas"); } if (producto.id_categoria == 0) { throw new Exception("Falta categoría"); } ProductoModelo.ModificarProducto(producto); } catch (Exception ex) { throw new Exception(ex.Message); } }