Anwesenheiten bei Probemitgliedern in Listen Grün für 1-3 Anwesenheiten, rot bei mehr
This commit is contained in:
parent
dbdd7a2176
commit
44f3aac98b
36
app.js
36
app.js
|
@ -675,10 +675,20 @@ app.get("/training", requireAuth, async (req, res) => {
|
|||
|
||||
// Abrufen der Riegendaten einschließlich der Teilnehmer und deren Altersberechnung
|
||||
const result = await pool.query(`
|
||||
SELECT r.riegennummer, t.id, t.name, t.vorname, t.nachname, t.geburtsdatum, r.helfer
|
||||
SELECT r.riegennummer,
|
||||
t.id,
|
||||
t.name,
|
||||
t.vorname,
|
||||
t.nachname,
|
||||
t.geburtsdatum,
|
||||
t.probe,
|
||||
r.helfer,
|
||||
COUNT(a.fid_teilnehmer) AS anwesenheit
|
||||
FROM riegen r
|
||||
JOIN teilnehmende t ON r.fremdID_Teilnehmende = t.id
|
||||
ORDER BY r.riegennummer, t.geburtsdatum ASC
|
||||
LEFT JOIN anwesend a ON t.id = a.fid_teilnehmer
|
||||
GROUP BY r.riegennummer, t.id, t.name, t.vorname, t.nachname, t.geburtsdatum, r.helfer
|
||||
ORDER BY r.riegennummer, t.geburtsdatum ASC;
|
||||
`);
|
||||
|
||||
// Gruppieren der Riegenteilnehmer nach Riegennummer
|
||||
|
@ -696,6 +706,8 @@ app.get("/training", requireAuth, async (req, res) => {
|
|||
nachname: row.nachname,
|
||||
age: age,
|
||||
helfer: row.helfer,
|
||||
probe: row.probe,
|
||||
anwesenheit: row.anwesenheit,
|
||||
anwesend: tnAnwesend,
|
||||
anzahl,
|
||||
});
|
||||
|
@ -737,12 +749,22 @@ app.get("/riege", requireAuth, async (req, res) => {
|
|||
try {
|
||||
// Abrufen der Riegendaten einschließlich der Teilnehmer und deren Altersberechnung
|
||||
const result = await pool.query(`
|
||||
SELECT r.riegennummer, t.id, t.name, t.vorname, t.nachname, t.geburtsdatum, r.helfer
|
||||
SELECT r.riegennummer,
|
||||
t.id,
|
||||
t.name,
|
||||
t.vorname,
|
||||
t.nachname,
|
||||
t.geburtsdatum,
|
||||
t.probe,
|
||||
r.helfer,
|
||||
COUNT(a.fid_teilnehmer) AS anwesenheit
|
||||
FROM riegen r
|
||||
JOIN teilnehmende t ON r.fremdID_Teilnehmende = t.id
|
||||
ORDER BY r.riegennummer, t.geburtsdatum ASC
|
||||
`);
|
||||
LEFT JOIN anwesend a ON t.id = a.fid_teilnehmer
|
||||
GROUP BY r.riegennummer, t.id, t.name, t.vorname, t.nachname, t.geburtsdatum, r.helfer
|
||||
ORDER BY r.riegennummer, t.geburtsdatum ASC;
|
||||
|
||||
`);
|
||||
// Gruppieren der Riegenteilnehmer nach Riegennummer
|
||||
const riegen = {};
|
||||
result.rows.forEach((row) => {
|
||||
|
@ -757,6 +779,8 @@ app.get("/riege", requireAuth, async (req, res) => {
|
|||
nachname: row.nachname,
|
||||
age: age,
|
||||
helfer: row.helfer,
|
||||
probe: row.probe,
|
||||
anwesenheit: row.anwesenheit,
|
||||
});
|
||||
});
|
||||
|
||||
|
@ -771,7 +795,7 @@ app.get("/riege", requireAuth, async (req, res) => {
|
|||
app.get("/teilnehmer", requireAuth, requireAdmin, async (req, res) => {
|
||||
try {
|
||||
const teilnehmendeResult = await pool.query(
|
||||
"SELECT * FROM teilnehmende ORDER BY helfer DESC, vorname ASC"
|
||||
"SELECT m.*, COUNT(a.fid_teilnehmer) AS anwesenheit FROM teilnehmende m LEFT JOIN anwesend a ON m.id = a.fid_teilnehmer GROUP BY m.id ORDER BY helfer DESC, vorname ASC"
|
||||
);
|
||||
|
||||
const teilnehmende = teilnehmendeResult.rows.map((t) => ({
|
||||
|
|
|
@ -64,6 +64,12 @@
|
|||
<a href="/mitglied/<%= teilnehmer.id %>"
|
||||
><%= teilnehmer.nachname %></a
|
||||
>
|
||||
<% } %> <% if (teilnehmer.probe) { %>
|
||||
<span
|
||||
style="color: <%= teilnehmer.anwesenheit <= 3 ? 'green' : 'red' %>;"
|
||||
>
|
||||
(<%= teilnehmer.anwesenheit %>)
|
||||
</span>
|
||||
<% } %>
|
||||
</td>
|
||||
<td><%= teilnehmer.age %> Jahre</td>
|
||||
|
|
|
@ -27,6 +27,13 @@
|
|||
<% } else { %>
|
||||
<a href="/mitglied/<%= teilnehmer.id %>"><%= teilnehmer.nachname %></a>
|
||||
<% } %>
|
||||
<% if (teilnehmer.probe) { %>
|
||||
<span style="color: <%= teilnehmer.anwesenheit <= 3 ? 'green' : 'red' %>;">
|
||||
(<%= teilnehmer.anwesenheit %>)
|
||||
</span>
|
||||
<% } %>
|
||||
|
||||
|
||||
</td>
|
||||
<td><%= teilnehmer.age %> Jahre</td>
|
||||
</tr>
|
||||
|
|
|
@ -303,6 +303,13 @@
|
|||
</td>
|
||||
<td>
|
||||
<%= teilnehmer.nachname %>
|
||||
<% if (teilnehmer.probe) { %>
|
||||
<span
|
||||
style="color: <%= teilnehmer.anwesenheit <= 3 ? 'green' : 'red' %>;"
|
||||
>
|
||||
(<%= teilnehmer.anwesenheit %>)
|
||||
</span>
|
||||
<% } %>
|
||||
</td>
|
||||
<td>
|
||||
<%= teilnehmer.age %>
|
||||
|
|
Loading…
Reference in New Issue