new
All checks were successful
Deploy to Server / deploy (push) Successful in 17s

This commit is contained in:
jeremygan2021
2026-03-17 22:30:43 +08:00
parent 75dbf22a43
commit 6a166c50eb
3 changed files with 46 additions and 4 deletions

View File

@@ -264,8 +264,19 @@ def project_detail_api(request, project_id):
if not enrollment:
return JsonResponse({'error': 'No permission'}, status=403)
# Get Dimensions
dimensions = ScoreDimension.objects.filter(competition=project.competition, is_public=True).order_by('order')
# Get Dimensions - 根据角色过滤
if role == 'contestant':
dimensions = ScoreDimension.objects.filter(
competition=project.competition,
is_public=True,
is_peer_review=True
).order_by('order')
else:
dimensions = ScoreDimension.objects.filter(
competition=project.competition,
is_public=True,
is_peer_review=False
).order_by('order')
# Get existing scores by THIS user
scores = Score.objects.filter(project=project, judge=enrollment)
@@ -374,8 +385,19 @@ def submit_score(request):
if not enrollment:
return JsonResponse({'success': False, 'message': 'No permission'})
# Save Scores
dimensions = ScoreDimension.objects.filter(competition=project.competition, is_public=True)
# Save Scores - 根据角色过滤维度
if role == 'contestant':
dimensions = ScoreDimension.objects.filter(
competition=project.competition,
is_public=True,
is_peer_review=True
)
else:
dimensions = ScoreDimension.objects.filter(
competition=project.competition,
is_public=True,
is_peer_review=False
)
for d in dimensions:
score_key = f'score_{d.id}'
if score_key in data: