When choosing a dish from a menu, there is no real discernible difference between “What will you have?” and “What are you going to have?”
Both phrases are correct. Sometimes a restaurant customer already has an idea of what he wants to eat if he is familiar with the establishment. Sometimes a speaker wants to emphasize the element of intention, thus going to might be preferred. If both customers have been reading the menu for a couple of minutes, going to leans towards the intention or prediction aspect. And sometimes it's just quicker to say “What'll you have?” There's nothing to suggest impoliteness or inappropriateness about either form.
However, I'd say the will form is more common when replying: I'll have the spaghetti carbonara.