Exemple #1
0
    def delete(self, request, *args, **kwargs):
        params = json.loads(request.body.decode('utf-8'))
        is_creator = params.get('is_creator')
        room_id = params.get('room_id')
        error = None

        try:
            if is_creator:
                new_room = Game(id=params.get('room_id'))
                new_room.delete() # здесь не надо, т.к. каскадное удаление
            else:
                player_info = PlayerGameInfo.objects.get(player_id=request.user, room_id=room_id)
                player_info.delete()
        except BaseException as err:
            print(err)
            error = str(err)

        return JsonResponse({
            'error': error
        })
Exemple #2
0
class IRepositoryGame:
    def __init__(self):
        self.game = None

    def save_game(self, room):
        self.game = Game(room_name=room,
                         game_status='2',
                         first_winner=0,
                         second_winner=0,
                         third_winner=0,
                         fourth_winner=0,
                         fifth_winner=0,
                         sixth_winner=0,
                         date_created=datetime.datetime.now())
        self.game.save()
        return self.game

    def get_game_by_id(self, game_id):
        self.game = Game.objects.get(id=game_id)
        return self.game

    def get_game_by_status(self, status_type):
        self.game = Game.objects.filter(game_status=status_type)
        return self.game

    def get_game_by_room(self, room):
        self.game = Game.objects.filter(room_name=room)
        return self.game

    def get_all_games(self):
        self.game = Game.objects.get()
        return self.game

    def update_game_status_by_id(self, game_id, status):
        self.game = Game.objects.get(id=game_id)
        self.game.game_status = status
        self.game.save()
        return self.game

    def update_game_status_by_room(self, room, status):
        self.game = Game.objects.get(room_name=room)
        self.game.game_status = status
        self.game.save()
        return self.game

    def update_game_winners_by_id(self, game_id, first, second, third, fourth,
                                  fifth, sixth):
        self.game = Game.objects.get(id=game_id)
        self.game.first_winner = first
        self.game.second_winner = second
        self.game.third_winner = third
        self.game.fourth_winner = fourth
        self.game.fifth_winner = fifth
        self.game.sixth_winner = sixth
        self.game.save()
        return self.game

    def update_game_winners_by_room(self, room, first, second, third, fourth,
                                    fifth, sixth):
        self.game = Game.objects.get(room_name=room)
        self.game.first_winner = first
        self.game.second_winner = second
        self.game.third_winner = third
        self.game.fourth_winner = fourth
        self.game.fifth_winner = fifth
        self.game.sixth_winner = sixth
        self.game.save()
        return self.game

    def delete_game_by_id(self, game_id):
        self.game = Game.objects.get(id=game_id)
        self.game.delete()
        return None

    def delete_game_by_room(self, room):
        self.game = Game.objects.get(room_name=room)
        self.game.delete()
        return None