Заглушка для департамента (#8)
Tests / frontend-test (push) Successful in 43s
Tests / backend-test (push) Successful in 2m57s

Co-authored-by: gorbenko.pavel <gorbenko.pavel@tansu.kz>
Reviewed-on: http://git.tnsu.kz/gorbenko.pavel/tnsu-approval-route/pulls/8
This commit was merged in pull request #8.
This commit is contained in:
2026-08-07 10:36:53 +00:00
parent 0ffa032ade
commit 1d45780294
14 changed files with 369 additions and 14 deletions
+11 -2
View File
@@ -24,6 +24,13 @@ export interface IResolveRouteParams {
projectLabel: string;
status: RouteStepStatus;
fieldValues: ResolveFieldValue[];
/**
* Для шагов с HeadType.DepartmentHead (см. ResolveTemplateRouteQuery.departmentId).
* Без отдельного departmentLabel — в отличие от projectLabel (AsyncSearchableSelect,
* пагинированный поиск), отделы выбираются из уже целиком загруженного справочника
* (SearchableSelect), так что подпись резолвится на месте по id, а не хранится отдельно.
*/
departmentId: string;
}
export interface IManageRequestRouteParams {
@@ -50,7 +57,7 @@ const TABS: ScreenKey[] = ['dashboard', 'requestTypes', 'routes', 'resolve', 'ma
const PARAM_KEYS = [
'aatab', 'aaroute',
'aartype', 'aauser', 'aaproject', 'aaprojectname', 'aastatus', 'aafields',
'aartype', 'aauser', 'aaproject', 'aaprojectname', 'aastatus', 'aafields', 'aadept',
'aamtype', 'aamreq'
];
@@ -92,7 +99,8 @@ export function parseRoute(search: string = window.location.search): IAdminRoute
projectId: params.get('aaproject') || '',
projectLabel: params.get('aaprojectname') || '',
status: (params.get('aastatus') as RouteStepStatus) || RouteStepStatus.Approval,
fieldValues: parseFieldValues(params.get('aafields'))
fieldValues: parseFieldValues(params.get('aafields')),
departmentId: params.get('aadept') || ''
}
: undefined;
@@ -130,6 +138,7 @@ function buildQuery(route: IAdminRoute): string {
if (route.resolve.projectLabel) params.set('aaprojectname', route.resolve.projectLabel);
if (route.resolve.status) params.set('aastatus', route.resolve.status);
if (route.resolve.fieldValues.length > 0) params.set('aafields', JSON.stringify(route.resolve.fieldValues));
if (route.resolve.departmentId) params.set('aadept', route.resolve.departmentId);
}
if (route.tab === 'manageRequests' && route.manage && route.manage.requestTypeId && route.manage.requestId) {