Исправить имена колонок причины открытия вакансии в отчёте по вакансиям
Tests / frontend-test (pull_request) Successful in 1m29s
Tests / backend-test (pull_request) Successful in 2m2s

В списке «Заявка на подбор — данные» колонки называются VacancyOpenReason и
VacancyOpenReasonDetails; запрос с несуществующими OpenReason* падал, ошибка
партиции глушилась в лог, и отчёт возвращался пустым.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
gorbenko.pavel
2026-10-06 12:07:29 +05:00
parent b959feedbf
commit 2e0cc93b56
3 changed files with 6 additions and 6 deletions
@@ -26,7 +26,7 @@ internal sealed record SelectionRow(
/// </summary>
public const string Select =
"$select=Id,RequestStatus,Position,DepartmentName,ObjectProject,OpenVacanciesCount," +
"SubmitDate,Created,OpenReason,OpenReasonDetails,Responsible/Title&$expand=Responsible&$top=5000";
"SubmitDate,Created,VacancyOpenReason,VacancyOpenReasonDetails,Responsible/Title&$expand=Responsible&$top=5000";
public static SelectionRow? TryParse(JsonElement item, string listId)
{
@@ -50,7 +50,7 @@ internal sealed record SelectionRow(
// иначе заявка попадала бы в отчёт, но с пустой колонкой H.
SharePointJson.Date(item, "SubmitDate") ?? SharePointJson.Date(item, "Created"),
SharePointJson.PersonTitle(item, "Responsible"),
SharePointJson.String(item, "OpenReason"),
SharePointJson.String(item, "OpenReasonDetails"));
SharePointJson.String(item, "VacancyOpenReason"),
SharePointJson.String(item, "VacancyOpenReasonDetails"));
}
}
@@ -24,7 +24,7 @@ namespace Tnsu.ApprovalRoute.Application.Reports;
/// индекса отчёту не критично. Но на этом тенанте ЧАСТЬ нужных полей индекс не
/// отдаёт вовсе, при том что в самих списках значения есть (проверено поштучно
/// через REST):
/// • «Заявка на подбор»: OpenReason, OpenReasonDetails;
/// • «Заявка на подбор»: VacancyOpenReason, VacancyOpenReasonDetails;
/// • «Прием на работу»: CandidateName, HireDate, ReplacedEmployee;
/// • «— согласование»: Ticket — Lookup, managed property не нашлась ни под
/// одним из разумных имён (TicketOWSTEXT/TicketOWSLKID/TicketId/…).
@@ -75,8 +75,8 @@ public sealed class VacancyReportServiceTests : IClassFixture<PostgresDatabaseFi
OpenVacanciesCount = vacancies,
SubmitDate = submitDate,
Created = created,
OpenReason = openReason,
OpenReasonDetails = openReasonDetails,
VacancyOpenReason = openReason,
VacancyOpenReasonDetails = openReasonDetails,
Responsible = new { Title = responsible }
};