private MeetingGroupPayment(PaymentTerm term, PayerId payerId) { this.Id = new MeetingGroupPaymentId(Guid.NewGuid()); _term = term; _payerId = payerId; _date = SystemClock.Now; }
internal MeetingGroupPayment(PaymentTerm term, PayerId payerId) { this.Id = new MeetingGroupPaymentId(Guid.NewGuid()); _term = term; _payerId = payerId; _date = DateTime.UtcNow; }
internal bool OverlapsWith(PaymentTerm term) { return(this.IsBetween(term.StartDate) || this.IsBetween(term.EndDate) || term.IsBetween(this.StartDate) || term.IsBetween(this.EndDate)); }
public void RegisterPayment(PaymentTerm term, PayerId payerId) { var meetingGroupPayment = new MeetingGroupPayment(term, payerId); this.CheckRule(new MeetingGroupPaymentsCannotOverlapRule(_payments, meetingGroupPayment)); _payments.Add(meetingGroupPayment); this.AddDomainEvent(new PaymentRegisteredDomainEvent(this.Id, term.EndDate)); }
public void RegisterPayment(PaymentTerm term, PayerId payerId) { _payments.Add(new MeetingGroupPayment(term, payerId)); this.AddDomainEvent(new PaymentRegisteredDomainEvent(this.Id, term.EndDate)); }
internal static MeetingGroupPayment CreateForTerm(PaymentTerm term, PayerId payerId) { return(new MeetingGroupPayment(term, payerId)); }