Skip to content
Snippets Groups Projects
Commit 0cbdc665 authored by Damien Labat's avatar Damien Labat
Browse files

fix: Export evaluation & organizations features - fix filename + cells formats

parent 1bef1bc1
No related branches found
No related tags found
1 merge request!1Export CSV feature
......@@ -38,7 +38,7 @@ public function organizations(Request $request): Collection|null
public function evaluations(Request $request): Collection|null
{
$ext = $request->route('ext');
$filename = "structures.$ext";
$filename = "evaluations.$ext";
$data = Evaluation::with(['dangerLevels'])->get();
$rows = EvaluationExportResource::collection($data)->toArray($request);
$header = $this->_getRowsHeader($rows[0], 'exports.evaluation');
......
......@@ -27,7 +27,6 @@ public function toArray($request): array
$evaluation = $this->resource;
$res = [
'id' => $evaluation->id,
'organizationId' => $evaluation->organization_id, // -Collectivité id
'updatedDate' => $evaluation->updated_at->isoFormat('DD/MM/YYYY'), // - Date de modification
'updatedBy' => $evaluation->updated_by, // - Modifié par
......@@ -44,7 +43,7 @@ public function toArray($request): array
foreach ([1, 2, 3, 4, 5, 6] as $dangerId) {
/** @var ?DangerLevelEvaluation $dangerLevelEvaluation */
$dangerLevelEvaluation = $dangerLevelEvaluations->where('danger_id', '=', $dangerId)->first();
$res["dangerLevel_$dangerId"] = $dangerLevelEvaluation?->level?->name; // - perception du danger X
$res["dangerLevel_$dangerId"] = (string) $dangerLevelEvaluation?->level?->name; // - perception du danger X
}
$mesures = Measure::orderBy('fundamental', 'ASC')->get();
......@@ -66,10 +65,10 @@ public function toArray($request): array
return [...$res,
'actionPlan' => $this->_getActionPlanString($mesureLevels), // - Plan d’action
'motivation' => $this->_getAnswerForQuestionName($maturityLevelAnswers, MaturityQuestionNames::MOTIVATION)?->name, // - Motivation
'execution' => $this->_getAnswerForQuestionName($maturityLevelAnswers, MaturityQuestionNames::EXECUTION)?->name, // - Execution
'fundamental' => $this->_getAnswerForQuestionName($maturityLevelAnswers, MaturityQuestionNames::FUNDAMENTALS)?->name, // - Fondamentaux
'organization' => $this->_getAnswerForQuestionName($maturityLevelAnswers, MaturityQuestionNames::ORGANIZATION)?->name, // - Organisation
'motivation' => (string) $this->_getAnswerForQuestionName($maturityLevelAnswers, MaturityQuestionNames::MOTIVATION)?->name, // - Motivation
'execution' => (string) $this->_getAnswerForQuestionName($maturityLevelAnswers, MaturityQuestionNames::EXECUTION)?->name, // - Execution
'fundamental' => (string) $this->_getAnswerForQuestionName($maturityLevelAnswers, MaturityQuestionNames::FUNDAMENTALS)?->name, // - Fondamentaux
'organization' => (string) $this->_getAnswerForQuestionName($maturityLevelAnswers, MaturityQuestionNames::ORGANIZATION)?->name, // - Organisation
'maturityCyber' => $evaluation->maturity_cyber, // - Indice de maturité
];
}
......
......@@ -46,8 +46,8 @@ public function toArray($request): array
'info' => $organization->info, // - infos complementaire
'fullAddress' => (string) $organization->address, // - adresses (tous les chamsp)
'ref' => implode(PHP_EOL, $referentsStringArray), // - référents et responsable (tous les champs)
'lastEvaluation.cyberMaturity' => $lastEvaluation?->maturity_cyber, // - score indice maturité cyber
'previousEvaluation.cyberMaturity' => $previousEvaluation?->maturity_cyber, // - score indice maturité cyber n-1
'lastEvaluation.cyberMaturity' => (float) $lastEvaluation?->maturity_cyber, // - score indice maturité cyber
'previousEvaluation.cyberMaturity' => (float) $previousEvaluation?->maturity_cyber, // - score indice maturité cyber n-1
];
$measureLevels = $lastEvaluation?->measureLevels ?? collect();
......@@ -55,23 +55,23 @@ public function toArray($request): array
foreach ([1, 2, 3, 4, 5, 6, 7, 8, 9, 10] as $measureKey) {
/** @var ?MeasureLevel $measureLevel */
$measureLevel = $measureLevels->get($measureKey - 1);
$res["measure$measureKey.actualLevel"] = $measureLevel?->actual_level; // - niveau de mise en œuvre mesure X
$res["measure$measureKey.actualLevel"] = (string) $measureLevel?->actual_level; // - niveau de mise en œuvre mesure X
}
foreach ([1, 2, 3, 4, 5, 6, 7, 8, 9, 10] as $measureKey) {
/** @var ?MeasureLevel $measureLevel */
$measureLevel = $measureLevels->get($measureKey - 1);
$res["measure$measureKey.expectedLevel"] = $measureLevel?->expected_level; // - niveau de planification mesure X
$res["measure$measureKey.expectedLevel"] = (string) $measureLevel?->expected_level; // - niveau de planification mesure X
}
$maturityLevelAnswers = $lastEvaluation?->maturityLevels()->with(['question', 'answer'])->get();
$res = [...$res,
'executionLevel' => $this->_getAnswerForQuestionName($maturityLevelAnswers, MaturityQuestionNames::EXECUTION)?->name, // niveau d'exécution
'executionLevel' => (string) $this->_getAnswerForQuestionName($maturityLevelAnswers, MaturityQuestionNames::EXECUTION)?->name, // niveau d'exécution
'createdDate' => $organization->created_at->isoFormat('DD/MM/YYYY'), // date création de la collectivité
'lastEvaluation.reference' => $lastEvaluation?->reference, // - version du référentiel
'lastEvaluation.updatedBy' => $lastEvaluation?->updated_by, // - évaluation modifiée par
'lastEvaluation.author' => $lastEvaluation?->author, // - évaluation crée par
'lastEvaluation.reference' => (string) $lastEvaluation?->reference, // - version du référentiel
'lastEvaluation.updatedBy' => (string) $lastEvaluation?->updated_by, // - évaluation modifiée par
'lastEvaluation.author' => (string) $lastEvaluation?->author, // - évaluation crée par
];
$dangerLevelEvaluations = $lastEvaluation?->dangerLevels ?? collect();
......@@ -79,15 +79,15 @@ public function toArray($request): array
foreach ([1, 2, 3, 4, 5, 6] as $dangerId) {
/** @var ?DangerLevelEvaluation $dangerLevelEvaluation */
$dangerLevelEvaluation = $dangerLevelEvaluations->where('danger_id', '=', $dangerId)->first();
$res["dangerLevel$dangerId"] = $dangerLevelEvaluation?->level->name; // - perception du danger X
$res["dangerLevel$dangerId"] = (string) $dangerLevelEvaluation?->level->name; // - perception du danger X
}
return [...$res,
'maturityLevel.knowledge' => $this->_getAnswerForQuestionName($maturityLevelAnswers, MaturityQuestionNames::KNOWLEDGE)?->name, // - niveau de connaissance
'maturityLevel.organization' => $this->_getAnswerForQuestionName($maturityLevelAnswers, MaturityQuestionNames::ORGANIZATION)?->name, // - niveau d'organisation
'maturityLevel.motivation' => $this->_getAnswerForQuestionName($maturityLevelAnswers, MaturityQuestionNames::MOTIVATION)?->name, // - niveau de motivation
'maturityLevel.knowledge' => (string) $this->_getAnswerForQuestionName($maturityLevelAnswers, MaturityQuestionNames::KNOWLEDGE)?->name, // - niveau de connaissance
'maturityLevel.organization' => (string) $this->_getAnswerForQuestionName($maturityLevelAnswers, MaturityQuestionNames::ORGANIZATION)?->name, // - niveau d'organisation
'maturityLevel.motivation' => (string) $this->_getAnswerForQuestionName($maturityLevelAnswers, MaturityQuestionNames::MOTIVATION)?->name, // - niveau de motivation
'alert' => $lastEvaluation?->isThresholdExceeded(), // - alerte seuil dépassé (true/false)
'alert' => (bool) $lastEvaluation?->isThresholdExceeded(), // - alerte seuil dépassé (true/false)
];
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment