- saving progress;

This commit is contained in:
Vitalii Kiiko
2025-01-02 10:17:41 +01:00
parent 3ff69de35d
commit 8430b0a7d5

View File

@@ -6,7 +6,7 @@ import { klona } from 'klona';
import { wrap } from 'object-path-immutable'; import { wrap } from 'object-path-immutable';
// store // store
import { storeSet, useStore } from '../../store'; import { storeGet, storeSet, useStore } from '../../store';
// api // api
import ApplicationEvaluationService from '../../service/application-evaluation-service'; import ApplicationEvaluationService from '../../service/application-evaluation-service';
@@ -502,6 +502,11 @@ const DomandaEditPreInstructor = () => {
// TODO // TODO
} }
const evaluationShouldBeBlocked = (data = {}) => {
const userData = storeGet.main.userData()
return isAsyncRequest || userData.id !== data.assignedUserId;
}
useEffect(() => { useEffect(() => {
const maxScore = pathOr(0, ['minScore'], data); const maxScore = pathOr(0, ['minScore'], data);
const criteria = pathOr([], ['criteria'], data); const criteria = pathOr([], ['criteria'], data);
@@ -767,7 +772,7 @@ const DomandaEditPreInstructor = () => {
? <Button ? <Button
type="button" type="button"
disabled={!data.id || data.status === 'CLOSE' || (data.applicationStatus === 'EVALUATION' disabled={!data.id || data.status === 'CLOSE' || (data.applicationStatus === 'EVALUATION'
&& (!allFilesRated || !atLeastOneChecked))} && (!allFilesRated || !atLeastOneChecked)) || evaluationShouldBeBlocked(data)}
onClick={doNewSoccorso} onClick={doNewSoccorso}
outlined outlined
label={<> label={<>
@@ -782,7 +787,7 @@ const DomandaEditPreInstructor = () => {
{data.id {data.id
? <Button ? <Button
type="button" type="button"
disabled={data.status === 'CLOSE'} disabled={data.status === 'CLOSE' || evaluationShouldBeBlocked(data)}
onClick={() => doSaveDraft()} onClick={() => doSaveDraft()}
outlined outlined
label={__('Salva bozza valutazione', 'gepafin')} label={__('Salva bozza valutazione', 'gepafin')}
@@ -795,28 +800,49 @@ const DomandaEditPreInstructor = () => {
{/*{APP_EVALUATION_FLOW_ID === '1' && ['EVALUATION'].includes(data.applicationStatus) {/*{APP_EVALUATION_FLOW_ID === '1' && ['EVALUATION'].includes(data.applicationStatus)
? <Button ? <Button
type="button" type="button"
disabled={!data.id || !allFilesRated || !allChecksChecked} disabled={!data.id || !allFilesRated || !allChecksChecked || evaluationShouldBeBlocked(data)}
onClick={doCheckNDG} onClick={doCheckNDG}
label={__('Controlla NDG', 'gepafin')} label={__('Controlla NDG', 'gepafin')}
/> : null}*/} /> : null}*/}
{APP_EVALUATION_FLOW_ID === '1' && ['NDG'].includes(data.applicationStatus) && data.ndg <Button
type="button"
disabled={true}
onClick={() => {
}}
label={__('Controlla NDG', 'gepafin')}
/>
{/*{APP_EVALUATION_FLOW_ID === '1' && ['NDG'].includes(data.applicationStatus) && data.ndg
? <Button ? <Button
type="button" type="button"
disabled={!data.id} disabled={!data.id || evaluationShouldBeBlocked(data)}
onClick={doCreateAppointment} onClick={doCreateAppointment}
label={__('Crea l\'appuntamento', 'gepafin')} label={__('Crea l\'appuntamento', 'gepafin')}
/> : null} /> : null}*/}
{APP_EVALUATION_FLOW_ID === '1' && ['APPOINTMENT'].includes(data.applicationStatus) <Button
type="button"
disabled={true}
onClick={() => {
}}
label={__('Crea l\'appuntamento', 'gepafin')}
/>
{/*{APP_EVALUATION_FLOW_ID === '1' && ['APPOINTMENT'].includes(data.applicationStatus)
? <Button ? <Button
type="button" type="button"
disabled={!data.id} disabled={!data.id || evaluationShouldBeBlocked(data)}
onClick={doMakeAdmisible} onClick={doMakeAdmisible}
label={__('Ammissibile', 'gepafin')} label={__('Ammissibile', 'gepafin')}
/> : null} /> : null}*/}
<Button
type="button"
disabled={true}
onClick={() => {
}}
label={__('Ammissibile', 'gepafin')}
/>
{data.id {data.id
? <Button ? <Button
type="button" type="button"
disabled={!isAdmissible || ['APPROVED'].includes(data.applicationStatus)} disabled={!isAdmissible || ['APPROVED'].includes(data.applicationStatus) || evaluationShouldBeBlocked(data)}
/*disabled={!isAdmissible /*disabled={!isAdmissible
|| (APP_EVALUATION_FLOW_ID === '1' && !['ADMISSIBLE', 'APPOINTMENT'].includes(data.applicationStatus))}*/ || (APP_EVALUATION_FLOW_ID === '1' && !['ADMISSIBLE', 'APPOINTMENT'].includes(data.applicationStatus))}*/
onClick={initiateApproving} onClick={initiateApproving}
@@ -832,7 +858,9 @@ const DomandaEditPreInstructor = () => {
{data.id {data.id
? <Button ? <Button
type="button" type="button"
disabled={APP_EVALUATION_FLOW_ID === '1' && !['EVALUATION', 'ADMISSIBLE', 'APPOINTMENT'].includes(data.applicationStatus)} disabled={APP_EVALUATION_FLOW_ID === '1'
&& !['EVALUATION', 'ADMISSIBLE', 'APPOINTMENT'].includes(data.applicationStatus)
|| evaluationShouldBeBlocked(data)}
onClick={initiateRejecting} onClick={initiateRejecting}
label={__('Respingi Domanda', 'gepafin')} label={__('Respingi Domanda', 'gepafin')}
icon="pi pi-times" iconPos="right"/> : null} icon="pi pi-times" iconPos="right"/> : null}