In a large pot, heat the olive oil over medium high heat and add the chopped onion, celery and carrots. Season them with salt, pepper and 1 tbs of Italian season. Sauté until soft, stirring frequently. This should take about 5-7 minutes.
Add the sausage and break in down into small pieces as it browns.
Once the sausage is fully cooked, add the chopped garlic and stir in the tomato paste for about 2 minutes.
Add the white wine and scrape all the bits off the bottom of the pan. Let the wine cook over medium high heat for about 2 minutes.
Stir in the chicken broth and beans.
Season the soup with salt, pepper, garlic powder and the rest of the Italian seasoning. Add the bay leaf, give the soup a big stir and simmer it, covered, for 20 minutes.
Stir in the heavy cream and parmesan cheese.
Stir in the spinach until it has wilted into the soup.
Finally, remove the bay leaf, serve warm and enjoy!