mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-02-25 18:45:27 -06:00
Some minor code fixes.
This commit is contained in:
parent
bc825a8603
commit
22d2a523fb
@ -50,9 +50,7 @@ class CreateImport extends Command
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Execute the console command.
|
*
|
||||||
*
|
|
||||||
* @return mixed
|
|
||||||
*/
|
*/
|
||||||
public function handle()
|
public function handle()
|
||||||
{
|
{
|
||||||
|
@ -51,9 +51,7 @@ class Import extends Command
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Execute the console command.
|
|
||||||
*
|
*
|
||||||
* @return mixed
|
|
||||||
*/
|
*/
|
||||||
public function handle()
|
public function handle()
|
||||||
{
|
{
|
||||||
|
@ -25,6 +25,7 @@ use FireflyIII\Models\TransactionType;
|
|||||||
use FireflyIII\Repositories\User\UserRepositoryInterface;
|
use FireflyIII\Repositories\User\UserRepositoryInterface;
|
||||||
use FireflyIII\User;
|
use FireflyIII\User;
|
||||||
use Illuminate\Console\Command;
|
use Illuminate\Console\Command;
|
||||||
|
use Illuminate\Contracts\Encryption\DecryptException;
|
||||||
use Illuminate\Database\Eloquent\Builder;
|
use Illuminate\Database\Eloquent\Builder;
|
||||||
use Schema;
|
use Schema;
|
||||||
use stdClass;
|
use stdClass;
|
||||||
@ -67,16 +68,18 @@ class VerifyDatabase extends Command
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$this->reportObject('budget');
|
||||||
|
$this->reportObject('category');
|
||||||
|
$this->reportObject('tag');
|
||||||
|
|
||||||
|
return;
|
||||||
|
|
||||||
// accounts with no transactions.
|
// accounts with no transactions.
|
||||||
$this->reportAccounts();
|
$this->reportAccounts();
|
||||||
// budgets with no limits
|
// budgets with no limits
|
||||||
$this->reportBudgetLimits();
|
$this->reportBudgetLimits();
|
||||||
// budgets with no transactions
|
// budgets with no transactions
|
||||||
$this->reportBudgets();
|
|
||||||
// categories with no transactions
|
|
||||||
$this->reportCategories();
|
|
||||||
// tags with no transactions
|
|
||||||
$this->reportTags();
|
|
||||||
// sum of transactions is not zero.
|
// sum of transactions is not zero.
|
||||||
$this->reportSum();
|
$this->reportSum();
|
||||||
// any deleted transaction journals that have transactions that are NOT deleted:
|
// any deleted transaction journals that have transactions that are NOT deleted:
|
||||||
@ -142,48 +145,6 @@ class VerifyDatabase extends Command
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Reports on budgets without any transactions.
|
|
||||||
*/
|
|
||||||
private function reportBudgets()
|
|
||||||
{
|
|
||||||
$set = Budget
|
|
||||||
::leftJoin('budget_transaction_journal', 'budgets.id', '=', 'budget_transaction_journal.budget_id')
|
|
||||||
->leftJoin('users', 'budgets.user_id', '=', 'users.id')
|
|
||||||
->distinct()
|
|
||||||
->whereNull('budget_transaction_journal.budget_id')
|
|
||||||
->whereNull('budgets.deleted_at')
|
|
||||||
->get(['budgets.id', 'budgets.name', 'budgets.user_id', 'users.email']);
|
|
||||||
|
|
||||||
/** @var stdClass $entry */
|
|
||||||
foreach ($set as $entry) {
|
|
||||||
$line = 'Notice: User #' . $entry->user_id . ' (' . $entry->email . ') has budget #' . $entry->id . ' ("' . Crypt::decrypt($entry->name)
|
|
||||||
. '") which has no transactions.';
|
|
||||||
$this->line($line);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Reports on categories without any transactions.
|
|
||||||
*/
|
|
||||||
private function reportCategories()
|
|
||||||
{
|
|
||||||
$set = Category
|
|
||||||
::leftJoin('category_transaction_journal', 'categories.id', '=', 'category_transaction_journal.category_id')
|
|
||||||
->leftJoin('users', 'categories.user_id', '=', 'users.id')
|
|
||||||
->distinct()
|
|
||||||
->whereNull('category_transaction_journal.category_id')
|
|
||||||
->whereNull('categories.deleted_at')
|
|
||||||
->get(['categories.id', 'categories.name', 'categories.user_id', 'users.email']);
|
|
||||||
|
|
||||||
/** @var stdClass $entry */
|
|
||||||
foreach ($set as $entry) {
|
|
||||||
$line = 'Notice: User #' . $entry->user_id . ' (' . $entry->email . ') has category #' . $entry->id . ' ("' . Crypt::decrypt($entry->name)
|
|
||||||
. '") which has no transactions.';
|
|
||||||
$this->line($line);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Reports on deleted accounts that still have not deleted transactions or journals attached to them.
|
* Reports on deleted accounts that still have not deleted transactions or journals attached to them.
|
||||||
*/
|
*/
|
||||||
@ -300,6 +261,40 @@ class VerifyDatabase extends Command
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param string $name
|
||||||
|
*/
|
||||||
|
private function reportObject(string $name)
|
||||||
|
{
|
||||||
|
$plural = str_plural($name);
|
||||||
|
$class = sprintf('FireflyIII\Models\%s', ucfirst($name));
|
||||||
|
$field = $name == 'tag' ? 'tag' : 'name';
|
||||||
|
$set = $class
|
||||||
|
::leftJoin($name . '_transaction_journal', $plural . '.id', '=', $name . '_transaction_journal.' . $name . '_id')
|
||||||
|
->leftJoin('users', $plural . '.user_id', '=', 'users.id')
|
||||||
|
->distinct()
|
||||||
|
->whereNull($name . '_transaction_journal.' . $name . '_id')
|
||||||
|
->whereNull($plural . '.deleted_at')
|
||||||
|
->get([$plural . '.id', $plural . '.' . $field . ' as name', $plural . '.user_id', 'users.email']);
|
||||||
|
|
||||||
|
/** @var stdClass $entry */
|
||||||
|
foreach ($set as $entry) {
|
||||||
|
|
||||||
|
$objName = $entry->name;
|
||||||
|
try {
|
||||||
|
$objName = Crypt::decrypt($objName);
|
||||||
|
} catch (DecryptException $e) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
$line = sprintf(
|
||||||
|
'Notice: User #%d (%s) has %s #%d ("%s") which has no transactions.',
|
||||||
|
$entry->user_id, $entry->email, $name, $entry->id, $objName
|
||||||
|
);
|
||||||
|
$this->line($line);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Reports for each user when the sum of their transactions is not zero.
|
* Reports for each user when the sum of their transactions is not zero.
|
||||||
*/
|
*/
|
||||||
@ -317,27 +312,6 @@ class VerifyDatabase extends Command
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Reports on tags without any transactions.
|
|
||||||
*/
|
|
||||||
private function reportTags()
|
|
||||||
{
|
|
||||||
$set = Tag
|
|
||||||
::leftJoin('tag_transaction_journal', 'tags.id', '=', 'tag_transaction_journal.tag_id')
|
|
||||||
->leftJoin('users', 'tags.user_id', '=', 'users.id')
|
|
||||||
->distinct()
|
|
||||||
->whereNull('tag_transaction_journal.tag_id')
|
|
||||||
->whereNull('tags.deleted_at')
|
|
||||||
->get(['tags.id', 'tags.tag', 'tags.user_id', 'users.email']);
|
|
||||||
|
|
||||||
/** @var stdClass $entry */
|
|
||||||
foreach ($set as $entry) {
|
|
||||||
$line = 'Notice: User #' . $entry->user_id . ' (' . $entry->email . ') has tag #' . $entry->id . ' ("' . $entry->tag
|
|
||||||
. '") which has no transactions.';
|
|
||||||
$this->line($line);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Reports on deleted transactions that are connected to a not deleted journal.
|
* Reports on deleted transactions that are connected to a not deleted journal.
|
||||||
*/
|
*/
|
||||||
|
@ -24,7 +24,7 @@ use FireflyIII\Http\Controllers\Controller;
|
|||||||
class HomeController extends Controller
|
class HomeController extends Controller
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* @return mixed
|
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
|
||||||
*/
|
*/
|
||||||
public function index()
|
public function index()
|
||||||
{
|
{
|
||||||
|
@ -57,7 +57,7 @@ class AttachmentController extends Controller
|
|||||||
/**
|
/**
|
||||||
* @param Attachment $attachment
|
* @param Attachment $attachment
|
||||||
*
|
*
|
||||||
* @return View
|
* @return \Illuminate\View\View|\Illuminate\Contracts\View\Factory
|
||||||
*/
|
*/
|
||||||
public function delete(Attachment $attachment)
|
public function delete(Attachment $attachment)
|
||||||
{
|
{
|
||||||
|
@ -56,7 +56,7 @@ class ExportController extends Controller
|
|||||||
/**
|
/**
|
||||||
* @param ExportJob $job
|
* @param ExportJob $job
|
||||||
*
|
*
|
||||||
* @return mixed
|
* @return \Symfony\Component\HttpFoundation\Response|\Illuminate\Contracts\Routing\ResponseFactory
|
||||||
* @throws FireflyException
|
* @throws FireflyException
|
||||||
*/
|
*/
|
||||||
public function download(ExportJob $job)
|
public function download(ExportJob $job)
|
||||||
|
Loading…
Reference in New Issue
Block a user