diff --git a/README.md b/README.md
index 037ad42..4cabfd5 100644
--- a/README.md
+++ b/README.md
@@ -2,7 +2,21 @@
Dokumentiere Ausgaben on-the-go als Webapp
-v 1.0
+V.1.1 (geplant)
+
+Als nächstes kommen Auswertungen / Summen
+
+Auswertungen:
+
+- [X] Monatssumme je Kategorie
+ - [ ] Filter monatsweise
+ - [ ] monate durchblättern zurück und vor, defaut aktueller Monat
+- [X] Monatssumme je Person
+ - [ ] Haken, welche Kategorieen eingeschlossen werden
+ - [ ] Filter monatssummen
+ - [ ] monate durchblättern zurück und vor, defaut aktueller Monat
+
+V.1.0
Das erste Release enthält:
@@ -51,16 +65,3 @@ Weiteres
- [x] Betrag deutsche Zahlen und rechtsbündig
- [x] Kommentarfeld freitext drei Zeilen
-V.1.1
-
-Als nächstes kommen Auswertungen / Summen
-
-Auswertungen:
-
-- [ ] Monatssumme je Kategorie
- - [ ] Filter monatsweise
- - [ ] monate durchblättern zurück und vor, defaut aktueller Monat
-- [ ] Monatssumme je Person
- - [ ] Haken, welche Kategorieen eingeschlossen werden
- - [ ] Filter monatssummen
- - [ ] monate durchblättern zurück und vor, defaut aktueller Monat
diff --git a/html/assets/css/style.css b/html/assets/css/style.css
index fd9e837..b9e5d75 100644
--- a/html/assets/css/style.css
+++ b/html/assets/css/style.css
@@ -217,6 +217,12 @@ table {
box-shadow: var(--box-shadow);
}
+table.thin {
+ width: 250px;
+ display: inline-table; /* schrumpft auf Inhalt */
+ margin: 0 auto; /* horizontal zentrieren */
+}
+
th, td {
padding: 12px 15px;
text-align: left;
diff --git a/html/dashboard.php b/html/dashboard.php
index 02497b8..7cdcabc 100644
--- a/html/dashboard.php
+++ b/html/dashboard.php
@@ -45,8 +45,11 @@ entries e
JOIN user_names un ON e.id = un.id
LEFT JOIN categories c ON e.category = c.category_id
LEFT JOIN payment_methods pm ON e.payment_method = pm.payment_method_id
+WHERE
+EXTRACT(YEAR FROM e.date) = EXTRACT(YEAR FROM CURRENT_DATE())
+AND EXTRACT(MONTH FROM e.date) = EXTRACT(MONTH FROM CURRENT_DATE())
ORDER BY
-date DESC;
+e.date DESC;
";
$stmt = $pdo->prepare($sql);
@@ -69,8 +72,8 @@ $entries = $stmt->fetchAll();
Logout
diff --git a/html/rep-month.php b/html/rep-month.php
new file mode 100644
index 0000000..b6d60e1
--- /dev/null
+++ b/html/rep-month.php
@@ -0,0 +1,99 @@
+prepare("SELECT * FROM users WHERE username = ?");
+ $stmt->execute([$_POST['username']]);
+ $user = $stmt->fetch();
+ if ($user && password_verify($_POST['password'], $user['password'])) {
+ $_SESSION['user_id'] = $user['id'];
+ } else {
+ header('Location: index.php');
+ exit;
+ }
+}
+
+// Daten abrufen
+$sql="SELECT
+c.category_id AS kategorie_id,
+c.name AS kategorie_name,
+SUM(e.amount) AS summe_je_kategorie
+FROM
+entries e
+LEFT JOIN categories c ON e.category = c.category_id
+WHERE
+EXTRACT(YEAR FROM e.date) = EXTRACT(YEAR FROM CURRENT_DATE())
+AND EXTRACT(MONTH FROM e.date) = EXTRACT(MONTH FROM CURRENT_DATE())
+GROUP BY
+c.category_id, c.name
+ORDER BY
+summe_je_kategorie DESC;
+";
+
+$stmt = $pdo->prepare($sql);
+$stmt->execute();
+$entries = $stmt->fetchAll();
+?>
+
+
+
+
+
+FSCash - Dashboard
+
+
+
+
+
+
+
+
+
+
+| ID |
+Kategorie |
+Summe |
+
+
+
+
+
+| = htmlspecialchars($entry['kategorie_id'] ?? '') ?> |
+= htmlspecialchars($entry['kategorie_name'] ?? '') ?> |
+= htmlspecialchars(number_format($entry['summe_je_kategorie'], 2, ',', '.')) ?> |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/html/rep-person.php b/html/rep-person.php
new file mode 100644
index 0000000..6a17c3a
--- /dev/null
+++ b/html/rep-person.php
@@ -0,0 +1,101 @@
+prepare("SELECT * FROM users WHERE username = ?");
+ $stmt->execute([$_POST['username']]);
+ $user = $stmt->fetch();
+ if ($user && password_verify($_POST['password'], $user['password'])) {
+ $_SESSION['user_id'] = $user['id'];
+ } else {
+ header('Location: index.php');
+ exit;
+ }
+}
+
+// Daten abrufen
+$sql="WITH user_names AS (
+ SELECT
+ p.id,
+b_single.username AS zahler
+FROM
+entries p
+LEFT JOIN users b_single ON p.user_id = b_single.id
+)
+SELECT
+un.zahler,
+SUM(e.amount) AS summe_je_person
+FROM
+entries e
+JOIN user_names un ON e.id = un.id
+WHERE
+EXTRACT(YEAR FROM e.date) = EXTRACT(YEAR FROM CURRENT_DATE())
+AND EXTRACT(MONTH FROM e.date) = EXTRACT(MONTH FROM CURRENT_DATE())
+AND e.category IN (1, 2, 3)
+GROUP BY
+un.zahler
+ORDER BY
+summe_je_person DESC;
+";
+
+$stmt = $pdo->prepare($sql);
+$stmt->execute();
+$entries = $stmt->fetchAll();
+?>
+
+
+
+
+
+FSCash - Dashboard
+
+
+
+
+
+
+
+
+
+
+| Zahler |
+Summe |
+
+
+
+
+
+| = htmlspecialchars($entry['zahler'] ?? '') ?> |
+= htmlspecialchars(number_format($entry['summe_je_person'], 2, ',', '.')) ?> |
+
+
+
+
+
+
+
+
+
+