Добрый день.
Есть сущность, которая хранит бухгалтерские балансы за несколько лет:
$company = new Company(
$id = ID::generate(),
$name = new Name('Ромашка"'),
....
$accounting = [
new BalanceSheet('2017,'356743','-56913','189632','122733'),
new BalanceSheet('2018','76743','-16953','1492','233')
]
);
Я хотел бы спроектировать возможность изменения баланса, хранящегося в
$accounting
Т.е. сделать какой то метод
refreshBalance
Пишу тест
$company = (new CreateBuilder())
->withAccounting([
//year//
new BalanceSheet('2018','356743','-56913','189632','122733'),
new BalanceSheet('2018','76743','-16953','1492','233')
])
->build();
$company->refreshBalance($newBalance = new BalanceSheet('2018', '556743', '-56913', '189632', '122733'));
$this->assertEquals($newBalance, $company->getBalance('2018'));
И тут я не могу сообразить. Если я сделаю метод для получения баланса за определенный год, то мне делать год ключом?
getBalance($year) { return а что ретурн он должен?}
Нужно сделать
year
ключем в
BalanceSheet('2018', ['556743', '-56913', '189632', '122733']))
?
И соответственно делать
refreshBalance(new BalanceSheet('2018', ['556743', '-56913', '189632', '122733'])))
, а метод должен проверять `2018`?
Извините, если сумбурно написал