fix: внес изменения в заявках рекрутинга от 22.09.2026
Tests / frontend-test (push) Successful in 1m19s
Tests / frontend-test (push) Successful in 1m19s
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
import { WebPartContext } from '@microsoft/sp-webpart-base';
|
||||
import { getEmployeeOrganizations } from '../dictionary';
|
||||
|
||||
/** Отдел + организация согласующего — для колонок «Отдел»/«Организация» матрицы. */
|
||||
export interface IApproverOrgInfo {
|
||||
department: string;
|
||||
organization: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Резолвер для useMatrixEditor: отдел и организация — ОДНИМ источником
|
||||
* (Employee/ByEmail, тот же, что и «авто-Организация» в Vacation/UnpaidLeave/…),
|
||||
* а не двумя разными API (иначе строка матрицы собиралась бы по кускам). Один
|
||||
* сотрудник может числиться в нескольких организациях — берём первую запись,
|
||||
* как и остальные формы с авто-подстановкой (см. shared/dictionary).
|
||||
*
|
||||
* email не найден в кадровом справочнике (404) или пуст — getEmployeeOrganizations
|
||||
* отдаёт [], здесь это просто пустые отдел/организация, не ошибка матрицы.
|
||||
*/
|
||||
export function resolveApproverOrgInfo(context: WebPartContext) {
|
||||
return async (email: string): Promise<IApproverOrgInfo> => {
|
||||
const records = await getEmployeeOrganizations(context, email);
|
||||
const first = records[0];
|
||||
return { department: first?.section || '', organization: first?.company || '' };
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user