Wigan Warriors ran in eight tries to beat Widnes Vikings to reach the semi-finals of the Challenge Cup.