CABM - Dossier de Synthèse
{{ $candidate->user->name }}
Candidature au poste de : {{ $candidate->jobPosition->title ?? 'Poste non défini' }}
Score Global Pondéré
{{ $candidate->weighted_score }}/20
Contact
{{ $candidate->user->email }} @if($candidate->phone) | {{ $candidate->phone }} @endif
Structure
{{ $candidate->tenant->name ?? 'N/A' }}
@if($candidate->linkedin_url)
LinkedIn
{{ $candidate->linkedin_url }}
@endif
@if($candidate->ai_analysis)
Analyse Decisionnelle
Verdict : {{ $candidate->ai_analysis['verdict'] ?? 'N/A' }} ({{ $candidate->ai_analysis['match_score'] }}%)
{{ $candidate->ai_analysis['summary'] }}
Points Forts
@foreach($candidate->ai_analysis['strengths'] ?? [] as $s)
- {{ $s }}
@endforeach
Points de Vigilance
@foreach($candidate->ai_analysis['gaps'] ?? [] as $g)
- {{ $g }}
@endforeach
@if(!empty($candidate->ai_analysis['scores_detailles']))
Détail des scores par dimension
| Dimension |
Score |
Justification |
@foreach($candidate->ai_analysis['scores_detailles'] as $key => $details)
| {{ str_replace('_', ' ', $key) }} |
{{ $details['score'] }}%
|
{{ $details['justification'] ?? '' }} |
@endforeach
@endif
@if(!empty($candidate->ai_analysis['elements_bloquants']) && count($candidate->ai_analysis['elements_bloquants']) > 0 && $candidate->ai_analysis['elements_bloquants'][0] !== '')
Signaux Critiques / Filtres Bloquants
@foreach($candidate->ai_analysis['elements_bloquants'] as $item)
- {{ $item }}
@endforeach
@endif
@endif
Résultats des Tests Techniques
@forelse($candidate->attempts as $attempt)
{{ $attempt->quiz->title }} (Fait le {{ $attempt->finished_at->format('d/m/Y H:i') }})
Score : {{ $attempt->score }} / {{ $attempt->max_score }}
| Question |
Réponse / Score |
@php
$quizQuestions = $attempt->quiz->questions;
$answers = $attempt->answers->keyBy('question_id');
@endphp
@foreach($quizQuestions as $question)
@php $answer = $answers->get($question->id); @endphp
|
{{ $question->label }}
@if($question->description)
{{ $question->description }}
@endif
|
@if($answer)
@if($question->type === 'qcm')
{{ $answer->option?->option_text ?? 'N/A' }}
({{ $answer->option?->is_correct ? 'Correct' : 'Incorrect' }})
@else
"{{ $answer->text_content }}"
Note : {{ $answer->score }} / {{ $question->points }}
@endif
@else
Pas de réponse
@endif
|
@endforeach
@empty
Aucun test technique effectué.
@endforelse
Grille d'Évaluation (Entretien)
Support pour prise de notes manuelle durant l'échange. Échelle de 0 à 10.
1. Compétences Métier & Pré-requis
| Critères |
@for($i=0; $i<=10; $i++) {{ $i }} | @endfor
@php
$requirements = $candidate->jobPosition->requirements ?? ['Compétences techniques générales', 'Expérience domaine', 'Outils & Méthodes'];
@endphp
@foreach($requirements as $req)
| {{ $req }} |
@for($i=0; $i<=10; $i++) | @endfor
@endforeach
2. Savoir être & Adaptabilité
| Personnalité |
@for($i=0; $i<=10; $i++) {{ $i }} | @endfor
@php
$softSkills = [
'Communication & Pédagogie',
'Esprit d\'équipe & Collaboration',
'Résolution de problèmes & Logique',
'Adaptabilité & Résilience',
'Autonomie & Proactivité'
];
@endphp
@foreach($softSkills as $skill)
| {{ $skill }} |
@for($i=0; $i<=10; $i++) | @endfor
@endforeach
3. Questions d'Entretien (Guide)
@if($candidate->ai_analysis && !empty($candidate->ai_analysis['questions_entretien_suggerees']))
@foreach($candidate->ai_analysis['questions_entretien_suggerees'] as $idx => $question)
Q{{ $idx + 1 }}. {{ $question }}
@endforeach
@else
Aucune question suggérée. Utilisez vos questions standards.
@for($i=1; $i<=5; $i++)
@endfor
@endif
Verdict Final & Avis Client
FAVORABLE
A REVOIR
DEFAVORABLE