private MeetingPayment(PayerId payerId, MeetingId meetingId, MoneyValue fee)
 {
     PayerId     = payerId;
     MeetingId   = meetingId;
     _createDate = DateTime.UtcNow;
     _fee        = fee;
 }
        private MeetingPayment(PayerId payerId, MeetingId meetingId, MoneyValue fee)
        {
            this.CheckRule(new MeetingPaymentFeeMustBeGreaterThanZeroRule(fee));

            PayerId     = payerId;
            MeetingId   = meetingId;
            _createDate = SystemClock.Now;
            _fee        = fee;

            this.AddDomainEvent(new MeetingPaymentCreatedDomainEvent(this.PayerId, this.MeetingId, _fee));
        }
 public static MeetingPayment CreatePaymentForMeeting(PayerId payerId, MeetingId meetingId, MoneyValue fee)
 {
     return(new MeetingPayment(payerId, meetingId, fee));
 }