From f6c05a89fed00c401d5cf9e6e102df4d3e7a92ab Mon Sep 17 00:00:00 2001 From: Martin Folkerts Date: Wed, 28 Aug 2024 14:34:47 +0200 Subject: [PATCH] added border setting to project and changed plotting strategy in Rmd --- .../app/Jobs/ProjectReportGeneratorJob.php | 1 + .../app/Livewire/Projects/ProjectManager.php | 6 ++++ laravel_app/app/Models/Project.php | 4 ++- ..._114832_add_borders_column_to_projects.php | 28 +++++++++++++++++++ .../livewire/projects/tabs/settings.blade.php | 13 +++++++++ 5 files changed, 51 insertions(+), 1 deletion(-) create mode 100644 laravel_app/database/migrations/2024_08_28_114832_add_borders_column_to_projects.php diff --git a/laravel_app/app/Jobs/ProjectReportGeneratorJob.php b/laravel_app/app/Jobs/ProjectReportGeneratorJob.php index 167fe25..94a5a53 100644 --- a/laravel_app/app/Jobs/ProjectReportGeneratorJob.php +++ b/laravel_app/app/Jobs/ProjectReportGeneratorJob.php @@ -48,6 +48,7 @@ public function handle() sprintf('--report_date=%s', $this->projectReport->getReportDate()), sprintf('--mail_day=%s', $this->isTestReport? Carbon::yesterday()->dayName: $this->projectReport->project->mail_day), sprintf('--data_dir=%s', $this->projectReport->project->download_path), + sprintf('--borders=%s', $this->projectReport->project->borders ? 'True' : 'False'), ]; logger('command:'. print_r($command, true)); diff --git a/laravel_app/app/Livewire/Projects/ProjectManager.php b/laravel_app/app/Livewire/Projects/ProjectManager.php index 8c66ef0..bd08415 100644 --- a/laravel_app/app/Livewire/Projects/ProjectManager.php +++ b/laravel_app/app/Livewire/Projects/ProjectManager.php @@ -176,11 +176,13 @@ private function resetFormData() { $this->formData = [ 'name' => '', + 'borders' => false, 'mail_subject' => '', 'mail_template' => '', 'mail_frequency' => '', 'mail_day' => '', 'mail_recipients' => [], + ]; $this->pivotFiles = []; $this->spanFiles = []; @@ -197,6 +199,7 @@ private function validateForm() 'pivot_file' => $this->formData['pivot_file'], 'span_file' => $this->formData['span_file'], 'harvest_file' => $this->formData['harvest_file'], + 'borders' => $this->formData['borders'], ], [ 'name' => [ 'required', @@ -215,6 +218,7 @@ private function validateForm() } }], 'harvest_file' => ['sometimes', new HarvestFile], + 'borders' => ['required', 'boolean'], ])->validate(); } @@ -226,6 +230,7 @@ private function validateEmailSettingsForm() 'mail_frequency' => $this->formData['mail_frequency'], 'mail_day' => $this->formData['mail_day'], 'mail_recipients' => $this->formData['mail_recipients'], + 'borders' => $this->formData['borders'], ], [ 'mail_template' => ['required', 'string',], 'mail_subject' => ['required', 'string',], @@ -234,6 +239,7 @@ private function validateEmailSettingsForm() 'mail_recipients' => ['required', 'array', 'min:1'], 'mail_recipients.*.name' => ['required', 'string', 'max:255'], 'mail_recipients.*.email' => ['required', 'email'], + 'borders' => ['required', 'boolean'], ])->validateWithBag('saveEmailSettingsForm'); } diff --git a/laravel_app/app/Models/Project.php b/laravel_app/app/Models/Project.php index fad1add..4dfaf7a 100644 --- a/laravel_app/app/Models/Project.php +++ b/laravel_app/app/Models/Project.php @@ -37,7 +37,8 @@ class Project extends Model 'pivot_json_path', 'span_json_path', 'harvest_json_path', - 'min_harvest_date' + 'min_harvest_date', + 'borders', ]; public static function saveWithFormData(mixed $formData) @@ -46,6 +47,7 @@ public static function saveWithFormData(mixed $formData) /** * @var Project $project */ + logger($formData); $project = Project::updateOrCreate($uniqueIdentifier, $formData); $baseFrom = 'livewire-tmp/'; $baseTo = $project->download_path.'/Data/'; diff --git a/laravel_app/database/migrations/2024_08_28_114832_add_borders_column_to_projects.php b/laravel_app/database/migrations/2024_08_28_114832_add_borders_column_to_projects.php new file mode 100644 index 0000000..a268131 --- /dev/null +++ b/laravel_app/database/migrations/2024_08_28_114832_add_borders_column_to_projects.php @@ -0,0 +1,28 @@ +addColumn('boolean', 'borders')->default(false); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::table('projects', function (Blueprint $table) { + $table->dropColumn('borders'); + }); + } +}; diff --git a/laravel_app/resources/views/livewire/projects/tabs/settings.blade.php b/laravel_app/resources/views/livewire/projects/tabs/settings.blade.php index 20f1ca4..c82efe0 100644 --- a/laravel_app/resources/views/livewire/projects/tabs/settings.blade.php +++ b/laravel_app/resources/views/livewire/projects/tabs/settings.blade.php @@ -165,6 +165,19 @@ {{ $message }} @enderror +
+
+
+ {{ __('Show borders in report') }} +
+
+ +