79 lines
2.3 KiB
PHP
79 lines
2.3 KiB
PHP
<?php
|
|
|
|
namespace App\Console;
|
|
|
|
use A7kz\Platform\Commands\InstallCommand;
|
|
use A7kz\Platform\Helpers\Facade\Helper;
|
|
use App\Install\Seed;
|
|
|
|
class PipiCarInstallCommands extends InstallCommand
|
|
{
|
|
protected $signature = 'pipicar:install {--install} {--upgrade} {--apps}';
|
|
protected $description = 'CRM Аренды автомобилей';
|
|
protected $module_name = 'pipicar';
|
|
protected $module_version = '1.0.0';
|
|
|
|
protected $storage = 'pipicar_crm';
|
|
|
|
private array $packages = [];
|
|
public function __construct()
|
|
{
|
|
parent::__construct();
|
|
|
|
// Upgrade::Roles();
|
|
|
|
$this->packages = [
|
|
'main', // Главная страница
|
|
'auto_brands', // Бренд авто
|
|
'auto_colors', // Цвета авто
|
|
'auto_types', // Типы авто
|
|
'auto_equipment', // Комплектация авто
|
|
'brand_models', // Модель авто
|
|
'auto_classes', // Класс авто
|
|
'auto_tariffs', // Тарифы авто
|
|
'owner_contracts', // Договор Владельца
|
|
'owners', // Владелец авто
|
|
'auto', // авто
|
|
'applications', //Заявки
|
|
'pipi_users', // Добавление логики для пользователей
|
|
'auto_calendar' // Добавление логики для пользователей
|
|
];
|
|
}
|
|
|
|
public function packages(): void
|
|
{
|
|
foreach ($this->packages as $package){
|
|
$this->package($package);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* @throws \Exception
|
|
*/
|
|
public function migrate(){}
|
|
public function seeds(): void
|
|
{
|
|
Seed::init();
|
|
}
|
|
|
|
public function apps(): void
|
|
{
|
|
Seed::init();
|
|
foreach ($this->packages as $package){
|
|
$this->package_update($package);
|
|
}
|
|
}
|
|
|
|
public function upgrade(): void
|
|
{
|
|
$module = Helper::install()->module($this->module_name);
|
|
if(!is_null($module) && !$module->lock_version) {
|
|
switch ($module->module_version) {
|
|
default:
|
|
$this->update_info($module, $this->module_version, 'Обновление');
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|