Esempio n. 1
0
            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"));
            }
Esempio n. 2
0
            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");
            }
Esempio n. 3
0
            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");
            }
Esempio n. 4
0
            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);
            }