add change status function

This commit is contained in:
Noemi
2025-06-30 13:01:01 +02:00
parent cfba0534c4
commit 97e20d5656
4 changed files with 86 additions and 4 deletions

View File

@@ -793,6 +793,40 @@ const DomandaEditInstructorManager = () => {
setData(newData);
}, [data]);
const handleRejectingSuccess = useCallback((response) => {
if (response.status === 'SUCCESS') {
if (toast.current) {
toast.current.show({
severity: 'success',
summary: 'Successo',
detail: 'Stato aggiornato a Rifiutato (Valutazione Tecnica)'
});
}
}
storeSet('unsetAsyncRequest');
}, []);
const handleRejectingError = useCallback((errorResponse) => {
if (toast.current) {
toast.current.show({
severity: 'error',
summary: 'Errore',
detail: 'Si è verificato un errore durante l\'aggiornamento dello stato.'
});
}
set404FromErrorResponse(errorResponse);
storeSet('unsetAsyncRequest');
}, []);
const doRejectingStatus = (assignedApplicationId) => {
storeSet('setAsyncRequest')
const body = {
applicationStatus: 'TECHNICAL_EVALUATION_REJECTED'
};
ApplicationEvaluationService.updateStatus(assignedApplicationId, body, handleRejectingSuccess, handleRejectingError);
}
const actionBtns = () => {
return <div className="appPageSection__actions">
{['EVALUATION', 'SOCCORSO', 'CLOSE'].includes(data.applicationStatus)
@@ -858,6 +892,14 @@ const DomandaEditInstructorManager = () => {
severity={isAdmissible ? 'success' : 'warning'}
label={__('Valutazione tecnico-finanziaria positiva', 'gepafin')}
/>
<Button
type="button"
disabled={!data.id || !['TECHNICAL_EVALUATION'].includes(data.applicationStatus) || evaluationBlockedForUser(data)}
onClick={()=>doRejectingStatus(data.assignedApplicationId)}
icon="pi pi-info-circle" iconPos="right"
severity={isAdmissible ? 'success' : 'warning'}
label={__('Respingi domanda per valutazione TF negativa', 'gepafin')}
/>
{data.id
? <Button
type="button"
@@ -873,7 +915,7 @@ const DomandaEditInstructorManager = () => {
? <Button
type="button"
disabled={APP_EVALUATION_FLOW_ID === '1'
&& (!['EVALUATION', 'ADMISSIBLE', 'NDG', 'APPOINTMENT', 'TECHNICAL_EVALUATION'].includes(data.applicationStatus)
&& (!['EVALUATION', 'ADMISSIBLE', 'NDG', 'APPOINTMENT'].includes(data.applicationStatus)
|| evaluationBlockedForUser(data))}
onClick={initiateRejecting}
label={__('Respingi domanda', 'gepafin')}