예제 #1
0
 public uint AddSubscription(Subscription subscription, string description = "")
 {
     for (uint i = 0; ; i++)
     {
         if (!subscriptions.ContainsKey(i))
         {
             subscriptions[i] = new PersonalSubscription(subscription, PointInTime);
             return(i);
         }
     }
 }
예제 #2
0
 public void MoveInTime(DateTime destination)
 {
     if (destination < PointInTime)
     {
         throw new ArgumentException("Путешествие в прошлое не возможно!");
     }
     foreach (var entry in subscriptions)
     {
         PersonalSubscription subscription = entry.Value;
         Payment payment = subscription.Subscription.CalculatePayment(subscription.DateStart, PointInTime, destination);
         Pay(payment);
     }
     PointInTime = destination;
 }