From d6c6174d5480d2d81e3be56a0bba5f524f7e8994 Mon Sep 17 00:00:00 2001
From: abianchi7701
Date: Fri, 1 Dec 2023 08:56:04 +0100
Subject: [PATCH] Aggiunto errore soggetto
---
.../hooks/hms-taglib-hook/.project | 11 ++
.../bootstrapt_1_column-layouttpl/.project | 11 ++
.../portos-accesso-atti-portlet/.project | 11 ++
.../portlets/portos-audit-portlet/.project | 11 ++
.../portlets/portos-bo-portlet/.project | 11 ++
.../WEB-INF/src/content/Language.properties | 1 +
.../fe/portlet/SoggettiPraticaPortlet.java | 154 ++++++++++++------
.../html/soggettipratica/edit_soggetto.jsp | 4 +
.../themes/provatema-theme/.project | 11 ++
.../webs/elasticray-web/.project | 11 ++
10 files changed, 182 insertions(+), 54 deletions(-)
diff --git a/liferay-plugins-sdk-6.2/hooks/hms-taglib-hook/.project b/liferay-plugins-sdk-6.2/hooks/hms-taglib-hook/.project
index 7b2a2201..b8510398 100644
--- a/liferay-plugins-sdk-6.2/hooks/hms-taglib-hook/.project
+++ b/liferay-plugins-sdk-6.2/hooks/hms-taglib-hook/.project
@@ -33,4 +33,15 @@
org.eclipse.jdt.core.javanature
org.eclipse.wst.jsdt.core.jsNature
+
+
+ 1701177105995
+
+ 30
+
+ org.eclipse.core.resources.regexFilterMatcher
+ node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__
+
+
+
diff --git a/liferay-plugins-sdk-6.2/layouttpl/bootstrapt_1_column-layouttpl/.project b/liferay-plugins-sdk-6.2/layouttpl/bootstrapt_1_column-layouttpl/.project
index b8145540..8fa1a374 100644
--- a/liferay-plugins-sdk-6.2/layouttpl/bootstrapt_1_column-layouttpl/.project
+++ b/liferay-plugins-sdk-6.2/layouttpl/bootstrapt_1_column-layouttpl/.project
@@ -33,4 +33,15 @@
org.eclipse.jdt.core.javanature
org.eclipse.wst.jsdt.core.jsNature
+
+
+ 1701177105974
+
+ 30
+
+ org.eclipse.core.resources.regexFilterMatcher
+ node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__
+
+
+
diff --git a/liferay-plugins-sdk-6.2/portlets/portos-accesso-atti-portlet/.project b/liferay-plugins-sdk-6.2/portlets/portos-accesso-atti-portlet/.project
index 94b39ac8..08bee552 100644
--- a/liferay-plugins-sdk-6.2/portlets/portos-accesso-atti-portlet/.project
+++ b/liferay-plugins-sdk-6.2/portlets/portos-accesso-atti-portlet/.project
@@ -33,4 +33,15 @@
org.eclipse.jdt.core.javanature
org.eclipse.wst.jsdt.core.jsNature
+
+
+ 1701177105998
+
+ 30
+
+ org.eclipse.core.resources.regexFilterMatcher
+ node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__
+
+
+
diff --git a/liferay-plugins-sdk-6.2/portlets/portos-audit-portlet/.project b/liferay-plugins-sdk-6.2/portlets/portos-audit-portlet/.project
index 7b191d17..21ee4e00 100644
--- a/liferay-plugins-sdk-6.2/portlets/portos-audit-portlet/.project
+++ b/liferay-plugins-sdk-6.2/portlets/portos-audit-portlet/.project
@@ -33,4 +33,15 @@
org.eclipse.jdt.core.javanature
org.eclipse.wst.jsdt.core.jsNature
+
+
+ 1701177106002
+
+ 30
+
+ org.eclipse.core.resources.regexFilterMatcher
+ node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__
+
+
+
diff --git a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/.project b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/.project
index 57bd417e..361a67c0 100644
--- a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/.project
+++ b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/.project
@@ -33,4 +33,15 @@
org.eclipse.jdt.core.javanature
org.eclipse.wst.jsdt.core.jsNature
+
+
+ 1701177106006
+
+ 30
+
+ org.eclipse.core.resources.regexFilterMatcher
+ node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__
+
+
+
diff --git a/liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/WEB-INF/src/content/Language.properties b/liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/WEB-INF/src/content/Language.properties
index d5fc2206..e4c6c68c 100644
--- a/liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/WEB-INF/src/content/Language.properties
+++ b/liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/WEB-INF/src/content/Language.properties
@@ -77,6 +77,7 @@ salva-verifica = Salva e Verifica
## Soggetti ##
add-soggetto = Aggiungi Soggetto
edit-soggetto = Modifica Soggetto
+errore-soggetto = Il Soggetto Inserito non può ottenere il ruolo
## Parere Geologo ##
error-update-parere-geologo = "Errore durante l'inserimento del parere geologo"
diff --git a/liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/fe/portlet/SoggettiPraticaPortlet.java b/liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/fe/portlet/SoggettiPraticaPortlet.java
index 3c2a6d0b..80b2e33d 100644
--- a/liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/fe/portlet/SoggettiPraticaPortlet.java
+++ b/liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/fe/portlet/SoggettiPraticaPortlet.java
@@ -1,5 +1,34 @@
package it.tref.liferay.portos.fe.portlet;
+import com.liferay.portal.kernel.dao.orm.QueryUtil;
+import com.liferay.portal.kernel.exception.PortalException;
+import com.liferay.portal.kernel.exception.SystemException;
+import com.liferay.portal.kernel.json.JSONArray;
+import com.liferay.portal.kernel.json.JSONFactoryUtil;
+import com.liferay.portal.kernel.json.JSONObject;
+import com.liferay.portal.kernel.json.JSONSerializer;
+import com.liferay.portal.kernel.log.Log;
+import com.liferay.portal.kernel.log.LogFactoryUtil;
+import com.liferay.portal.kernel.repository.model.FileEntry;
+import com.liferay.portal.kernel.servlet.HttpHeaders;
+import com.liferay.portal.kernel.servlet.SessionErrors;
+import com.liferay.portal.kernel.upload.UploadPortletRequest;
+import com.liferay.portal.kernel.util.ContentTypes;
+import com.liferay.portal.kernel.util.DateFormatFactoryUtil;
+import com.liferay.portal.kernel.util.FileUtil;
+import com.liferay.portal.kernel.util.HttpUtil;
+import com.liferay.portal.kernel.util.OrderByComparator;
+import com.liferay.portal.kernel.util.OrderByComparatorFactoryUtil;
+import com.liferay.portal.kernel.util.ParamUtil;
+import com.liferay.portal.kernel.util.StringPool;
+import com.liferay.portal.kernel.util.Validator;
+import com.liferay.portal.model.User;
+import com.liferay.portal.service.ServiceContext;
+import com.liferay.portal.service.ServiceContextFactory;
+import com.liferay.portal.service.UserLocalServiceUtil;
+import com.liferay.portal.util.PortalUtil;
+import com.liferay.util.bridges.mvc.MVCPortlet;
+
import it.tref.liferay.portos.bo.model.Comune;
import it.tref.liferay.portos.bo.model.DettPratica;
import it.tref.liferay.portos.bo.model.DocPratica;
@@ -38,35 +67,6 @@ import javax.portlet.PortletException;
import javax.portlet.ResourceRequest;
import javax.portlet.ResourceResponse;
-import com.liferay.portal.kernel.dao.orm.QueryUtil;
-import com.liferay.portal.kernel.exception.PortalException;
-import com.liferay.portal.kernel.exception.SystemException;
-import com.liferay.portal.kernel.json.JSONArray;
-import com.liferay.portal.kernel.json.JSONFactoryUtil;
-import com.liferay.portal.kernel.json.JSONObject;
-import com.liferay.portal.kernel.json.JSONSerializer;
-import com.liferay.portal.kernel.log.Log;
-import com.liferay.portal.kernel.log.LogFactoryUtil;
-import com.liferay.portal.kernel.repository.model.FileEntry;
-import com.liferay.portal.kernel.servlet.HttpHeaders;
-import com.liferay.portal.kernel.servlet.SessionErrors;
-import com.liferay.portal.kernel.upload.UploadPortletRequest;
-import com.liferay.portal.kernel.util.ContentTypes;
-import com.liferay.portal.kernel.util.DateFormatFactoryUtil;
-import com.liferay.portal.kernel.util.FileUtil;
-import com.liferay.portal.kernel.util.HttpUtil;
-import com.liferay.portal.kernel.util.OrderByComparator;
-import com.liferay.portal.kernel.util.OrderByComparatorFactoryUtil;
-import com.liferay.portal.kernel.util.ParamUtil;
-import com.liferay.portal.kernel.util.StringPool;
-import com.liferay.portal.kernel.util.Validator;
-import com.liferay.portal.model.User;
-import com.liferay.portal.service.ServiceContext;
-import com.liferay.portal.service.ServiceContextFactory;
-import com.liferay.portal.service.UserLocalServiceUtil;
-import com.liferay.portal.util.PortalUtil;
-import com.liferay.util.bridges.mvc.MVCPortlet;
-
public class SoggettiPraticaPortlet extends MVCPortlet {
private static Log _log = LogFactoryUtil.getLog(SoggettiPraticaPortlet.class);
@@ -202,6 +202,7 @@ public class SoggettiPraticaPortlet extends MVCPortlet {
long soggettoSostituitoId = ParamUtil.getLong(actionRequest, "soggettoSostituitoId");
ServiceContext serviceContext = ServiceContextFactory.getInstance(Soggetto.class.getName(), actionRequest);
long userId = PortalUtil.getUserId(actionRequest);
+
try {
actionResponse.setRenderParameter("mvcPath", "html/soggettipratica/edit_soggetto.jsp");
boolean tmp = false;
@@ -209,29 +210,34 @@ public class SoggettiPraticaPortlet extends MVCPortlet {
tmp = true;
}
Soggetto soggetto = null;
- if (soggettoId == 0) {
- soggetto = SoggettoServiceUtil.addSoggetto(userId, dettPraticaId, intPraticaId, nome, cognome,
- codiceFiscale, codiceFiscaleDelegato, dataNascita, provinciaNascita, comuneNascita,
- comuneDomicilio, comuneDomicilioEstero, provinciaDomicilio, viaDomicilio,
- numeroCivicoDomicilio, capDomicilio, domicilioExtra, comune, comuneEstero, provincia, via,
- numeroCivico, cap, denominazione, sedeLegale, legaleRap, dataNascitaRap, provinciaNascitaRap,
- comuneNascitaRap, viaRap, numeroCivicoRap, capRap, provinciaRap, comuneRap, comuneEstero, albo,
- alboDescr, regAlbo, provinciaAlbo, numIscrAlbo, telefono, fax, email, tipologiaSoggetto,
- aggiuntivo, rimosso, ambitoAttivita, ambitoProfessione, intPraticaIdRimozione,
- dettPraticaIdRimozione, null, soggettoSostituitoId, 0L, tmp, serviceContext);
- } else {
- soggetto = SoggettoServiceUtil.updateSoggetto(userId, soggettoId, dettPraticaId, intPraticaId, nome,
- cognome, codiceFiscale, codiceFiscaleDelegato, dataNascita, provinciaNascita, comuneNascita,
- comuneDomicilio, comuneDomicilioEstero, provinciaDomicilio, viaDomicilio,
- numeroCivicoDomicilio, capDomicilio, domicilioExtra, comune, comuneEstero, provincia, via,
- numeroCivico, cap, denominazione, sedeLegale, legaleRap, dataNascitaRap, provinciaNascitaRap,
- comuneNascitaRap, viaRap, numeroCivicoRap, capRap, provinciaRap, comuneRap, comuneEstero, albo,
- alboDescr, regAlbo, provinciaAlbo, numIscrAlbo, telefono, fax, email, tipologiaSoggetto,
- aggiuntivo, rimosso, ambitoAttivita, ambitoProfessione, intPraticaIdRimozione,
- dettPraticaIdRimozione, null, soggettoSostituitoId, 0L, tmp, serviceContext);
+ if(controlloTipologia(userId, codiceFiscale, tipologiaSoggetto)){
+ if (soggettoId == 0) {
+ soggetto = SoggettoServiceUtil.addSoggetto(userId, dettPraticaId, intPraticaId, nome, cognome,
+ codiceFiscale, codiceFiscaleDelegato, dataNascita, provinciaNascita, comuneNascita,
+ comuneDomicilio, comuneDomicilioEstero, provinciaDomicilio, viaDomicilio,
+ numeroCivicoDomicilio, capDomicilio, domicilioExtra, comune, comuneEstero, provincia, via,
+ numeroCivico, cap, denominazione, sedeLegale, legaleRap, dataNascitaRap, provinciaNascitaRap,
+ comuneNascitaRap, viaRap, numeroCivicoRap, capRap, provinciaRap, comuneRap, comuneEstero, albo,
+ alboDescr, regAlbo, provinciaAlbo, numIscrAlbo, telefono, fax, email, tipologiaSoggetto,
+ aggiuntivo, rimosso, ambitoAttivita, ambitoProfessione, intPraticaIdRimozione,
+ dettPraticaIdRimozione, null, soggettoSostituitoId, 0L, tmp, serviceContext);
+ } else {
+ soggetto = SoggettoServiceUtil.updateSoggetto(userId, soggettoId, dettPraticaId, intPraticaId, nome,
+ cognome, codiceFiscale, codiceFiscaleDelegato, dataNascita, provinciaNascita, comuneNascita,
+ comuneDomicilio, comuneDomicilioEstero, provinciaDomicilio, viaDomicilio,
+ numeroCivicoDomicilio, capDomicilio, domicilioExtra, comune, comuneEstero, provincia, via,
+ numeroCivico, cap, denominazione, sedeLegale, legaleRap, dataNascitaRap, provinciaNascitaRap,
+ comuneNascitaRap, viaRap, numeroCivicoRap, capRap, provinciaRap, comuneRap, comuneEstero, albo,
+ alboDescr, regAlbo, provinciaAlbo, numIscrAlbo, telefono, fax, email, tipologiaSoggetto,
+ aggiuntivo, rimosso, ambitoAttivita, ambitoProfessione, intPraticaIdRimozione,
+ dettPraticaIdRimozione, null, soggettoSostituitoId, 0L, tmp, serviceContext);
+ }
+
+ actionResponse.setRenderParameter("soggettoId", String.valueOf(soggetto.getSoggettoId()));
+ }else{
+ SessionErrors.add(actionRequest, "error");
}
PortalUtil.copyRequestParameters(actionRequest, actionResponse);
- actionResponse.setRenderParameter("soggettoId", String.valueOf(soggetto.getSoggettoId()));
actionResponse.setRenderParameter("closePopup", String.valueOf(true));
} catch (PortalException e) {
_log.error(e, e);
@@ -411,10 +417,10 @@ public class SoggettiPraticaPortlet extends MVCPortlet {
QueryUtil.ALL_POS, QueryUtil.ALL_POS, orderByComparator);
}
for (Soggetto soggetto : soggetti) {
- JSONSerializer jsonSerializer = JSONFactoryUtil.createJSONSerializer();
- jsonSerializer.exclude("class");
- String serialized = jsonSerializer.serialize(SoggettoSoap.toSoapModel(soggetto));
- jsonSoggetti.put(serialized);
+ JSONSerializer jsonSerializer = JSONFactoryUtil.createJSONSerializer();
+ jsonSerializer.exclude("class");
+ String serialized = jsonSerializer.serialize(SoggettoSoap.toSoapModel(soggetto));
+ jsonSoggetti.put(serialized);
}
}
writeJSON(request, response, jsonSoggetti);
@@ -452,4 +458,44 @@ public class SoggettiPraticaPortlet extends MVCPortlet {
throw new IOException(e);
}
}
+
+ private boolean controlloTipologia(long userId, String codiceFiscale, String tipo){
+
+ try {
+ OrderByComparator orderByComparator = OrderByComparatorFactoryUtil.create("portos_bo_soggetto",
+ "createDate", false);
+
+ List soggetti = SoggettoLocalServiceUtil.findByUserId_CodiceFiscale(userId, codiceFiscale,
+ QueryUtil.ALL_POS, QueryUtil.ALL_POS, orderByComparator);
+
+ for (Soggetto soggetto : soggetti) {
+ switch (tipo) {
+ case TipoSoggettoUtil.COLLAUDATORE:
+ if(soggetto.getTipologiaSoggetto()==TipoSoggettoUtil.DIRETTORE_LAVORI || soggetto.getTipologiaSoggetto()==TipoSoggettoUtil.PROGETTISTA || soggetto.getTipologiaSoggetto()==TipoSoggettoUtil.DITTA){
+ return false;
+ }
+ break;
+ case TipoSoggettoUtil.DIRETTORE_LAVORI:
+ if(soggetto.getTipologiaSoggetto()==TipoSoggettoUtil.COLLAUDATORE || soggetto.getTipologiaSoggetto()==TipoSoggettoUtil.DITTA){
+ return false;
+ }
+ break;
+ case TipoSoggettoUtil.DITTA:
+ if(soggetto.getTipologiaSoggetto()==TipoSoggettoUtil.DIRETTORE_LAVORI || soggetto.getTipologiaSoggetto()==TipoSoggettoUtil.PROGETTISTA || soggetto.getTipologiaSoggetto()==TipoSoggettoUtil.DITTA){
+ return false;
+ }
+ break;
+ case TipoSoggettoUtil.PROGETTISTA:
+ if(soggetto.getTipologiaSoggetto()==TipoSoggettoUtil.COLLAUDATORE || soggetto.getTipologiaSoggetto()==TipoSoggettoUtil.DITTA){
+ return false;
+ }
+ break;
+ }
+ }
+ } catch (SystemException e) {
+
+ }
+
+ return true;
+ }
}
diff --git a/liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/soggettipratica/edit_soggetto.jsp b/liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/soggettipratica/edit_soggetto.jsp
index 936aae14..838d6ee6 100644
--- a/liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/soggettipratica/edit_soggetto.jsp
+++ b/liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/soggettipratica/edit_soggetto.jsp
@@ -86,6 +86,10 @@ boolean inBO = ParamUtil.getBoolean(request, "inBO");
+
+
+
+
diff --git a/liferay-plugins-sdk-6.2/themes/provatema-theme/.project b/liferay-plugins-sdk-6.2/themes/provatema-theme/.project
index 0b1f363a..8f1a5454 100644
--- a/liferay-plugins-sdk-6.2/themes/provatema-theme/.project
+++ b/liferay-plugins-sdk-6.2/themes/provatema-theme/.project
@@ -38,4 +38,15 @@
org.eclipse.jdt.core.javanature
org.eclipse.wst.jsdt.core.jsNature
+
+
+ 1701177106009
+
+ 30
+
+ org.eclipse.core.resources.regexFilterMatcher
+ node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__
+
+
+
diff --git a/liferay-plugins-sdk-6.2/webs/elasticray-web/.project b/liferay-plugins-sdk-6.2/webs/elasticray-web/.project
index 4e8351de..2c9602bb 100644
--- a/liferay-plugins-sdk-6.2/webs/elasticray-web/.project
+++ b/liferay-plugins-sdk-6.2/webs/elasticray-web/.project
@@ -33,4 +33,15 @@
org.eclipse.jdt.core.javanature
org.eclipse.wst.jsdt.core.jsNature
+
+
+ 1701177105990
+
+ 30
+
+ org.eclipse.core.resources.regexFilterMatcher
+ node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__
+
+
+