public Deposit ( int percent, decimal value, AccrualsInterval interv, int periods ) { Percent = percent; Value = value; Interval = interv; StartDate = DateTime.Now; LastAccrual = StartDate; switch (interv) { case AccrualsInterval.minute: FinishDate = StartDate.AddMinutes(periods); break; case AccrualsInterval.month: FinishDate = StartDate.AddMonths(periods); break; case AccrualsInterval.year: FinishDate = StartDate.AddYears(periods); break; } }
public DepositCondition( int percent, AccrualsInterval interval, int duration ) { Percent = percent; Interval = interval; Duration = duration; }
public static void CheckData( int percent, decimal value, AccrualsInterval interv, DateTime startDate, DateTime finishDate ) { if (value <= 0) { throw new InputException("Сумма не может быть меньше или равна нулю!"); } if (finishDate <= startDate) { throw new InputException("Неправильная дата окончания!"); } }
public void Change( int percent, decimal value, AccrualsInterval interv, DateTime startDate, DateTime finishDate ) { CheckData(percent, value, interv, startDate, finishDate); // if no exceptions - change deposit data Percent = percent; Value = value; Interval = interv; StartDate = startDate; FinishDate = finishDate; }
public Deposit( int percent, decimal value, AccrualsInterval interv, DateTime startDate, DateTime finishDate ) { Percent = percent; Value = value; Interval = interv; if (startDate == DateTime.MinValue) { startDate = DateTime.Now; } if (finishDate == DateTime.MaxValue) { finishDate = startDate.AddMonths(12); } StartDate = startDate; LastAccrual = startDate; FinishDate = finishDate; }