While Bopizku has a bit of a point, I would still go so far as to say that what John did should be acceptable and not result in a ban.
After all, the kid (despite being a minor) was still the one who initiated the conflict by throwing the first punch. John reacted in a manner a lot of people would react in, but he went a step further by not even physically harming the kid. If anything, this could be claimed as self defense, and there are obviously several witnesses who would attest to that.
I'd say you should defiantly cause a ruckus with higher ups; even if you can't convince them that John was in the right by defended himself, at the very least you and your other friend were obviously not a part of the fight and should have not even been considered as a part of the mess. For all the managers knew, you two were passing by who happened to witness the event. Really, this is just bureaucratic bullstuff.