Перейти к основному содержимому

useMovePersonnel

@mineflow/client-react


@mineflow/client-react / HR / useMovePersonnel

Function: useMovePersonnel()

function useMovePersonnel(): UseMutationResult<{
personnel: {
birthDate: string | null;
birthPlace: string | null;
email: string | null;
fullName: string;
hasAvatar?: boolean;
hiredAt: string;
id: string;
iin: string | null;
objectId: string | null;
orgNodeId: string | null;
phone: string | null;
positionId: string;
status: PersonnelResponse_OutputStatus;
tabNumber: string;
terminatedAt: string | null;
watchGroup: PersonnelResponse_OutputWatchGroupAnyOf0 | null;
};
recordedMovements: number;
}, Error, {
body: {
effectiveDate?: string;
reason?: string;
status?: MovePersonnelDtoStatus;
watchGroup?: MovePersonnelDtoWatchGroupAnyOf0 | null;
};
id: string;
}>;

Defined in: client-react/src/domain-hooks/hr.ts:494

«Переместить» сотрудника (ТЗ «Админ-панель» § 4): смена вахты (A/B) и/или статуса одним PATCH; по каждому изменившемуся полю пишется запись в журнал «Перемещения». Синхронный write → useDomainMutation; инвалидирует раздел персонала (префикс personnel.all накрывает и списки, и журнал перемещений сотрудника).

Returns​

UseMutationResult<{ personnel: { birthDate: string | null; birthPlace: string | null; email: string | null; fullName: string; hasAvatar?: boolean; hiredAt: string; id: string; iin: string | null; objectId: string | null; orgNodeId: string | null; phone: string | null; positionId: string; status: PersonnelResponse_OutputStatus; tabNumber: string; terminatedAt: string | null; watchGroup: PersonnelResponse_OutputWatchGroupAnyOf0 | null; }; recordedMovements: number; }, Error, { body: { effectiveDate?: string; reason?: string; status?: MovePersonnelDtoStatus; watchGroup?: MovePersonnelDtoWatchGroupAnyOf0 | null; }; id: string; }>