-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbootstrap.php
More file actions
30 lines (26 loc) · 1.12 KB
/
Copy pathbootstrap.php
File metadata and controls
30 lines (26 loc) · 1.12 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?php
use App\Client\ApiClient;
use App\Repository\TransactionRepository;
use App\Service\CommissionCalculator\DepositCommissionCalculator;
use App\Service\CommissionCalculator\WithdrawBusinessCommissionCalculator;
use App\Service\CommissionCalculator\WithdrawPrivateCommissionCalculator;
use App\Service\CurrencyConverter;
use App\Service\MathService;
use App\Service\TransactionService;
use App\Utils\CSVReader;
require 'vendor/autoload.php';
$apiClient = new ApiClient(new GuzzleHttp\Client());
$currencyConverter = new CurrencyConverter($apiClient);
$transactionRepository = new TransactionRepository();
$mathService = new MathService();
$depositCalculator = new DepositCommissionCalculator($mathService);
$withdrawPrivateCalculator = new WithdrawPrivateCommissionCalculator($transactionRepository, $currencyConverter, $mathService);
$withdrawBusinessCalculator = new WithdrawBusinessCommissionCalculator($mathService);
$transactionService = new TransactionService(
$depositCalculator,
$withdrawPrivateCalculator,
$withdrawBusinessCalculator,
$currencyConverter,
$transactionRepository
);
$csvReader = new CSVReader();