예제 #1
0
        public void ReturnGame(int gameId, int daysLimit)
        {
            var gettingGameInfo = GameInfos.Find(gameInfo => gameInfo.Game.Id == gameId);

            if (gettingGameInfo == null)
            {
                throw new InvalidOperationException();
            }

            if ((gettingGameInfo.Date - DateTime.Now).Days > daysLimit)
            {
                throw new InvalidOperationException();
            }
            if (gettingGameInfo.Payer.Id != Id)
            {
                gettingGameInfo.Payer.Balance += gettingGameInfo.Game.Price;
            }
            else
            {
                Balance += gettingGameInfo.Game.Price;
            }

            GameInfos.Remove(gettingGameInfo);
        }