예제 #1
0
        public Platillo Insert(Platillo platillo)
        {
            //(C) POST
            List <Platillo> platilloList = DataSource(); // Base de datos actual deserealizada

            string nombre      = platillo.Nombre;
            string descripcion = platillo.Descripcion;
            double precio      = platillo.Precio;
            double calorias    = platillo.Calorias;

            if ((0 < precio) && (descripcion.Length <= 100) && (0 < calorias) && (nombre.Length <= 20))
            {
                int actualNumeroPlatillos = ConteoBL.AumentarPlatillos();

                platillo.Codigo = actualNumeroPlatillos;
                platilloList.Add(platillo);

                Serialize(platilloList); //Almacenamos la ultima version de la base de datos
                return(platillo);
            }
            else
            {
                return(null);
            }
        }
예제 #2
0
        public Platillo GetByCodigo(int Codigo)
        {
            //(R) GET
            Platillo platillo = DataSource().FirstOrDefault(singlePlatillo => singlePlatillo.Codigo == Codigo);

            if (platillo == null)
            {
                return(null);
            }
            return(platillo);
        }
예제 #3
0
        public Platillo UpdateFeedBack(int Codigo, double Feedback)
        {
            Platillo platillo = DataSource().FirstOrDefault(singlePlatillo => singlePlatillo.Codigo == Codigo);

            if (platillo != null && 0 < Feedback)
            {
                platillo.Feedback = (platillo.Feedback + Feedback) / 2;
                Platillo oldPlatillo = Update(platillo);
                return(oldPlatillo);
            }
            else
            {
                return(null);
            }
        }
예제 #4
0
        public Platillo UpdateNumeroVentas(int Codigo)
        {
            Platillo platillo = DataSource().FirstOrDefault(singlePlatillo => singlePlatillo.Codigo == Codigo);

            if (platillo == null)
            {
                return(null);
            }
            else
            {
                platillo.NumeroVentas++;
                Update(platillo);
                return(platillo);
            }
        }
예제 #5
0
        public Platillo Delete(int codigoPlatillo)
        {
            //logic to Delete
            Menu menu = DataSource(); // Base de datos actual

            Platillo platillo = menu.platillos.SingleOrDefault(singlePlatillo => singlePlatillo.Codigo == codigoPlatillo);

            if (platillo == null)
            {
                return(null);
            }

            menu.platillos.Remove(platillo);

            Serialize(menu);  //Almacenamos la ultima version de la base de datos

            return(platillo); //Se retorna el student como convension para que se sepa que el mismo si existia en la base de datos
        }
예제 #6
0
        public Platillo Delete(int Codigo)
        {
            //(D) DELETE
            List <Platillo> pedidosList = DataSource(); // Base de datos actual

            Platillo platillo = pedidosList.SingleOrDefault(singlePlatillo => singlePlatillo.Codigo == Codigo);

            if (platillo != null)
            {
                pedidosList.Remove(platillo);
                Serialize(pedidosList); //Almacenamos la ultima version de la base de datos

                return(platillo);       //Se retorna el platillo eliminado como convension para que se sepa que el mismo si existia en la base de datos
            }
            else
            {
                return(null);
            }
        }
예제 #7
0
        public void Insert(int codigoPlatillo)
        {
            Menu menu = DataSource(); //Deserealizamos la base de datos en su ultima version

            /* ------------------- Post/insert Method -----------------------*/
            PlatilloLogic platilloLogic = new PlatilloLogic();
            Platillo      platillo      = platilloLogic.GetByCodigo(codigoPlatillo);

            if (menu.platillos == null)
            {
                menu.platillos = new List <Platillo>();
            }

            menu.platillos.Add(platillo);

            Serialize(menu); //Almacenamos la ultima version de la base de datos

            /* ------------------- Post/insert Method -----------------------*/
        }
예제 #8
0
        public Platillo Update(Platillo platilloNuevaVersion)
        {
            //(U) PUT
            string nombre      = platilloNuevaVersion.Nombre;
            string descripcion = platilloNuevaVersion.Descripcion;
            double precio      = platilloNuevaVersion.Precio;
            double calorias    = platilloNuevaVersion.Calorias;
            int    codigo      = platilloNuevaVersion.Codigo;

            if ((0 < precio) && (descripcion.Length <= 100) && (0 < calorias) && (nombre.Length <= 20))
            {
                if (GetByCodigo(codigo) != null)
                {
                    List <Platillo> platillosList = GetAll();

                    Platillo platilloARemplazar = platillosList.SingleOrDefault(singlePlatillo => singlePlatillo.Codigo == codigo);

                    int indexOfPlatilloARemplazar = platillosList.IndexOf(platilloARemplazar);

                    if (indexOfPlatilloARemplazar != -1)
                    {
                        platillosList[indexOfPlatilloARemplazar] = platilloNuevaVersion;
                        Serialize(platillosList);
                        return(platilloARemplazar);
                    }
                    else // No se puede realizar el update pues no se encontro en la DB el platillo que se quiere actualizar.
                    {
                        return(null);
                    }
                }
                else // No se pudo realizar el update pues en realidad no existe el item que se quiere actualizar en la base de datos
                {
                    return(null);
                }
            }
            else  // No se pudo realizar el update pues el nuevo platillo no cumple con los requisitos necesarios.
            {
                return(null);
            }
        }