Esempio n. 1
0
        public (bool Success, float Balance) BuyVoucher(UTransit.Models.StudentTransaction transaction)
        {
            var result = _students.Next.Find((x, y) => x.IndexNumber[y] == transaction.IndexNumber);

            if (result.success)
            {
                result.Value.Transactions[result.Index].Add(transaction);
                result.Value.Balance[result.Index] += transaction.Amount;
                DataWriter.Add(transaction, "Transactions");
                return(Success : true, result.Value.Balance[result.Index]);
            }
            return(Success : false, result.Value.Balance[result.Index]);
        }
Esempio n. 2
0
 public void Add(UTransit.Models.StudentTransaction transaction)
 {
     lock (transaction)
     {
         if (Heigth > _limit - 1)
         {
             if (index == _limit)
             {
                 index = 0;
             }
             Next[index].Add(transaction);
             index++;
         }
         else
         {
             Next[Heigth] = new StudentTransaction(1000);
             Next[index].Add(transaction);
             Heigth++;
         }
     }
 }
Esempio n. 3
0
        public void Add(UTransit.Models.StudentTransaction transaction)
        {
            lock (transaction)
            {
                if (Count == TransactionId.Length)
                {
                    var newLength      = TransactionId.Length + 1000;
                    var _transactionId = new string[newLength];
                    TransactionId.CopyTo(_transactionId, 0);
                    TransactionId = _transactionId;

                    var _amount = new float[newLength];
                    Amount.CopyTo(_amount, 0);
                    Amount = _amount;

                    var _indexNumber = new string[newLength];
                    IndexNumber.CopyTo(_indexNumber, 0);
                    IndexNumber = _indexNumber;

                    var _busNumber = new string[newLength];
                    BusNumber.CopyTo(_busNumber, 0);
                    BusNumber = _indexNumber;

                    var _state = new int[newLength];
                    State.CopyTo(_state, 0);
                    State = _state;

                    var _date = new DateTime[newLength];
                    Date.CopyTo(_date, 0);
                    Date = _date;
                }

                TransactionId[Count] = transaction.TransactionId;
                Amount[Count]        = transaction.Amount;
                IndexNumber[Count]   = transaction.IndexNumber;
                BusNumber[Count]     = transaction.BusNumber;
                State[Count]++;
                Count++;
            }
        }