public ClienteCompleto BuscarPorId(int Id)
 {
     using (var db = new VentasDB())
     {
         return(db.Clientes.Find(Id).ConvertirADTOCompleto());
     }
 }
 public IEnumerable <ClienteRegistrado> ListarTodosLosClientes()
 {
     using (var db = new VentasDB())
     {
         return(db.Clientes.ToList().Select(x => x.ConvertirADTO()));
     }
 }
        public void Registrar(NuevoUsuario peticion)
        {
            using (var db = new VentasDB())
            {
                var usuario = db.Usuarios
                              .FirstOrDefault(x => x.Alias.Equals(peticion.Alias));
                if (usuario != null)
                {
                    throw new InvalidOperationException("Ya existe un usuario con ese nombre");
                }
                if (!peticion.Password.Equals(peticion.ConfirmacionDePassword))
                {
                    throw new InvalidOperationException("El password y su confirmacion no coinciden");
                }

                var nuevoUsuario = peticion.ConvertirAEntidad();
                nuevoUsuario.Password = this._gestorDeCriptografia.EncriptarEnAES256(peticion.Password);
                db.Roles
                .Where(x => peticion.NombresDeLosRoles.Contains(x.Nombre))
                .ToList()
                .ForEach(x => nuevoUsuario.Roles.Add(x));
                db.Usuarios.Add(nuevoUsuario);
                db.SaveChanges();
            }
        }
Ejemplo n.º 4
0
        public VentaRegistrada RegistrarNuevaVenta(NuevaVenta nuevaVenta)
        {
            using (var db = new VentasDB())
            {
                Venta venta = nuevaVenta.ConvertirAEntidad();
                db.Ventas.Add(venta);
                db.SaveChanges();

                var informacionDeLaVenta = db.Ventas
                                           .Where(x => x.Id.Equals(venta.Id))
                                           .Select(x => new
                {
                    NombreDelCliente  = x.Cliente.NombreCompleto,
                    NombreDelVendedor = x.Vendedor.NombreCompleto
                })
                                           .First();

                return(new VentaRegistrada()
                {
                    Id = venta.Id,
                    Fecha = venta.Fecha,
                    MontoTotal = venta.Total,
                    NombreCliente = informacionDeLaVenta.NombreDelCliente,
                    NombreDelVendedor = informacionDeLaVenta.NombreDelVendedor
                });
            }
        }
 public IEnumerable <PersonaGenerica> ListarVendedores()
 {
     using (var db = new VentasDB())
     {
         return(db.Vendedores.ToList().Select(x => x.ConvertirADTOSimplificado()));
     }
 }
 public IEnumerable <CategoriaRegistrada> ListarTodasLasCategorias()
 {
     using (var db = new VentasDB())
     {
         return(db.Categorias.ToList().Select(x => x.ConvertirADTO()));
     }
 }
 public ClienteCompleto RegistrarNuevoCliente(NuevoCliente nuevoCliente)
 {
     using (var db = new VentasDB())
     {
         var cliente = nuevoCliente.ConvertirAEntidad();
         db.Clientes.Add(cliente);
         db.SaveChanges();
         return(cliente.ConvertirADTOCompleto());
     }
 }
 public ClienteCompleto ActualizarCliente(ActualizacionDeCliente actualizacionDeCliente)
 {
     using (var db = new VentasDB())
     {
         var cliente = db.Clientes.Find(actualizacionDeCliente.Id);
         actualizacionDeCliente.ActualizarRegistro(cliente);
         db.SaveChanges();
         return(cliente.ConvertirADTOCompleto());
     }
 }
 public IEnumerable <ProductoRegistrado> ListarProductosPorCategoria(int categoriaId)
 {
     using (var db = new VentasDB())
     {
         return(db.Productos
                .Where(x => x.CategoriaId.Equals(categoriaId))
                .ToList()
                .Select(x => x.ConvertirADTO())
                );
     }
 }
Ejemplo n.º 10
0
 public IEnumerable <MontoDeVentaPorVendedor> ListarVentasPorVendedor()
 {
     using (var db = new VentasDB())
     {
         return(db.Ventas
                .GroupBy(x => x.Vendedor.NombreCompleto, y => y.Total)
                .Select(x => new
         {
             vendedor = x.Key,
             monto = x.Sum()
         })
                .ToList()
                .Select(x => new MontoDeVentaPorVendedor()
         {
             MontoVendido = x.monto,
             NombreVendedor = x.vendedor
         }));
     }
 }
 public Session Login(IntentoDeInicioDeSession peticion)
 {
     using (var db = new VentasDB())
     {
         var usuario = db.Usuarios
                       .Include("Roles")
                       .FirstOrDefault(x => x.Alias.Equals(peticion.Alias));
         if (usuario == null)
         {
             throw new InvalidOperationException("El usuario no existe o el password es equivocado");
         }
         if (elPasswordEsValido(usuario, peticion.Password))
         {
             return(usuario.ConvertirADTO());
         }
         else
         {
             throw new InvalidOperationException("El usuario no existe o el password es equivocado");
         }
     }
 }
Ejemplo n.º 12
0
 public IEnumerable <VentaRegistrada> ListarTodasLasVentas()
 {
     using (var db = new VentasDB())
     {
         return(db.Ventas.Select(x => new
         {
             Id = x.Id,
             Fecha = x.Fecha,
             NombreVendedor = x.Vendedor.NombreCompleto,
             NombreCliente = x.Cliente.NombreCompleto,
             Total = x.Total
         })
                .ToList()
                .Select(x => new VentaRegistrada()
         {
             Fecha = x.Fecha,
             Id = x.Id,
             MontoTotal = x.Total,
             NombreCliente = x.NombreCliente,
             NombreDelVendedor = x.NombreVendedor
         }));
     }
 }