forked from xiongyuxing/tiku-backend.net
perf: optimize authorization scoreline and workers
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
using Microsoft.AspNetCore.Authorization;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using Microsoft.AspNetCore.OutputCaching;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Tiku.Api.Contracts;
|
||||
using Tiku.Application.Catalog;
|
||||
@@ -24,6 +25,7 @@ public sealed class ScorelineController(
|
||||
private static readonly string[] DynamicPrefixes = ["field.", "min.", "max."];
|
||||
|
||||
[HttpGet("fields")]
|
||||
[OutputCache(PolicyName = "TenantPublic")]
|
||||
[EndpointSummary("查询分数线字段配置")]
|
||||
[ProducesResponseType<CatalogList<ScorelineFieldItem>>(StatusCodes.Status200OK)]
|
||||
[ProducesResponseType<ProblemDetails>(StatusCodes.Status404NotFound)]
|
||||
@@ -49,6 +51,20 @@ public sealed class ScorelineController(
|
||||
cancellationToken));
|
||||
}
|
||||
|
||||
[HttpGet("records/cursor")]
|
||||
[EndpointSummary("游标分页查询分数线记录")]
|
||||
[ProducesResponseType<ScorelineRecordCursorPage>(StatusCodes.Status200OK)]
|
||||
[ProducesResponseType<ProblemDetails>(StatusCodes.Status400BadRequest)]
|
||||
public async Task<ActionResult<ScorelineRecordCursorPage>> GetRecordsCursor(
|
||||
[FromQuery] ScorelineQueryDto query,
|
||||
CancellationToken cancellationToken)
|
||||
{
|
||||
return Ok(await scorelineQueryService.GetRecordsCursorAsync(
|
||||
query.ToFilter(await ResolveTenantIdAsync(query, cancellationToken), ResolveDynamicFilters()),
|
||||
query.Cursor,
|
||||
cancellationToken));
|
||||
}
|
||||
|
||||
[HttpGet("trend")]
|
||||
[EndpointSummary("查询历年分数线趋势")]
|
||||
[ProducesResponseType<CatalogList<ScorelineRecordItem>>(StatusCodes.Status200OK)]
|
||||
@@ -63,6 +79,7 @@ public sealed class ScorelineController(
|
||||
}
|
||||
|
||||
[HttpGet("years")]
|
||||
[OutputCache(PolicyName = "TenantPublic")]
|
||||
[EndpointSummary("查询分数线可用年份")]
|
||||
[ProducesResponseType<CatalogList<int>>(StatusCodes.Status200OK)]
|
||||
[ProducesResponseType<ProblemDetails>(StatusCodes.Status404NotFound)]
|
||||
|
||||
Reference in New Issue
Block a user