fix: черновик без маршрута планирует маршрут заново при открытии
У части черновиков не оказалось строк маршрута, и форма показывала пустую матрицу: отправить такую заявку было некому. Теперь при открытии черновика без строк маршрут планируется заново (loadRoutePhase), во всех формах; поданные заявки по-прежнему читают записанные строки. Почему строки пропали у первоначального случая — пока не выяснено. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -20,6 +20,8 @@ import {
|
||||
StatusBadge,
|
||||
useMatrixEditor,
|
||||
getPlannedMatrix,
|
||||
loadRoutePhase,
|
||||
isOpenedRouteReady,
|
||||
notifyActiveStep,
|
||||
useRequestTypeId,
|
||||
REQUEST_STATUS,
|
||||
@@ -27,7 +29,6 @@ import {
|
||||
IApproverToWrite,
|
||||
unassignedStepMessage,
|
||||
resolveWriteListId,
|
||||
approvalPhaseRows,
|
||||
executorsToWrite,
|
||||
initialSubmitStatus,
|
||||
useFormExecutors
|
||||
@@ -163,18 +164,18 @@ const DismissalForm: React.FC<IRequestFormProps> = ({
|
||||
// затереть правки инициатора.
|
||||
const loadMatrix = useCallback(
|
||||
() =>
|
||||
editId
|
||||
? approval.getMatrixForRequest(editId).then(approvalPhaseRows)
|
||||
: getPlannedMatrix(context, requestTypeId as number, data.Employee, approval, 'Approval', null, [
|
||||
{ fieldName: 'Position', value: primaryPosition(data.Organization) }
|
||||
]),
|
||||
[context, approval, editId, data.Employee, data.Organization, requestTypeId]
|
||||
loadRoutePhase(approval, editId, requestStatus, 'Approval', () =>
|
||||
getPlannedMatrix(context, requestTypeId as number, data.Employee, approval, 'Approval', null, [
|
||||
{ fieldName: 'Position', value: primaryPosition(data.Organization) }
|
||||
])
|
||||
),
|
||||
[context, approval, editId, requestStatus, data.Employee, data.Organization, requestTypeId]
|
||||
);
|
||||
const matrix = useMatrixEditor(
|
||||
loadMatrix,
|
||||
`${data.Employee}-${editId ?? 'new'}-${primaryPosition(data.Organization)}`,
|
||||
!readOnly,
|
||||
!!editId || (!!data.Employee && !!requestTypeId),
|
||||
isOpenedRouteReady(editId, requestStatus, requestTypeId) && (!!editId || (!!data.Employee && !!requestTypeId)),
|
||||
(login) => approval.getJobTitle(login)
|
||||
);
|
||||
|
||||
@@ -187,6 +188,7 @@ const DismissalForm: React.FC<IRequestFormProps> = ({
|
||||
requestTypeId,
|
||||
userEmail: data.Employee,
|
||||
editId,
|
||||
requestStatus,
|
||||
fieldValues: [{ fieldName: 'Position', value: primaryPosition(data.Organization) }]
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user