WIP: feature/tournament #11

Draft
tcprod wants to merge 3 commits from feature/tournament into main
Owner
No description provided.
tcprod added 2 commits 2025-02-10 15:56:22 +00:00
Typhus requested changes 2025-02-10 16:18:29 +00:00
@ -1,15 +1,15 @@
CREATE DATABASE IF NOT EXISTS `ez_lan_manager` /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci */;
USE `ez_lan_manager`;
-- MySQL dump 10.13 Distrib 5.7.24, for Linux (x86_64)
-- MySQL dump 10.13 Distrib 8.0.41, for Win64 (x86_64)
Owner

Ich weiß nicht wie sehr es mir gefällt hier die MySQL Version von 5 auf 8 zu heben.

Hast du kontrolliert was diese Änderung für uns bedeuted?

Ich weiß nicht wie sehr es mir gefällt hier die MySQL Version von 5 auf 8 zu heben. Hast du kontrolliert was diese Änderung für uns bedeuted?
@ -126,0 +133,4 @@
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!50503 SET character_set_client = utf8mb4 */;
CREATE TABLE `tournament_participants` (
`tournament_id` int(11) NOT NULL,
Owner

Hier fehlt die Referenz auf den FK

Hier fehlt die Referenz auf den FK
@ -126,0 +134,4 @@
/*!50503 SET character_set_client = utf8mb4 */;
CREATE TABLE `tournament_participants` (
`tournament_id` int(11) NOT NULL,
`user_id` int(11) NOT NULL,
Owner

Hier fehlt die Referenz auf den FK

Hier fehlt die Referenz auf den FK
@ -126,0 +147,4 @@
DROP TABLE IF EXISTS `tournaments`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!50503 SET character_set_client = utf8mb4 */;
CREATE TABLE `tournaments` (
Owner

Mir ist klar das wir die Turniere zu beginn simpel halten wollen. Allerdings fehlt uns bei dieser Datenstruktur die Möglichkeit Teams teilnehmen zu lassen.

Ich würde daher ein weiteres Feld einfügen das darlegt wie groß die Teams sind. Und das dann erstmal hart auf 1 setzen (für Einzelspieler).

Dann müssen wir, wenn wir dann Teams haben, nichtmehr so viel umschmeißen, und können als participant einen User ODER ein Team nehmen.

Mir ist klar das wir die Turniere zu beginn simpel halten wollen. Allerdings fehlt uns bei dieser Datenstruktur die Möglichkeit Teams teilnehmen zu lassen. Ich würde daher ein weiteres Feld einfügen das darlegt wie groß die Teams sind. Und das dann erstmal hart auf `1` setzen (für Einzelspieler). Dann müssen wir, wenn wir dann Teams haben, nichtmehr so viel umschmeißen, und können als `participant` einen User ODER ein Team nehmen.
@ -788,3 +788,21 @@ class DatabaseService:
return await self.remove_profile_picture(user_id)
except Exception as e:
logger.warning(f"Error deleting user profile picture: {e}")
Owner

2 Dinge die im Hinterkopf zu behalten sind:

  • Nicht vergessen hier später die Typen dran zu schreiben :)
  • Es braucht auch Methoden um Turniere anzulegen, zu löschen, die Anmeldung zu öffnen, zu schließen und die Einstellungen zu bearbeiten. Das kann man alles in einzelnen Methoden machen, oder du legst eine Datenklasse für Turniere an, die dann die Services beide verstehen.
2 Dinge die im Hinterkopf zu behalten sind: - Nicht vergessen hier später die Typen dran zu schreiben :) - Es braucht auch Methoden um Turniere anzulegen, zu löschen, die Anmeldung zu öffnen, zu schließen und die Einstellungen zu bearbeiten. Das kann man alles in einzelnen Methoden machen, oder du legst eine Datenklasse für Turniere an, die dann die Services beide verstehen.
Author
Owner

Das Kommentar verstehe ich nicht? Ich würde erstmal so weiter machen, wie ich denke und wenn ich an dem Problem ankomme, kannst du es mir nochmal erklären.

Das Kommentar verstehe ich nicht? Ich würde erstmal so weiter machen, wie ich denke und wenn ich an dem Problem ankomme, kannst du es mir nochmal erklären.
Owner

Wollte es nur erwähnt haben

Wollte es nur erwähnt haben
@ -0,0 +12,4 @@
pass
class TournamentService:
Owner

Den Methoden in dieser Klasse fehlt es noch etwas an Condition-checking.

Den Methoden in dieser Klasse fehlt es noch etwas an Condition-checking.
Author
Owner

Die Methoden können doch noch gar nichts 😄

Die Methoden können doch noch gar nichts 😄
tcprod added 1 commit 2025-02-18 11:25:47 +00:00
This pull request has changes conflicting with the target branch.
  • sql/create_database.sql
  • src/ez_lan_manager/__init__.py
  • src/ez_lan_manager/helpers/create_demo_database_content.py
  • src/ez_lan_manager/services/DatabaseService.py

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin feature/tournament:feature/tournament
git checkout feature/tournament
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: Vereins-IT/ezgg-lan-manager#11
No description provided.