Preheat oven to 180°c. Line a baking tray with baking paper
Place mushrooms on a lined baking tray. Drizzle with olive oil, season with salt and pepper and roast for 10 minutes or until softened. Top with grated cheese and bake for a further 5 minutes or until cheese is melted.
Heat a medium frying pan over medium-low heat. Fry slices of leftover ham until slightly crispy.
Layer one slice of bread with avocado, fried ham, mushroom, spinach, barbecue sauce and aioli. Season to taste. Top with remaining slice of bread.
Spread a thin layer of butter over the top slice of bread. Cook sandwich in frying pan, buttered side-down, for 2 minutes or until golden.
Carefully flip sandwich and spread other side with butter. Cook for a further 2 minutes or until golden.
Transfer toastie to a plate and top with fried egg to serve.