First Commit
This commit is contained in:
+83
@@ -0,0 +1,83 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* SysCMS - Content Management System
|
||||
*
|
||||
* Copyright (c) 2026 SysCMS Team
|
||||
* All rights reserved.
|
||||
*/
|
||||
|
||||
use Illuminate\Database\Capsule\Manager as Capsule;
|
||||
|
||||
class InsertFluxoCaixaProModule
|
||||
{
|
||||
public function up()
|
||||
{
|
||||
$moduleName = 'fluxocaixapro';
|
||||
$moduleData = [
|
||||
'modules_name' => $moduleName,
|
||||
'modules_display_name' => 'Fluxo de Caixa Pró',
|
||||
'modules_description' => 'Módulo avançado de gestão de fluxo de caixa com previsões inteligentes.',
|
||||
'modules_version' => '1.0.0',
|
||||
'modules_author' => 'SysCMS Team',
|
||||
'modules_ative' => 1,
|
||||
'modules_public' => 1,
|
||||
'modules_blocked' => 0,
|
||||
'modules_dependencies' => json_encode(['auth']),
|
||||
'modules_permissions' => json_encode([
|
||||
"fluxocaixapro.view",
|
||||
"fluxocaixapro.manage"
|
||||
]),
|
||||
'modules_settings' => json_encode([
|
||||
"menu" => [
|
||||
"dashboard" => [
|
||||
"icon" => "bi bi-cash-stack",
|
||||
"label" => "Fluxo de Caixa Pró",
|
||||
"route" => "admin/fluxo-caixa",
|
||||
"order" => 70,
|
||||
"permission" => "fluxocaixapro.view"
|
||||
]
|
||||
]
|
||||
]),
|
||||
'modules_path' => 'modules/fluxocaixapro',
|
||||
'modules_namespace' => 'Modules\\FluxoCaixaPro',
|
||||
'modules_icon' => 'bi bi-cash-stack',
|
||||
'menu_side_bar' => 1,
|
||||
'menu_nav_bar' => 0,
|
||||
'modules_order' => 70,
|
||||
'modules_install_date' => date('Y-m-d H:i:s'),
|
||||
'modules_update_date' => date('Y-m-d H:i:s')
|
||||
];
|
||||
|
||||
$existingModule = Capsule::table('modules')->where('modules_name', $moduleName)->first();
|
||||
|
||||
if (!$existingModule) {
|
||||
$moduleId = Capsule::table('modules')->insertGetId($moduleData);
|
||||
|
||||
// Associar a todas as empresas existentes
|
||||
if (Capsule::schema()->hasTable('bus')) {
|
||||
$companies = Capsule::table('bus')->get();
|
||||
foreach ($companies as $company) {
|
||||
Capsule::table('bus_modules')->insert([
|
||||
'bus_modules_bus_id' => $company->bus_id,
|
||||
'bus_modules_module_id' => $moduleId,
|
||||
'bus_modules_is_enabled' => 1,
|
||||
'bus_modules_show_public_nav' => 0,
|
||||
'bus_modules_show_dashboard_nav' => 1,
|
||||
'created_at' => date('Y-m-d H:i:s'),
|
||||
'updated_at' => date('Y-m-d H:i:s')
|
||||
]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function down()
|
||||
{
|
||||
$module = Capsule::table('modules')->where('modules_name', 'fluxocaixapro')->first();
|
||||
if ($module) {
|
||||
Capsule::table('bus_modules')->where('bus_modules_module_id', $module->modules_id)->delete();
|
||||
Capsule::table('modules')->where('modules_id', $module->modules_id)->delete();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user