CaiWuXiTong/database/seeds/Reports.php
WuYongJie 9595267ee7
Some checks failed
Tests / PHP 8.1 (push) Has been cancelled
Tests / PHP 8.2 (push) Has been cancelled
Tests / PHP 8.3 (push) Has been cancelled
chore: 导入 Akaunting 初始源码与团队协作规则
2026-07-20 18:20:25 +08:00

77 lines
2.4 KiB
PHP

<?php
namespace Database\Seeds;
use App\Abstracts\Model;
use App\Jobs\Common\CreateReport;
use App\Traits\Jobs;
use Illuminate\Database\Seeder;
class Reports extends Seeder
{
use Jobs;
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
Model::unguard();
$this->create();
Model::reguard();
}
private function create()
{
$company_id = $this->command->argument('company');
$rows = [
[
'company_id' => $company_id,
'class' => \App\Reports\IncomeSummary::class,
'name' => trans('reports.income_summary'),
'description' => trans('demo.reports.income'),
'settings' => ['group' => 'category', 'period' => 'monthly', 'basis' => 'accrual'],
],
[
'company_id' => $company_id,
'class' => \App\Reports\ExpenseSummary::class,
'name' => trans('reports.expense_summary'),
'description' => trans('demo.reports.expense'),
'settings' => ['group' => 'category', 'period' => 'monthly', 'basis' => 'accrual'],
],
[
'company_id' => $company_id,
'class' => \App\Reports\IncomeExpenseSummary::class,
'name' => trans('reports.income_expense_summary'),
'description' => trans('demo.reports.income_expense'),
'settings' => ['group' => 'category', 'period' => 'monthly', 'basis' => 'accrual'],
],
[
'company_id' => $company_id,
'class' => \App\Reports\ProfitLoss::class,
'name' => trans('reports.profit_loss'),
'description' => trans('demo.reports.profit_loss'),
'settings' => ['group' => 'category', 'period' => 'quarterly', 'basis' => 'accrual', 'show_percentage' => 'no'],
],
[
'company_id' => $company_id,
'class' => \App\Reports\TaxSummary::class,
'name' => trans('reports.tax_summary'),
'description' => trans('demo.reports.tax'),
'settings' => ['period' => 'quarterly', 'basis' => 'accrual'],
],
];
foreach ($rows as $row) {
$row['created_from'] = 'core::seed';
$this->dispatch(new CreateReport($row));
}
}
}