{{-- v4.4.0 §C3 — « MISSIONS RENFORT ». Publier → vues par statut → confirmer / choisir → valider → repos compensateur → alertes → historique par personne. L'historique est là pour TOURNER : si la même personne fait tous les dimanches, ce tableau le dit avant qu'elle ne s'épuise. --}} {{-- ═══ Publier ══════════════════════════════════════════════════════════════════════ --}} @if ($peutGerer)

Publier une mission de renfort

Le type — soir, week-end ou jour férié — se déduit de la date : il ne se choisit pas. Les stagiaires n'en reçoivent jamais.

Nouvelle mission
@if ($panneau === 'publier')
{{-- Le type et la récompense s'affichent EN DIRECT, avant de publier. --}} @php $typePrevu = \App\Enums\TypeRenfort::pour(\Illuminate\Support\Carbon::parse($saisie['date'] ?? now())); @endphp

Cette date est un {{ mb_strtolower($typePrevu->label()) }} : la prime, les points et la majoration légale suivront ce type.

Publier Annuler
@endif
@endif {{-- ═══ Les missions ═════════════════════════════════════════════════════════════════ --}} Les missions
@foreach (['ouvertes' => 'Ouvertes', 'validees' => 'Validées', 'toutes' => 'Toutes'] as $cle => $libelle) {{ $libelle }} @endforeach
@if ($missions->isEmpty())

Aucune mission de renfort — publiez-en une quand l'équipe doit venir un soir ou un week-end.

@else
@foreach ($missions as $mission)

{{ $mission->motif }}

{{ $mission->type->label() }} {{ $mission->quand() }} · {{ $mission->libelleDuMarche() }} @if ($mission->employee) · {{ $mission->employee->full_name }} @endif

@if ($mission->statut === \App\Enums\StatutRenfort::Validee)

Majoration {{ \App\Support\Money::format((float) $mission->majoration_montant) }} · prime {{ \App\Support\Money::format((float) $mission->prime_montant) }} · +{{ $mission->points }} pts @unless ($mission->compte_dans_plafond) — au-delà du plafond mensuel : le dû légal seul @endunless

@if ($mission->repos_compensateur_propose_le && ! $mission->repos_confirme_le)

Repos compensateur proposé le {{ $mission->repos_compensateur_propose_le->format('d/m/Y') }} — à confirmer.

@endif @endif
{{ $mission->statut->label() }} @if ($peutGerer)
@if (in_array($mission->statut, [\App\Enums\StatutRenfort::Publiee, \App\Enums\StatutRenfort::Prise], true)) Confirmer @endif @if (in_array($mission->statut, [\App\Enums\StatutRenfort::Confirmee, \App\Enums\StatutRenfort::Prise], true)) @if ($this->peutValider($mission)) Valider @else on ne valide pas sa propre mission @endif Refuser @endif @if ($mission->statut === \App\Enums\StatutRenfort::Validee && ! $mission->repos_confirme_le) Repos @endif
@endif
{{-- Les panneaux, en ligne sous la mission concernée. --}} @if ($panneauSur === $mission->id)
@switch($panneau) @case('confirmer')

Confirmer la mission

Le premier arrivé l'emporte. Si vous choisissez quelqu'un d'autre, dites pourquoi : celui qui s'était proposé le lira.

Confirmer Annuler
@break @case('valider')

Valider la mission

Jour et nuit séparés : la loi ne les majore pas de la même façon (la nuit court de 21 h à 6 h).

Valider Annuler
@break @case('refuser')

Refuser la mission

Refuser Annuler
@break @case('repos')

Repos compensateur

Les 24 h de repos hebdomadaire restent obligatoires. L'application propose ; vous confirmez.

Confirmer le repos Annuler
@break @endswitch
@endif
@endforeach
@endif
{{-- ═══ Les alertes ══════════════════════════════════════════════════════════════════ --}} Alertes {{-- v4.4.1 §4 — Deux fenêtres, et l'écran les annonce : les alertes de missions portent sur deux mois, le travail non demandé sur les derniers jours réglés, et jamais avant le jour où cette installation a reçu le module. --}} Surcharge et deux week-ends consécutifs sur deux mois ; travail non demandé sur les {{ $fenetreSansMission }} derniers jours @if ($alertes['missions']->isEmpty() && $alertes['sans_mission']->isEmpty())

Rien à signaler.

@else @endif
{{-- ═══ L'historique par personne — pour tourner ═════════════════════════════════════ --}} Historique par personne Deux derniers mois, missions validées — pour faire tourner l'équipe @if ($historique->isEmpty())

Aucune mission validée sur les deux derniers mois.

@else @foreach ($historique as $ligne) @endforeach
Collaborateur Missions Dont week-ends / fériés Heures
{{ $ligne['employee']->full_name }} {{ $ligne['missions'] }} {{ $ligne['week_ends'] }} {{ rtrim(rtrim(number_format($ligne['heures'], 2, ',', ' '), '0'), ',') }} h
@endif