правки по логике переключения
This commit is contained in:
@@ -321,6 +321,13 @@ export const ManageRequestsScreen: React.FC<IManageRequestsScreenProps> = ({ api
|
||||
// от статуса отдельных строк (см. isFullyClosedRequestStatus).
|
||||
const readOnly = matrix ? isFullyClosedRequestStatus(matrix.request.status) : true;
|
||||
|
||||
// Заявка отклонена — дальше по маршруту дело не пойдёт ни в одной фазе, значит
|
||||
// добавлять исполнителя нельзя нигде, даже в фазу, где ещё вообще нет строк
|
||||
// (readOnly для этого не подходит: он рассчитан только на REQUEST_STATUS.closed
|
||||
// и делает ВСЮ заявку неизменяемой, а отклонённую всё ещё можно редактировать —
|
||||
// переназначать/удалять уже существующие шаги, просто новые уже некуда).
|
||||
const requestRejected = matrix?.request.status === REQUEST_STATUS.rejected;
|
||||
|
||||
// Сортировка по order — ОБЯЗАТЕЛЬНА, а не косметика: ManageRequestsPhaseTable
|
||||
// считает блоки и параллельность по ФИЗИЧЕСКОМУ порядку строк в массиве
|
||||
// (markParallel сравнивает order с предыдущей строкой), а оптимистичные
|
||||
@@ -511,6 +518,7 @@ export const ManageRequestsScreen: React.FC<IManageRequestsScreenProps> = ({ api
|
||||
title={texts.manageRequests.approvalPhaseTitle}
|
||||
rows={approvalRows}
|
||||
readOnly={readOnly}
|
||||
requestRejected={requestRejected}
|
||||
statusVariant={statusVariant}
|
||||
onReassign={openReassign}
|
||||
onRemove={askDelete}
|
||||
@@ -524,6 +532,7 @@ export const ManageRequestsScreen: React.FC<IManageRequestsScreenProps> = ({ api
|
||||
title={texts.manageRequests.executionPhaseTitle}
|
||||
rows={executionRows}
|
||||
readOnly={readOnly}
|
||||
requestRejected={requestRejected}
|
||||
statusVariant={statusVariant}
|
||||
onReassign={openReassign}
|
||||
onRemove={askDelete}
|
||||
|
||||
Reference in New Issue
Block a user