161 lines
4.8 KiB
PHP
161 lines
4.8 KiB
PHP
<?php
|
|
|
|
include "functions.php";
|
|
include "header.php";
|
|
include "headerline.php";
|
|
include "nav.php";
|
|
|
|
|
|
|
|
?>
|
|
|
|
|
|
|
|
<!-- Banner -->
|
|
<section id="banner">
|
|
<div class="content">
|
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
// Verarbeitung des Formulars, wenn es gesendet wurde
|
|
if ($_SERVER["REQUEST_METHOD"] == "POST") {
|
|
// Kosten pro Strich übernehmen:
|
|
$kostenproStrich = $_POST["kostenproStrich"];
|
|
|
|
// Iteriere über alle Mitarbeiter
|
|
foreach ($_POST["anzahlStriche"] as $mitarbeiterID => $anzahlStriche) {
|
|
// Validierung könnte hier hinzugefügt werden
|
|
$anzahlStriche = (int)$anzahlStriche;
|
|
$kostenproStrich = floatval($kostenproStrich);
|
|
$kosten = floatval($anzahlStriche * $kostenproStrich);
|
|
$datum = date("Y-d-m H:i:s"); // Das aktuelle Datum verwenden
|
|
if($anzahlStriche != 0){
|
|
// SQL-Abfrage zum Einfügen der Daten
|
|
$sql = "INSERT INTO kl_Kaffeeverbrauch (MitarbeiterID, AnzahlStriche, Kosten, KostenproStrich, Datum) VALUES (?, ?, ?, ?, ?)";
|
|
$params = array($mitarbeiterID, $anzahlStriche, $kosten, $kostenproStrich, $datum);
|
|
|
|
$stmt = sqlsrv_query($conn, $sql, $params);
|
|
|
|
if ($stmt === false) {
|
|
die(print_r(sqlsrv_errors(), true));
|
|
}
|
|
}
|
|
}
|
|
|
|
echo "Einträge erfolgreich hinzugefügt.";
|
|
}elseif($_SERVER["REQUEST_METHOD"] == "GET" AND isset($_GET["action"])){
|
|
|
|
if($_GET["action"] == "vorderseite"){
|
|
|
|
$sqlMitarbeiter = "SELECT M.MitarbeiterID, M.Name, M.Email
|
|
FROM kl_Mitarbeiter M
|
|
JOIN kl_Kaffeeverbrauch V ON M.MitarbeiterID = V.MitarbeiterID
|
|
WHERE V.Datum >= DATEADD(DAY, -100, (SELECT MAX(Datum) FROM kl_Kaffeeverbrauch WHERE Datum < CAST(GETDATE() AS DATE))) AND M.aktiv = 1
|
|
GROUP BY M.MitarbeiterID, M.Name, M.Email
|
|
HAVING SUM(V.AnzahlStriche) >= 10
|
|
ORDER BY Name;";
|
|
|
|
}elseif( $_GET["action"] == "rueckseite"){
|
|
|
|
$sqlMitarbeiter = "SELECT M.MitarbeiterID, M.Name, M.Email
|
|
FROM kl_Mitarbeiter M
|
|
LEFT JOIN kl_Kaffeeverbrauch V ON M.MitarbeiterID = V.MitarbeiterID AND V.Datum >= DATEADD(DAY, -100, (SELECT MAX(Datum) FROM kl_Kaffeeverbrauch))
|
|
WHERE M.aktiv = 1
|
|
GROUP BY M.MitarbeiterID, M.Name, M.Email
|
|
HAVING COALESCE(SUM(V.AnzahlStriche), 0) < 10
|
|
ORDER BY M.Name;";
|
|
}elseif($_GET["action"] == "alle"){
|
|
// Mitarbeiter aus der Datenbank abrufen und nach Namen sortieren
|
|
$sqlMitarbeiter = "SELECT MitarbeiterID, Name FROM kl_Mitarbeiter WHERE aktiv = 1 ORDER BY Name";
|
|
|
|
}
|
|
|
|
}else{
|
|
// Mitarbeiter aus der Datenbank abrufen und nach Namen sortieren
|
|
$sqlMitarbeiter = "SELECT MitarbeiterID, Name FROM kl_Mitarbeiter WHERE aktiv = 1 ORDER BY Name";
|
|
|
|
|
|
}
|
|
$stmtMitarbeiter = sqlsrv_query($conn, $sqlMitarbeiter);
|
|
|
|
// Kosten pro Strich auslesen
|
|
$sqlKostenproStrich = "SELECT KostenproStrich FROM kl_config ";
|
|
$stmtKostenproStrich = sqlsrv_query($conn, $sqlKostenproStrich);
|
|
$row = sqlsrv_fetch_array($stmtKostenproStrich, SQLSRV_FETCH_ASSOC);
|
|
$KostenproStrichtemp = $row["KostenproStrich"];
|
|
$KostenproStrich = number_format($KostenproStrichtemp, 2, '.', '');
|
|
|
|
?>
|
|
|
|
<!DOCTYPE html>
|
|
<html lang="de">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>Kaffeeliste - Anzahl der Striche für alle Mitarbeiter</title>
|
|
</head>
|
|
<body>
|
|
|
|
<h2>Anzahl der Striche für alle Mitarbeiter</h2>
|
|
<ul class="actions">
|
|
<li>
|
|
<form action="stricheintragen.php" method="get">
|
|
<input type="hidden" name="action" value="vorderseite">
|
|
<button type="submit">Vorderseite</button>
|
|
</form>
|
|
</li>
|
|
<li>
|
|
<form action="stricheintragen.php" method="get">
|
|
<input type="hidden" name="action" value="rueckseite">
|
|
<button type="submit">Rückseite</button>
|
|
</form>
|
|
</li>
|
|
<li>
|
|
<form action="stricheintragen.php" method="get">
|
|
<input type="hidden" name="action" value="alle">
|
|
<button type="submit">Alle</button>
|
|
</form>
|
|
</li>
|
|
</ul>
|
|
|
|
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>">
|
|
<?php
|
|
|
|
echo "<label for='kostenproStrich'>Kosten pro Strich:</label>
|
|
<input type='number' name='kostenproStrich' step='0.01' value='" . $KostenproStrich . "'><br>";
|
|
|
|
echo "<table>";
|
|
echo " <tr>
|
|
<th>Mitarbeiter</th>
|
|
<th>Anzahl Striche</th>
|
|
</tr>";
|
|
|
|
// Iteriere über alle Mitarbeiter
|
|
while ($row = sqlsrv_fetch_array($stmtMitarbeiter, SQLSRV_FETCH_ASSOC)) {
|
|
$mitarbeiterID = $row["MitarbeiterID"];
|
|
$mitarbeiterName = $row["Name"];
|
|
echo "<tr>";
|
|
|
|
// Formularfeld für die Anzahl der Striche
|
|
echo "<td><label for='anzahlStriche[$mitarbeiterID]'>$mitarbeiterName:</label></td>";
|
|
echo "<td><input type='number' name='anzahlStriche[$mitarbeiterID]' ></td>";
|
|
echo "</tr>";
|
|
|
|
}
|
|
echo "</table>";
|
|
|
|
?>
|
|
|
|
<button type="submit">Eintragen</button>
|
|
</form>
|
|
|
|
</body>
|
|
</html>
|
|
|
|
</div>
|
|
</section>
|
|
|
|
<?php include "footer.php"; ?>
|