public static void Comprar() { PedidoBC objPedidoBC = new PedidoBC(); CarritoBC objCarritoBC = new CarritoBC(); MailBC objMailBC = new MailBC(); try { CarritoBE objCarritoBE = (CarritoBE)HttpContext.Current.Session["CARRITO"]; UsuarioBE objUsuarioBE = (UsuarioBE)HttpContext.Current.Session["USUARIO"]; PedidoBE objPedidoBE = LlenarPedido(); objPedidoBE.Id_Pedido = objPedidoBC.Insert_Pedido_Completo(objPedidoBE); objCarritoBC.Delete_Carrito_Total(objUsuarioBE.Id_Usuario); objMailBC.Confirmar_Compra(objUsuarioBE, objCarritoBE); HttpContext.Current.Session["CARRITO"] = new CarritoBE(); } catch (Exception) { throw; } }
public static decimal QuitarCarrito(int id_producto, string idAtributos) { CarritoBE objCarritoBE = null; List <Carrito_ProductoBE> lstCarrito_ProductoBE = null; Carrito_ProductoBE objCarrito_ProductoBE = new Carrito_ProductoBE(); try { objCarritoBE = (CarritoBE)HttpContext.Current.Session["CARRITO"]; lstCarrito_ProductoBE = (from c in objCarritoBE.lstCarrito_ProductoBE where c.Id_Producto == Convert.ToInt32(id_producto) select c).ToList(); foreach (Carrito_ProductoBE cp in lstCarrito_ProductoBE) { string[] atributos = idAtributos.Split('_'); int atributosEliminados = 0; foreach (Carrito_Producto_Elemento_AtributoBE cpe in cp.lstCarrito_Producto_Elemento_AtributoBE) { foreach (string s in atributos) { if (!string.IsNullOrEmpty(s) && cpe.Id_Elemento_Atributo == Convert.ToInt32(s)) { atributosEliminados++; break; } } } if (atributosEliminados == atributos.Length - 1) { objCarrito_ProductoBE = cp; break; } } if (objCarritoBE.lstCarrito_ProductoBE.Count == 1) { objCarritoBE = new CarritoBE(); if (HttpContext.Current.Session["USUARIO"] != null) { CarritoBC objCarritoBC = new CarritoBC(); objCarritoBC.Delete_Carrito_Total(((UsuarioBE)HttpContext.Current.Session["USUARIO"]).Id_Usuario); } } else { objCarritoBE.lstCarrito_ProductoBE.Remove(objCarrito_ProductoBE); objCarritoBE.Total -= objCarrito_ProductoBE.Precio * objCarrito_ProductoBE.Cantidad; if (HttpContext.Current.Session["USUARIO"] != null) { Carrito_ProductoBC objCarrito_ProductoBC = new Carrito_ProductoBC(); objCarrito_ProductoBC.Delete_Carrito_Producto(objCarrito_ProductoBE.Id_Carrito_Producto); } } HttpContext.Current.Session["CARRITO"] = objCarritoBE; return(objCarrito_ProductoBE.Precio * objCarrito_ProductoBE.Cantidad); } catch (Exception ex) { LogFile.EscribirLog(ex); throw; } }