mirror of
				https://github.com/firefly-iii/firefly-iii.git
				synced 2025-10-31 02:36:28 +00:00 
			
		
		
		
	Add custom method.
This commit is contained in:
		| @@ -641,4 +641,34 @@ class AccountRepository implements AccountRepositoryInterface, UserGroupInterfac | ||||
| 
 | ||||
|         return $factory->create($data); | ||||
|     } | ||||
| 
 | ||||
|     #[\Override] public function periodCollection(Account $account, Carbon $start, Carbon $end): array
 | ||||
|     { | ||||
|         return $account->transactions() | ||||
|             ->leftJoin('transaction_journals','transaction_journals.id','=','transactions.transaction_journal_id') | ||||
|             ->leftJoin('transaction_types','transaction_types.id','=','transaction_journals.transaction_type_id') | ||||
|             ->leftJoin('transaction_currencies','transaction_currencies.id','=','transactions.transaction_currency_id') | ||||
|             ->leftJoin('transaction_currencies as foreign_currencies','foreign_currencies.id','=','transactions.foreign_currency_id') | ||||
|             ->where('transaction_journals.date','>=',$start) | ||||
|             ->where('transaction_journals.date','<=',$end) | ||||
|             ->get([ | ||||
|                 // currencies
 | ||||
|                 'transaction_currencies.id as currency_id', | ||||
|                 'transaction_currencies.code as currency_code', | ||||
|                 'transaction_currencies.name as currency_name', | ||||
|                 'transaction_currencies.symbol as currency_symbol', | ||||
|                 'transaction_currencies.decimal_places as currency_decimal_places', | ||||
| 
 | ||||
|                 // foreign
 | ||||
|                 'foreign_currencies.id as foreign_currency_id', | ||||
|                 'foreign_currencies.code as foreign_currency_code', | ||||
|                 'foreign_currencies.name as foreign_currency_name', | ||||
|                 'foreign_currencies.symbol as foreign_currency_symbol', | ||||
|                 'foreign_currencies.decimal_places as foreign_decimal_places', | ||||
| 
 | ||||
|                 // fields
 | ||||
|                'transaction_journals.date', 'transaction_types.type', 'transaction_journals.transaction_currency_id', 'transactions.amount']) | ||||
|             ->toArray(); | ||||
| 
 | ||||
|     } | ||||
| } | ||||
|   | ||||
| @@ -71,6 +71,8 @@ interface AccountRepositoryInterface | ||||
| 
 | ||||
|     public function findByName(string $name, array $types): ?Account; | ||||
| 
 | ||||
|     public function periodCollection(Account $account, Carbon $start, Carbon $end): array; | ||||
| 
 | ||||
|     public function getAccountBalances(Account $account): Collection; | ||||
| 
 | ||||
|     public function getAccountCurrency(Account $account): ?TransactionCurrency; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user