feat(FE-311): Disable approval actions when rejected

This commit is contained in:
rstubryan
2025-12-10 13:56:13 +07:00
parent 429f5ffb62
commit 7be32326a9
3 changed files with 11 additions and 3 deletions
@@ -52,6 +52,8 @@ const PurchaseOrderAcceptApprovalForm = ({
const [purchaseOrderFormErrorMessage, setPurchaseOrderFormErrorMessage] =
useState('');
const isRejected = initialValues?.latest_approval?.action === 'REJECTED';
// ===== UTILITY FUNCTIONS =====
const isRepeaterInputError = (
idx: number,
@@ -672,7 +674,8 @@ const PurchaseOrderAcceptApprovalForm = ({
disabled={
!formik.isValid ||
formik.isSubmitting ||
hasQuantityExceededErrors
hasQuantityExceededErrors ||
isRejected
}
>
Submit
@@ -79,6 +79,8 @@ const PurchaseOrderStaffApprovalForm = ({
}
}, [rawDataApprovals, propType, initialValues?.latest_approval?.step_number]);
const isRejected = initialValues?.latest_approval?.action === 'REJECTED';
const router = useRouter();
const searchParams = useSearchParams();
const deleteModal = useModal();
@@ -1142,7 +1144,7 @@ const PurchaseOrderStaffApprovalForm = ({
color='primary'
className='px-4'
isLoading={formik.isSubmitting}
disabled={!formik.isValid || formik.isSubmitting}
disabled={!formik.isValid || formik.isSubmitting || isRejected}
>
Submit
</Button>
@@ -180,7 +180,10 @@ const PurchaseOrderDetail = ({
});
const showApprovalButton =
approvalStep !== null && approvalStep >= 1 && approvalStep <= 3;
approvalStep !== null &&
approvalStep >= 1 &&
approvalStep <= 3 &&
initialValues?.latest_approval?.action !== 'REJECTED';
const canDeleteItems = useMemo(() => {
if (!initialValues?.latest_approval) return false;