переезд на новый метод
Tests / frontend-test (pull_request) Successful in 52s
Tests / backend-test (pull_request) Successful in 2m15s

This commit is contained in:
gorbenko.pavel
2026-08-10 11:06:11 +05:00
parent 3513816af2
commit 5e5242942e
@@ -56,15 +56,18 @@ public sealed class HttpTnsuPortalClient(
return executors; return executors;
} }
// STUB(department-head): в api.tnsu.kz пока нет эндпоинта «руководитель отдела // Ответ — {"managerEmail": "..."} (та же форма, что у /Employee/Manager),
// по Id отдела» — до его появления просто возвращаем захардкоженный email, // а НЕ форма сотрудника (EmployeeResponse) — проверено живым вызовом
// чтобы можно было отладить всю остальную логику HeadType.DepartmentHead // (GET /Employee/DepartmentHead?departmentId=... на отделе "АУП"/"ТОО
// (resolve, warning-и, UI) не дожидаясь портала. Когда эндпоинт появится — // Монтажник-Т" вернул именно managerEmail). 404 с телом {"error": "..."}
// заменить тело этого метода на реальный вызов через GetAsync<T> (по // на отделах без руководителя уже отфильтровывается общим GetAsync<T>.
// образцу остальных методов этого класса); сигнатуру и вызывающий код public async Task<string?> GetDepartmentHeadEmailAsync(Guid departmentId, CancellationToken cancellationToken)
// (TemplateRouteService.ResolveStepAsync) менять не придётся. {
public Task<string?> GetDepartmentHeadEmailAsync(Guid departmentId, CancellationToken cancellationToken) => var manager = await GetAsync<ManagerResponse>(
Task.FromResult<string?>("gorbenko.pavel@tnsu.kz"); $"/Employee/DepartmentHead?departmentId={Uri.EscapeDataString(departmentId.ToString())}", cancellationToken);
return manager?.ManagerEmail;
}
private async Task<T?> GetAsync<T>(string requestUri, CancellationToken cancellationToken) where T : class private async Task<T?> GetAsync<T>(string requestUri, CancellationToken cancellationToken) where T : class
{ {