Обучающий API для участников

FeatureDocsService
Shipped
11 августа 2026 г. в 16:25 UTC
Author
Kamo
Commit
8ade029

Регистрация com.kamo.z.shared.hr.training в @EnableJpaRepositories — @EntityScan настолько широка, что Сущности найдены в любом случае, но репозитории нет. Две воронки авторизации, намеренно разделенные, отражающие юридический модуль: TrainingAccess gates /api/docs/training/** on MANAGE TRAINING (RoleRightType 185) читать и писать который должен оставаться точно в нужном приложении /hr /hrTabs.ts ворота вкладки. Сервер, установленный более узким, чем Вкладка оставляет член, способный открыть вкладку и собрать 403 по пустой сетке; шире, и это Конечная точка, доступная кому-то, кому UI никогда не предлагал его. Права читаются из Member rights applied, никогда не с токена, потому что карта сеанса OTK не имеет прав. TrainingAssignmentOwnership разрешает собственную поверхность участника IDENTITY. ТренингMemberController Поэтому не имеет никакого поля доступа к обучению - член, проходящий курс, который им был назначен, не имеет Право HR и маршрутизация их через воронку HR будет означать либо запирание каждого сотрудника. собственного обучения или расширения правого набора HR до тех пор, пока каталог и список аудитории не будут открыты для Целая организация. Собственность отвечает 404, а не 403: 403 подтверждает, что uid реален и поворачивает конечную точку. в оракул для того, кому что было присвоено, и отчет об оценке не должен перечисляться сверстником. TrainingMemberSurfaceAuthTest закрепляет все три свойства путем отражения, потому что режим сбоя Кто-то добавил поле позже, «поэтому конечная точка также защищена». GET/assignments и GET/assignments/pending-count. Никакое отображение не берет член или идентификатор организации - оба приходят с сессии. Статус - это парам REPEATABLE, а не CSV: APIService передает свой URL вверх по течению RestTemplate как строка, которая повторно кодирует от %2C до %252C, поэтому запятая поступает как один буквальный токен. Не совпадающий с постоянной. Непризнанный фильтр означает «нет фильтра», никогда не «ничего не соответствует», поэтому Закладка показывает все, а не пустую сетку, которая читается как потеря данных. Прочитанное на странице является локальным хранилищем DocsService по совместно используемому объекту, отсортированным (поставленным в DESC, uid DESC) — наложение на неуникальные дубликаты ключей и пропущенные строки, а задание на 200 членов пишет В пределах той же миллисекунды. Отложенный счет возвращает ту же форму JSON, что и откинутый кадр значка, поэтому один клиентский парсер служит Оба. Внутри транзакции отображаются строки; курс и версия LAZY. Пройдет 413 испытаний.

All changes

Как вы видите судоходство?

Каждое из этих обновлений автоматически попадает в ваше рабочее пространство. Начните бесплатно и смотрите, как он растет неделю за неделей.

Начните бесплатно навсегдаПосмотреть цены