Пример #1
0
        /// <summary>
        /// Determina si dentro de una receta hay ingredientes a los que le falta asignar el precio
        /// Esto indica si una receta esta apta para utilizarse o debe quedar inactiva
        /// </summary>
        /// <param name="receta">Receta a consultar</param>
        /// <returns>Valor que indica si hay ingredientes con faltante de precio</returns>
        public bool HayFaltantes(Receta receta)
        {
            if (receta == null)
            {
                throw new OBMCateringException(Resources.BL_Validaciones_RecetaNull);
            }

            bool faltantes = false;

            Datos.IngredientesDAL        dalIngredientes        = dal.ObtenerIngredientesDAL();
            Datos.PreciosIngredientesDAL dalPreciosIngredientes = dal.ObtenerPreciosIngredientesDAL();

            foreach (IngredienteReceta ingredienteReceta in receta.Ingredientes)
            {
                Datos.Ingrediente ingredienteDAL = dalIngredientes.Obtener(ingredienteReceta.Ingrediente.Nombre);

                if (ingredienteDAL == null)
                {
                    faltantes = true;
                    break;
                }

                Datos.PrecioIngrediente precioIngredienteDAL = dalPreciosIngredientes.Obtener(ingredienteDAL);

                if (precioIngredienteDAL == null || precioIngredienteDAL.Precio == null)
                {
                    faltantes = true;
                    break;
                }
            }

            return(faltantes);
        }