成绩查询按赛事状态开放

已结束赛事的修正通知仍需显示
This commit is contained in:
马梓彭 2026-09-22 18:03:14 +08:00
parent 50192c152b
commit 81b40a27d8
2 changed files with 11 additions and 14 deletions

View File

@ -11,20 +11,11 @@ public partial class EventClientController
[AllowAnonymous] [AllowAnonymous]
[DisplayName("获取成绩赛事")] [DisplayName("获取成绩赛事")]
public async Task<List<ScoreEventDto>> GetScoreEvents( public async Task<List<ScoreEventDto>> GetScoreEvents(
[FromServices] ISqlSugarRepository<EventResult> resultRepository,
[FromServices] ISqlSugarRepository<EventInfo> eventRepository) [FromServices] ISqlSugarRepository<EventInfo> eventRepository)
{ {
var eventIds = await resultRepository.AsQueryable()
.Where(x => x.Status == AvailabilityStatus.Enable && !x.DeleteMark)
.Select(x => x.EventId)
.Distinct()
.ToListAsync();
if (eventIds.Count == 0) return new List<ScoreEventDto>();
var events = await eventRepository.AsQueryable() var events = await eventRepository.AsQueryable()
.Where(x => eventIds.Contains(x.Id) && x.Status == AvailabilityStatus.Enable && !x.DeleteMark) .Where(x => x.Status == AvailabilityStatus.Enable && !x.DeleteMark)
// 原型要求成绩查询只显示进行中、已结束状态的赛事。 // 成绩查询按赛事状态开放,未产生成绩时也应允许选择比赛中、已结束的赛事。
.Where(x => x.EventStatus == EventStatus.Ongoing || x.EventStatus == EventStatus.Ended) .Where(x => x.EventStatus == EventStatus.Ongoing || x.EventStatus == EventStatus.Ended)
.OrderByDescending(x => x.MatchStartTime) .OrderByDescending(x => x.MatchStartTime)
.ToListAsync(); .ToListAsync();

View File

@ -733,11 +733,12 @@ public class JudgeScoringController : IDynamicApiController
{ {
var referee = await EnsureRefereeAsync(); var referee = await EnsureRefereeAsync();
var userId = _authManager.UserId; var userId = _authManager.UserId;
var messages = (await _messageRepository.AsQueryable() var messages = await _messageRepository.AsQueryable()
.Where(x => x.RefereeId == referee.Id || x.ReceiverUserId == userId) .Where(x => x.RefereeId == referee.Id || x.ReceiverUserId == userId)
.WhereIF(onlyUnread == true, x => !x.IsRead) .WhereIF(onlyUnread == true, x => !x.IsRead)
.ToListAsync()) .ToListAsync();
.OrderByDescending(x => x.CreatedTime).ToList();
messages = messages.OrderByDescending(x => x.CreatedTime).ToList();
var correctionIds = messages var correctionIds = messages
.Where(x => string.Equals(x.RelationType, nameof(EventScoreCorrection), StringComparison.OrdinalIgnoreCase) .Where(x => string.Equals(x.RelationType, nameof(EventScoreCorrection), StringComparison.OrdinalIgnoreCase)
&& x.RelationId.HasValue) && x.RelationId.HasValue)
@ -1284,6 +1285,11 @@ public class JudgeScoringController : IDynamicApiController
/// </summary> /// </summary>
private const int TaskStatusVoided = 90; private const int TaskStatusVoided = 90;
/// <summary>
/// 消息类型:成绩修正提醒
/// </summary>
private const int MessageTypeCorrection = 1;
/// <summary> /// <summary>
/// 评分任务类型:成绩修正 /// 评分任务类型:成绩修正
/// </summary> /// </summary>