feat: enforce tenant isolation and shared question bank

This commit is contained in:
2026-07-27 16:59:12 +08:00
parent 28e9a9fa41
commit db4c7b4496
137 changed files with 6402 additions and 112274 deletions

View File

@@ -1,5 +1,6 @@
using System.Text.Json;
using Tiku.Domain.QuestionBanks;
using Tiku.Domain.Content;
namespace Tiku.Application.QuestionBanks;
@@ -17,13 +18,14 @@ public sealed record QuestionBankFilter(
IReadOnlyCollection<Guid>? QuestionIds = null,
string? Type = null,
string? Keyword = null,
int? Limit = null);
int? Limit = null,
QuestionSource? Source = null);
public sealed record QuestionBankCatalogItem(
Guid Id,
Guid? RegionId,
string Name,
QuestionBankScope SourceScope,
QuestionSource Source,
QuestionBankStatus Status,
JsonElement Metadata);
@@ -58,7 +60,10 @@ public sealed record QuestionCatalogItem(
string? Explanation,
JsonElement SubQuestions,
string? CodeLang,
string? CodeTemplate);
string? CodeTemplate,
QuestionLocator Locator);
public sealed record QuestionLocator(QuestionSource Source, Guid QuestionId);
public sealed record QuestionVersionCatalogItem(
Guid Id,