public async Task <bool> ExecuteTransaction(string transactionId)
        {
            var tx = await _transactionRepository.DoQuery().JoinWith(m => m.Account).Filter(m => m.TransactionId == transactionId).SingleResultAsync();

            IBankPaymentProcessor bpp = new BankCreator().CreateBankPaymentProcessor(tx.Account.BankName);

            return(await bpp.ExecuteTransaction(transactionId));
        }
예제 #2
0
        public async Task RequestBuildTower(int x, int y, string towerType)
        {
            System.Diagnostics.Debug.WriteLine(x);
            System.Diagnostics.Debug.WriteLine(y);
            System.Diagnostics.Debug.WriteLine(towerType);
            Tower tower = null;

            switch (towerType)
            {
            case "Archer":
                tower = new ArcherCreator(10, 20, "physical").createTower();
                await _hubContext.Clients.All.SendAsync("BuildTower", x, y, tower, gameManager.Towers.Count);

                break;

            case "Bomber":
                tower = new BomberCreator(10, 20, "physical").createTower();
                await _hubContext.Clients.All.SendAsync("BuildTower", x, y, tower, gameManager.Towers.Count);

                break;

            case "Freeze":
                tower = new FreezeCreator(10, 20, "physical").createTower();
                await _hubContext.Clients.All.SendAsync("BuildTower", x, y, tower, gameManager.Towers.Count);

                break;

            case "Mage":
                tower = new MageCreator(10, 20, "physical").createTower();
                await _hubContext.Clients.All.SendAsync("BuildTower", x, y, tower, gameManager.Towers.Count);

                break;

            case "Bank":
                tower = new BankCreator(10, "physical").createTower();
                await _hubContext.Clients.All.SendAsync("BuildTower", x, y, tower, gameManager.Towers.Count);

                break;

            default:
                System.Diagnostics.Debug.WriteLine("Didn't found the tower type");
                break;
            }
            gameManager.AddTower(x, y, towerType, tower);
        }