mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-02-25 18:45:27 -06:00
Make sure the date is passed on when running the cron job.
This commit is contained in:
parent
5bbe1eab7c
commit
54623061d8
@ -24,10 +24,12 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace FireflyIII\Console\Commands\Tools;
|
namespace FireflyIII\Console\Commands\Tools;
|
||||||
|
|
||||||
|
use Carbon\Carbon;
|
||||||
use Exception;
|
use Exception;
|
||||||
use FireflyIII\Exceptions\FireflyException;
|
use FireflyIII\Exceptions\FireflyException;
|
||||||
use FireflyIII\Support\Cronjobs\RecurringCronjob;
|
use FireflyIII\Support\Cronjobs\RecurringCronjob;
|
||||||
use Illuminate\Console\Command;
|
use Illuminate\Console\Command;
|
||||||
|
use InvalidArgumentException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class Cron
|
* Class Cron
|
||||||
@ -58,9 +60,23 @@ class Cron extends Command
|
|||||||
*/
|
*/
|
||||||
public function handle(): int
|
public function handle(): int
|
||||||
{
|
{
|
||||||
|
$date = null;
|
||||||
|
try {
|
||||||
|
$date = new Carbon($this->option('date'));
|
||||||
|
} catch (InvalidArgumentException $e) {
|
||||||
|
$this->error(sprintf('"%s" is not a valid date', $this->option('date')));
|
||||||
|
$e->getMessage();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
$recurring = new RecurringCronjob;
|
$recurring = new RecurringCronjob;
|
||||||
$recurring->setForce($this->option('force'));
|
$recurring->setForce($this->option('force'));
|
||||||
|
|
||||||
|
// set date in cron job:
|
||||||
|
if (null !== $date) {
|
||||||
|
$recurring->setDate($date);
|
||||||
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
$result = $recurring->fire();
|
$result = $recurring->fire();
|
||||||
} catch (FireflyException $e) {
|
} catch (FireflyException $e) {
|
||||||
|
@ -55,7 +55,6 @@ use FireflyIII\Models\Recurrence;
|
|||||||
use FireflyIII\Models\RecurrenceMeta;
|
use FireflyIII\Models\RecurrenceMeta;
|
||||||
use FireflyIII\Models\RecurrenceRepetition;
|
use FireflyIII\Models\RecurrenceRepetition;
|
||||||
use FireflyIII\Models\RecurrenceTransaction;
|
use FireflyIII\Models\RecurrenceTransaction;
|
||||||
use FireflyIII\Models\Rule;
|
|
||||||
use FireflyIII\Models\TransactionGroup;
|
use FireflyIII\Models\TransactionGroup;
|
||||||
use FireflyIII\Models\TransactionJournal;
|
use FireflyIII\Models\TransactionJournal;
|
||||||
use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
|
use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
|
||||||
@ -63,7 +62,6 @@ use FireflyIII\Repositories\Recurring\RecurringRepositoryInterface;
|
|||||||
use FireflyIII\Repositories\Rule\RuleRepositoryInterface;
|
use FireflyIII\Repositories\Rule\RuleRepositoryInterface;
|
||||||
use FireflyIII\Repositories\TransactionGroup\TransactionGroupRepositoryInterface;
|
use FireflyIII\Repositories\TransactionGroup\TransactionGroupRepositoryInterface;
|
||||||
use FireflyIII\TransactionRules\Engine\RuleEngine;
|
use FireflyIII\TransactionRules\Engine\RuleEngine;
|
||||||
use FireflyIII\TransactionRules\Processor;
|
|
||||||
use FireflyIII\User;
|
use FireflyIII\User;
|
||||||
use Illuminate\Bus\Queueable;
|
use Illuminate\Bus\Queueable;
|
||||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||||
@ -109,6 +107,8 @@ class CreateRecurringTransactions implements ShouldQueue
|
|||||||
$this->groupRepository = app(TransactionGroupRepositoryInterface::class);
|
$this->groupRepository = app(TransactionGroupRepositoryInterface::class);
|
||||||
$this->force = false;
|
$this->force = false;
|
||||||
|
|
||||||
|
Log::debug(sprintf('Created new CreateRecurringTransactions("%s")', $this->date->format('Y-m-d')));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -118,9 +118,11 @@ class RecurringCronjob extends AbstractCronjob
|
|||||||
*/
|
*/
|
||||||
private function fireRecurring(): void
|
private function fireRecurring(): void
|
||||||
{
|
{
|
||||||
|
Log::info(sprintf('Will now fire recurring cron job task for date "%s".', $this->date->format('Y-m-d')));
|
||||||
$job = new CreateRecurringTransactions($this->date);
|
$job = new CreateRecurringTransactions($this->date);
|
||||||
$job->setForce($this->force);
|
$job->setForce($this->force);
|
||||||
$job->handle();
|
$job->handle();
|
||||||
app('fireflyconfig')->set('last_rt_job', $this->date->format('U'));
|
app('fireflyconfig')->set('last_rt_job', (int)$this->date->format('U'));
|
||||||
|
Log::info('Done with recurring cron job task.');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user