various fixes

sync
Laurent 11 months ago
parent 3326eae98b
commit e5ec7efc5b
  1. BIN
      db.sqlite3.main
  2. 2
      sync/consumers.py
  3. 41
      tournaments/migrations/0096_drawlog_creation_date_drawlog_last_update_and_more.py
  4. 30
      tournaments/migrations/0096_special_store_id.py
  5. 69
      tournaments/migrations/0097_special_store_id.py
  6. 6
      tournaments/models/draw_log.py
  7. 4
      tournaments/models/group_stage.py
  8. 4
      tournaments/models/match.py
  9. 4
      tournaments/models/player_registration.py
  10. 4
      tournaments/models/round.py
  11. 4
      tournaments/models/team_registration.py
  12. 4
      tournaments/models/team_score.py

Binary file not shown.

@ -8,8 +8,6 @@ class UserConsumer(WebsocketConsumer):
self.user_id = self.scope["url_route"]["kwargs"]["user_id"] self.user_id = self.scope["url_route"]["kwargs"]["user_id"]
self.group_name = f"sync_{self.user_id}" self.group_name = f"sync_{self.user_id}"
print(f'connect, group_name = {self.group_name}')
# Join room group # Join room group
async_to_sync(self.channel_layer.group_add)( async_to_sync(self.channel_layer.group_add)(
self.group_name, self.channel_name self.group_name, self.channel_name

@ -0,0 +1,41 @@
# Generated by Django 5.1 on 2024-12-13 14:18
import django.db.models.deletion
import django.utils.timezone
from django.conf import settings
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('tournaments', '0095_club_creation_date_club_last_update_and_more'),
]
operations = [
migrations.AddField(
model_name='drawlog',
name='creation_date',
field=models.DateTimeField(default=django.utils.timezone.now, editable=False),
),
migrations.AddField(
model_name='drawlog',
name='last_update',
field=models.DateTimeField(default=django.utils.timezone.now),
),
migrations.AddField(
model_name='drawlog',
name='last_updated_by',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL),
),
migrations.AddField(
model_name='drawlog',
name='related_user',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to=settings.AUTH_USER_MODEL),
),
migrations.AddField(
model_name='drawlog',
name='store_id',
field=models.CharField(default='', max_length=100),
),
]

@ -1,30 +0,0 @@
# Generated by Django 5.1 on 2024-12-13 13:04
from django.db import migrations
def init_store_id(apps, schema_editor):
models = ["GroupStage", "Round", "TeamRegistration", "PlayerRegistration", "Match", "TeamScore", "DrawLog"]
for model in models:
Model = apps.get_model("tournaments", model)
for instance in Model.objects.all():
instance.store_id = str(instance.tournament_id())
instance.save()
def init_related_names(apps, schema_editor):
models = ["Club", "Event"]
for model in models:
Model = apps.get_model("tournaments", model)
for instance in Model.objects.all():
instance.related_user = instance.creator
instance.save()
class Migration(migrations.Migration):
dependencies = [
('tournaments', '0095_club_creation_date_club_last_update_and_more'),
]
operations = [
migrations.RunPython(init_store_id),
migrations.RunPython(init_related_names),
]

@ -0,0 +1,69 @@
# Generated by Django 5.1 on 2024-12-13 13:04
from django.db import migrations
def init_store_id(apps, schema_editor):
GroupStage = apps.get_model("tournaments", "GroupStage")
for instance in GroupStage.objects.all():
instance.store_id = str(instance.tournament.id)
instance.save()
Round = apps.get_model("tournaments", "Round")
for instance in Round.objects.all():
instance.store_id = str(instance.tournament.id)
instance.save()
TeamRegistration = apps.get_model("tournaments", "TeamRegistration")
for instance in TeamRegistration.objects.all():
instance.store_id = str(instance.tournament.id)
instance.save()
PlayerRegistration = apps.get_model("tournaments", "PlayerRegistration")
for instance in PlayerRegistration.objects.all():
instance.store_id = str(instance.team_registration.tournament.id)
instance.save()
Match = apps.get_model("tournaments", "Match")
for instance in Match.objects.all():
if instance.round:
id = instance.round.tournament.id
else:
id = instance.group_stage.tournament.id
instance.store_id = str(id)
instance.save()
TeamScore = apps.get_model("tournaments", "TeamScore")
for instance in TeamScore.objects.all():
if instance.team_registration:
id = instance.team_registration.tournament.id
else:
if instance.match.round:
id = instance.round.tournament.id
else:
id = instance.group_stage.tournament.id
instance.store_id = str(id)
instance.save()
DrawLog = apps.get_model("tournaments", "DrawLog")
for instance in DrawLog.objects.all():
instance.store_id = str(instance.tournament.id)
instance.save()
def init_related_names(apps, schema_editor):
models = ["Club", "Event"]
for model in models:
Model = apps.get_model("tournaments", model)
for instance in Model.objects.all():
instance.related_user = instance.creator
instance.save()
class Migration(migrations.Migration):
dependencies = [
('tournaments', '0096_drawlog_creation_date_drawlog_last_update_and_more'),
]
operations = [
migrations.RunPython(init_store_id),
migrations.RunPython(init_related_names),
]

