diff --git a/draw/consumers.py b/draw/consumers.py index e39bd7f..39eeef1 100644 --- a/draw/consumers.py +++ b/draw/consumers.py @@ -120,7 +120,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): {'type': 'draw.send_poules', 'round': r}) draw.current_round = r1 - await sync_to_async(draw.save)() + await draw.asave() async for td in r1.teamdraw_set.prefetch_related('participation__team').all(): await self.channel_layer.group_send(f"team-{td.participation.team.trigram}", @@ -145,7 +145,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): @ensure_orga async def abort(self, **kwargs): - await sync_to_async(self.tournament.draw.delete)() + await self.tournament.draw.adelete() await self.channel_layer.group_send(f"tournament-{self.tournament.id}", {'type': 'draw_abort'}) async def draw_abort(self, content): @@ -201,7 +201,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): team_draw.passage_dice = res else: team_draw.choice_dice = res - await sync_to_async(team_draw.save)() + await team_draw.asave() await self.channel_layer.group_send( f"tournament-{self.tournament.id}", {'type': 'draw.dice', 'team': trigram, 'result': res}) @@ -223,7 +223,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): for dup in dups: dup.passage_dice = None - await sync_to_async(dup.save)() + await dup.asave() await self.channel_layer.group_send( f"tournament-{self.tournament.id}", {'type': 'draw.dice', 'team': dup.participation.team.trigram, 'result': None}) @@ -247,7 +247,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): for i, td in enumerate(pool_tds): td.pool = p td.passage_index = i - await sync_to_async(td.save)() + await td.asave() tds_copy = tds.copy() round2 = await self.tournament.draw.round_set.filter(number=2).aget() @@ -266,11 +266,11 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): if current_pool_id == len(round2_pools): current_pool_id = 0 current_passage_index += 1 - await sync_to_async(td2.save)() + await td2.asave() pool = await Pool.objects.filter(round=self.tournament.draw.current_round, letter=1).aget() self.tournament.draw.current_round.current_pool = pool - await sync_to_async(self.tournament.draw.current_round.save)() + await self.tournament.draw.current_round.asave() msg = "Les résultats des dés sont les suivants : " msg += await sync_to_async(lambda: ", ".join( @@ -280,7 +280,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): msg += "Attention : les ordres de passage sont déterminés à partir des scores des dés, mais ne sont pas " msg += "directement l'ordre croissant des dés, afin d'avoir des poules mélangées." self.tournament.draw.last_message = msg - await sync_to_async(self.tournament.draw.save)() + await self.tournament.draw.asave() for td in tds: await self.channel_layer.group_send( @@ -327,7 +327,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): for dup in dups: dup.choice_dice = None - await sync_to_async(dup.save)() + await dup.asave() await self.channel_layer.group_send( f"tournament-{self.tournament.id}", {'type': 'draw.dice', 'team': dup.participation.team.trigram, 'result': None}) @@ -345,13 +345,13 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): tds.sort(key=lambda x: -x.choice_dice) for i, td in enumerate(tds): td.choose_index = i - await sync_to_async(td.save)() + await td.asave() pool.current_team = tds[0] - await sync_to_async(pool.save)() + await pool.asave() self.tournament.draw.last_message = "" - await sync_to_async(self.tournament.draw.save)() + await self.tournament.draw.asave() await self.channel_layer.group_send(f"tournament-{self.tournament.id}", {'type': 'draw.set_info', 'draw': self.tournament.draw}) @@ -392,7 +392,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): break td.purposed = problem - await sync_to_async(td.save)() + await td.asave() trigram = await sync_to_async(lambda: td.participation.team.trigram)() await self.channel_layer.group_send(f"team-{trigram}", @@ -407,7 +407,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): {'type': 'draw.draw_problem', 'team': trigram, 'problem': problem}) self.tournament.draw.last_message = "" - await sync_to_async(self.tournament.draw.save)() + await self.tournament.draw.asave() await self.channel_layer.group_send(f"tournament-{self.tournament.id}", {'type': 'draw.set_info', 'draw': self.tournament.draw}) @@ -428,7 +428,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): td.accepted = td.purposed td.purposed = None - await sync_to_async(td.save)() + await td.asave() trigram = await sync_to_async(lambda: td.participation.team.trigram)() msg = f"L'équipe {trigram} a accepté le problème {td.accepted}. " @@ -437,7 +437,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): else: msg += "Plus personne ne peut l'accepter." self.tournament.draw.last_message = msg - await sync_to_async(self.tournament.draw.save)() + await self.tournament.draw.asave() await self.channel_layer.group_send(f"team-{trigram}", {'type': 'draw.buttons_visibility', 'visible': False}) @@ -453,7 +453,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): # Continue next_td = await pool.next_td() pool.current_team = next_td - await sync_to_async(pool.save)() + await pool.asave() new_trigram = await sync_to_async(lambda: next_td.participation.team.trigram)() await self.channel_layer.group_send(f"team-{new_trigram}", @@ -476,13 +476,13 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): tds[0].passage_index = p_index tds[1].passage_index = p_index + 1 p_index += 2 - await sync_to_async(tds[0].save)() - await sync_to_async(tds[1].save)() + await tds[0].asave() + await tds[1].asave() for pb, tds in problems.items(): if len(tds) == 1: tds[0].passage_index = p_index p_index += 1 - await sync_to_async(tds[0].save)() + await tds[0].asave() print(p_index) @@ -498,12 +498,12 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): msg += f"

