|
|
|
@ -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<Soggetto> 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; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|