Change points balance
This commit is contained in:
@@ -182,7 +182,7 @@ async def spin_wheel(marathon_id: int, current_user: CurrentUser, db: DbSession)
|
||||
await db.refresh(assignment)
|
||||
|
||||
# Calculate drop penalty (considers active event for double_risk)
|
||||
drop_penalty = points_service.calculate_drop_penalty(participant.drop_count, active_event)
|
||||
drop_penalty = points_service.calculate_drop_penalty(participant.drop_count, challenge.points, active_event)
|
||||
|
||||
# Get challenges count (avoid lazy loading in async context)
|
||||
challenges_count = 0
|
||||
@@ -238,7 +238,7 @@ async def get_current_assignment(marathon_id: int, current_user: CurrentUser, db
|
||||
|
||||
# Calculate drop penalty (considers active event for double_risk)
|
||||
active_event = await event_service.get_active_event(db, marathon_id)
|
||||
drop_penalty = points_service.calculate_drop_penalty(participant.drop_count, active_event)
|
||||
drop_penalty = points_service.calculate_drop_penalty(participant.drop_count, challenge.points, active_event)
|
||||
|
||||
return AssignmentResponse(
|
||||
id=assignment.id,
|
||||
@@ -496,7 +496,7 @@ async def drop_assignment(assignment_id: int, current_user: CurrentUser, db: DbS
|
||||
active_event = await event_service.get_active_event(db, marathon_id)
|
||||
|
||||
# Calculate penalty (0 if double_risk event is active)
|
||||
penalty = points_service.calculate_drop_penalty(participant.drop_count, active_event)
|
||||
penalty = points_service.calculate_drop_penalty(participant.drop_count, assignment.challenge.points, active_event)
|
||||
|
||||
# Update assignment
|
||||
assignment.status = AssignmentStatus.DROPPED.value
|
||||
|
||||
Reference in New Issue
Block a user