213 lines
8.9 KiB
PHP
213 lines
8.9 KiB
PHP
<?php
|
|
|
|
include "functions.php";
|
|
include "header.php";
|
|
include "headerline.php";
|
|
include "nav.php";
|
|
|
|
|
|
?>
|
|
|
|
|
|
|
|
<!-- Banner -->
|
|
<section id="banner">
|
|
<div class="content">
|
|
|
|
<?php
|
|
|
|
if(checkKaffeelisteAdmin($conn, $mailadress)){
|
|
|
|
|
|
// Sichere Entgegennahme
|
|
$userId = filter_input(INPUT_GET, 'user_id', FILTER_VALIDATE_INT);
|
|
|
|
if ($userId === null) {
|
|
http_response_code(400);
|
|
exit('Fehlender Parameter');
|
|
}
|
|
if ($userId === false) {
|
|
http_response_code(400);
|
|
exit('Ungültige Benutzer-ID');
|
|
}
|
|
|
|
echo "<h2>Auswertung</h2>";
|
|
echo "Hallo " . getUserName($conn,$mailadress) . "!<br><br>";
|
|
// Funktion zum Berechnen der Gesamtausgabe und Gesamtstriche pro Mitarbeiter
|
|
function berechneGesamtausgabe($email, $conn) {
|
|
// MitarbeiterID anhand der E-Mail-Adresse abrufen
|
|
$sqlMitarbeiterID = "SELECT MitarbeiterID FROM kl_Mitarbeiter WHERE Email = ?";
|
|
$stmtMitarbeiterID = sqlsrv_query($conn, $sqlMitarbeiterID, array($email));
|
|
$rowMitarbeiterID = sqlsrv_fetch_array($stmtMitarbeiterID, SQLSRV_FETCH_ASSOC);
|
|
|
|
if (!$rowMitarbeiterID) {
|
|
return null; // Mitarbeiter nicht gefunden
|
|
}
|
|
|
|
$mitarbeiterID = $rowMitarbeiterID["MitarbeiterID"];
|
|
// Gesamteinzahlung pro Mitarbeiter
|
|
$sqleinzahlung = "SELECT SUM(Betrag) AS Gesamteinzahlung FROM kl_Einzahlungen WHERE MitarbeiterID = ?";
|
|
$stmteinzahlung = sqlsrv_query($conn, $sqleinzahlung, array($mitarbeiterID));
|
|
$roweinzahlung = sqlsrv_fetch_array($stmteinzahlung, SQLSRV_FETCH_ASSOC);
|
|
$gesamteinzahlung = $roweinzahlung['Gesamteinzahlung'];
|
|
|
|
// Gesamtausgabe für Kaffeeverbrauch pro Mitarbeiter
|
|
$sqlAusgabe = "SELECT SUM(AnzahlStriche) AS Gesamtstriche, SUM(Kosten) AS Gesamtausgabe FROM kl_Kaffeeverbrauch WHERE MitarbeiterID = ?";
|
|
$stmtAusgabe = sqlsrv_query($conn, $sqlAusgabe, array($mitarbeiterID));
|
|
$rowAusgabe = sqlsrv_fetch_array($stmtAusgabe, SQLSRV_FETCH_ASSOC);
|
|
$gesamtausgabe = $rowAusgabe['Gesamtausgabe'];
|
|
$gesamtstriche = $rowAusgabe['Gesamtstriche'];
|
|
$aktuellerStand = $gesamteinzahlung - $gesamtausgabe;
|
|
|
|
// Gesamteinzahlung pro Mitarbeiter und Aktuellem Jahr
|
|
$sqleinzahlung = "SELECT SUM(Betrag) AS Gesamteinzahlung FROM kl_Einzahlungen WHERE MitarbeiterID = ? AND FORMAT(Datum, 'yyyy') = FORMAT(GETDATE(), 'yyyy') ";
|
|
$stmteinzahlung = sqlsrv_query($conn, $sqleinzahlung, array($mitarbeiterID));
|
|
$roweinzahlung = sqlsrv_fetch_array($stmteinzahlung, SQLSRV_FETCH_ASSOC);
|
|
$yeareinzahlung = $roweinzahlung['Gesamteinzahlung'];
|
|
|
|
// Gesamtausgabe für Kaffeeverbrauch pro Mitarbeiter und Aktuellem Jahr
|
|
$sqlAusgabe = "SELECT SUM(AnzahlStriche) AS Gesamtstriche, SUM(Kosten) AS Gesamtausgabe FROM kl_Kaffeeverbrauch WHERE MitarbeiterID = ? AND FORMAT(Datum, 'yyyy') = FORMAT(GETDATE(), 'yyyy')";
|
|
$stmtAusgabe = sqlsrv_query($conn, $sqlAusgabe, array($mitarbeiterID));
|
|
$rowAusgabe = sqlsrv_fetch_array($stmtAusgabe, SQLSRV_FETCH_ASSOC);
|
|
$yearausgabe = $rowAusgabe['Gesamtausgabe'];
|
|
$yearstriche = $rowAusgabe['Gesamtstriche'];
|
|
|
|
return array('Jahresausgabe' => $yearausgabe, 'Jahresstriche' => $yearstriche, 'Jahreseinzahlung' => $yeareinzahlung, 'Gesamtausgabe' => $gesamtausgabe, 'Gesamtstriche' => $gesamtstriche, 'Gesamteinzahlung' => $gesamteinzahlung, 'aktuellerStand' => $aktuellerStand);
|
|
#return array('Gesamtausgabe' => $gesamtausgabe, 'Gesamtstriche' => $gesamtstriche, 'Gesamteinzahlung' => $gesamteinzahlung, 'aktuellerStand' => $aktuellerStand);
|
|
|
|
}
|
|
function AusgabeletztenEinzahlungen($email, $conn) {
|
|
// MitarbeiterID anhand der E-Mail-Adresse abrufen
|
|
$sqlMitarbeiterID = "SELECT TOP 20 MitarbeiterID FROM kl_Mitarbeiter WHERE Email = ?";
|
|
$stmtMitarbeiterID = sqlsrv_query($conn, $sqlMitarbeiterID, array($email));
|
|
$rowMitarbeiterID = sqlsrv_fetch_array($stmtMitarbeiterID, SQLSRV_FETCH_ASSOC);
|
|
|
|
if (!$rowMitarbeiterID) {
|
|
return null; // Mitarbeiter nicht gefunden
|
|
}
|
|
$mitarbeiterID = $rowMitarbeiterID["MitarbeiterID"];
|
|
// Gesamteinzahlung pro Mitarbeiter
|
|
$sqleinzahlung = "SELECT Betrag,Datum FROM kl_Einzahlungen WHERE MitarbeiterID = ? ORDER BY Datum DESC ";
|
|
$stmteinzahlung = sqlsrv_query($conn, $sqleinzahlung, array($mitarbeiterID));
|
|
$ausgabe = "<h4>Letzte Einzahlungen</h4><table><tr><th style='width:120'>Datum</th><th>Einzahlung</th></tr>";
|
|
while ($row = sqlsrv_fetch_array($stmteinzahlung, SQLSRV_FETCH_ASSOC)) {
|
|
$ausgabe .= "<tr><td>" . date_format($row["Datum"],"d.m.Y") . "</td><td>" . number_format($row["Betrag"], 2, ',', '') . "€</td></tr>";
|
|
}
|
|
$ausgabe .= "</table>";
|
|
return $ausgabe;
|
|
}
|
|
|
|
function AusgabeletztenStriche($email, $conn) {
|
|
// MitarbeiterID anhand der E-Mail-Adresse abrufen
|
|
$sqlMitarbeiterID = "SELECT TOP 20 MitarbeiterID FROM kl_Mitarbeiter WHERE Email = ?";
|
|
$stmtMitarbeiterID = sqlsrv_query($conn, $sqlMitarbeiterID, array($email));
|
|
$rowMitarbeiterID = sqlsrv_fetch_array($stmtMitarbeiterID, SQLSRV_FETCH_ASSOC);
|
|
|
|
if (!$rowMitarbeiterID) {
|
|
return null; // Mitarbeiter nicht gefunden
|
|
}
|
|
$mitarbeiterID = $rowMitarbeiterID["MitarbeiterID"];
|
|
// Gesamteinzahlung pro Mitarbeiter
|
|
$sqleinzahlung = "SELECT AnzahlStriche,Kosten,Datum FROM kl_Kaffeeverbrauch WHERE MitarbeiterID = ? ORDER BY Datum DESC ";
|
|
$stmteinzahlung = sqlsrv_query($conn, $sqleinzahlung, array($mitarbeiterID));
|
|
$ausgabe = "<h4>Letzte Striche</h4><table ><tr><th style='width:120'>Datum</th><th>Striche</th><th>Kosten</th></tr>";
|
|
while ($row = sqlsrv_fetch_array($stmteinzahlung, SQLSRV_FETCH_ASSOC)) {
|
|
$ausgabe .= "<tr><td>" . date_format($row["Datum"],"d.m.Y") . "</td><td>" . $row["AnzahlStriche"] . "</td><td>" . number_format($row["Kosten"], 2, ',', '') . "€</td></tr>";
|
|
}
|
|
$ausgabe .= "</table>";
|
|
return $ausgabe;
|
|
}
|
|
|
|
$sqlMitglieder = "SELECT MitarbeiterID, Name, Email FROM kl_Mitarbeiter WHERE MitarbeiterID = $userId";
|
|
$stmtMitglieder = sqlsrv_query($conn, $sqlMitglieder);
|
|
|
|
|
|
while ($row = sqlsrv_fetch_array($stmtMitglieder, SQLSRV_FETCH_ASSOC)) {
|
|
$mitarbeiterID = $row['MitarbeiterID'];
|
|
$name = $row['Name'];
|
|
$email = $row['Email'];
|
|
|
|
|
|
}
|
|
|
|
|
|
// Berechne Gesamtausgabe und Gesamtstriche für den Mitarbeiter
|
|
$result = berechneGesamtausgabe($email, $conn);
|
|
|
|
if ($result !== null) {
|
|
|
|
echo "<h2>Gesamtausgabe und Gesamtstriche</h2>";
|
|
echo "<p>Name: $name</p>";
|
|
echo "<p>E-Mail: $email</p>";
|
|
echo "Gesamtausgabe: " . number_format($result['Gesamtausgabe'], 2, ',', '') . " €<br>";
|
|
echo "Gesamtstriche: {$result['Gesamtstriche']}<br>";
|
|
echo "<p>Gesamteinzahlung: " . number_format($result['Gesamteinzahlung'], 2, ',', '') . " €<br>";
|
|
$aktuellerstand = number_format($result['aktuellerStand'], 2, ',', '.');
|
|
if($result['aktuellerStand'] > 0){
|
|
echo "<p><b>Aktueller Stand: {$aktuellerstand} € (Guthaben)</p>";
|
|
}elseif($result['aktuellerStand'] < 0){
|
|
echo "<p><b>Aktueller Stand: {$aktuellerstand} € (Schulden)</p>";
|
|
}else{
|
|
echo "<p><b>Aktueller Stand: {$aktuellerstand} €</p>";
|
|
}
|
|
echo "</b>";
|
|
echo "<h2>Jahresübersicht</h2>";
|
|
echo "Ausgabe im aktuellem Jahr: " . number_format($result['Jahresausgabe'], 2, ',', '') . " €<br>";
|
|
echo "Gesamtstriche im aktuellem Jahr: {$result['Jahresstriche']}<br>";
|
|
echo "<p>Gesamteinzahlung im aktuellem Jahr: " . number_format($result['Jahreseinzahlung'], 2, ',', '') . " €<br>";
|
|
|
|
$sqlconfig = "SELECT paypaluse,paypallink FROM kl_config";
|
|
$stmtconfig = sqlsrv_query($conn, $sqlconfig, array($email));
|
|
$rowconfig = sqlsrv_fetch_array($stmtconfig, SQLSRV_FETCH_ASSOC);
|
|
|
|
if($rowconfig["paypaluse"] == 1){
|
|
echo "<h2>Paypal-Einzahlungen</h2>";
|
|
echo '<b>Bezahle immer über die Freunde-Funktion von Paypal. Ansonsten stellen wir 20% des Betrags als Gebühr in Rechnung.</b><br>';
|
|
|
|
$paypallink = trim($rowconfig["paypallink"]);
|
|
echo "<br>";
|
|
if($result['aktuellerStand'] < 0){
|
|
|
|
echo '<form action="' . $paypallink .'' . $aktuellerstand . '" target="_blank" ><button type="submit">'. $aktuellerstand . ' € bezahlen</button></form>';
|
|
|
|
|
|
}
|
|
echo'<ul class="actions">
|
|
<li>';
|
|
echo '<form action="' . $paypallink .'5" target="_blank" ><button type="submit">5,00 € einzahlen</button></form>';
|
|
echo '</li><li>';
|
|
echo '<form action="' . $paypallink .'10" target="_blank" ><button type="submit">10,00 € einzahlen</button></form>';
|
|
echo '</li><li>';
|
|
echo '<form action="' . $paypallink .'15" target="_blank" ><button type="submit">15,00 € einzahlen</button></form>';
|
|
echo '</li></ul>';
|
|
|
|
}
|
|
echo "<br>";
|
|
echo "<br>";
|
|
echo AusgabeletztenEinzahlungen($email, $conn);
|
|
echo "<br>";
|
|
echo AusgabeletztenStriche($email, $conn);
|
|
?>
|
|
<br><br>
|
|
|
|
<!-- Formular mit Button zum Anpassen des Namens -->
|
|
<form action="namenanpassen.php" method="get">
|
|
<button type="submit">Namensanpassung</button>
|
|
</form>
|
|
<?php
|
|
} else {
|
|
echo "<p>Mitarbeiter mit der E-Mail-Adresse $email wurde nicht gefunden.</p>";
|
|
}
|
|
|
|
|
|
}else{
|
|
echo "<h2>Sie haben keine Zugang zu dieser Webseite</h2>";
|
|
}
|
|
?>
|
|
|
|
</div>
|
|
</section>
|
|
|
|
<?php include "footer.php";
|
|
|
|
?>
|