Clean up code.

This commit is contained in:
James Cole
2023-12-10 06:51:59 +01:00
parent c2b22a2bac
commit 46e130fdfe
195 changed files with 973 additions and 984 deletions

View File

@@ -255,7 +255,7 @@ class ListController extends Controller
$unfiltered = $recurringRepos->getAll(); $unfiltered = $recurringRepos->getAll();
// filter selection // filter selection
$collection = $unfiltered->filter(/** @phpstan-ignore-line */ $collection = $unfiltered->filter( // @phpstan-ignore-line
static function (Recurrence $recurrence) use ($currency) { // @phpstan-ignore-line static function (Recurrence $recurrence) use ($currency) { // @phpstan-ignore-line
/** @var RecurrenceTransaction $transaction */ /** @var RecurrenceTransaction $transaction */
foreach ($recurrence->recurrenceTransactions as $transaction) { foreach ($recurrence->recurrenceTransactions as $transaction) {
@@ -305,7 +305,7 @@ class ListController extends Controller
$ruleRepos = app(RuleRepositoryInterface::class); $ruleRepos = app(RuleRepositoryInterface::class);
$unfiltered = $ruleRepos->getAll(); $unfiltered = $ruleRepos->getAll();
$collection = $unfiltered->filter(/** @phpstan-ignore-line */ $collection = $unfiltered->filter( // @phpstan-ignore-line
static function (Rule $rule) use ($currency) { // @phpstan-ignore-line static function (Rule $rule) use ($currency) { // @phpstan-ignore-line
/** @var RuleTrigger $trigger */ /** @var RuleTrigger $trigger */
foreach ($rule->ruleTriggers as $trigger) { foreach ($rule->ruleTriggers as $trigger) {

View File

@@ -61,8 +61,7 @@ class DeleteEmptyJournals extends Command
{ {
$set = Transaction::whereNull('deleted_at') $set = Transaction::whereNull('deleted_at')
->groupBy('transactions.transaction_journal_id') ->groupBy('transactions.transaction_journal_id')
->get([DB::raw('COUNT(transactions.transaction_journal_id) as the_count'), 'transaction_journal_id']); ->get([DB::raw('COUNT(transactions.transaction_journal_id) as the_count'), 'transaction_journal_id']); // @phpstan-ignore-line
/** @phpstan-ignore-line */
$total = 0; $total = 0;
/** @var Transaction $row */ /** @var Transaction $row */
foreach ($set as $row) { foreach ($set as $row) {

View File

@@ -33,8 +33,7 @@ class DestroyedTransactionLink extends Event
{ {
use SerializesModels; use SerializesModels;
private TransactionJournalLink $link; private TransactionJournalLink $link; // @phpstan-ignore-line
/** @phpstan-ignore-line */
/** /**
* DestroyedTransactionLink constructor. * DestroyedTransactionLink constructor.

View File

@@ -50,7 +50,7 @@ class APIEventHandler
if (null !== $user) { if (null !== $user) {
try { try {
Notification::send($user, new NewAccessToken()); Notification::send($user, new NewAccessToken());
} catch (Exception $e) { /** @phpstan-ignore-line */ } catch (Exception $e) { // @phpstan-ignore-line
$message = $e->getMessage(); $message = $e->getMessage();
if (str_contains($message, 'Bcc')) { if (str_contains($message, 'Bcc')) {
app('log')->warning('[Bcc] Could not send notification. Please validate your email settings, use the .env.example file as a guide.'); app('log')->warning('[Bcc] Could not send notification. Please validate your email settings, use the .env.example file as a guide.');

View File

@@ -31,7 +31,6 @@ use FireflyIII\Notifications\Admin\TestNotification;
use FireflyIII\Notifications\Admin\UserInvitation; use FireflyIII\Notifications\Admin\UserInvitation;
use FireflyIII\Notifications\Admin\VersionCheckResult; use FireflyIII\Notifications\Admin\VersionCheckResult;
use FireflyIII\Repositories\User\UserRepositoryInterface; use FireflyIII\Repositories\User\UserRepositoryInterface;
use FireflyIII\Support\Facades\FireflyConfig;
use Illuminate\Support\Facades\Notification; use Illuminate\Support\Facades\Notification;
/** /**
@@ -58,7 +57,7 @@ class AdminEventHandler
if ($repository->hasRole($user, 'owner')) { if ($repository->hasRole($user, 'owner')) {
try { try {
Notification::send($user, new UserInvitation($event->invitee)); Notification::send($user, new UserInvitation($event->invitee));
} catch (Exception $e) { /** @phpstan-ignore-line */ } catch (Exception $e) { // @phpstan-ignore-line
$message = $e->getMessage(); $message = $e->getMessage();
if (str_contains($message, 'Bcc')) { if (str_contains($message, 'Bcc')) {
app('log')->warning('[Bcc] Could not send notification. Please validate your email settings, use the .env.example file as a guide.'); app('log')->warning('[Bcc] Could not send notification. Please validate your email settings, use the .env.example file as a guide.');
@@ -96,7 +95,7 @@ class AdminEventHandler
if ($repository->hasRole($user, 'owner')) { if ($repository->hasRole($user, 'owner')) {
try { try {
Notification::send($user, new VersionCheckResult($event->message)); Notification::send($user, new VersionCheckResult($event->message));
} catch (Exception $e) { /** @phpstan-ignore-line */ } catch (Exception $e) {// @phpstan-ignore-line
$message = $e->getMessage(); $message = $e->getMessage();
if (str_contains($message, 'Bcc')) { if (str_contains($message, 'Bcc')) {
app('log')->warning('[Bcc] Could not send notification. Please validate your email settings, use the .env.example file as a guide.'); app('log')->warning('[Bcc] Could not send notification. Please validate your email settings, use the .env.example file as a guide.');
@@ -130,7 +129,7 @@ class AdminEventHandler
} }
try { try {
Notification::send($event->user, new TestNotification($event->user->email)); Notification::send($event->user, new TestNotification($event->user->email));
} catch (Exception $e) { /** @phpstan-ignore-line */ } catch (Exception $e) { // @phpstan-ignore-line
$message = $e->getMessage(); $message = $e->getMessage();
if (str_contains($message, 'Bcc')) { if (str_contains($message, 'Bcc')) {
app('log')->warning('[Bcc] Could not send notification. Please validate your email settings, use the .env.example file as a guide.'); app('log')->warning('[Bcc] Could not send notification. Please validate your email settings, use the .env.example file as a guide.');

View File

@@ -75,7 +75,7 @@ class AutomationHandler
} }
try { try {
Notification::send($user, new TransactionCreation($groups)); Notification::send($user, new TransactionCreation($groups));
} catch (Exception $e) { /** @phpstan-ignore-line */ } catch (Exception $e) { // @phpstan-ignore-line
$message = $e->getMessage(); $message = $e->getMessage();
if (str_contains($message, 'Bcc')) { if (str_contains($message, 'Bcc')) {
app('log')->warning('[Bcc] Could not send notification. Please validate your email settings, use the .env.example file as a guide.'); app('log')->warning('[Bcc] Could not send notification. Please validate your email settings, use the .env.example file as a guide.');

View File

@@ -51,7 +51,7 @@ class BillEventHandler
app('log')->debug('Bill reminder is true!'); app('log')->debug('Bill reminder is true!');
try { try {
Notification::send($bill->user, new BillReminder($bill, $event->field, $event->diff)); Notification::send($bill->user, new BillReminder($bill, $event->field, $event->diff));
} catch (Exception $e) { /** @phpstan-ignore-line */ } catch (Exception $e) { // @phpstan-ignore-line
$message = $e->getMessage(); $message = $e->getMessage();
if (str_contains($message, 'Bcc')) { if (str_contains($message, 'Bcc')) {
app('log')->warning('[Bcc] Could not send notification. Please validate your email settings, use the .env.example file as a guide.'); app('log')->warning('[Bcc] Could not send notification. Please validate your email settings, use the .env.example file as a guide.');

View File

@@ -131,7 +131,7 @@ class UserEventHandler
$group = null; $group = null;
// create a new group. // create a new group.
while (true === $groupExists) { /** @phpstan-ignore-line */ while (true === $groupExists) { // @phpstan-ignore-line
$groupExists = UserGroup::where('title', $groupTitle)->count() > 0; $groupExists = UserGroup::where('title', $groupTitle)->count() > 0;
if (false === $groupExists) { if (false === $groupExists) {
$group = UserGroup::create(['title' => $groupTitle]); $group = UserGroup::create(['title' => $groupTitle]);
@@ -205,7 +205,7 @@ class UserEventHandler
if (false === $entry['notified']) { if (false === $entry['notified']) {
try { try {
Notification::send($user, new UserLogin($ipAddress)); Notification::send($user, new UserLogin($ipAddress));
} catch (Exception $e) {/** @phpstan-ignore-line */ } catch (Exception $e) { // @phpstan-ignore-line
$message = $e->getMessage(); $message = $e->getMessage();
if (str_contains($message, 'Bcc')) { if (str_contains($message, 'Bcc')) {
app('log')->warning('[Bcc] Could not send notification. Please validate your email settings, use the .env.example file as a guide.'); app('log')->warning('[Bcc] Could not send notification. Please validate your email settings, use the .env.example file as a guide.');
@@ -239,7 +239,7 @@ class UserEventHandler
if ($repository->hasRole($user, 'owner')) { if ($repository->hasRole($user, 'owner')) {
try { try {
Notification::send($user, new AdminRegistrationNotification($event->user)); Notification::send($user, new AdminRegistrationNotification($event->user));
} catch (Exception $e) { /** @phpstan-ignore-line */ } catch (Exception $e) { // @phpstan-ignore-line
$message = $e->getMessage(); $message = $e->getMessage();
if (str_contains($message, 'Bcc')) { if (str_contains($message, 'Bcc')) {
app('log')->warning('[Bcc] Could not send notification. Please validate your email settings, use the .env.example file as a guide.'); app('log')->warning('[Bcc] Could not send notification. Please validate your email settings, use the .env.example file as a guide.');
@@ -316,7 +316,7 @@ class UserEventHandler
{ {
try { try {
Notification::send($event->user, new UserNewPassword(route('password.reset', [$event->token]))); Notification::send($event->user, new UserNewPassword(route('password.reset', [$event->token])));
} catch (Exception $e) { /** @phpstan-ignore-line */ } catch (Exception $e) { // @phpstan-ignore-line
$message = $e->getMessage(); $message = $e->getMessage();
if (str_contains($message, 'Bcc')) { if (str_contains($message, 'Bcc')) {
app('log')->warning('[Bcc] Could not send notification. Please validate your email settings, use the .env.example file as a guide.'); app('log')->warning('[Bcc] Could not send notification. Please validate your email settings, use the .env.example file as a guide.');
@@ -364,7 +364,7 @@ class UserEventHandler
if ($sendMail) { if ($sendMail) {
try { try {
Notification::send($event->user, new UserRegistrationNotification()); Notification::send($event->user, new UserRegistrationNotification());
} catch (Exception $e) { /** @phpstan-ignore-line */ } catch (Exception $e) { // @phpstan-ignore-line
$message = $e->getMessage(); $message = $e->getMessage();
if (str_contains($message, 'Bcc')) { if (str_contains($message, 'Bcc')) {
app('log')->warning('[Bcc] Could not send notification. Please validate your email settings, use the .env.example file as a guide.'); app('log')->warning('[Bcc] Could not send notification. Please validate your email settings, use the .env.example file as a guide.');

View File

@@ -26,7 +26,6 @@ namespace FireflyIII\Http\Controllers\Admin;
use FireflyIII\Events\AdminRequestedTestMessage; use FireflyIII\Events\AdminRequestedTestMessage;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use FireflyIII\Http\Middleware\IsDemoUser; use FireflyIII\Http\Middleware\IsDemoUser;
use FireflyIII\Support\Facades\FireflyConfig;
use FireflyIII\Support\Notifications\UrlValidator; use FireflyIII\Support\Notifications\UrlValidator;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Contracts\View\Factory; use Illuminate\Contracts\View\Factory;

View File

@@ -283,8 +283,7 @@ class IndexController extends Controller
foreach ($budget['spent'] as $spent) { foreach ($budget['spent'] as $spent) {
$currencyId = $spent['currency_id']; $currencyId = $spent['currency_id'];
$sums['spent'][$currencyId] $sums['spent'][$currencyId]
??= ??= [
[
'amount' => '0', 'amount' => '0',
'currency_id' => $spent['currency_id'], 'currency_id' => $spent['currency_id'],
'currency_symbol' => $spent['currency_symbol'], 'currency_symbol' => $spent['currency_symbol'],
@@ -297,8 +296,7 @@ class IndexController extends Controller
foreach ($budget['budgeted'] as $budgeted) { foreach ($budget['budgeted'] as $budgeted) {
$currencyId = $budgeted['currency_id']; $currencyId = $budgeted['currency_id'];
$sums['budgeted'][$currencyId] $sums['budgeted'][$currencyId]
??= ??= [
[
'amount' => '0', 'amount' => '0',
'currency_id' => $budgeted['currency_id'], 'currency_id' => $budgeted['currency_id'],
'currency_symbol' => $budgeted['currency_symbol'], 'currency_symbol' => $budgeted['currency_symbol'],
@@ -307,8 +305,8 @@ class IndexController extends Controller
$sums['budgeted'][$currencyId]['amount'] = bcadd($sums['budgeted'][$currencyId]['amount'], $budgeted['amount']); $sums['budgeted'][$currencyId]['amount'] = bcadd($sums['budgeted'][$currencyId]['amount'], $budgeted['amount']);
// also calculate how much left from budgeted: // also calculate how much left from budgeted:
$sums['left'][$currencyId] ??= $sums['left'][$currencyId]
[ ??= [
'amount' => '0', 'amount' => '0',
'currency_id' => $budgeted['currency_id'], 'currency_id' => $budgeted['currency_id'],
'currency_symbol' => $budgeted['currency_symbol'], 'currency_symbol' => $budgeted['currency_symbol'],

View File

@@ -147,7 +147,7 @@ class ExpenseReportController extends Controller
while ($currentStart < $end) { while ($currentStart < $end) {
$currentEnd = clone $currentStart; $currentEnd = clone $currentStart;
$currentEnd = $currentEnd->$function(); /** @phpstan-ignore-line */ $currentEnd = $currentEnd->$function(); // @phpstan-ignore-line
// get expenses grouped by opposing name: // get expenses grouped by opposing name:
$expenses = $this->groupByName($this->getExpensesForOpposing($accounts, $all, $currentStart, $currentEnd)); $expenses = $this->groupByName($this->getExpensesForOpposing($accounts, $all, $currentStart, $currentEnd));

View File

@@ -42,6 +42,7 @@ use Illuminate\View\View;
use Monolog\Handler\RotatingFileHandler; use Monolog\Handler\RotatingFileHandler;
use Psr\Container\ContainerExceptionInterface; use Psr\Container\ContainerExceptionInterface;
use Psr\Container\NotFoundExceptionInterface; use Psr\Container\NotFoundExceptionInterface;
use const PHP_SAPI;
/** /**
* Class DebugController * Class DebugController
@@ -127,7 +128,7 @@ class DebugController extends Controller
// get latest log file: // get latest log file:
$logger = Log::driver(); $logger = Log::driver();
// PHPstan doesn't recognize the method because of its polymorphic nature. // PHPstan doesn't recognize the method because of its polymorphic nature.
$handlers = $logger->getHandlers(); /** @phpstan-ignore-line */ $handlers = $logger->getHandlers(); // @phpstan-ignore-line
$logContent = ''; $logContent = '';
foreach ($handlers as $handler) { foreach ($handlers as $handler) {
if ($handler instanceof RotatingFileHandler) { if ($handler instanceof RotatingFileHandler) {
@@ -172,7 +173,7 @@ class DebugController extends Controller
'db_version' => app('fireflyconfig')->get('db_version', 1)->data, 'db_version' => app('fireflyconfig')->get('db_version', 1)->data,
'php_version' => PHP_VERSION, 'php_version' => PHP_VERSION,
'php_os' => PHP_OS, 'php_os' => PHP_OS,
'interface' => \PHP_SAPI, 'interface' => PHP_SAPI,
'bcscale' => bcscale(), 'bcscale' => bcscale(),
'display_errors' => ini_get('display_errors'), 'display_errors' => ini_get('display_errors'),
'error_reporting' => $this->errorReporting((int)ini_get('error_reporting')), 'error_reporting' => $this->errorReporting((int)ini_get('error_reporting')),

View File

@@ -107,9 +107,7 @@ class CategoryController extends Controller
]; ];
$report[$sourceAccountId]['currencies'][$currencyId]['categories'][$category['id']] $report[$sourceAccountId]['currencies'][$currencyId]['categories'][$category['id']]
??= ??= [
[
'spent' => '0', 'spent' => '0',
'earned' => '0', 'earned' => '0',
'sum' => '0', 'sum' => '0',
@@ -134,8 +132,7 @@ class CategoryController extends Controller
foreach ($category['transaction_journals'] as $journal) { foreach ($category['transaction_journals'] as $journal) {
$destinationId = $journal['destination_account_id']; $destinationId = $journal['destination_account_id'];
$report[$destinationId]['currencies'][$currencyId] $report[$destinationId]['currencies'][$currencyId]
??= ??= [
[
'currency_id' => $currency['currency_id'], 'currency_id' => $currency['currency_id'],
'currency_symbol' => $currency['currency_symbol'], 'currency_symbol' => $currency['currency_symbol'],
'currency_name' => $currency['currency_name'], 'currency_name' => $currency['currency_name'],
@@ -143,9 +140,7 @@ class CategoryController extends Controller
'categories' => [], 'categories' => [],
]; ];
$report[$destinationId]['currencies'][$currencyId]['categories'][$category['id']] $report[$destinationId]['currencies'][$currencyId]['categories'][$category['id']]
??= ??= [
[
'spent' => '0', 'spent' => '0',
'earned' => '0', 'earned' => '0',
'sum' => '0', 'sum' => '0',

View File

@@ -100,9 +100,7 @@ class TagController extends Controller
]; ];
$report[$sourceAccountId]['currencies'][$currencyId]['tags'][$tag['id']] $report[$sourceAccountId]['currencies'][$currencyId]['tags'][$tag['id']]
??= ??= [
[
'spent' => '0', 'spent' => '0',
'earned' => '0', 'earned' => '0',
'sum' => '0', 'sum' => '0',
@@ -127,8 +125,7 @@ class TagController extends Controller
foreach ($tag['transaction_journals'] as $journal) { foreach ($tag['transaction_journals'] as $journal) {
$destinationId = $journal['destination_account_id']; $destinationId = $journal['destination_account_id'];
$report[$destinationId]['currencies'][$currencyId] $report[$destinationId]['currencies'][$currencyId]
??= ??= [
[
'currency_id' => $currency['currency_id'], 'currency_id' => $currency['currency_id'],
'currency_symbol' => $currency['currency_symbol'], 'currency_symbol' => $currency['currency_symbol'],
'currency_name' => $currency['currency_name'], 'currency_name' => $currency['currency_name'],
@@ -136,9 +133,7 @@ class TagController extends Controller
'tags' => [], 'tags' => [],
]; ];
$report[$destinationId]['currencies'][$currencyId]['tags'][$tag['id']] $report[$destinationId]['currencies'][$currencyId]['tags'][$tag['id']]
??= ??= [
[
'spent' => '0', 'spent' => '0',
'earned' => '0', 'earned' => '0',
'sum' => '0', 'sum' => '0',

View File

@@ -49,6 +49,7 @@ use Psr\Container\NotFoundExceptionInterface;
class ReportController extends Controller class ReportController extends Controller
{ {
use RenderPartialViews; use RenderPartialViews;
protected ReportHelperInterface $helper; protected ReportHelperInterface $helper;
private BudgetRepositoryInterface $repository; private BudgetRepositoryInterface $repository;

View File

@@ -32,7 +32,6 @@ use FireflyIII\Repositories\TransactionGroup\TransactionGroupRepositoryInterface
use FireflyIII\Transformers\TransactionGroupTransformer; use FireflyIII\Transformers\TransactionGroupTransformer;
use Illuminate\Contracts\View\Factory; use Illuminate\Contracts\View\Factory;
use Illuminate\Http\JsonResponse; use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\View\View; use Illuminate\View\View;
use Symfony\Component\HttpFoundation\ParameterBag; use Symfony\Component\HttpFoundation\ParameterBag;

View File

@@ -26,7 +26,6 @@ namespace FireflyIII\Http\Controllers\Webhooks;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
use Illuminate\Contracts\View\Factory; use Illuminate\Contracts\View\Factory;
use Illuminate\Http\Request;
use Illuminate\View\View; use Illuminate\View\View;
/** /**

View File

@@ -24,7 +24,6 @@ declare(strict_types=1);
namespace FireflyIII\Jobs; namespace FireflyIII\Jobs;
use Exception; use Exception;
use FireflyIII\Exceptions\FireflyException;
use Illuminate\Contracts\Queue\ShouldQueue; use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Mail\Message; use Illuminate\Mail\Message;
use Illuminate\Queue\InteractsWithQueue; use Illuminate\Queue\InteractsWithQueue;
@@ -90,7 +89,7 @@ class MailError extends Job implements ShouldQueue
} }
} }
); );
} catch (Exception | TransportException $e) { /** @phpstan-ignore-line */ } catch (Exception | TransportException $e) { // @phpstan-ignore-line
$message = $e->getMessage(); $message = $e->getMessage();
if (str_contains($message, 'Bcc')) { if (str_contains($message, 'Bcc')) {
app('log')->warning('[Bcc] Could not email or log the error. Please validate your email settings, use the .env.example file as a guide.'); app('log')->warning('[Bcc] Could not email or log the error. Please validate your email settings, use the .env.example file as a guide.');

View File

@@ -40,9 +40,7 @@ class AccessTokenCreatedMail extends Mailable
/** /**
* AccessTokenCreatedMail constructor. * AccessTokenCreatedMail constructor.
*/ */
public function __construct() public function __construct() {}
{
}
/** /**
* Build the message. * Build the message.

View File

@@ -44,9 +44,7 @@ class AdminTestMail extends Mailable
/** /**
* AdminTestMail constructor. * AdminTestMail constructor.
*/ */
public function __construct() public function __construct() {}
{
}
/** /**
* Build the message. * Build the message.

View File

@@ -292,22 +292,9 @@ class Account extends Model
} }
/** /**
* Get the virtual balance
*
* @return Attribute * @return Attribute
*/ */
protected function virtualBalance(): Attribute protected function accountId(): Attribute
{
return Attribute::make(
get: static fn($value) => (string)$value,
);
}
/**
* Get the user ID
*
* @return Attribute
*/
protected function accountTypeId(): Attribute
{ {
return Attribute::make( return Attribute::make(
get: static fn($value) => (int)$value, get: static fn($value) => (int)$value,
@@ -315,9 +302,11 @@ class Account extends Model
} }
/** /**
* Get the user ID
*
* @return Attribute * @return Attribute
*/ */
protected function accountId(): Attribute protected function accountTypeId(): Attribute
{ {
return Attribute::make( return Attribute::make(
get: static fn($value) => (int)$value, get: static fn($value) => (int)$value,
@@ -334,4 +323,16 @@ class Account extends Model
); );
} }
/**
* Get the virtual balance
*
* @return Attribute
*/
protected function virtualBalance(): Attribute
{
return Attribute::make(
get: static fn($value) => (string)$value,
);
}
} }

View File

@@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\Models; namespace FireflyIII\Models;
use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait; use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Casts\Attribute;
@@ -31,7 +32,6 @@ use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Query\Builder; use Illuminate\Database\Query\Builder;
use Carbon\Carbon;
/** /**
* FireflyIII\Models\AutoBudget * FireflyIII\Models\AutoBudget

View File

@@ -23,6 +23,7 @@ declare(strict_types=1);
namespace FireflyIII\Models; namespace FireflyIII\Models;
use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait; use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait; use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait;
@@ -32,7 +33,6 @@ use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Query\Builder; use Illuminate\Database\Query\Builder;
use Carbon\Carbon;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
/** /**
@@ -134,6 +134,7 @@ class AvailableBudget extends Model
get: static fn($value) => (string)$value, get: static fn($value) => (string)$value,
); );
} }
/** /**
* @return Attribute * @return Attribute
*/ */

View File

@@ -246,18 +246,6 @@ class Bill extends Model
); );
} }
/**
* Get the skip
*
* @return Attribute
*/
protected function skip(): Attribute
{
return Attribute::make(
get: static fn ($value) => (int)$value,
);
}
/** /**
* Get the min amount * Get the min amount
* *
@@ -273,7 +261,19 @@ class Bill extends Model
/** /**
* @return Attribute * @return Attribute
*/ */
protected function transactionCurrencyId(): Attribute protected function order(): Attribute
{
return Attribute::make(
get: static fn($value) => (int)$value,
);
}
/**
* Get the skip
*
* @return Attribute
*/
protected function skip(): Attribute
{ {
return Attribute::make( return Attribute::make(
get: static fn($value) => (int)$value, get: static fn($value) => (int)$value,
@@ -283,7 +283,7 @@ class Bill extends Model
/** /**
* @return Attribute * @return Attribute
*/ */
protected function order(): Attribute protected function transactionCurrencyId(): Attribute
{ {
return Attribute::make( return Attribute::make(
get: static fn($value) => (int)$value, get: static fn($value) => (int)$value,

View File

@@ -181,6 +181,7 @@ class Budget extends Model
{ {
return $this->belongsToMany(Transaction::class, 'budget_transaction', 'budget_id'); return $this->belongsToMany(Transaction::class, 'budget_transaction', 'budget_id');
} }
/** /**
* @return Attribute * @return Attribute
*/ */

View File

@@ -25,6 +25,7 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait; use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Database\Eloquent\Collection; use Illuminate\Database\Eloquent\Collection;
@@ -35,7 +36,7 @@ use Illuminate\Database\Eloquent\Relations\MorphMany;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Query\Builder; use Illuminate\Database\Query\Builder;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\Category * FireflyIII\Models\Category
* *

View File

@@ -25,10 +25,11 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Query\Builder; use Illuminate\Database\Query\Builder;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\Configuration * FireflyIII\Models\Configuration
* *

View File

@@ -22,8 +22,10 @@
declare(strict_types=1); declare(strict_types=1);
namespace FireflyIII\Models; namespace FireflyIII\Models;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait; use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Builder;
@@ -31,7 +33,6 @@ use Illuminate\Database\Eloquent\Casts\Attribute;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
use Carbon\Carbon;
/** /**
* Class CurrencyExchangeRate * Class CurrencyExchangeRate
@@ -111,26 +112,6 @@ class CurrencyExchangeRate extends Model
return $this->belongsTo(User::class); return $this->belongsTo(User::class);
} }
/**
* @return Attribute
*/
protected function rate(): Attribute
{
return Attribute::make(
get: static fn ($value) => (string)$value,
);
}
/**
* @return Attribute
*/
protected function userRate(): Attribute
{
return Attribute::make(
get: static fn ($value) => (string)$value,
);
}
/** /**
* @return Attribute * @return Attribute
*/ */
@@ -141,6 +122,16 @@ class CurrencyExchangeRate extends Model
); );
} }
/**
* @return Attribute
*/
protected function rate(): Attribute
{
return Attribute::make(
get: static fn($value) => (string)$value,
);
}
/** /**
* @return Attribute * @return Attribute
*/ */
@@ -151,5 +142,15 @@ class CurrencyExchangeRate extends Model
); );
} }
/**
* @return Attribute
*/
protected function userRate(): Attribute
{
return Attribute::make(
get: static fn($value) => (string)$value,
);
}
} }

View File

@@ -26,13 +26,14 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait; use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Casts\Attribute;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\BelongsTo;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* Class GroupMembership * Class GroupMembership
* *

View File

@@ -26,13 +26,14 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait; use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* Class InvitedUser * Class InvitedUser
* *

View File

@@ -25,13 +25,14 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use Illuminate\Database\Eloquent\Collection; use Illuminate\Database\Eloquent\Collection;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\HasMany; use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Query\Builder; use Illuminate\Database\Query\Builder;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\LinkType * FireflyIII\Models\LinkType
* *

View File

@@ -26,13 +26,14 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Casts\Attribute;
use Illuminate\Database\Eloquent\Collection; use Illuminate\Database\Eloquent\Collection;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\MorphMany; use Illuminate\Database\Eloquent\Relations\MorphMany;
use Illuminate\Database\Eloquent\Relations\MorphTo; use Illuminate\Database\Eloquent\Relations\MorphTo;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\Location * FireflyIII\Models\Location
* *

View File

@@ -25,12 +25,13 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Casts\Attribute;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\MorphTo; use Illuminate\Database\Eloquent\Relations\MorphTo;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Query\Builder; use Illuminate\Database\Query\Builder;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\Note * FireflyIII\Models\Note
* *

View File

@@ -26,6 +26,7 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait; use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Builder;
@@ -35,7 +36,7 @@ use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\MorphToMany; use Illuminate\Database\Eloquent\Relations\MorphToMany;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\ObjectGroup * FireflyIII\Models\ObjectGroup
* *

View File

@@ -23,7 +23,9 @@ declare(strict_types=1);
namespace FireflyIII\Models; namespace FireflyIII\Models;
use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Casts\Attribute;
use Illuminate\Database\Eloquent\Collection; use Illuminate\Database\Eloquent\Collection;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
@@ -33,9 +35,8 @@ use Illuminate\Database\Eloquent\Relations\MorphMany;
use Illuminate\Database\Eloquent\Relations\MorphToMany; use Illuminate\Database\Eloquent\Relations\MorphToMany;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Query\Builder; use Illuminate\Database\Query\Builder;
use Carbon\Carbon;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\PiggyBank * FireflyIII\Models\PiggyBank
* *
@@ -182,18 +183,6 @@ class PiggyBank extends Model
$this->attributes['targetamount'] = (string)$value; $this->attributes['targetamount'] = (string)$value;
} }
/**
* Get the max amount
*
* @return Attribute
*/
protected function targetamount(): Attribute
{
return Attribute::make(
get: static fn ($value) => (string)$value,
);
}
/** /**
* @return Attribute * @return Attribute
*/ */
@@ -214,4 +203,16 @@ class PiggyBank extends Model
); );
} }
/**
* Get the max amount
*
* @return Attribute
*/
protected function targetamount(): Attribute
{
return Attribute::make(
get: static fn($value) => (string)$value,
);
}
} }

View File

@@ -23,13 +23,14 @@ declare(strict_types=1);
namespace FireflyIII\Models; namespace FireflyIII\Models;
use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Casts\Attribute;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Carbon\Carbon;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\PiggyBankEvent * FireflyIII\Models\PiggyBankEvent
* *

View File

@@ -25,11 +25,12 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use Illuminate\Database\Eloquent\Builder as EloquentBuilder; use Illuminate\Database\Eloquent\Builder as EloquentBuilder;
use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Casts\Attribute;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\BelongsTo;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\PiggyBankRepetition * FireflyIII\Models\PiggyBankRepetition
* *

View File

@@ -25,13 +25,14 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait; use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\Preference * FireflyIII\Models\Preference
* *

View File

@@ -25,6 +25,7 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait; use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Casts\Attribute;
@@ -36,7 +37,7 @@ use Illuminate\Database\Eloquent\Relations\MorphMany;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Query\Builder; use Illuminate\Database\Query\Builder;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\Recurrence * FireflyIII\Models\Recurrence
* *

View File

@@ -25,12 +25,13 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Casts\Attribute;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Query\Builder; use Illuminate\Database\Query\Builder;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\RecurrenceMeta * FireflyIII\Models\RecurrenceMeta
* *

View File

@@ -23,7 +23,9 @@ declare(strict_types=1);
namespace FireflyIII\Models; namespace FireflyIII\Models;
use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Casts\Attribute;
use Illuminate\Database\Eloquent\Collection; use Illuminate\Database\Eloquent\Collection;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
@@ -31,8 +33,7 @@ use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\HasMany; use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Query\Builder; use Illuminate\Database\Query\Builder;
use Carbon\Carbon;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\RecurrenceTransaction * FireflyIII\Models\RecurrenceTransaction
* *
@@ -174,6 +175,16 @@ class RecurrenceTransaction extends Model
); );
} }
/**
* @return Attribute
*/
protected function destinationId(): Attribute
{
return Attribute::make(
get: static fn($value) => (int)$value,
);
}
/** /**
* @return Attribute * @return Attribute
*/ */
@@ -195,16 +206,6 @@ class RecurrenceTransaction extends Model
); );
} }
/**
* @return Attribute
*/
protected function transactionCurrencyId(): Attribute
{
return Attribute::make(
get: static fn($value) => (int)$value,
);
}
/** /**
* @return Attribute * @return Attribute
*/ */
@@ -218,7 +219,7 @@ class RecurrenceTransaction extends Model
/** /**
* @return Attribute * @return Attribute
*/ */
protected function destinationId(): Attribute protected function transactionCurrencyId(): Attribute
{ {
return Attribute::make( return Attribute::make(
get: static fn($value) => (int)$value, get: static fn($value) => (int)$value,

View File

@@ -25,12 +25,13 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Casts\Attribute;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Query\Builder; use Illuminate\Database\Query\Builder;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\RecurrenceTransactionMeta * FireflyIII\Models\RecurrenceTransactionMeta
* *

View File

@@ -23,9 +23,9 @@ declare(strict_types=1);
namespace FireflyIII\Models; namespace FireflyIII\Models;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Collection; use Illuminate\Database\Eloquent\Collection;

View File

@@ -25,6 +25,7 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait; use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Casts\Attribute;
@@ -35,7 +36,7 @@ use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Query\Builder; use Illuminate\Database\Query\Builder;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\Rule * FireflyIII\Models\Rule
* *
@@ -178,7 +179,7 @@ class Rule extends Model
/** /**
* @return Attribute * @return Attribute
*/ */
protected function ruleGroupId(): Attribute protected function order(): Attribute
{ {
return Attribute::make( return Attribute::make(
get: static fn($value) => (int)$value, get: static fn($value) => (int)$value,
@@ -188,7 +189,7 @@ class Rule extends Model
/** /**
* @return Attribute * @return Attribute
*/ */
protected function order(): Attribute protected function ruleGroupId(): Attribute
{ {
return Attribute::make( return Attribute::make(
get: static fn($value) => (int)$value, get: static fn($value) => (int)$value,

View File

@@ -25,11 +25,12 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Casts\Attribute;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\BelongsTo;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\RuleAction * FireflyIII\Models\RuleAction
* *
@@ -84,7 +85,7 @@ class RuleAction extends Model
/** /**
* @return Attribute * @return Attribute
*/ */
protected function ruleId(): Attribute protected function order(): Attribute
{ {
return Attribute::make( return Attribute::make(
get: static fn($value) => (int)$value, get: static fn($value) => (int)$value,
@@ -94,7 +95,7 @@ class RuleAction extends Model
/** /**
* @return Attribute * @return Attribute
*/ */
protected function order(): Attribute protected function ruleId(): Attribute
{ {
return Attribute::make( return Attribute::make(
get: static fn($value) => (int)$value, get: static fn($value) => (int)$value,

View File

@@ -25,6 +25,7 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait; use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Casts\Attribute;
@@ -35,7 +36,7 @@ use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Query\Builder; use Illuminate\Database\Query\Builder;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\RuleGroup * FireflyIII\Models\RuleGroup
* *

View File

@@ -25,11 +25,12 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Casts\Attribute;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\BelongsTo;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\RuleTrigger * FireflyIII\Models\RuleTrigger
* *
@@ -84,7 +85,7 @@ class RuleTrigger extends Model
/** /**
* @return Attribute * @return Attribute
*/ */
protected function ruleId(): Attribute protected function order(): Attribute
{ {
return Attribute::make( return Attribute::make(
get: static fn($value) => (int)$value, get: static fn($value) => (int)$value,
@@ -94,7 +95,7 @@ class RuleTrigger extends Model
/** /**
* @return Attribute * @return Attribute
*/ */
protected function order(): Attribute protected function ruleId(): Attribute
{ {
return Attribute::make( return Attribute::make(
get: static fn($value) => (int)$value, get: static fn($value) => (int)$value,

View File

@@ -25,6 +25,7 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait; use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Database\Eloquent\Collection; use Illuminate\Database\Eloquent\Collection;
@@ -35,7 +36,7 @@ use Illuminate\Database\Eloquent\Relations\MorphMany;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Query\Builder; use Illuminate\Database\Query\Builder;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\Tag * FireflyIII\Models\Tag
* *

View File

@@ -25,6 +25,7 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Casts\Attribute;
use Illuminate\Database\Eloquent\Collection; use Illuminate\Database\Eloquent\Collection;
@@ -33,7 +34,7 @@ use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\BelongsToMany; use Illuminate\Database\Eloquent\Relations\BelongsToMany;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\Transaction * FireflyIII\Models\Transaction
* *
@@ -253,6 +254,16 @@ class Transaction extends Model
return $this->belongsTo(TransactionJournal::class); return $this->belongsTo(TransactionJournal::class);
} }
/**
* @return Attribute
*/
protected function accountId(): Attribute
{
return Attribute::make(
get: static fn($value) => (int)$value,
);
}
/** /**
* Get the amount * Get the amount
* *
@@ -277,15 +288,6 @@ class Transaction extends Model
); );
} }
/**
* @return Attribute
*/
protected function accountId(): Attribute
{
return Attribute::make(
get: static fn($value) => (int)$value,
);
}
/** /**
* @return Attribute * @return Attribute
*/ */

View File

@@ -25,6 +25,7 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait; use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Database\Eloquent\Collection; use Illuminate\Database\Eloquent\Collection;
@@ -34,7 +35,7 @@ use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Query\Builder; use Illuminate\Database\Query\Builder;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\TransactionGroup * FireflyIII\Models\TransactionGroup
* *

View File

@@ -25,6 +25,7 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait; use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Builder;
@@ -39,7 +40,7 @@ use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\Relations\MorphMany; use Illuminate\Database\Eloquent\Relations\MorphMany;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\TransactionJournal * FireflyIII\Models\TransactionJournal
* *
@@ -395,15 +396,6 @@ class TransactionJournal extends Model
return $this->hasMany(Transaction::class); return $this->hasMany(Transaction::class);
} }
/**
* @return Attribute
*/
protected function transactionTypeId(): Attribute
{
return Attribute::make(
get: static fn($value) => (int)$value,
);
}
/** /**
* @return Attribute * @return Attribute
*/ */
@@ -413,4 +405,14 @@ class TransactionJournal extends Model
get: static fn($value) => (int)$value, get: static fn($value) => (int)$value,
); );
} }
/**
* @return Attribute
*/
protected function transactionTypeId(): Attribute
{
return Attribute::make(
get: static fn($value) => (int)$value,
);
}
} }

View File

@@ -25,6 +25,7 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Casts\Attribute;
use Illuminate\Database\Eloquent\Collection; use Illuminate\Database\Eloquent\Collection;
@@ -32,7 +33,7 @@ use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\MorphMany; use Illuminate\Database\Eloquent\Relations\MorphMany;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\TransactionJournalLink * FireflyIII\Models\TransactionJournalLink
* *
@@ -131,6 +132,17 @@ class TransactionJournalLink extends Model
{ {
return $this->belongsTo(TransactionJournal::class, 'source_id'); return $this->belongsTo(TransactionJournal::class, 'source_id');
} }
/**
* @return Attribute
*/
protected function destinationId(): Attribute
{
return Attribute::make(
get: static fn($value) => (int)$value,
);
}
/** /**
* @return Attribute * @return Attribute
*/ */
@@ -150,13 +162,4 @@ class TransactionJournalLink extends Model
get: static fn($value) => (int)$value, get: static fn($value) => (int)$value,
); );
} }
/**
* @return Attribute
*/
protected function destinationId(): Attribute
{
return Attribute::make(
get: static fn($value) => (int)$value,
);
}
} }

View File

@@ -25,12 +25,13 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Casts\Attribute;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Query\Builder; use Illuminate\Database\Query\Builder;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\TransactionJournalMeta * FireflyIII\Models\TransactionJournalMeta
* *
@@ -105,6 +106,7 @@ class TransactionJournalMeta extends Model
{ {
return $this->belongsTo(TransactionJournal::class); return $this->belongsTo(TransactionJournal::class);
} }
/** /**
* @return Attribute * @return Attribute
*/ */

View File

@@ -25,13 +25,14 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use Illuminate\Database\Eloquent\Collection; use Illuminate\Database\Eloquent\Collection;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\HasMany; use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Query\Builder; use Illuminate\Database\Query\Builder;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\TransactionType * FireflyIII\Models\TransactionType
* *

View File

@@ -27,6 +27,7 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Enums\UserRoleEnum; use FireflyIII\Enums\UserRoleEnum;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Collection; use Illuminate\Database\Eloquent\Collection;
@@ -35,7 +36,7 @@ use Illuminate\Database\Eloquent\Relations\BelongsToMany;
use Illuminate\Database\Eloquent\Relations\HasMany; use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\Relations\HasManyThrough; use Illuminate\Database\Eloquent\Relations\HasManyThrough;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* Class UserGroup * Class UserGroup
* *

View File

@@ -26,11 +26,12 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Collection; use Illuminate\Database\Eloquent\Collection;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\HasMany; use Illuminate\Database\Eloquent\Relations\HasMany;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* Class UserRole * Class UserRole
* *

View File

@@ -28,6 +28,7 @@ use Eloquent;
use FireflyIII\Enums\WebhookDelivery; use FireflyIII\Enums\WebhookDelivery;
use FireflyIII\Enums\WebhookResponse; use FireflyIII\Enums\WebhookResponse;
use FireflyIII\Enums\WebhookTrigger; use FireflyIII\Enums\WebhookTrigger;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait; use FireflyIII\Support\Models\ReturnsIntegerUserIdTrait;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Builder;
@@ -37,7 +38,7 @@ use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\HasMany; use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\Webhook * FireflyIII\Models\Webhook
* *

View File

@@ -25,6 +25,7 @@ namespace FireflyIII\Models;
use Carbon\Carbon; use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Casts\Attribute;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
@@ -32,7 +33,7 @@ use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Query\Builder; use Illuminate\Database\Query\Builder;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* Class WebhookAttempt * Class WebhookAttempt
* *

View File

@@ -23,7 +23,9 @@ declare(strict_types=1);
namespace FireflyIII\Models; namespace FireflyIII\Models;
use Carbon\Carbon;
use Eloquent; use Eloquent;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Casts\Attribute;
@@ -31,9 +33,8 @@ use Illuminate\Database\Eloquent\Collection;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\HasMany; use Illuminate\Database\Eloquent\Relations\HasMany;
use Carbon\Carbon;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use FireflyIII\Support\Models\ReturnsIntegerIdTrait;
/** /**
* FireflyIII\Models\WebhookMessage * FireflyIII\Models\WebhookMessage
* *

View File

@@ -43,9 +43,7 @@ class NewAccessToken extends Notification
* *
* @return void * @return void
*/ */
public function __construct() public function __construct() {}
{
}
/** /**
* Get the array representation of the notification. * Get the array representation of the notification.

View File

@@ -40,9 +40,7 @@ class UserRegistration extends Notification
* *
* @return void * @return void
*/ */
public function __construct() public function __construct() {}
{
}
/** /**
* Get the array representation of the notification. * Get the array representation of the notification.

View File

@@ -42,9 +42,7 @@ class AccountServiceProvider extends ServiceProvider
/** /**
* Bootstrap the application services. * Bootstrap the application services.
*/ */
public function boot(): void public function boot(): void {}
{
}
/** /**
* Register the application services. * Register the application services.

View File

@@ -36,9 +36,7 @@ class AdminServiceProvider extends ServiceProvider
/** /**
* Bootstrap the application services. * Bootstrap the application services.
*/ */
public function boot(): void public function boot(): void {}
{
}
/** /**
* Register the application services. * Register the application services.

View File

@@ -36,9 +36,7 @@ class AttachmentServiceProvider extends ServiceProvider
/** /**
* Bootstrap the application services. * Bootstrap the application services.
*/ */
public function boot(): void public function boot(): void {}
{
}
/** /**
* Register the application services. * Register the application services.

View File

@@ -38,9 +38,7 @@ class BillServiceProvider extends ServiceProvider
/** /**
* Bootstrap the application services. * Bootstrap the application services.
*/ */
public function boot(): void public function boot(): void {}
{
}
/** /**
* Register the application services. * Register the application services.

View File

@@ -50,9 +50,7 @@ class BudgetServiceProvider extends ServiceProvider
/** /**
* Bootstrap the application services. * Bootstrap the application services.
*/ */
public function boot(): void public function boot(): void {}
{
}
/** /**
* Register the application services. * Register the application services.

View File

@@ -40,9 +40,7 @@ class CategoryServiceProvider extends ServiceProvider
/** /**
* Bootstrap the application services. * Bootstrap the application services.
*/ */
public function boot(): void public function boot(): void {}
{
}
/** /**
* Register the application services. * Register the application services.

View File

@@ -38,9 +38,7 @@ class CurrencyServiceProvider extends ServiceProvider
/** /**
* Bootstrap the application services. * Bootstrap the application services.
*/ */
public function boot(): void public function boot(): void {}
{
}
/** /**
* Register the application services. * Register the application services.

View File

@@ -46,9 +46,7 @@ class JournalServiceProvider extends ServiceProvider
/** /**
* Bootstrap the application services. * Bootstrap the application services.
*/ */
public function boot(): void public function boot(): void {}
{
}
/** /**
* Register the application services. * Register the application services.

View File

@@ -38,9 +38,7 @@ class PiggyBankServiceProvider extends ServiceProvider
/** /**
* Bootstrap the application services. * Bootstrap the application services.
*/ */
public function boot(): void public function boot(): void {}
{
}
/** /**
* Register the application services. * Register the application services.

View File

@@ -36,9 +36,7 @@ class RecurringServiceProvider extends ServiceProvider
/** /**
* Bootstrap the application services. * Bootstrap the application services.
*/ */
public function boot(): void public function boot(): void {}
{
}
/** /**
* Register the application services. * Register the application services.

View File

@@ -36,9 +36,7 @@ class RuleGroupServiceProvider extends ServiceProvider
/** /**
* Bootstrap the application services. * Bootstrap the application services.
*/ */
public function boot(): void public function boot(): void {}
{
}
/** /**
* Register the application services. * Register the application services.

View File

@@ -36,9 +36,7 @@ class RuleServiceProvider extends ServiceProvider
/** /**
* Bootstrap the application services. * Bootstrap the application services.
*/ */
public function boot(): void public function boot(): void {}
{
}
/** /**
* Register the application services. * Register the application services.

View File

@@ -36,9 +36,7 @@ class SearchServiceProvider extends ServiceProvider
/** /**
* Bootstrap the application services. * Bootstrap the application services.
*/ */
public function boot(): void public function boot(): void {}
{
}
/** /**
* Register the application services. * Register the application services.

View File

@@ -38,9 +38,7 @@ class TagServiceProvider extends ServiceProvider
/** /**
* Bootstrap the application services. * Bootstrap the application services.
*/ */
public function boot(): void public function boot(): void {}
{
}
/** /**
* Register the application services. * Register the application services.

View File

@@ -116,7 +116,7 @@ class AccountRepository implements AccountRepositoryInterface
->leftJoin('account_meta', 'accounts.id', '=', 'account_meta.account_id') ->leftJoin('account_meta', 'accounts.id', '=', 'account_meta.account_id')
->where('accounts.active', true) ->where('accounts.active', true)
->where( ->where(
static function (EloquentBuilder $q1) use ($number) { /** @phpstan-ignore-line */ static function (EloquentBuilder $q1) use ($number) { // @phpstan-ignore-line
$json = json_encode($number); $json = json_encode($number);
$q1->where('account_meta.name', '=', 'account_number'); $q1->where('account_meta.name', '=', 'account_number');
$q1->where('account_meta.data', '=', $json); $q1->where('account_meta.data', '=', $json);

View File

@@ -272,7 +272,7 @@ class OperationsRepository implements OperationsRepositoryInterface
'currency_code' => $journal['currency_code'], 'currency_code' => $journal['currency_code'],
'currency_decimal_places' => $journal['currency_decimal_places'], 'currency_decimal_places' => $journal['currency_decimal_places'],
]; ];
$array[$currencyId]['sum'] = bcadd($array[$currencyId]['sum'], app('steam')->$direction($journal['amount']));/** @phpstan-ignore-line */ $array[$currencyId]['sum'] = bcadd($array[$currencyId]['sum'], app('steam')->$direction($journal['amount'])); // @phpstan-ignore-line
// also do foreign amount: // also do foreign amount:
$foreignId = (int)$journal['foreign_currency_id']; $foreignId = (int)$journal['foreign_currency_id'];

View File

@@ -200,7 +200,7 @@ class JournalCLIRepository implements JournalCLIRepositoryInterface
{ {
$query = TransactionJournal::leftJoin('transactions', 'transaction_journals.id', '=', 'transactions.transaction_journal_id') $query = TransactionJournal::leftJoin('transactions', 'transaction_journals.id', '=', 'transactions.transaction_journal_id')
->groupBy('transaction_journals.id'); ->groupBy('transaction_journals.id');
$result = $query->get(['transaction_journals.id as id', DB::raw('count(transactions.id) as transaction_count')]); /** @phpstan-ignore-line */ $result = $query->get(['transaction_journals.id as id', DB::raw('count(transactions.id) as transaction_count')]); // @phpstan-ignore-line
$journalIds = []; $journalIds = [];
/** @var stdClass $row */ /** @var stdClass $row */
foreach ($result as $row) { foreach ($result as $row) {

View File

@@ -374,6 +374,26 @@ class TagRepository implements TagRepositoryInterface
return $sums; return $sums;
} }
/**
* @inheritDoc
*/
public function tagEndsWith(string $query): Collection
{
$search = sprintf('%%%s', $query);
return $this->user->tags()->where('tag', 'LIKE', $search)->get(['tags.*']);
}
/**
* @inheritDoc
*/
public function tagStartsWith(string $query): Collection
{
$search = sprintf('%s%%', $query);
return $this->user->tags()->where('tag', 'LIKE', $search)->get(['tags.*']);
}
/** /**
* @param Tag $tag * @param Tag $tag
* @param Carbon $start * @param Carbon $start
@@ -454,24 +474,4 @@ class TagRepository implements TagRepositoryInterface
/** @var Location|null */ /** @var Location|null */
return $tag->locations()->first(); return $tag->locations()->first();
} }
/**
* @inheritDoc
*/
public function tagStartsWith(string $query): Collection
{
$search = sprintf('%s%%', $query);
return $this->user->tags()->where('tag', 'LIKE', $search)->get(['tags.*']);
}
/**
* @inheritDoc
*/
public function tagEndsWith(string $query): Collection
{
$search = sprintf('%%%s', $query);
return $this->user->tags()->where('tag', 'LIKE', $search)->get(['tags.*']);
}
} }

View File

@@ -153,24 +153,6 @@ interface TagRepositoryInterface
*/ */
public function searchTag(string $query): Collection; public function searchTag(string $query): Collection;
/**
* Find one or more tags that start with the string in the query
*
* @param string $query
*
* @return Collection
*/
public function tagStartsWith(string $query): Collection;
/**
* Find one or more tags that start with the string in the query
*
* @param string $query
*
* @return Collection
*/
public function tagEndsWith(string $query): Collection;
/** /**
* Search the users tags. * Search the users tags.
* *
@@ -206,6 +188,24 @@ interface TagRepositoryInterface
*/ */
public function sumsOfTag(Tag $tag, ?Carbon $start, ?Carbon $end): array; public function sumsOfTag(Tag $tag, ?Carbon $start, ?Carbon $end): array;
/**
* Find one or more tags that start with the string in the query
*
* @param string $query
*
* @return Collection
*/
public function tagEndsWith(string $query): Collection;
/**
* Find one or more tags that start with the string in the query
*
* @param string $query
*
* @return Collection
*/
public function tagStartsWith(string $query): Collection;
/** /**
* @param Tag $tag * @param Tag $tag
* @param Carbon $start * @param Carbon $start

View File

@@ -40,6 +40,50 @@ class AccountRepository implements AccountRepositoryInterface
{ {
use UserGroupTrait; use UserGroupTrait;
/**
* @inheritDoc
*/
public function findByAccountNumber(string $number, array $types): ?Account
{
$dbQuery = $this->userGroup
->accounts()
->leftJoin('account_meta', 'accounts.id', '=', 'account_meta.account_id')
->where('accounts.active', true)
->where(
static function (EloquentBuilder $q1) use ($number) { // @phpstan-ignore-line
$json = json_encode($number);
$q1->where('account_meta.name', '=', 'account_number');
$q1->where('account_meta.data', '=', $json);
}
);
if (0 !== count($types)) {
$dbQuery->leftJoin('account_types', 'accounts.account_type_id', '=', 'account_types.id');
$dbQuery->whereIn('account_types.type', $types);
}
/** @var Account|null */
return $dbQuery->first(['accounts.*']);
}
/**
* @param string $iban
* @param array $types
*
* @return Account|null
*/
public function findByIbanNull(string $iban, array $types): ?Account
{
$query = $this->userGroup->accounts()->where('iban', '!=', '')->whereNotNull('iban');
if (0 !== count($types)) {
$query->leftJoin('account_types', 'accounts.account_type_id', '=', 'account_types.id');
$query->whereIn('account_types.type', $types);
}
/** @var Account|null */
return $query->where('iban', $iban)->first(['accounts.*']);
}
/** /**
* @inheritDoc * @inheritDoc
*/ */
@@ -66,31 +110,6 @@ class AccountRepository implements AccountRepositoryInterface
return $account; return $account;
} }
/**
* @inheritDoc
*/
public function findByAccountNumber(string $number, array $types): ?Account
{
$dbQuery = $this->userGroup
->accounts()
->leftJoin('account_meta', 'accounts.id', '=', 'account_meta.account_id')
->where('accounts.active', true)
->where(
static function (EloquentBuilder $q1) use ($number) { /** @phpstan-ignore-line */
$json = json_encode($number);
$q1->where('account_meta.name', '=', 'account_number');
$q1->where('account_meta.data', '=', $json);
}
);
if (0 !== count($types)) {
$dbQuery->leftJoin('account_types', 'accounts.account_type_id', '=', 'account_types.id');
$dbQuery->whereIn('account_types.type', $types);
}
/** @var Account|null */
return $dbQuery->first(['accounts.*']);
}
/** /**
* @param Account $account * @param Account $account
* *
@@ -245,22 +264,4 @@ class AccountRepository implements AccountRepositoryInterface
return $dbQuery->take($limit)->get(['accounts.*']); return $dbQuery->take($limit)->get(['accounts.*']);
} }
/**
* @param string $iban
* @param array $types
*
* @return Account|null
*/
public function findByIbanNull(string $iban, array $types): ?Account
{
$query = $this->userGroup->accounts()->where('iban', '!=', '')->whereNotNull('iban');
if (0 !== count($types)) {
$query->leftJoin('account_types', 'accounts.account_type_id', '=', 'account_types.id');
$query->whereIn('account_types.type', $types);
}
/** @var Account|null */
return $query->where('iban', $iban)->first(['accounts.*']);
}
} }

View File

@@ -37,19 +37,11 @@ use Illuminate\Support\Collection;
interface AccountRepositoryInterface interface AccountRepositoryInterface
{ {
/** /**
* @param UserGroup $userGroup * @param int $accountId
*
* @return void
*/
public function setUserGroup(UserGroup $userGroup): void;
/**
* @param string $iban
* @param array $types
* *
* @return Account|null * @return Account|null
*/ */
public function findByIbanNull(string $iban, array $types): ?Account; public function find(int $accountId): ?Account;
/** /**
* @param string $number * @param string $number
@@ -60,18 +52,12 @@ interface AccountRepositoryInterface
public function findByAccountNumber(string $number, array $types): ?Account; public function findByAccountNumber(string $number, array $types): ?Account;
/** /**
* @param User $user * @param string $iban
* * @param array $types
* @return void
*/
public function setUser(User $user): void;
/**
* @param int $accountId
* *
* @return Account|null * @return Account|null
*/ */
public function find(int $accountId): ?Account; public function findByIbanNull(string $iban, array $types): ?Account;
/** /**
* @param string $name * @param string $name
@@ -129,5 +115,19 @@ interface AccountRepositoryInterface
*/ */
public function searchAccount(string $query, array $types, int $limit): Collection; public function searchAccount(string $query, array $types, int $limit): Collection;
/**
* @param User $user
*
* @return void
*/
public function setUser(User $user): void;
/**
* @param UserGroup $userGroup
*
* @return void
*/
public function setUserGroup(UserGroup $userGroup): void;
} }

View File

@@ -35,13 +35,6 @@ use Illuminate\Support\Collection;
*/ */
interface BillRepositoryInterface interface BillRepositoryInterface
{ {
/**
* @param User $user
*
* @return void
*/
public function setUser(User $user): void;
/** /**
* TODO duplicate of other repos * TODO duplicate of other repos
* Add correct order to bills. * Add correct order to bills.
@@ -84,6 +77,13 @@ interface BillRepositoryInterface
*/ */
public function nextDateMatch(Bill $bill, Carbon $date): Carbon; public function nextDateMatch(Bill $bill, Carbon $date): Carbon;
/**
* @param User $user
*
* @return void
*/
public function setUser(User $user): void;
/** /**
* Collect multi-currency of sum of bills already paid. * Collect multi-currency of sum of bills already paid.
* *

View File

@@ -33,12 +33,6 @@ use FireflyIII\User;
*/ */
interface AvailableBudgetRepositoryInterface interface AvailableBudgetRepositoryInterface
{ {
/**
* @param User $user
*
* @return void
*/
public function setUser(User $user): void;
/** /**
* @param Carbon $start * @param Carbon $start
* @param Carbon $end * @param Carbon $end
@@ -47,4 +41,11 @@ interface AvailableBudgetRepositoryInterface
*/ */
public function getAvailableBudgetWithCurrency(Carbon $start, Carbon $end): array; public function getAvailableBudgetWithCurrency(Carbon $start, Carbon $end): array;
/**
* @param User $user
*
* @return void
*/
public function setUser(User $user): void;
} }

View File

@@ -34,6 +34,11 @@ use Illuminate\Support\Collection;
*/ */
interface BudgetRepositoryInterface interface BudgetRepositoryInterface
{ {
/**
* @return Collection
*/
public function getActiveBudgets(): Collection;
/** /**
* @param User $user * @param User $user
* *
@@ -47,8 +52,4 @@ interface BudgetRepositoryInterface
* @return void * @return void
*/ */
public function setUserGroup(UserGroup $userGroup): void; public function setUserGroup(UserGroup $userGroup): void;
/**
* @return Collection
*/
public function getActiveBudgets(): Collection;
} }

View File

@@ -34,13 +34,6 @@ use Illuminate\Support\Collection;
*/ */
interface OperationsRepositoryInterface interface OperationsRepositoryInterface
{ {
/**
* @param User $user
*
* @return void
*/
public function setUser(User $user): void;
/** /**
* This method returns a list of all the withdrawal transaction journals (as arrays) set in that period * This method returns a list of all the withdrawal transaction journals (as arrays) set in that period
* which have the specified budget set to them. It's grouped per currency, with as few details in the array * which have the specified budget set to them. It's grouped per currency, with as few details in the array
@@ -54,4 +47,11 @@ interface OperationsRepositoryInterface
* @return array * @return array
*/ */
public function listExpenses(Carbon $start, Carbon $end, ?Collection $accounts = null, ?Collection $budgets = null): array; public function listExpenses(Carbon $start, Carbon $end, ?Collection $accounts = null, ?Collection $budgets = null): array;
/**
* @param User $user
*
* @return void
*/
public function setUser(User $user): void;
} }

View File

@@ -25,7 +25,6 @@ declare(strict_types=1);
namespace FireflyIII\Repositories\UserGroups\Currency; namespace FireflyIII\Repositories\UserGroups\Currency;
use FireflyIII\Api\V1\Controllers\Data\Bulk\TransactionController;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Models\TransactionCurrency; use FireflyIII\Models\TransactionCurrency;
use FireflyIII\User; use FireflyIII\User;
@@ -33,12 +32,6 @@ use Illuminate\Support\Collection;
interface CurrencyRepositoryInterface interface CurrencyRepositoryInterface
{ {
/**
* @param User $user
*
* @return void
*/
public function setUser(User $user): void;
/** /**
* @param TransactionCurrency $currency * @param TransactionCurrency $currency
* *
@@ -162,6 +155,13 @@ interface CurrencyRepositoryInterface
*/ */
public function searchCurrency(string $search, int $limit): Collection; public function searchCurrency(string $search, int $limit): Collection;
/**
* @param User $user
*
* @return void
*/
public function setUser(User $user): void;
/** /**
* @param array $data * @param array $data
* *

View File

@@ -31,13 +31,6 @@ use Illuminate\Support\Collection;
*/ */
interface JournalRepositoryInterface interface JournalRepositoryInterface
{ {
/**
* @param User $user
*
* @return void
*/
public function setUser(User $user): void;
/** /**
* Search in journal descriptions. * Search in journal descriptions.
* *
@@ -47,4 +40,11 @@ interface JournalRepositoryInterface
* @return Collection * @return Collection
*/ */
public function searchJournalDescriptions(string $search, int $limit): Collection; public function searchJournalDescriptions(string $search, int $limit): Collection;
/**
* @param User $user
*
* @return void
*/
public function setUser(User $user): void;
} }

View File

@@ -49,7 +49,6 @@ class IsDateOrTime implements ValidationRule
$value = (string)$value; $value = (string)$value;
if ('' === $value) { if ('' === $value) {
$fail('validation.date_or_time')->translate(); $fail('validation.date_or_time')->translate();
;
return; return;
} }
if (10 === strlen($value)) { if (10 === strlen($value)) {
@@ -60,13 +59,11 @@ class IsDateOrTime implements ValidationRule
app('log')->error(sprintf('"%s" is not a valid date: %s', $value, $e->getMessage())); app('log')->error(sprintf('"%s" is not a valid date: %s', $value, $e->getMessage()));
$fail('validation.date_or_time')->translate(); $fail('validation.date_or_time')->translate();
;
return; return;
} catch (InvalidFormatException $e) { // @phpstan-ignore-line } catch (InvalidFormatException $e) { // @phpstan-ignore-line
app('log')->error(sprintf('"%s" is of an invalid format: %s', $value, $e->getMessage())); app('log')->error(sprintf('"%s" is of an invalid format: %s', $value, $e->getMessage()));
$fail('validation.date_or_time')->translate(); $fail('validation.date_or_time')->translate();
;
return; return;
} }
@@ -79,13 +76,11 @@ class IsDateOrTime implements ValidationRule
app('log')->error(sprintf('"%s" is not a valid date or time: %s', $value, $e->getMessage())); app('log')->error(sprintf('"%s" is not a valid date or time: %s', $value, $e->getMessage()));
$fail('validation.date_or_time')->translate(); $fail('validation.date_or_time')->translate();
;
return; return;
} catch (InvalidFormatException $e) { } catch (InvalidFormatException $e) {
app('log')->error(sprintf('"%s" is of an invalid format: %s', $value, $e->getMessage())); app('log')->error(sprintf('"%s" is of an invalid format: %s', $value, $e->getMessage()));
$fail('validation.date_or_time')->translate(); $fail('validation.date_or_time')->translate();
;
return; return;
} }
} }

View File

@@ -164,19 +164,6 @@ class IsValidAttachmentModel implements ValidationRule
return null !== $repository->find($value); return null !== $repository->find($value);
} }
/**
* @param int $value
*
* @return bool
*/
private function validateJournal(int $value): bool
{
$repository = app(JournalRepositoryInterface::class);
$repository->setUser(auth()->user());
return null !== $repository->find($value);
}
/** /**
* @param int $value * @param int $value
* *
@@ -218,4 +205,17 @@ class IsValidAttachmentModel implements ValidationRule
return null !== $repository->findTransaction($value); return null !== $repository->findTransaction($value);
} }
/**
* @param int $value
*
* @return bool
*/
private function validateJournal(int $value): bool
{
$repository = app(JournalRepositoryInterface::class);
$repository->setUser(auth()->user());
return null !== $repository->find($value);
}
} }

View File

@@ -135,7 +135,8 @@ class GroupUpdateService
TransactionGroup $transactionGroup, TransactionGroup $transactionGroup,
TransactionJournal $journal, TransactionJournal $journal,
array $data array $data
): void { ): void
{
app('log')->debug(sprintf('Now in %s', __METHOD__)); app('log')->debug(sprintf('Now in %s', __METHOD__));
if (0 === count($data)) { if (0 === count($data)) {
return; return;

View File

@@ -123,17 +123,6 @@ class Amount
return $this->getDefaultCurrencyByUserGroup($user->userGroup); return $this->getDefaultCurrencyByUserGroup($user->userGroup);
} }
/**
* @param User $user
*
* @return TransactionCurrency
* @deprecated use getDefaultCurrencyByUserGroup instead.
*/
public function getDefaultCurrencyByUser(User $user): TransactionCurrency
{
return $this->getDefaultCurrencyByUserGroup($user->userGroup);
}
/** /**
* @param UserGroup $userGroup * @param UserGroup $userGroup
* *
@@ -166,6 +155,17 @@ class Amount
return TransactionCurrency::where('code', 'EUR')->first(); return TransactionCurrency::where('code', 'EUR')->first();
} }
/**
* @param User $user
*
* @return TransactionCurrency
* @deprecated use getDefaultCurrencyByUserGroup instead.
*/
public function getDefaultCurrencyByUser(User $user): TransactionCurrency
{
return $this->getDefaultCurrencyByUserGroup($user->userGroup);
}
/** /**
* This method returns the correct format rules required by accounting.js, * This method returns the correct format rules required by accounting.js,
* the library used to format amounts in charts. * the library used to format amounts in charts.

View File

@@ -226,7 +226,7 @@ class ExpandedForm
/** @var Eloquent $entry */ /** @var Eloquent $entry */
foreach ($set as $entry) { foreach ($set as $entry) {
// All Eloquent models have an ID // All Eloquent models have an ID
$entryId = $entry->id; /** @phpstan-ignore-line */ $entryId = $entry->id; // @phpstan-ignore-line
$current = $entry->toArray(); $current = $entry->toArray();
$title = null; $title = null;
foreach ($fields as $field) { foreach ($fields as $field) {

View File

@@ -36,7 +36,6 @@ use FireflyIII\Repositories\Budget\BudgetRepositoryInterface;
use FireflyIII\Repositories\Budget\OperationsRepositoryInterface; use FireflyIII\Repositories\Budget\OperationsRepositoryInterface;
use FireflyIII\Repositories\Category\CategoryRepositoryInterface; use FireflyIII\Repositories\Category\CategoryRepositoryInterface;
use FireflyIII\Support\CacheProperties; use FireflyIII\Support\CacheProperties;
use FireflyIII\Support\Facades\Amount;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
/** /**

View File

@@ -33,6 +33,7 @@ trait ReturnsIntegerIdTrait
/** /**
* Get the ID * Get the ID
* @SuppressWarnings(PHPMD.ShortMethodName) * @SuppressWarnings(PHPMD.ShortMethodName)
*
* @return Attribute * @return Attribute
*/ */
protected function id(): Attribute protected function id(): Attribute

View File

@@ -30,16 +30,6 @@ use Illuminate\Database\Eloquent\Casts\Attribute;
*/ */
trait ReturnsIntegerUserIdTrait trait ReturnsIntegerUserIdTrait
{ {
/**
* @return Attribute
*/
protected function userId(): Attribute
{
return Attribute::make(
get: static fn($value) => (int)$value,
);
}
/** /**
* Get the user group ID * Get the user group ID
* *
@@ -51,4 +41,14 @@ trait ReturnsIntegerUserIdTrait
get: static fn($value) => (int)$value, get: static fn($value) => (int)$value,
); );
} }
/**
* @return Attribute
*/
protected function userId(): Attribute
{
return Attribute::make(
get: static fn($value) => (int)$value,
);
}
} }

View File

@@ -181,7 +181,7 @@ trait ConvertsDataTypes
/** @var AccountRepositoryInterface $repository */ /** @var AccountRepositoryInterface $repository */
$repository = app(AccountRepositoryInterface::class); $repository = app(AccountRepositoryInterface::class);
if (method_exists($this, 'validateUserGroup')) { /** @phpstan-ignore-line */ if (method_exists($this, 'validateUserGroup')) { // @phpstan-ignore-line
$userGroup = $this->validateUserGroup($this); $userGroup = $this->validateUserGroup($this);
if (null !== $userGroup) { if (null !== $userGroup) {
$repository->setUserGroup($userGroup); $repository->setUserGroup($userGroup);

View File

@@ -77,7 +77,7 @@ class AccountSearch implements GenericSearchInterface
); );
// meta data: // meta data:
$searchQuery->orWhere( $searchQuery->orWhere(
static function (Builder $q) use ($originalQuery) { /** @phpstan-ignore-line */ static function (Builder $q) use ($originalQuery) { // @phpstan-ignore-line
$json = json_encode($originalQuery, JSON_THROW_ON_ERROR); $json = json_encode($originalQuery, JSON_THROW_ON_ERROR);
$q->where('account_meta.name', '=', 'account_number'); $q->where('account_meta.name', '=', 'account_number');
$q->where('account_meta.data', 'LIKE', $json); $q->where('account_meta.data', 'LIKE', $json);
@@ -96,7 +96,7 @@ class AccountSearch implements GenericSearchInterface
case self::SEARCH_NUMBER: case self::SEARCH_NUMBER:
// meta data: // meta data:
$searchQuery->Where( $searchQuery->Where(
static function (Builder $q) use ($originalQuery) { /** @phpstan-ignore-line */ static function (Builder $q) use ($originalQuery) { // @phpstan-ignore-line
$json = json_encode($originalQuery, JSON_THROW_ON_ERROR); $json = json_encode($originalQuery, JSON_THROW_ON_ERROR);
$q->where('account_meta.name', 'account_number'); $q->where('account_meta.name', 'account_number');
$q->where('account_meta.data', $json); $q->where('account_meta.data', $json);

View File

@@ -57,6 +57,8 @@ use Gdbots\QueryParser\QueryParser;
use Illuminate\Pagination\LengthAwarePaginator; use Illuminate\Pagination\LengthAwarePaginator;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
use LogicException; use LogicException;
use Psr\Container\ContainerExceptionInterface;
use Psr\Container\NotFoundExceptionInterface;
use TypeError; use TypeError;
/** /**
@@ -71,6 +73,8 @@ class OperatorQuerySearch implements SearchInterface
private CategoryRepositoryInterface $categoryRepository; private CategoryRepositoryInterface $categoryRepository;
private GroupCollectorInterface $collector; private GroupCollectorInterface $collector;
private CurrencyRepositoryInterface $currencyRepository; private CurrencyRepositoryInterface $currencyRepository;
private array $excludeTags;
private array $includeTags;
private array $invalidOperators; private array $invalidOperators;
private int $limit; private int $limit;
private Collection $operators; private Collection $operators;
@@ -81,9 +85,6 @@ class OperatorQuerySearch implements SearchInterface
private array $validOperators; private array $validOperators;
private array $words; private array $words;
private array $excludeTags;
private array $includeTags;
/** /**
* OperatorQuerySearch constructor. * OperatorQuerySearch constructor.
* *
@@ -2165,6 +2166,44 @@ class OperatorQuerySearch implements SearchInterface
} }
} }
/**
* @return void
* @throws ContainerExceptionInterface
* @throws NotFoundExceptionInterface
*/
private function parseTagInstructions(): void
{
app('log')->debug('Now in parseTagInstructions()');
// if exclude tags, remove excluded tags.
if (count($this->excludeTags) > 0) {
app('log')->debug(sprintf('%d exclude tag(s)', count($this->excludeTags)));
$collection = new Collection;
foreach ($this->excludeTags as $tagId) {
$tag = $this->tagRepository->find($tagId);
if (null !== $tag) {
app('log')->debug(sprintf('Exclude tag "%s"', $tag->tag));
$collection->push($tag);
}
}
app('log')->debug(sprintf('Selecting all tags except %d excluded tag(s).', $collection->count()));
$this->collector->setWithoutSpecificTags($collection);
}
// if include tags, include them:
if (count($this->includeTags) > 0) {
app('log')->debug(sprintf('%d include tag(s)', count($this->includeTags)));
$collection = new Collection;
foreach ($this->includeTags as $tagId) {
$tag = $this->tagRepository->find($tagId);
if (null !== $tag) {
app('log')->debug(sprintf('Include tag "%s"', $tag->tag));
$collection->push($tag);
}
}
$this->collector->setTags($collection);
}
}
/** /**
* @inheritDoc * @inheritDoc
*/ */
@@ -2235,42 +2274,4 @@ class OperatorQuerySearch implements SearchInterface
$this->limit = $limit; $this->limit = $limit;
$this->collector->setLimit($this->limit); $this->collector->setLimit($this->limit);
} }
/**
* @return void
* @throws \Psr\Container\ContainerExceptionInterface
* @throws \Psr\Container\NotFoundExceptionInterface
*/
private function parseTagInstructions(): void
{
app('log')->debug('Now in parseTagInstructions()');
// if exclude tags, remove excluded tags.
if (count($this->excludeTags) > 0) {
app('log')->debug(sprintf('%d exclude tag(s)', count($this->excludeTags)));
$collection = new Collection;
foreach ($this->excludeTags as $tagId) {
$tag = $this->tagRepository->find($tagId);
if (null !== $tag) {
app('log')->debug(sprintf('Exclude tag "%s"', $tag->tag));
$collection->push($tag);
}
}
app('log')->debug(sprintf('Selecting all tags except %d excluded tag(s).', $collection->count()));
$this->collector->setWithoutSpecificTags($collection);
}
// if include tags, include them:
if (count($this->includeTags) > 0) {
app('log')->debug(sprintf('%d include tag(s)', count($this->includeTags)));
$collection = new Collection;
foreach ($this->includeTags as $tagId) {
$tag = $this->tagRepository->find($tagId);
if (null !== $tag) {
app('log')->debug(sprintf('Include tag "%s"', $tag->tag));
$collection->push($tag);
}
}
$this->collector->setTags($collection);
}
}
} }

View File

@@ -604,7 +604,7 @@ class Steam
->leftJoin('transaction_journals', 'transaction_journals.id', '=', 'transactions.transaction_journal_id') ->leftJoin('transaction_journals', 'transaction_journals.id', '=', 'transactions.transaction_journal_id')
->where('transaction_journals.date', '<=', $date->format('Y-m-d 23:59:59')) ->where('transaction_journals.date', '<=', $date->format('Y-m-d 23:59:59'))
->groupBy('transactions.transaction_currency_id'); ->groupBy('transactions.transaction_currency_id');
$balances = $query->get(['transactions.transaction_currency_id', DB::raw('SUM(transactions.amount) as sum_for_currency')]); /** @phpstan-ignore-line */ $balances = $query->get(['transactions.transaction_currency_id', DB::raw('SUM(transactions.amount) as sum_for_currency')]); // @phpstan-ignore-line
$return = []; $return = [];
/** @var stdClass $entry */ /** @var stdClass $entry */
foreach ($balances as $entry) { foreach ($balances as $entry) {

Some files were not shown because too many files have changed in this diff Show More