Place the flour and eggs in separate shallow bowls. Season the eggs with salt and pepper. Dip a piece of fish in the egg, then coat with the flour. Repeat with all pieces of fish.
Heat 200ml of the oil in a frying pan on medium heat. Once the oil is hot add the fish and fry on both sides until golden (you may have to do this in batches). Remove the fish from the frying pan and set aside.
In a clean frying frying pan, heat the remaining oil and fry the onions until translucent. Add the parsnip, carrots and celery root then stir well. Add the water, salt and pepper then cover and simmer on low heat for 30 minutes. Check and add more water if the mixture becomes too dry.
Stir the tomato puree into the vegetable mixture and simmer for an additional 5 minutes.
In a round serving dish, about 23cm in diameter, place alternating layers of the vegetables and fish, starting and ending with the vegetables. Serve while still hot.