creation du crud et du controllers pour opérations.php et ajout dans le index
This commit is contained in:
commit
dee50a7335
5 changed files with 94 additions and 61 deletions
45
controllers/lecture_page_ctrl.php
Normal file
45
controllers/lecture_page_ctrl.php
Normal file
|
|
@ -0,0 +1,45 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
require 'model.php';
|
||||||
|
|
||||||
|
$couleurs = [
|
||||||
|
'Sauveteur disponible' => '#2ecc71',
|
||||||
|
'Sauveteur en approche de la cavité' => '#9b59b6',
|
||||||
|
'Sauveteur sous terre' => '#8B4513',
|
||||||
|
'Sauveteur équipe de gestion' => '#f1c40f',
|
||||||
|
"Sauveteur en mission à l'extérieur" => '#e67e22',
|
||||||
|
'Sauveteur en repos' => '#3498db',
|
||||||
|
'Sauveteur en brancardage civière' => '#e74c3c',
|
||||||
|
];
|
||||||
|
|
||||||
|
$creneaux = [];
|
||||||
|
for ($min = 8 * 60; $min < 20 * 60; $min += 30) {
|
||||||
|
$creneaux[] = sprintf('%02d:%02d', intdiv($min, 60), $min % 60);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Indexer les sauveteurs par ID pour accès rapide à la spécialité
|
||||||
|
$sauveteursById = [];
|
||||||
|
foreach ($sauveteurs as $s) {
|
||||||
|
$sauveteursById[$s['ID_Sauveteur']] = $s;
|
||||||
|
$grille[$s['ID_Sauveteur']]= array_fill_keys($creneaux, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach ($missions as $m) {
|
||||||
|
$id = $m['ID_Sauveteur'];
|
||||||
|
if (!isset($grille[$id])) continue;
|
||||||
|
|
||||||
|
$specialite = $sauveteursById[$id]['Specialite'] ?? '';
|
||||||
|
$couleur = $couleurs[$specialite] ?? '#cccccc';
|
||||||
|
$debut = new DateTime($m['DtaHeureDebut']);
|
||||||
|
$fin = new DateTime($m['DtaHeureFin']);
|
||||||
|
|
||||||
|
foreach ($creneaux as $c) {
|
||||||
|
$debutCreneau = new DateTime($date . ' ' . $c . ':00');
|
||||||
|
$finCreneau = (clone $debutCreneau)->modify('+30 minutes');
|
||||||
|
if ($debut < $finCreneau && $fin > $debutCreneau) {
|
||||||
|
$grille[$id][$c] = $couleur;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
require 'view.php';
|
||||||
11
index.php
11
index.php
|
|
@ -70,10 +70,21 @@
|
||||||
operations_form_ctrl();
|
operations_form_ctrl();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
<<<<<<< HEAD
|
||||||
case 'add_operation':
|
case 'add_operation':
|
||||||
require('controllers/operation_ctrl.php');
|
require('controllers/operation_ctrl.php');
|
||||||
add_operation_write_ctrl();
|
add_operation_write_ctrl();
|
||||||
break;
|
break;
|
||||||
|
=======
|
||||||
|
case 'lecture':
|
||||||
|
require('views/lecture_page.php');
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'lecture_ctrl':
|
||||||
|
require('controllers/lecture_page_ctrl.php');
|
||||||
|
break;
|
||||||
|
|
||||||
|
>>>>>>> c98d36d6ee22b1cc45aaf2d55c29677ea8c56d65
|
||||||
default:
|
default:
|
||||||
require('views/404_view.php');
|
require('views/404_view.php');
|
||||||
break;
|
break;
|
||||||
|
|
|
||||||
1
lecture_page_model
Normal file
1
lecture_page_model
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
|
||||||
12
models/lecture_page_model.php
Normal file
12
models/lecture_page_model.php
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
$pdo = new PDO('mysql:host=localhost;dbname=projet3_tp1;charset=utf8mb4', 'root', '');
|
||||||
|
|
||||||
|
$date = $_GET['date'] ?? date('Y-m-d');
|
||||||
|
|
||||||
|
$sauveteurs = $pdo->query('SELECT ID_Sauveteur, Nom, Prenom, Specialite FROM Sauveteur ORDER BY Nom, Prenom')->fetchAll(PDO::FETCH_ASSOC);
|
||||||
|
|
||||||
|
$stmt = $pdo->prepare('SELECT ID_Mission, DtaHeureDebut, DtaHeureFin, ID_Sauveteur FROM Mission WHERE DATE(DtaHeureDebut) = ? OR DATE(DtaHeureFin) = ?');
|
||||||
|
$stmt->execute([$date, $date]);
|
||||||
|
$missions = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||||
|
|
||||||
|
|
@ -1,63 +1,27 @@
|
||||||
<?php
|
<!DOCTYPE html>
|
||||||
require('views/header.php');
|
<html lang="fr">
|
||||||
?>
|
<head><meta charset="UTF-8"><title>Planning</title></head>
|
||||||
|
<body>
|
||||||
|
|
||||||
<form action="index.php?route=lecture" method="post">
|
<h2>Planning du <?= $date ?></h2>
|
||||||
<table border="1" cellpadding="8" cellspacing="0">
|
|
||||||
<thead>
|
<table border="1">
|
||||||
<tr>
|
<tr>
|
||||||
<th>Personnes</th>
|
<th>Nom / Prénom</th>
|
||||||
<th> - </th>
|
<?php foreach ($creneaux as $c): ?>
|
||||||
<th> - </th>
|
<th><?= $c ?></th>
|
||||||
<th> - </th>
|
<?php endforeach; ?>
|
||||||
<th> - </th>
|
</tr>
|
||||||
<th> - </th>
|
<?php foreach ($sauveteurs as $s): ?>
|
||||||
<th> - </th>
|
<tr>
|
||||||
</tr>
|
<td><?= $s['Nom'] ?> <?= $s['Prenom'] ?></td>
|
||||||
</thead>
|
<?php foreach ($creneaux as $c):
|
||||||
<tbody>
|
$couleur = $grille[$s['ID_Sauveteur']][$c];
|
||||||
<tr>
|
?>
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
<td <?= $couleur ? 'bgcolor="' . $couleur . '"' : '' ?>></td>
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
<?php endforeach; ?>
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
</tr>
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
<?php endforeach; ?>
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
<td><input type="text" size="15" maxlength="100"/></td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
</tbody>
|
|
||||||
</table>
|
</table>
|
||||||
</form>
|
</body>
|
||||||
|
</html>
|
||||||
<?php
|
|
||||||
require('views/footer.php');
|
|
||||||
?>
|
|
||||||
Loading…
Add table
Reference in a new issue