@ -4,7 +4,7 @@ import uuid
class DrawLog(SideStoreModel): class DrawLog(SideStoreModel):
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=True) id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=True)
tournament = models.ForeignKey('Tournament', on_delete=models.CASCADE) tournament = models.ForeignKey('Tournament', on_delete=models.CASCADE, related_name='draw_logs')
draw_date = models.DateTimeField() draw_date = models.DateTimeField()
draw_seed = models.IntegerField() draw_seed = models.IntegerField()
draw_match_index = models.IntegerField() draw_match_index = models.IntegerField()
@ -15,8 +15,8 @@ class DrawLog(SideStoreModel):
return f'{self.draw_date}' return f'{self.draw_date}'
def save(self, *args, **kwargs): def save(self, *args, **kwargs):
self.store_id = str(self.tournament_id()) self.store_id = str(self.get_tournament_id())
super().save(*args, **kwargs) super().save(*args, **kwargs)
def tournament_id(self): def get_tournament_id(self):
return self.tournament.id return self.tournament.id

@ -22,10 +22,10 @@ class GroupStage(SideStoreModel):
return self.display_name() return self.display_name()
def save(self, *args, **kwargs): def save(self, *args, **kwargs):
self.store_id = str(self.tournament_id()) self.store_id = str(self.get_tournament_id())
super().save(*args, **kwargs) super().save(*args, **kwargs)
def tournament_id(self): def get_tournament_id(self):
return self.tournament.id return self.tournament.id
def display_name(self): def display_name(self):

@ -32,7 +32,7 @@ class Match(SideStoreModel):
return f"{self.stage_name()} #{self.index}: {names}" return f"{self.stage_name()} #{self.index}: {names}"
def save(self, *args, **kwargs): def save(self, *args, **kwargs):
self.store_id = str(self.tournament_id()) self.store_id = str(self.get_tournament_id())
super().save(*args, **kwargs) super().save(*args, **kwargs)
def tournament(self): def tournament(self):
@ -41,7 +41,7 @@ class Match(SideStoreModel):
else: else:
return self.group_stage.tournament return self.group_stage.tournament
def tournament_id(self): def get_tournament_id(self):
return self.tournament().id return self.tournament().id
def court_name(self, index): def court_name(self, index):

@ -38,10 +38,10 @@ class PlayerRegistration(SideStoreModel):
return self.name() return self.name()
def save(self, *args, **kwargs): def save(self, *args, **kwargs):
self.store_id = str(self.tournament_id()) self.store_id = str(self.get_tournament_id())
super().save(*args, **kwargs) super().save(*args, **kwargs)
def tournament_id(self): def get_tournament_id(self):
return self.team_registration.tournament.id return self.team_registration.tournament.id
def name(self): def name(self):

@ -19,10 +19,10 @@ class Round(SideStoreModel):
return self.name() return self.name()
def save(self, *args, **kwargs): def save(self, *args, **kwargs):
self.store_id = str(self.tournament_id()) self.store_id = str(self.get_tournament_id())
super().save(*args, **kwargs) super().save(*args, **kwargs)
def tournament_id(self): def get_tournament_id(self):
return self.tournament.id return self.tournament.id
def name(self): def name(self):

@ -37,10 +37,10 @@ class TeamRegistration(SideStoreModel):
return self.player_names() return self.player_names()
def save(self, *args, **kwargs): def save(self, *args, **kwargs):
self.store_id = str(self.tournament_id()) self.store_id = str(self.get_tournament_id())
super().save(*args, **kwargs) super().save(*args, **kwargs)
def tournament_id(self): def get_tournament_id(self):
return self.tournament.id return self.tournament.id
def team_names(self): def team_names(self):

@ -14,7 +14,7 @@ class TeamScore(SideStoreModel):
return f"{self.match.stage_name()} #{self.match.index}: {self.player_names()}" return f"{self.match.stage_name()} #{self.match.index}: {self.player_names()}"
def save(self, *args, **kwargs): def save(self, *args, **kwargs):
self.store_id = str(self.tournament_id()) self.store_id = str(self.get_tournament_id())
super().save(*args, **kwargs) super().save(*args, **kwargs)
def tournament(self): def tournament(self):
@ -25,7 +25,7 @@ class TeamScore(SideStoreModel):
else: else:
return None return None
def tournament_id(self): def get_tournament_id(self):
return self.tournament().id return self.tournament().id
def player_names(self): def player_names(self):

Loading…
Cancel
Save