Instead of beheading him, imprisoning him or beating him with a big stick, non of which will happen about this:
Sentence him to 12 months imprisonment suspended for 6 months on the understanding that he completes 100 community service but here is the twist. He has to do his 100 hours at that Asda store. I would make him clean the car park, litter pick etc. The manager would ensure he works and if he doesn't he goes to prison.
Can you imagine the worry he would have whilst there, a boyfriend/husband of the woman he assaulted could turn up at any time ! It would also punish him if it had to be done in 6 hour stints