24d2cd7a6a
GET api/reports/vacancies?from=&to= отдаёт лист «Список вакансий (все)» по образцу ручного отчёта HR: те же шестнадцать колонок, разделители по объектам, двойная нумерация, итоги формулами. Данные — из двух форм портала: «Заявка на подбор» даёт вакансию, «Приём на работу» — её закрытие (связь по SelectionRequestId + SelectionRequestListId). Рекрутёр и дата закрытия берутся из фазы «Исполнение» парного списка «— согласование»: в самой заявке их нет. Период отбирает заявки по «Дате подачи заявки» с откатом на Created — поле заполняется руками и часто пустое. Заявки на приём периодом не ограничены: приём по вакансии из начала интервала мог оформляться уже после его конца. Колонка «Комментарии» остаётся пустой — в ручном отчёте это пометки рекрутёра, которым в заявках пока негде храниться. Генерация — ClosedXML (MIT): нужны стили, формулы и autofilter, а EPPlus с v5 под Polyform Noncommercial. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
16 lines
769 B
XML
16 lines
769 B
XML
<Project Sdk="Microsoft.NET.Sdk">
|
|
<ItemGroup>
|
|
<ProjectReference Include="..\Tnsu.ApprovalRoute.Domain\Tnsu.ApprovalRoute.Domain.csproj" />
|
|
<ProjectReference Include="..\Tnsu.ApprovalRoute.Infrastructure\Tnsu.ApprovalRoute.Infrastructure.csproj" />
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<!-- Генерация xlsx для отчётов (Reports/) — стили, формулы, autofilter. -->
|
|
<PackageReference Include="ClosedXML" />
|
|
<PackageReference Include="FluentResults" />
|
|
<PackageReference Include="FluentValidation" />
|
|
<PackageReference Include="FluentValidation.DependencyInjectionExtensions" />
|
|
<PackageReference Include="Hangfire.Core" />
|
|
<PackageReference Include="Microsoft.EntityFrameworkCore" />
|
|
</ItemGroup>
|
|
</Project>
|