From 024c3de06d34dc952891f4c0d1107e46adf8eac2 Mon Sep 17 00:00:00 2001 From: user <michael@congegni.net> Date: Mon, 19 Aug 2024 18:41:57 +0200 Subject: [PATCH] add: php artisan command csvExport:generate --- app/Console/Commands/exportCsv.php | 69 ++++++++++++++++++++++++++++++ app/Console/Kernel.php | 4 +- 2 files changed, 72 insertions(+), 1 deletion(-) create mode 100644 app/Console/Commands/exportCsv.php diff --git a/app/Console/Commands/exportCsv.php b/app/Console/Commands/exportCsv.php new file mode 100644 index 0000000..d4e8bc1 --- /dev/null +++ b/app/Console/Commands/exportCsv.php @@ -0,0 +1,69 @@ +<?php + +namespace App\Console\Commands; + +use App\Http\Controllers\GiteaApiController\GiteaExport; +use Illuminate\Console\Command; + +class exportCsv extends Command +{ + /** + * The name and signature of the console command. + * + * @var string + */ + protected $signature = 'csvExport:generate'; + + /** + * The console command description. + * + * @var string + */ + protected $description = 'Export in stringa del csv con integrazione di nextcloud e invio email.'; + + /** + * Create a new command instance. + * + * @return void + */ + public function __construct() + { + parent::__construct(); + } + + /** + * Execute the console command. + * + * @return mixed + */ + public function handle() + { + // Write your script logic here + $this->info('Inizio esecuzione.'); + $firstDay = date('Y-m-01'); // First day of the current month + $lastDay = date('Y-m-t'); // Last day of the current month + $this->info('Export da ' . $firstDay .' a '. $lastDay ); + $calculate_agent_cost = true; + $third_party_integrations_allow = true; + $third_party_integrations_nextcloud = true; + $third_party_integrations_open_project = false; + $email_send_allow = true; + $this->info( + 'Le seguenti opzioni sono attive ' + . ' calculate_agent_cost '. $calculate_agent_cost . '\n' + . ' third_party_integrations_allow '. $third_party_integrations_allow . '\n' + . ' third_party_integrations_nextcloud '. $third_party_integrations_nextcloud . '\n' + . ' third_party_integrations_open_project '. $third_party_integrations_open_project . '\n' + . ' email_send_allow '. $email_send_allow . '\n' + ); + $gitea_export = new GiteaExport( + $calculate_agent_cost, + $third_party_integrations_allow, + $third_party_integrations_nextcloud, + $third_party_integrations_open_project, + $email_send_allow, + ); + $gitea_export->export_issues($firstDay, $lastDay, ['state' => 'closed']); + return Command::SUCCESS; + } +} diff --git a/app/Console/Kernel.php b/app/Console/Kernel.php index c2c7b52..1b97d3f 100644 --- a/app/Console/Kernel.php +++ b/app/Console/Kernel.php @@ -2,6 +2,8 @@ namespace App\Console; +use App\Console\Commands\exportCsv; +use App\Console\Commands\exportCsvCli; use App\Http\Controllers\GiteaApiController\GiteaExport; use Dotenv\Dotenv; use Illuminate\Console\Scheduling\Schedule; @@ -15,7 +17,7 @@ class Kernel extends ConsoleKernel * @var array */ protected $commands = [ - // + exportCsv::class, ]; /**