private void CheckCompletion() { IsComplete = ValidityRange != null && Benefit != null && ReceiveCondition != null && ValidityRange.IsDefined() && ValidityRange.StartsAfter(DomainTime.Current.Now.AddDays(-1)); }
public void MarkAsReady() { Require.NotNull(ValidityRange, "ValidityRange"); Require.NotNull(Benefit, "Benefit"); Require.NotNull(ReceiveCondition, "ReceiveCondition"); Require.IsTrue(() => ValidityRange.IsDefined() && ValidityRange.StartsAfter(DomainTime.Current.Now.AddDays(-1)), "validity range should be in future"); Require.IsIn(State, DraftState.New, DraftState.FixesRequired); State = DraftState.WaitingForApproval; DomainEventBus.Current.Raise(new PromotionDraftReady(Id, Owner.Id)); }