From 2797a5866115590c60471378710594fd7de1704c Mon Sep 17 00:00:00 2001 From: Vitalii Kiiko Date: Fri, 8 Nov 2024 16:08:08 +0100 Subject: [PATCH] - added amendemnt page for beneficiary; - fixed styles in all tables; - fixed displaying requested files list; - fixed page of creating a new amendment; --- src/assets/scss/components/appPage.scss | 9 +++ .../Bandi/components/AllBandiTable/index.js | 8 +- .../components/LatestBandiTable/index.js | 8 +- .../LatestUsersActivityTable/index.js | 4 +- .../components/LatestBandiTable/index.js | 8 +- .../MyLatestSubmissionsTable/index.js | 9 ++- .../PreInstructorDomandeTable/index.js | 12 +-- src/pages/DomandaBeneficiario/index.js | 74 +++++++++---------- src/pages/DomandaEditPreInstructor/index.js | 67 ++++++++++++----- .../BeneficiarioDomandeTable/index.js | 10 +-- src/pages/SoccorsoEditPreInstructor/index.js | 3 +- .../PreInstructorSoccorsiTable/index.js | 12 +-- src/routes.js | 2 +- 13 files changed, 129 insertions(+), 97 deletions(-) diff --git a/src/assets/scss/components/appPage.scss b/src/assets/scss/components/appPage.scss index 1d1b66b..3c62a17 100644 --- a/src/assets/scss/components/appPage.scss +++ b/src/assets/scss/components/appPage.scss @@ -207,6 +207,7 @@ display: flex; flex-direction: column; padding: 0; + width: 100%; > li { padding: 15px; @@ -378,4 +379,12 @@ &[disabled] { background-color: var(--message-info-background); } +} + +@media (max-width: 700px) { + .appPageSection { + &.columns { + grid-template-columns: 1fr; + } + } } \ No newline at end of file diff --git a/src/pages/Bandi/components/AllBandiTable/index.js b/src/pages/Bandi/components/AllBandiTable/index.js index a636cd9..9d7ea77 100644 --- a/src/pages/Bandi/components/AllBandiTable/index.js +++ b/src/pages/Bandi/components/AllBandiTable/index.js @@ -143,15 +143,15 @@ const AllBandiTable = () => { onFilter={(e) => setFilters(e.filters)}> + style={{ minWidth: '8rem' }}/> diff --git a/src/pages/Dashboard/components/LatestBandiTable/index.js b/src/pages/Dashboard/components/LatestBandiTable/index.js index 52b646f..a85dd9f 100644 --- a/src/pages/Dashboard/components/LatestBandiTable/index.js +++ b/src/pages/Dashboard/components/LatestBandiTable/index.js @@ -153,15 +153,15 @@ const LatestBandiTable = () => { emptyMessage={__('Nessun dato disponibile', 'gepafin')} onFilter={(e) => setFilters(e.filters)}> + style={{ minWidth: '8rem' }}/> + style={{ minWidth: '7rem' }} body={statusBodyTemplate} /> diff --git a/src/pages/Dashboard/components/LatestUsersActivityTable/index.js b/src/pages/Dashboard/components/LatestUsersActivityTable/index.js index 1d66c13..3473117 100644 --- a/src/pages/Dashboard/components/LatestUsersActivityTable/index.js +++ b/src/pages/Dashboard/components/LatestUsersActivityTable/index.js @@ -110,10 +110,10 @@ const LatestUsersActivityTable = () => { emptyMessage={__('Nessun dato disponibile', 'gepafin')} onFilter={(e) => setFilters(e.filters)}> + style={{ minWidth: '8rem' }}/> diff --git a/src/pages/DashboardBeneficiario/components/LatestBandiTable/index.js b/src/pages/DashboardBeneficiario/components/LatestBandiTable/index.js index 6f48e99..301094f 100644 --- a/src/pages/DashboardBeneficiario/components/LatestBandiTable/index.js +++ b/src/pages/DashboardBeneficiario/components/LatestBandiTable/index.js @@ -151,15 +151,15 @@ const LatestBandiTable = () => { emptyMessage={__('Nessun dato disponibile', 'gepafin')} onFilter={(e) => setFilters(e.filters)}> + style={{ minWidth: '8rem' }}/> + style={{ minWidth: '7rem' }} body={statusBodyTemplate} /> diff --git a/src/pages/DashboardBeneficiario/components/MyLatestSubmissionsTable/index.js b/src/pages/DashboardBeneficiario/components/MyLatestSubmissionsTable/index.js index b67128e..d31c7fe 100644 --- a/src/pages/DashboardBeneficiario/components/MyLatestSubmissionsTable/index.js +++ b/src/pages/DashboardBeneficiario/components/MyLatestSubmissionsTable/index.js @@ -174,19 +174,20 @@ const MyLatestSubmissionsTable = () => { emptyMessage={__('Nessun dato disponibile', 'gepafin')} onFilter={(e) => setFilters(e.filters)}> + style={{ minWidth: '8rem' }}/> diff --git a/src/pages/DashboardPreInstructor/components/PreInstructorDomandeTable/index.js b/src/pages/DashboardPreInstructor/components/PreInstructorDomandeTable/index.js index 1c3944d..5e53e82 100644 --- a/src/pages/DashboardPreInstructor/components/PreInstructorDomandeTable/index.js +++ b/src/pages/DashboardPreInstructor/components/PreInstructorDomandeTable/index.js @@ -144,18 +144,18 @@ const PreInstructorDomandeTable = () => { onFilter={(e) => setFilters(e.filters)}> + style={{ minWidth: '6rem' }}/> - + + style={{ minWidth: '7rem' }} body={statusBodyTemplate} /> diff --git a/src/pages/DomandaBeneficiario/index.js b/src/pages/DomandaBeneficiario/index.js index d8452fc..3d3070b 100644 --- a/src/pages/DomandaBeneficiario/index.js +++ b/src/pages/DomandaBeneficiario/index.js @@ -41,26 +41,8 @@ const DomandaBeneficiario = () => { const [isVisibleNewCommDialog, setIsVisibleNewCommDialog] = useState(false); const [newCommData, setNewCommData] = useState({}); const [isLoadingCommunication, setIsLoadingCommunication] = useState(false); - const [isVisibleExtendTimeDialog, setIsVisibleExtendTimeDialog] = useState(false); - const [extendedTime, setExtendedTime] = useState(3); - const [isLoadingExtendingTime, setIsLoadingExtendingTime] = useState(false); - const [isLoadingReminding, setIsLoadingReminding] = useState(false); + const [isVisibleEmailDialog, setIsVisibleEmailDialog] = useState(false); const toast = useRef(null); - const [formInitialData, setFormInitialData] = useState({}); - const { - control, - handleSubmit, - formState: { errors, isValid }, - setValue, - register, - trigger, - getValues, - clearErrors - } = useForm({ - defaultValues: useMemo(() => { - return formInitialData; - }, [formInitialData]), mode: 'onChange' - }); const goToArchivePage = () => { navigate(`/domande`); @@ -68,10 +50,12 @@ const DomandaBeneficiario = () => { const getCallback = (data) => { if (data.status === 'SUCCESS') { - setData(getFormattedData(data.data)); - //CommunicationService.getCommsByAmendmentId(data.data.id, getCommsCallback, errGetCommsCallback); + if (data.data.length) { + setData(getFormattedData(data.data[0])); + CommunicationService.getCommsByAmendmentId(data.data[0].id, getCommsCallback, errGetCommsCallback); + } } - //storeSet.main.unsetAsyncRequest(); + storeSet.main.unsetAsyncRequest(); } const errGetCallback = (data) => { @@ -181,8 +165,7 @@ const DomandaBeneficiario = () => { const createCommunication = () => { setIsLoadingCommunication(true); - const amendmentId = 0 - CommunicationService.createCommunication(amendmentId, newCommData, createCommunicationCallback, errCreateCommunicationCallback); + CommunicationService.createCommunication(data.id, newCommData, createCommunicationCallback, errCreateCommunicationCallback); } const createCommunicationCallback = (data) => { @@ -272,24 +255,21 @@ const DomandaBeneficiario = () => {

{__('Dettagli Richiesta', 'gepafin')}

-
-
-

{__('Documenti Richiesti', 'gepafin')}

-
    - {data.formFields - ? data.formFields.map((o, i) =>
  1. - {o.label} -
  2. ) : null} -
-
-
-

{__('Note e spiegazioni', 'gepafin')}

-
- {renderHtmlContent(data.note)} -
-
+

{__('Documenti Richiesti', 'gepafin')}

+
    + {data.formFields + ? data.formFields.map((o, i) =>
  1. + {o.label} +
  2. ) : null} +
+
+
+

{__('Note e spiegazioni', 'gepafin')}

+
+ {renderHtmlContent(data.note)}
@@ -340,11 +320,13 @@ const DomandaBeneficiario = () => {
+ + {if (!isVisibleEmailDialog) return; setIsVisibleEmailDialog(false); }}> +

+ {data.callEmail} +

+
) diff --git a/src/pages/DomandaEditPreInstructor/index.js b/src/pages/DomandaEditPreInstructor/index.js index 9560664..62af681 100644 --- a/src/pages/DomandaEditPreInstructor/index.js +++ b/src/pages/DomandaEditPreInstructor/index.js @@ -10,6 +10,7 @@ import { storeSet, useStore } from '../../store'; // api import ApplicationEvaluationService from '../../service/application-evaluation-service'; +import AmendmentsService from '../../service/amendments-service'; // tools import set404FromErrorResponse from '../../helpers/set404FromErrorResponse'; @@ -37,6 +38,7 @@ const DomandaEditPreInstructor = () => { const [criterionDataTitle, setCriterionDataTitle] = useState(''); const [criterionDataContent, setCriterionDataContent] = useState(''); const [isAdmissible, setIsAdmissible] = useState(false); + const [connectedSoccorsoId, setConnectedSoccorsoId] = useState(0); const toast = useRef(null); const goToEvaluationsPage = () => { @@ -44,7 +46,12 @@ const DomandaEditPreInstructor = () => { } const doNewSoccorso = () => { - navigate(`/domande/${id}/aggiungi-soccorso/${data.id}`); + if (connectedSoccorsoId !== 0) { + navigate(`/domande/${id}/soccorso/${connectedSoccorsoId}`); + } else { + + navigate(`/domande/${id}/aggiungi-soccorso/`); + } } const getCallback = (data) => { @@ -198,6 +205,17 @@ const DomandaEditPreInstructor = () => { setCriterionDataContent(''); } + const getAmendmentsCallback = (data) => { + if (data.status === 'SUCCESS') { + if (data.data.length) { + setConnectedSoccorsoId(data.data[0].id); + } + } + } + + const errGetAmendmentsCallback = () => { + } + useEffect(() => { const maxScore = pathOr(0, ['minScore'], data); const criteria = pathOr([], ['criteria'], data); @@ -210,9 +228,13 @@ const DomandaEditPreInstructor = () => { const parsed = parseInt(id) const entityId = !isNaN(parsed) ? parsed : 0; + storeSet.main.setAsyncRequest(); ApplicationEvaluationService.getEvaluationByApplId(getCallback, errGetCallback, [ ['applicationId', entityId] ]); + AmendmentsService.getSoccorsoByApplId(entityId, getAmendmentsCallback, errGetAmendmentsCallback, [ + ['statuses', 'AWAITING'] + ]); }, [id]); return ( @@ -448,6 +470,7 @@ const DomandaEditPreInstructor = () => {
diff --git a/src/pages/DomandeBeneficiario/components/BeneficiarioDomandeTable/index.js b/src/pages/DomandeBeneficiario/components/BeneficiarioDomandeTable/index.js index fcaec87..d97fd2e 100644 --- a/src/pages/DomandeBeneficiario/components/BeneficiarioDomandeTable/index.js +++ b/src/pages/DomandeBeneficiario/components/BeneficiarioDomandeTable/index.js @@ -171,18 +171,18 @@ const BeneficiarioDomandeTable = () => { onFilter={(e) => setFilters(e.filters)}> + style={{ minWidth: '6rem' }}/> + style={{ minWidth: '8rem' }}/> + style={{ minWidth: '7rem' }} field="progress" body={progressBodyTemplate}/> diff --git a/src/pages/SoccorsoEditPreInstructor/index.js b/src/pages/SoccorsoEditPreInstructor/index.js index bcca776..72e7455 100644 --- a/src/pages/SoccorsoEditPreInstructor/index.js +++ b/src/pages/SoccorsoEditPreInstructor/index.js @@ -54,8 +54,7 @@ const SoccorsoEditPreInstructor = () => { setValue, register, trigger, - getValues, - clearErrors + getValues } = useForm({ defaultValues: useMemo(() => { return formInitialData; diff --git a/src/pages/SoccorsoIstruttorioPreInstructor/components/PreInstructorSoccorsiTable/index.js b/src/pages/SoccorsoIstruttorioPreInstructor/components/PreInstructorSoccorsiTable/index.js index 2f9f182..9610ba7 100644 --- a/src/pages/SoccorsoIstruttorioPreInstructor/components/PreInstructorSoccorsiTable/index.js +++ b/src/pages/SoccorsoIstruttorioPreInstructor/components/PreInstructorSoccorsiTable/index.js @@ -147,23 +147,23 @@ const PreInstructorSoccorsiTable = ({ openDialogFn }) => { onFilter={(e) => setFilters(e.filters)}> + style={{ minWidth: '6rem' }}/> + style={{ minWidth: '8rem' }}/> + style={{ minWidth: '8rem' }}/> + style={{ minWidth: '7rem' }} body={statusBodyTemplate} /> diff --git a/src/routes.js b/src/routes.js index 09655f0..8a20960 100644 --- a/src/routes.js +++ b/src/routes.js @@ -96,7 +96,7 @@ const routes = ({ role, chosenCompanyId }) => { {'ROLE_BENEFICIARY' === role ? : null} {'ROLE_PRE_INSTRUCTOR' === role ? : null} }/> - + {'ROLE_SUPER_ADMIN' === role ? : null} {'ROLE_BENEFICIARY' === role ? : null} {'ROLE_PRE_INSTRUCTOR' === role ? : null}