Fix zekken_number

This commit is contained in:
2025-01-23 08:22:59 +09:00
parent 273e16546a
commit 305d569a0a
2 changed files with 22 additions and 10 deletions

View File

@ -126,22 +126,34 @@ class EntryCSVProcessor:
print(f'新規チーム名:{team_name}') print(f'新規チーム名:{team_name}')
# 新規チームを作成 # 新規チームを作成
try:
category = self._get_or_create_category(row) category = self._get_or_create_category(row)
print(f'カテゴリからゼッケン取得:{row["zekken_number"]}')
team = Team.objects.create( team = Team.objects.create(
team_name=team_name, team_name=team_name,
owner=user, owner=user,
category=category category=category
) )
return team return team
except NewCategory.DoesNotExist:
print(f'Error on _get_or_create_team')
raise ValidationError(f"Category with name {category} for team {team} does not exist")
def _get_or_create_category(self, row: Dict[str, Any]) -> NewCategory: def _get_or_create_category(self, row: Dict[str, Any]) -> NewCategory:
""" """
時間とデパートメントに基づいてカテゴリを取得 時間とデパートメントに基づいてカテゴリを取得
""" """
category_name = f"{row['department']}_{row['time']}h" category_name = f"{row['department']}_{row['time']}時間"
try: try:
category = NewCategory.objects.get(category_name=category_name) category = NewCategory.objects.get(category_name=category_name)
row['zekken_number'] = category.category_number
category.category_number = category.category_number + 1
category.save()
except NewCategory.DoesNotExist: except NewCategory.DoesNotExist:
print(f'Error on _get_or_create_category : {category_name}')
raise ValidationError(f"Category with name {category_name} does not exist") raise ValidationError(f"Category with name {category_name} does not exist")
return category return category
@ -206,7 +218,7 @@ class EntryCSVProcessor:
エントリーを作成 エントリーを作成
""" """
try: try:
zekken_no = team.zekken_number zekken_no = row['zekken_number']
event = NewEvent2.objects.get(event_name=row['event_code']) event = NewEvent2.objects.get(event_name=row['event_code'])
Entry.objects.create( Entry.objects.create(
team=team, team=team,

View File

@ -1600,7 +1600,7 @@ class EntryViewSet(viewsets.ModelViewSet):
# ユーザーがメンバーとして所属するチームのIDを取得 # ユーザーがメンバーとして所属するチームのIDを取得
member_team_ids = Member.objects.filter(user=user).values_list('team_id', flat=True) member_team_ids = Member.objects.filter(user=user).values_list('team_id', flat=True)
# 両方のチームに関連するエントリーを取得 # 両方のチームに関連するエントリーを取得
return Entry.objects.filter(Q(team__id__in=owned_team_ids) | Q(team__id__in=member_team_ids), isActive=True) return Entry.objects.filter(Q(team__id__in=owned_team_ids) | Q(team__id__in=member_team_ids), is_active=True)
#return Entry.objects.filter(Q(team__id__in=owned_team_ids) | Q(team__id__in=member_team_ids)) #return Entry.objects.filter(Q(team__id__in=owned_team_ids) | Q(team__id__in=member_team_ids))
@transaction.atomic @transaction.atomic