@extends('layouts.admin') @section('page-title') Gestion des interventions @endsection @section('page-subtitle') Vue d'ensemble des interventions @endsection @section('styles') @endsection @section('scripts') @endsection @section('content')
Non attribuées
0
En cours
0
En retard
0
Planifiées
0
Terminées
0
Total du mois
0
Toutes
0
@if(isset($interventions) && $interventions->count() > 0) @foreach($interventions as $intervention) @php $content = $intervention['content'] ?? []; $assignedClass = $content['assignedClass'] ?? ''; $status = $content['status'] ?? 'new'; $taskId = $content['task_id'] ?? ''; $clientInfo = $content['client'] ?? []; $clientName = $content['client_name'] ?? 'Client'; // Utiliser directement les données de InterventionResource $clientAddress = $content['client_address'] ?? 'Non connue'; $clientLogo = $clientInfo['client_logo'] ?? null; $clientType = $clientInfo['client_type'] ?? 'particulier'; $clientFound = !empty($clientInfo) ? (object)$clientInfo : null; // Récupérer la date d'intervention (déjà formatée par InterventionResource) $interventionDate = $content['intervention_date'] ?? 'Non attribuée'; // La date est déjà formatée au format JJ/MM/AAAA par InterventionResource::formatDate() // Pas besoin de re-formater pour éviter la confusion entre formats américain/français // Ajouter le jour de la semaine devant la date si elle est valide $interventionDateWithDay = $interventionDate; if ($interventionDate !== 'Non attribuée' && isset($content['intervention_date_raw'])) { try { $dateObj = new \DateTime($content['intervention_date_raw']); $dayNames = ['dim.', 'lun.', 'mar.', 'mer.', 'jeu.', 'ven.', 'sam.']; $dayOfWeek = $dayNames[$dateObj->format('w')]; $interventionDateWithDay = $dayOfWeek . ' ' . $interventionDate; } catch (\Exception $e) { // En cas d'erreur, garder la date originale $interventionDateWithDay = $interventionDate; } } $address = $content['address'] ?? 'Non connue'; $title = $content['title'] ?? 'Intervention'; $description = !empty($content['description']) ? $content['description'] : 'Aucune description disponible'; $priority = $content['priority'] ?? 'normal'; $priorityClass = $content['priorityClass'] ?? 'badge--normal'; $deadline = $content['deadline'] ?? 'Non définie'; $statusBadgeClass = $content['statusBadgeClass'] ?? 'badge--non-assignee'; $statusText = $content['statusText'] ?? 'Non assignée'; $workerCount = $content['workerCount'] ?? 0; $workerName = $content['workerName'] ?? 'Aucun ouvrier'; $commentsCount = $content['commentsCount'] ?? 0; $commentsText = $content['commentsText'] ?? 'aucun commentaire'; $photosCount = $content['photosCount'] ?? 0; $photosText = $content['photosText'] ?? 'aucune photo'; $createdBy = $content['created_by'] ?? 'Admin'; $createdAt = $content['created_at'] ?? now(); if (is_string($createdAt)) { $createdAt = new DateTime($createdAt); } @endphp
value && isset($content['is_finished']) && $content['is_finished'] && isset($content['finished_at'])) data-finished-date="{{ \Carbon\Carbon::parse($content['finished_at'])->format('d/m/Y') }}" @endif id="intervention-{{ $intervention['id'] }}">
Intervention n° {{ $taskId ?: $intervention['id'] }}
Date d'intervention
{{ $interventionDateWithDay }}
{{ $clientAddress }}

{{ $title }}

{!! nl2br(e($description)) !!}

Priorité
{{ ucfirst($priority) }}
Deadline
{{ $deadline }}
@php $remainingDays = $content['remaining_days'] ?? null; @endphp @if($remainingDays && !in_array(strtolower($content['status'] ?? ''), ['completed', 'terminées', 'terminée']))
({{ $remainingDays }})
@endif
Assignation
{{ $statusText }}
Intervenants
{{ $workerName }} @php $assignedWorkers = $content['assigned_workers'] ?? []; $assignedNames = collect($assignedWorkers)->pluck('worker_name')->filter()->values()->all(); if (count($assignedNames)) { $tooltipText = implode("\n", $assignedNames); } else { $tooltipText = 'Aucun intervenant assigné'; } @endphp
Commentaires
@if($commentsCount > 0) {{ $commentsText }} @else
{{ $commentsText }}
@endif
Photos
{{ $photosText }}
{{-- Affichage des informations de complétion pour les interventions terminées --}} @if($status === \App\Enums\InterventionStatus::COMPLETED->value && isset($content['is_finished']) && $content['is_finished'] && isset($content['finished_at']) && isset($content['finished_by']))

Intervention terminée le {{ $content['finished_date_formatted'] ?? 'Date inconnue' }} à {{ $content['finished_time_formatted'] ?? 'Heure inconnue' }} @if($content['finished_signature']) par {{ $content['finished_signature'] }} @else par Utilisateur #{{ $content['finished_by'] }} @endif

@endif
@endforeach @else @endif

Aucun résultat

Aucune intervention ne correspond aux critères de filtrage

Aucun résultat trouvé

Aucune intervention ne correspond à votre recherche dans le nom du client, le titre ou la description

Aucune intervention non attribuée

Aucune intervention avec le statut "Non attribuée" n'est disponible

Créer une intervention

Aucune intervention en cours

Aucune intervention avec le statut "En cours" n'est disponible

Aucune intervention en retard

Aucune intervention avec le statut "En retard" n'est disponible

Aucune intervention planifiée

Aucune intervention avec le statut "Planifiée" n'est disponible

Aucune intervention terminée

Aucune intervention avec le statut "Terminée" n'est disponible

Aucune intervention

Aucune intervention n'est disponible actuellement

Créer une intervention
@if(!isset($interventions) || $interventions->count() === 0)

Aucune intervention

Aucune intervention n'est disponible actuellement

Créer une intervention
@endif
@endsection