diff --git a/app/Http/Controllers/API/StatusCheckerController.php b/app/Http/Controllers/API/StatusCheckerController.php index 1dbc84f..502296c 100644 --- a/app/Http/Controllers/API/StatusCheckerController.php +++ b/app/Http/Controllers/API/StatusCheckerController.php @@ -21,6 +21,7 @@ class StatusCheckerController extends Controller ->firstOrNew(); $project_sc->fill($request->validated()); + $project_sc->last_call = \now(); return $project_sc->save() ? response('OK') : response('KO'); } } diff --git a/app/Models/Project.php b/app/Models/Project.php index 302236e..eddd734 100644 --- a/app/Models/Project.php +++ b/app/Models/Project.php @@ -128,11 +128,11 @@ class Project extends Model */ public function getCheckedAttribute() { - $value = ProjectStatusChecker::select('updated_at')->where('project_uuid', '=', $this->uuid)->first(); + $value = ProjectStatusChecker::select('last_call')->where('project_uuid', '=', $this->uuid)->first(); if (!$value) { $value = 'missing'; } else { - $value = $value->updated_at; + $value = $value->last_call; $dt = Carbon::now(); if ($dt->diffInMinutes($value) > 30) { $value = 'false'; diff --git a/app/Models/ProjectStatusChecker.php b/app/Models/ProjectStatusChecker.php index b472ee7..fa0ff78 100644 --- a/app/Models/ProjectStatusChecker.php +++ b/app/Models/ProjectStatusChecker.php @@ -23,6 +23,6 @@ class ProjectStatusChecker extends Model * @var array */ protected $fillable = [ - 'project_uuid', 'code', 'sitemap', 'robots', 'logs' + 'project_uuid', 'code', 'sitemap', 'robots', 'logs', 'last_call' ]; } diff --git a/database/migrations/2022_09_22_134344_alter_statuschecker_table.php b/database/migrations/2022_09_22_134344_alter_statuschecker_table.php new file mode 100644 index 0000000..c3da3de --- /dev/null +++ b/database/migrations/2022_09_22_134344_alter_statuschecker_table.php @@ -0,0 +1,36 @@ +unsignedSmallInteger('sitemap')->comment('Has sitemap ?')->change(); + $table->unsignedSmallInteger('robots')->comment('Has robots.txt ?')->change(); + $table->dateTime('last_call')->default('1970-01-01')->comment('Last API call date')->after('logs'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::table('project_status_checkers', function (Blueprint $table) { + $table->string('sitemap', 20)->change(); + $table->string('robots', 20)->change(); + $table->dropColumn('last_call'); + }); + } +}