public async Task <Unit> Handle(Ejecuta request, CancellationToken cancellationToken) { var carrito = new CarritoSesion { FechaCreacion = request.FechaCreacionSesion }; contexto.CarritoSesion.Add(carrito); var value = await contexto.SaveChangesAsync(); if (value == 0) { throw new Exception("No se pudo guardar el carrito"); } int id = carrito.CarritoSesionId; List <CarritoSesionDetalle> carritoSesionDetalle = request.ProductoLista.Select(s => new CarritoSesionDetalle { FechaCreacion = DateTime.Now, CarritoSesionId = carrito.CarritoSesionId, ProductoSeleccionado = s }).ToList(); contexto.CarritoSesionDetalle.AddRange(carritoSesionDetalle); value = await contexto.SaveChangesAsync(); return(value > 0 ? Unit.Value : throw new Exception("No se pudo guardar el detalle del carrito")); }
public async Task <Unit> Handle(Ejecuta request, CancellationToken cancellationToken) { var carritoSesion = new CarritoSesion { FechaCreacion = request.FechaCreacion, }; _contexto.CarritoSesion.Add(carritoSesion); var valor = await _contexto.SaveChangesAsync(); if (valor == 0) { throw new Exception("No se pudo crear la sesion del carrito"); } int id = carritoSesion.CarritoSesionId; foreach (var obj in request.ProductoLista) { var detalleSesion = new CarritoSesionDetalle { FechaCreacion = DateTime.Now, ProductoSeleccionado = obj, CarritoSesionId = id }; _contexto.CarritoSesionDetalle.Add(detalleSesion); } valor = await _contexto.SaveChangesAsync(); if (valor > 0) { return(Unit.Value); } throw new Exception("No se pudo insertar el detalle del carrito"); }
public async Task <Unit> Handle(Ejecuta request, CancellationToken cancellationToken) { var carritosession = new CarritoSession() { FechaCreacion = request.FechaCreacionSession }; _contexto.CarritoSession.Add(carritosession); var value = await _contexto.SaveChangesAsync(); if (value == 0) { throw new Exception("Error en insersion de carrito de compras"); } int id = carritosession.CarritoSessionId; foreach (var producto in request.ProductoLista) { var detallesession = new CarritoSessionDetalle() { FechaCreacion = DateTime.Now, CarritoSessionId = id, ProductoSeleccionado = producto }; _contexto.CarritoSessionDetalle.Add(detallesession); } value = await _contexto.SaveChangesAsync(); if (value > 0) { return(Unit.Value); } throw new Exception("No se pudo insertar el detalle del carrito"); }
public async Task <Unit> Handle(Ejecuta request, CancellationToken cancellationToken) { var carritoSesion = new CarritoSesion() { FechaCreacion = request.FechaCreacionSesion }; _context.CarritoSesion.Add(carritoSesion); var value = await _context.SaveChangesAsync(); if (value == 0) { throw new Exception("Error en insert"); } foreach (var item in request.ProductoLista) { var carritoDetalle = new CarritoSesionDetalle() { CarritoSesionId = carritoSesion.CarritoSesionId, ProductoSeleccionado = item, FechaCreacion = DateTime.Now }; _context.CarritoSesionDetalle.Add(carritoDetalle); } value = await _context.SaveChangesAsync(); if (value > 0) { return(Unit.Value); } throw new Exception("Error en insert"); }
public async Task <Unit> Handle(Request request, CancellationToken cancellationToken) { var carritoSesion = new CarritoSesion() { FechaCreacion = request.FechaCreacion ?? DateTime.Now }; _contexto.CarritoSesion.Add(carritoSesion); var result = await _contexto.SaveChangesAsync(); if (result < 1) { throw new Exception("Error al crear carrito de compra"); } foreach (var elemento in request.ListaLibroSeleccionado) { var carritoSesionDetalle = new CarritoSesionDetalle() { FechaCreacion = DateTime.Now, LibroSeleccionado = elemento, CarritoSesionId = carritoSesion.CarritoSesionId }; _contexto.CarritoSesionDetalle.Add(carritoSesionDetalle); } var result2 = await _contexto.SaveChangesAsync(); if (result2 < 1) { throw new Exception("Error al crear carrito de compra detalles"); } return(Unit.Value); }