£2.9bn Zero-hours bill hits British retail, hospitality and leisure already on last orders