Le tirage de la poule {pool.get_letter_display()}{r.number} est terminé. " \ f"Le tableau récapitulatif est en bas." self.tournament.draw.last_message = msg - await sync_to_async(self.tournament.draw.save)() + await self.tournament.draw.asave() if await r.teamdraw_set.filter(accepted__isnull=True).aexists(): # Next pool next_pool = await r.next_pool() r.current_pool = next_pool - await sync_to_async(r.save)() + await r.asave() await self.channel_layer.group_send(f"tournament-{self.tournament.id}", {'type': 'draw.dice_visibility', 'visible': True}) @@ -515,7 +515,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): self.tournament.draw.current_round = r2 msg += "

Le tirage au sort du tour 1 est terminé." self.tournament.draw.last_message = msg - await sync_to_async(self.tournament.draw.save)() + await self.tournament.draw.asave() for participation in self.participations: await self.channel_layer.group_send( @@ -531,7 +531,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): # Start the first pool of the second round p1: Pool = await r2.pool_set.filter(letter=1).aget() r2.current_pool = p1 - await sync_to_async(r2.save)() + await r2.asave() async for td in p1.teamdraw_set.prefetch_related('participation__team').all(): await self.channel_layer.group_send(f"team-{td.participation.team.trigram}", @@ -542,7 +542,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): # For the final tournament, we wait for a manual update between the two rounds. msg += "

Le tirage au sort du tour 1 est terminé." self.tournament.draw.last_message = msg - await sync_to_async(self.tournament.draw.save)() + await self.tournament.draw.asave() await self.channel_layer.group_send(f"volunteer-{self.tournament.id}", {'type': 'draw.export_visibility', 'visible': True}) @@ -572,7 +572,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): if not already_refused: td.rejected.append(problem) td.purposed = None - await sync_to_async(td.save)() + await td.asave() remaining = settings.PROBLEM_COUNT - 5 - len(td.rejected) @@ -586,7 +586,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): else: msg += "Cela ajoute une pénalité de 0.5 sur le coefficient de l'oral de læ défenseur⋅se." self.tournament.draw.last_message = msg - await sync_to_async(self.tournament.draw.save)() + await self.tournament.draw.asave() await self.channel_layer.group_send(f"team-{trigram}", {'type': 'draw.buttons_visibility', 'visible': False}) @@ -602,7 +602,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): next_td = await pool.next_td() pool.current_team = next_td - await sync_to_async(pool.save)() + await pool.asave() new_trigram = await sync_to_async(lambda: next_td.participation.team.trigram)() await self.channel_layer.group_send(f"team-{new_trigram}", @@ -635,11 +635,11 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): msg = "Le tirage au sort pour le tour 2 va commencer. " \ "L'ordre de passage est déterminé à partir du classement du premier tour." self.tournament.draw.last_message = msg - await sync_to_async(self.tournament.draw.save)() + await self.tournament.draw.asave() pool = await Pool.objects.filter(round=self.tournament.draw.current_round, letter=1).aget() r2.current_pool = pool - await sync_to_async(r2.save)() + await r2.asave() notes = dict() async for participation in self.tournament.participations.filter(valid=True).prefetch_related('team').all(): @@ -654,7 +654,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer): td = await TeamDraw.objects.aget(round=r2, participation=participation) td.pool = pool td.passage_index = i - await sync_to_async(td.save)() + await td.asave() await self.channel_layer.group_send(f"tournament-{self.tournament.id}", {'type': 'draw.send_poules', 'round': r2})