public Boolean AgregarTipo(Tipo nuevoTipo)
 {
     using (var context = new WebBotilleriaEntities())
     {
         context.TipoBebidas.AddObject(new TipoBebida() {id_tipo = (int)nuevoTipo, tipo= nuevoTipo.ToString() });
     }
     return true;
 }
 public Boolean AgregarMarca(Marca nuevaMarca)
 {
     using (var context = new WebBotilleriaEntities())
     {
         context.MarcaBebidas.AddObject(new MarcaBebida() {  id_marca= (int)nuevaMarca, marca = nuevaMarca.ToString() });
     }
     return true;
 }
 public static Boolean EliminarProductoDeBodega(int idProducto, int idBodega)
 {
     using (var context = new WebBotilleriaEntities())
     {
         if (context.DetalleBodegaLocals.Where(c => c.id_bodega_fk == idBodega).Where(c => c.id_bebida_fk == idProducto).FirstOrDefault().cantidad == 0)
         {
             context.DeleteObject(context.DetalleBodegaLocals.Where(c => c.id_bodega_fk == idBodega).Where(c => c.id_bebida_fk == idProducto).FirstOrDefault());
             context.SaveChanges();
             return true;
         }
         else
             return false;
     }
 }
 public static Boolean EliminarBodega(int idBodegaEliminar)
 {
     using (var context = new WebBotilleriaEntities())
     {
         foreach (Bebida item in BuscarProductosEnBodega(idBodegaEliminar))
         {
             if (!EliminarProductoDeBodega(item.ID, idBodegaEliminar))
                 return false;
         }
         context.DeleteObject(context.Bodegas.FirstOrDefault().id_bodega == idBodegaEliminar);
         context.SaveChanges();
     }
     return true;
 }
        public static int ObtenerIDUltimaPersona()
        {
            using (var context = new WebBotilleriaEntities())
            {
                var conjunto = context.Usuarios.ToList<Usuario>().LastOrDefault<Usuario>();
                if (conjunto == null)
                    return 0;
                else
                {
                    int id = conjunto.id_usuario;
                    return id;
                }

            }
        }
 public static Boolean GuardarPersona(Persona nuevaPersona)
 {
     Persona instancia = new Persona();
     if (!BuscarUsername(nuevaPersona.NombreUsuario, out instancia))
     {
         using (var context = new WebBotilleriaEntities())
         {
             context.Usuarios.AddObject(Usuario.CreateUsuario(ObtenerIDUltimaPersona() + 1, nuevaPersona.NombreUsuario, nuevaPersona.Password, nuevaPersona.Administrador));
             context.SaveChanges();
             return true;
         }
     }
     else
         return false;
 }
 public static Boolean EliminarProducto(int idProducto)
 {
     using (var context = new WebBotilleriaEntities())
     {
         List<EntidadBebida> listaBebidas = context.Bebidas.ToList<EntidadBebida>();
         if (listaBebidas.Where(s => s.id_bebida == idProducto).FirstOrDefault() != null)
         {
             context.Bebidas.DeleteObject(listaBebidas.Where(s => s.id_bebida == idProducto).FirstOrDefault());
             context.SaveChanges();
             return true;
         }
         else
             return false;
     }
 }
 public static Boolean BuscarNombreBebida(string nombreBebida)
 {
     bool existe = false;
     var context = new WebBotilleriaEntities();
     List<EntidadBebida> listaEBebidas = context.Bebidas.ToList<EntidadBebida>();
     foreach (var item in listaEBebidas)
     {
         if (item.nombre_producto.Equals(nombreBebida))
         {
             existe = true;
             return existe;
         }
     }
     return existe;
 }
 public static Boolean AgregarNuevaBodega(Bodega nuevaBodega)
 {
     using (var context = new WebBotilleriaEntities())
     {
         context.Bodegas.AddObject(
             new EntidadBodega()
             {
                 id_bodega = GenerarNuevaIDBodega(),
                 nombre_bodega = nuevaBodega.NombreBodega,
                 direccion = nuevaBodega.DireccionBodega,
                 telefono = nuevaBodega.Telefono,
                 correo_electronico = nuevaBodega.CorreoBodega
             }
             );
         return true;
     }
 }
 public static Boolean BuscarUsername(string strUsername, out Persona instanciaPersona)
 {
     bool blnExiste = false;
     instanciaPersona = new Persona();
     var context = new WebBotilleriaEntities();
     List<Usuario> listaPersonas = context.Usuarios.ToList<Usuario>();
     foreach (var item in listaPersonas)
     {
         if (item.nombre_usuario.Equals(strUsername))
         {
             blnExiste = true;
             instanciaPersona.ID = item.id_usuario;
             instanciaPersona.NombreUsuario = item.nombre_usuario;
             instanciaPersona.Password = item.contrasenja_usuario;
             instanciaPersona.Administrador = item.esAdministrador;
             return blnExiste;
         }
     }
     return blnExiste;
 }
 public static Boolean ActualizarStock(int actualizacion, int idBodega, int idProducto)
 {
     try
     {
         var context = new WebBotilleriaEntities();
         DetalleEnBodega detalle = context.DetalleBodegaLocals.Where(c => c.id_bodega_fk == idBodega).Where(c => c.id_bebida_fk == idProducto).ToList<DetalleEnBodega>().FirstOrDefault();
         //if ((context.DetalleBodegaLocals.Where(c => c.id_bodega_fk == idBodega).Where(c => c.id_bebida_fk == idProducto).ToList<DetalleEnBodega>().FirstOrDefault()) != null)
         if (detalle != null)
         {
             //if (context.DetalleBodegaLocals.Where(c => c.id_bodega_fk == idBodega).Where(c => c.id_bebida_fk == idProducto).ToList<DetalleEnBodega>().First().cantidad + actualizacion >= 0)
             if (detalle.cantidad + actualizacion >= 0)
             {
                 //context.DetalleBodegaLocals.Where(c => c.id_bodega_fk == idBodega).Where(c => c.id_bebida_fk == idProducto).ToList<DetalleEnBodega>().First().cantidad += actualizacion;
                 detalle.cantidad += actualizacion;
                 context.SaveChanges();
                 return true;
             }
         }
         else
         {
             if (actualizacion >= 0 && context.Bodegas.Where(c => c.id_bodega == idBodega).FirstOrDefault() != null)
             {
                 context.DetalleBodegaLocals.AddObject(DetalleEnBodega.CreateDetalleEnBodega(idBodega, idProducto, actualizacion));
                 context.SaveChanges();
                 return true;
             }
             else
                 return false;
         }
         return false;
     }
     catch (Exception e)
     {
         Console.WriteLine(e.ToString());
         return false;
     }
 }
 public static List<Bebida> BuscarProductosEnBodega(int idBodega)
 {
     List<Bebida> listado = new List<Bebida>();
     using (var context = new WebBotilleriaEntities())
     {
         var relaciones = context.DetalleBodegaLocals.Where(c => c.id_bodega_fk == idBodega);
         foreach (var item in relaciones)
         {
             Bebida instancia = new Bebida();
             instancia.ID = item.id_bebida_fk;
             instancia.Nombre = item.Bebida.nombre_producto;
             instancia.Marca = (Marca)item.Bebida.marca;
             instancia.Precio = item.Bebida.precio;
             instancia.GradosDeAlcohol = item.Bebida.grados_alcohol;
             instancia.TipoProducto = (Tipo)item.Bebida.tipo;
             instancia.Retornable = item.Bebida.es_retornable;
             instancia.VolumenLitros = item.Bebida.volumen_litros;
             instancia.Comentario = item.Bebida.comentario;
             instancia.Cantidad = item.cantidad;
             listado.Add(instancia);
         }
         return listado;
     }
 }
 public static int GenerarNuevaIDBodega()
 {
     using (var context = new WebBotilleriaEntities())
     {
         if (context.Bodegas.LastOrDefault() != null)
         {
             int idBodega = context.Bodegas.LastOrDefault().id_bodega;
             return idBodega + 1;
         }
         else
             return 1;
     }
 }
 public static Boolean ingresarBebida(Bebida nuevoProducto)
 {
     if (!BuscarNombreBebida(nuevoProducto.Nombre))
     {
         using (var context = new WebBotilleriaEntities())
         {
             EntidadBebida bebida = new EntidadBebida()
             {
                 id_bebida = ObtenerIDUltimaBebida() + 1,
                 nombre_producto = nuevoProducto.Nombre,
                 marca = (int)nuevoProducto.Marca,
                 volumen_litros = (float)nuevoProducto.VolumenLitros,
                 precio = (float)nuevoProducto.Precio,
                 tipo = (int)nuevoProducto.TipoProducto,
                 grados_alcohol = (float)nuevoProducto.GradosDeAlcohol,
                 comentario = nuevoProducto.Comentario,
                 es_retornable = nuevoProducto.Retornable
             };
             context.Bebidas.AddObject(bebida);
             context.SaveChanges();
             return true;
         }
     }
     else
         return false;
 }
        public static int ObtenerIDUltimaBebida()
        {
            using (var context = new WebBotilleriaEntities("name=WebBotilleriaEntities"))
            {
                var conjunto = context.Bebidas.ToList<EntidadBebida>().LastOrDefault();
                if (conjunto == null)
                    return 0;
                else
                {
                    int id = conjunto.id_bebida;
                    return id;
                }

            }
        }