Use trait and interface.

This commit is contained in:
James Cole
2025-02-23 12:28:27 +01:00
parent 79ae110368
commit de8149137a
32 changed files with 165 additions and 343 deletions

View File

@@ -33,16 +33,15 @@ use FireflyIII\Models\RecurrenceTransactionMeta;
use FireflyIII\Models\RuleAction;
use FireflyIII\Services\Internal\Destroy\CategoryDestroyService;
use FireflyIII\Services\Internal\Update\CategoryUpdateService;
use FireflyIII\Support\Repositories\UserGroup\UserGroupInterface;
use FireflyIII\Support\Repositories\UserGroup\UserGroupTrait;
use FireflyIII\User;
use Illuminate\Contracts\Auth\Authenticatable;
use Illuminate\Support\Collection;
use Illuminate\Support\Facades\Log;
/**
* Class CategoryRepository.
*/
class CategoryRepository implements CategoryRepositoryInterface
class CategoryRepository implements CategoryRepositoryInterface, UserGroupInterface
{
use UserGroupTrait;
@@ -168,13 +167,6 @@ class CategoryRepository implements CategoryRepositoryInterface
return $category;
}
public function setUser(null|Authenticatable|User $user): void
{
if ($user instanceof User) {
$this->user = $user;
}
}
public function removeNotes(Category $category): void
{
$category->notes()->delete();

View File

@@ -28,16 +28,16 @@ use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Helpers\Collector\GroupCollectorInterface;
use FireflyIII\Support\Report\Summarizer\TransactionSummarizer;
use FireflyIII\User;
use Illuminate\Contracts\Auth\Authenticatable;
use FireflyIII\Support\Repositories\UserGroup\UserGroupInterface;
use FireflyIII\Support\Repositories\UserGroup\UserGroupTrait;
use Illuminate\Support\Collection;
/**
* Class NoCategoryRepository
*/
class NoCategoryRepository implements NoCategoryRepositoryInterface
class NoCategoryRepository implements NoCategoryRepositoryInterface, UserGroupInterface
{
private User $user;
use UserGroupTrait;
/**
* This method returns a list of all the withdrawal transaction journals (as arrays) set in that period
@@ -77,21 +77,14 @@ class NoCategoryRepository implements NoCategoryRepositoryInterface
$journalId = (int) $journal['transaction_journal_id'];
$array[$currencyId]['categories'][0]['transaction_journals'][$journalId]
= [
'amount' => app('steam')->negative($journal['amount']),
'date' => $journal['date'],
];
'amount' => app('steam')->negative($journal['amount']),
'date' => $journal['date'],
];
}
return $array;
}
public function setUser(null|Authenticatable|User $user): void
{
if ($user instanceof User) {
$this->user = $user;
}
}
/**
* This method returns a list of all the deposit transaction journals (as arrays) set in that period
* which have no category set to them. It's grouped per currency, with as few details in the array
@@ -130,9 +123,9 @@ class NoCategoryRepository implements NoCategoryRepositoryInterface
$journalId = (int) $journal['transaction_journal_id'];
$array[$currencyId]['categories'][0]['transaction_journals'][$journalId]
= [
'amount' => app('steam')->positive($journal['amount']),
'date' => $journal['date'],
];
'amount' => app('steam')->positive($journal['amount']),
'date' => $journal['date'],
];
}
return $array;

View File

@@ -29,17 +29,18 @@ use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Helpers\Collector\GroupCollectorInterface;
use FireflyIII\Support\Facades\Amount;
use FireflyIII\Support\Report\Summarizer\TransactionSummarizer;
use FireflyIII\Support\Repositories\UserGroup\UserGroupInterface;
use FireflyIII\Support\Repositories\UserGroup\UserGroupTrait;
use FireflyIII\User;
use Illuminate\Contracts\Auth\Authenticatable;
use Illuminate\Support\Collection;
use Illuminate\Support\Facades\Log;
/**
* Class OperationsRepository
*/
class OperationsRepository implements OperationsRepositoryInterface
class OperationsRepository implements OperationsRepositoryInterface, UserGroupInterface
{
private User $user;
use UserGroupTrait;
/**
* This method returns a list of all the withdrawal transaction journals (as arrays) set in that period
@@ -112,13 +113,6 @@ class OperationsRepository implements OperationsRepositoryInterface
return $array;
}
public function setUser(null|Authenticatable|User $user): void
{
if ($user instanceof User) {
$this->user = $user;
}
}
/**
* Returns a list of all the categories belonging to a user.
*/