Files
serega404 88b7906450
Build UniVerse plugin / Build library (push) Failing after 11m30s
Переделал на MVC и добавил swagger doc
2026-05-24 20:02:43 +03:00

44 lines
1.7 KiB
C#

namespace SfeduSchedule.Plugin.UniVerse;
/// <summary>
/// Результат поиска пользователя.
/// </summary>
/// <param name="Status">Статус выполнения поиска.</param>
/// <param name="SubId">Найденный Sub ID пользователя.</param>
/// <param name="ErrorMessage">Описание ошибки вышестоящего сервиса.</param>
public sealed record UniverseUserLookupResult(
UniverseUserLookupStatus Status,
string? SubId = null,
string? ErrorMessage = null)
{
/// <summary>
/// Успешный результат поиска.
/// </summary>
/// <param name="subId">Найденный Sub ID пользователя.</param>
/// <returns>Результат со статусом Found.</returns>
public static UniverseUserLookupResult Found(string subId) =>
new(UniverseUserLookupStatus.Found, subId);
/// <summary>
/// Результат для случая, когда пользователь не найден.
/// </summary>
/// <returns>Результат со статусом NotFound.</returns>
public static UniverseUserLookupResult NotFound() =>
new(UniverseUserLookupStatus.NotFound);
/// <summary>
/// Результат ошибки вышестоящего сервиса.
/// </summary>
/// <param name="message">Описание ошибки.</param>
/// <returns>Результат со статусом UpstreamError.</returns>
public static UniverseUserLookupResult UpstreamError(string message) =>
new(UniverseUserLookupStatus.UpstreamError, ErrorMessage: message);
}
public enum UniverseUserLookupStatus
{
Found,
NotFound,
UpstreamError
}