public Promotion(ValidityRange validityRange, ReceiveCondition receiveCondition, Benefit benefit)
 {
     Id = Guid.NewGuid();
     ValidityRange = validityRange;
     ReceiveCondition = receiveCondition;
     Benefit = benefit;
 }
 public void SetReceiveCondition(ReceiveCondition condition)
 {
     Require.NotNull(condition, "condition");
     Require.IsNotIn(State, DraftState.WaitingForApproval, DraftState.Accepted);
     ReceiveCondition = condition;
     CheckCompletion();
 }