diff --git a/app/Console/Commands/corpJournal.php b/app/Console/Commands/corpJournal.php index be44a56e9..fe9af7efe 100644 --- a/app/Console/Commands/corpJournal.php +++ b/app/Console/Commands/corpJournal.php @@ -12,6 +12,9 @@ use App\Library\Esi; use App\Models\EsiScope; use App\Models\EsiToken; use App\Models\Structure; +use App\Models\ScheduleJob; + +use Carbon\Carbon; class CorpJournal extends Command { @@ -46,6 +49,13 @@ class CorpJournal extends Command */ public function handle() { + //Add an entry into the jobs table + $job = new ScheduleJob; + $time = Carbon::now(); + $job->name = 'CorpJournal'; + $job->state = 'Starting'; + $job->system_time = $time; + $job->save(); //Setup the Finances Container $finance = new Finances(); //Get the corps with structures logged in the database @@ -56,6 +66,10 @@ class CorpJournal extends Command $this->GetJournal($structure->character_id); } + //Mark the job as finished + DB::table('schedule_jobs')->where('system_time', $time)->update([ + 'job_state' => 'Finished', + ]); } private function GetJournal($charId) { diff --git a/app/Console/Commands/getCorps.php b/app/Console/Commands/getCorps.php index d6089cd7b..a5ee3ceaa 100644 --- a/app/Console/Commands/getCorps.php +++ b/app/Console/Commands/getCorps.php @@ -4,14 +4,19 @@ namespace App\Console\Commands; use Illuminate\Console\Command; +use DB; + use App\Models\AllianceCorp; +use App\Models\ScheduleJob; + +use Carbon\Carbon; use Seat\Eseye\Cache\NullCache; use Seat\Eseye\Configuration; use Seat\Eseye\Containers\EsiAuthentication; use Seat\Eseye\Eseye; -class getCorps extends Command +class GetCorps extends Command { /** * The name and signature of the console command. @@ -44,6 +49,13 @@ class getCorps extends Command */ public function handle() { + //Add an entry into the jobs table + $job = new ScheduleJob; + $time = Carbon::now(); + $job->job_name = 'GetCorps'; + $job->job_state = 'Starting'; + $job->system_time = $time; + $job->save(); //Set the parameters for ESI $configuration = Configuration::getInstance(); $configuration->logfile_location = 'var/www/w4rpservices/storage/logs/eseye'; @@ -72,5 +84,10 @@ class getCorps extends Command $entry->name = $corpInfo->name; $entry->save(); } + + //If the job is finished we need to mark it in the table + DB::table('schedule_jobs')->where('system_time', $time)->update([ + 'job_state' => 'Finished', + ]); } } diff --git a/app/Console/Kernel.php b/app/Console/Kernel.php index 4aa127b3f..e5f245ee1 100644 --- a/app/Console/Kernel.php +++ b/app/Console/Kernel.php @@ -27,9 +27,7 @@ class Kernel extends ConsoleKernel protected function schedule(Schedule $schedule) { $schedule->command(CorpJournal::class)->everyFifteenMinutes(); - // $schedule->command(getCorps)->daily(); - // $schedule->command('inspire') - // ->hourly(); + //$schedule->command(GetCorps::class)->daily(); } /** diff --git a/app/Http/Controllers/FinancesController.php b/app/Http/Controllers/FinancesController.php index 06d709878..710078962 100644 --- a/app/Http/Controllers/FinancesController.php +++ b/app/Http/Controllers/FinancesController.php @@ -48,7 +48,7 @@ class FinancesController extends Controller //Get the taxes for the corporation $taxes = DB::table('CorpJournals') ->where(['corporation_id'=> $corpId, 'ref_type' => 'brokers_fee']) - ->whereBetween($start, $end) + ->whereBetween(['dateTime' => $start, 'dateTime' => $end]) ->get(); foreach($taxes as $tax) { $totalTax += $tax->amount; diff --git a/app/Models/ScheduleJob.php b/app/Models/ScheduleJob.php new file mode 100644 index 000000000..ab8acf128 --- /dev/null +++ b/app/Models/ScheduleJob.php @@ -0,0 +1,19 @@ +increments('id'); + $table->string('job_name'); + $table->string('job_state'); + $table->dateTime('system_time'); + $table->timestamps(); + }); + } + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('schedule_jobs'); + } +} diff --git a/vendor/composer/autoload_classmap.php b/vendor/composer/autoload_classmap.php index 06fcc489f..6084d14df 100644 --- a/vendor/composer/autoload_classmap.php +++ b/vendor/composer/autoload_classmap.php @@ -6,8 +6,8 @@ $vendorDir = dirname(dirname(__FILE__)); $baseDir = dirname($vendorDir); return array( - 'App\\Console\\Commands\\corpJournal' => $baseDir . '/app/Console/Commands/corpJournal.php', - 'App\\Console\\Commands\\getCorps' => $baseDir . '/app/Console/Commands/getCorps.php', + 'App\\Console\\Commands\\CorpJournal' => $baseDir . '/app/Console/Commands/corpJournal.php', + 'App\\Console\\Commands\\GetCorps' => $baseDir . '/app/Console/Commands/getCorps.php', 'App\\Console\\Commands\\sendMail' => $baseDir . '/app/Console/Commands/sendmail.php', 'App\\Console\\Kernel' => $baseDir . '/app/Console/Kernel.php', 'App\\Exceptions\\Handler' => $baseDir . '/app/Exceptions/Handler.php', @@ -23,6 +23,7 @@ return array( 'App\\Http\\Controllers\\FinancesController' => $baseDir . '/app/Http/Controllers/FinancesController.php', 'App\\Http\\Controllers\\FleetsController' => $baseDir . '/app/Http/Controllers/FleetsController.php', 'App\\Http\\Controllers\\MoonsController' => $baseDir . '/app/Http/Controllers/MoonsController.php', + 'App\\Http\\Controllers\\RegisterStructureController' => $baseDir . '/app/Http/Controllers/RegisterStructureController.php', 'App\\Http\\Controllers\\WikiController' => $baseDir . '/app/Http/Controllers/WikiController.php', 'App\\Http\\Kernel' => $baseDir . '/app/Http/Kernel.php', 'App\\Http\\Middleware\\Authenticate' => $baseDir . '/app/Http/Middleware/Authenticate.php', @@ -34,14 +35,17 @@ return array( 'App\\Http\\Middleware\\TrimStrings' => $baseDir . '/app/Http/Middleware/TrimStrings.php', 'App\\Http\\Middleware\\TrustProxies' => $baseDir . '/app/Http/Middleware/TrustProxies.php', 'App\\Http\\Middleware\\VerifyCsrfToken' => $baseDir . '/app/Http/Middleware/VerifyCsrfToken.php', + 'App\\Library\\Esi' => $baseDir . '/app/Library/Esi.php', 'App\\Library\\Finances' => $baseDir . '/app/Library/Finances.php', 'App\\Library\\Fleet' => $baseDir . '/app/Library/Fleet.php', 'App\\Library\\Mail' => $baseDir . '/app/Library/Mail.php', 'App\\Library\\MoonCalc' => $baseDir . '/app/Library/MoonCalc.php', 'App\\Library\\MoonMine' => $baseDir . '/app/Library/MoonMine.php', + 'App\\Library\\SeatHelper' => $baseDir . '/app/Library/SeatHelper.php', 'App\\Models\\AllianceCorp' => $baseDir . '/app/Models/AllianceCorp.php', 'App\\Models\\Config' => $baseDir . '/app/Models/Config.php', 'App\\Models\\CorpJournal' => $baseDir . '/app/Models/CorpJournal.php', + 'App\\Models\\CorpStructure' => $baseDir . '/app/Models/CorpStructure.php', 'App\\Models\\DokuGroupNames' => $baseDir . '/app/Models/DokuGroupNames.php', 'App\\Models\\DokuMember' => $baseDir . '/app/Models/DokuMember.php', 'App\\Models\\DokuUser' => $baseDir . '/app/Models/DokuUser.php', diff --git a/vendor/composer/autoload_static.php b/vendor/composer/autoload_static.php index 8fbcdff0a..6fb1a99b6 100644 --- a/vendor/composer/autoload_static.php +++ b/vendor/composer/autoload_static.php @@ -401,8 +401,8 @@ class ComposerStaticInitc3f953f8a7291d41a76e1664339777c9 ); public static $classMap = array ( - 'App\\Console\\Commands\\corpJournal' => __DIR__ . '/../..' . '/app/Console/Commands/corpJournal.php', - 'App\\Console\\Commands\\getCorps' => __DIR__ . '/../..' . '/app/Console/Commands/getCorps.php', + 'App\\Console\\Commands\\CorpJournal' => __DIR__ . '/../..' . '/app/Console/Commands/corpJournal.php', + 'App\\Console\\Commands\\GetCorps' => __DIR__ . '/../..' . '/app/Console/Commands/getCorps.php', 'App\\Console\\Commands\\sendMail' => __DIR__ . '/../..' . '/app/Console/Commands/sendmail.php', 'App\\Console\\Kernel' => __DIR__ . '/../..' . '/app/Console/Kernel.php', 'App\\Exceptions\\Handler' => __DIR__ . '/../..' . '/app/Exceptions/Handler.php', @@ -418,6 +418,7 @@ class ComposerStaticInitc3f953f8a7291d41a76e1664339777c9 'App\\Http\\Controllers\\FinancesController' => __DIR__ . '/../..' . '/app/Http/Controllers/FinancesController.php', 'App\\Http\\Controllers\\FleetsController' => __DIR__ . '/../..' . '/app/Http/Controllers/FleetsController.php', 'App\\Http\\Controllers\\MoonsController' => __DIR__ . '/../..' . '/app/Http/Controllers/MoonsController.php', + 'App\\Http\\Controllers\\RegisterStructureController' => __DIR__ . '/../..' . '/app/Http/Controllers/RegisterStructureController.php', 'App\\Http\\Controllers\\WikiController' => __DIR__ . '/../..' . '/app/Http/Controllers/WikiController.php', 'App\\Http\\Kernel' => __DIR__ . '/../..' . '/app/Http/Kernel.php', 'App\\Http\\Middleware\\Authenticate' => __DIR__ . '/../..' . '/app/Http/Middleware/Authenticate.php', @@ -429,14 +430,17 @@ class ComposerStaticInitc3f953f8a7291d41a76e1664339777c9 'App\\Http\\Middleware\\TrimStrings' => __DIR__ . '/../..' . '/app/Http/Middleware/TrimStrings.php', 'App\\Http\\Middleware\\TrustProxies' => __DIR__ . '/../..' . '/app/Http/Middleware/TrustProxies.php', 'App\\Http\\Middleware\\VerifyCsrfToken' => __DIR__ . '/../..' . '/app/Http/Middleware/VerifyCsrfToken.php', + 'App\\Library\\Esi' => __DIR__ . '/../..' . '/app/Library/Esi.php', 'App\\Library\\Finances' => __DIR__ . '/../..' . '/app/Library/Finances.php', 'App\\Library\\Fleet' => __DIR__ . '/../..' . '/app/Library/Fleet.php', 'App\\Library\\Mail' => __DIR__ . '/../..' . '/app/Library/Mail.php', 'App\\Library\\MoonCalc' => __DIR__ . '/../..' . '/app/Library/MoonCalc.php', 'App\\Library\\MoonMine' => __DIR__ . '/../..' . '/app/Library/MoonMine.php', + 'App\\Library\\SeatHelper' => __DIR__ . '/../..' . '/app/Library/SeatHelper.php', 'App\\Models\\AllianceCorp' => __DIR__ . '/../..' . '/app/Models/AllianceCorp.php', 'App\\Models\\Config' => __DIR__ . '/../..' . '/app/Models/Config.php', 'App\\Models\\CorpJournal' => __DIR__ . '/../..' . '/app/Models/CorpJournal.php', + 'App\\Models\\CorpStructure' => __DIR__ . '/../..' . '/app/Models/CorpStructure.php', 'App\\Models\\DokuGroupNames' => __DIR__ . '/../..' . '/app/Models/DokuGroupNames.php', 'App\\Models\\DokuMember' => __DIR__ . '/../..' . '/app/Models/DokuMember.php', 'App\\Models\\DokuUser' => __DIR__ . '/../..' . '/app/Models/DokuUser.php',