diff --git a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/mwg/sismica/bo/util/HttpPostUtil.java b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/mwg/sismica/bo/util/HttpPostUtil.java new file mode 100644 index 00000000..7d8f86dd --- /dev/null +++ b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/mwg/sismica/bo/util/HttpPostUtil.java @@ -0,0 +1,53 @@ +package it.mwg.sismica.bo.util; + +import it.tref.liferay.portos.bo.service.ConfigurazioneLocalServiceUtil; +import it.tref.liferay.portos.bo.shared.protocollo.model.Protocollo; +import it.tref.liferay.portos.bo.shared.util.ConfigurazioneConstants; + +import javax.servlet.http.HttpServletResponse; + +import org.apache.http.HttpResponse; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.entity.StringEntity; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClientBuilder; +import org.apache.http.util.EntityUtils; + +import com.liferay.portal.kernel.json.JSONFactoryUtil; +import com.liferay.portal.kernel.json.JSONObject; +import com.liferay.portal.kernel.util.ContentTypes; +import com.liferay.portal.kernel.util.StringPool; + +public class HttpPostUtil { + + public static JSONObject postProtocolloBean(long companyId, Protocollo protocolloBean) throws Exception { + JSONObject risposta = null; + flexjson.JSONSerializer serializer = new flexjson.JSONSerializer(); + serializer.exclude("*.class"); + String json = serializer.serialize(protocolloBean); + + String url = ConfigurazioneLocalServiceUtil.findByC_ChiaveString(companyId, + ConfigurazioneConstants.PROTOCOLLAZIONE_SERVICE_URL); + + HttpPost request = new HttpPost(url); + request.setHeader("Content-type", ContentTypes.APPLICATION_JSON); + request.setEntity(new StringEntity(json)); + CloseableHttpClient client = HttpClientBuilder.create().build(); + HttpResponse response = client.execute(request); + + int statusCode = response.getStatusLine().getStatusCode(); + String responseBody = EntityUtils.toString(response.getEntity(), StringPool.UTF8); + client.close(); + + if (statusCode == HttpServletResponse.SC_OK || statusCode == HttpServletResponse.SC_CREATED) { + risposta = JSONFactoryUtil.createJSONObject(responseBody); + // retval = risposta.getString("anno") + String.format("%07d", + // risposta.getInt("numero")); + } else { + throw new Exception(statusCode + StringPool.SPACE + responseBody); + } + + return risposta; + } + +} diff --git a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/util/AsseverazioniUtil.java b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/util/AsseverazioniUtil.java index fb4185ca..b7b436dd 100644 --- a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/util/AsseverazioniUtil.java +++ b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/util/AsseverazioniUtil.java @@ -37,13 +37,6 @@ import com.liferay.portal.service.UserLocalServiceUtil; public class AsseverazioniUtil { - public static final String COLLAUDATORE = "01"; - public static final String COMMITTENTE = "02"; - public static final String DIRETTORE_LAVORI = "03"; - public static final String DITTA = "04"; - public static final String GEOLOGO = "05"; - public static final String PROGETTISTA = "06"; - public final static String STATO_ASSEGNATA = "AS"; public final static String STATO_ESEGUITA = "ES"; public final static String STATO_ANNULLATA = "AN"; @@ -121,7 +114,8 @@ public class AsseverazioniUtil { Arrays.asList(TipoSoggettoUtil.GEOLOGO, TipoSoggettoUtil.DIRETTORE_LAVORI)); // Domanda - aMap.put(ASSEVERAZIONI_DOMANDA, Arrays.asList(TipoSoggettoUtil.COMMITTENTE, + aMap.put(ASSEVERAZIONI_DOMANDA, Arrays.asList( +// TipoSoggettoUtil.COMMITTENTE, TipoSoggettoUtil.DIRETTORE_LAVORI, TipoSoggettoUtil.PROGETTISTA, TipoSoggettoUtil.DITTA, TipoSoggettoUtil.COLLAUDATORE)); // Variante @@ -187,9 +181,11 @@ public class AsseverazioniUtil { if (TipoIntegrazioneUtil.RICHIESTA_INTEGRAZIONE.equalsIgnoreCase(dettPratica .getTipoIntegrazione())) { - if (TipoSoggettoUtil.COMMITTENTE.equalsIgnoreCase(tipoSoggetto)) { - return true; - } + // if + // (TipoSoggettoUtil.COMMITTENTE.equalsIgnoreCase(tipoSoggetto)) + // { + // return true; + // } User titolaredigitaleUser = UserLocalServiceUtil.getUser(intPratica.getUserId()); Soggetto titolareDigitale = SoggettoLocalServiceUtil .getValidTmpByIntPratica_CodiceFiscale_TipologiaSoggetto(intPraticaId, @@ -201,9 +197,12 @@ public class AsseverazioniUtil { } else if (TipoIntegrazioneUtil.VARIANTE.equalsIgnoreCase(dettPratica.getTipoIntegrazione())) { - if (TipoSoggettoUtil.COMMITTENTE.equalsIgnoreCase(tipoSoggetto)) { - return true; - } else if (!TipoSoggettoUtil.GEOLOGO.equalsIgnoreCase(tipoSoggetto) + // if + // (TipoSoggettoUtil.COMMITTENTE.equalsIgnoreCase(tipoSoggetto)) + // { + // return true; + // } else + if (!TipoSoggettoUtil.GEOLOGO.equalsIgnoreCase(tipoSoggetto) && !TipoSoggettoUtil.COLLAUDATORE.equalsIgnoreCase(tipoSoggetto)) { List soggettiPrincipali = SoggettoLocalServiceUtil .getSoggettiPrincipaliValidTmpByDettPratica_TipologiaSoggetto(dettPraticaId, @@ -242,8 +241,10 @@ public class AsseverazioniUtil { if (dettPratica.getLavoriPubblici()) return checkAsseverazioniRichiestaOriginaria(tipoSoggetto, dettPraticaId); return false; - } else if (TipoSoggettoUtil.COMMITTENTE.equalsIgnoreCase(tipoSoggetto)) { - return true; + // } else if + // (TipoSoggettoUtil.COMMITTENTE.equalsIgnoreCase(tipoSoggetto)) + // { + // return true; } else if (required.containsKey(ASSEVERAZIONI_DOMANDA)) { return required.get(ASSEVERAZIONI_DOMANDA).contains(tipoSoggetto); } @@ -339,8 +340,9 @@ public class AsseverazioniUtil { SoggettoLocalServiceUtil.getCfValidTmpByDettPratica(dettPraticaId)); List nuoviDelegati = new ArrayList( DelegaLocalServiceUtil.findCfByDettPratica_Tipologia_InEsito(dettPraticaId, new String[] { - TipoSoggettoUtil.COMMITTENTE, TipoSoggettoUtil.DIRETTORE_LAVORI, - TipoSoggettoUtil.GEOLOGO, TipoSoggettoUtil.DITTA, TipoSoggettoUtil.PROGETTISTA }, + // TipoSoggettoUtil.COMMITTENTE, + TipoSoggettoUtil.DIRETTORE_LAVORI, TipoSoggettoUtil.GEOLOGO, + TipoSoggettoUtil.DITTA, TipoSoggettoUtil.PROGETTISTA }, new String[] { AsseverazioniUtil.STATO_ESEGUITA })); List cfAsseverazioni = new ArrayList<>(); @@ -376,7 +378,8 @@ public class AsseverazioniUtil { } else if (TipoIntegrazioneUtil.VARIANTE.equalsIgnoreCase(dettPratica.getTipoIntegrazione())) { boolean soggettiPrincipali = false; - String[] tipoSoggetti = new String[] { TipoSoggettoUtil.COMMITTENTE, + String[] tipoSoggetti = new String[] { + // TipoSoggettoUtil.COMMITTENTE, TipoSoggettoUtil.DIRETTORE_LAVORI, TipoSoggettoUtil.DITTA, TipoSoggettoUtil.PROGETTISTA }; @@ -406,9 +409,11 @@ public class AsseverazioniUtil { for (String tipoSoggetto : required.get(ASSEVERAZIONI_DOMANDA)) { // Se committente e c'รจ delega => true - if (TipoSoggettoUtil.COMMITTENTE.equalsIgnoreCase(tipoSoggetto)) { - continue; - } + // if + // (TipoSoggettoUtil.COMMITTENTE.equalsIgnoreCase(tipoSoggetto)) + // { + // continue; + // } if (isAsseverazioneDomandaRequiredByTipoSoggetto(dettPraticaId, tipoSoggetto)) { List asseverazioniEseguite = AsseverazioneLocalServiceUtil .findByDettPratica_Tipologia_InEsito(dettPraticaId, tipoSoggetto, @@ -488,12 +493,12 @@ public class AsseverazioniUtil { public static Map iconMapper = new HashMap(); static { Map aMap = new HashMap(); - aMap.put(COMMITTENTE, "fa-bullseye"); - aMap.put(DIRETTORE_LAVORI, "fa-bullhorn"); - aMap.put(DITTA, "fa-industry"); - aMap.put(GEOLOGO, "fa-globe"); - aMap.put(COLLAUDATORE, "fa-wrench"); - aMap.put(PROGETTISTA, "fa-object-ungroup"); + aMap.put(TipoSoggettoUtil.COMMITTENTE, "fa-bullseye"); + aMap.put(TipoSoggettoUtil.DIRETTORE_LAVORI, "fa-bullhorn"); + aMap.put(TipoSoggettoUtil.DITTA, "fa-industry"); + aMap.put(TipoSoggettoUtil.GEOLOGO, "fa-globe"); + aMap.put(TipoSoggettoUtil.COLLAUDATORE, "fa-wrench"); + aMap.put(TipoSoggettoUtil.PROGETTISTA, "fa-object-ungroup"); iconMapper = Collections.unmodifiableMap(aMap); } @@ -514,17 +519,17 @@ public class AsseverazioniUtil { asseverazione.getIntPraticaId(), codiceFiscale, asseverazione.getTipologia(), 0l); switch (tipoAsseverazione) { - case COLLAUDATORE: + case TipoSoggettoUtil.COLLAUDATORE: params = new Object[] { soggetto.getDescrizioneCompleta(), ("albo-altro".equalsIgnoreCase(soggetto.getAlbo()) ? soggetto.getAlboDescr() : soggetto .getAlbo()), soggetto.getProvinciaAlbo(), soggetto.getNumIscrAlbo() }; break; - case COMMITTENTE: + case TipoSoggettoUtil.COMMITTENTE: params = new Object[] { soggetto.getDescrizioneCompleta() }; break; - case DIRETTORE_LAVORI: + case TipoSoggettoUtil.DIRETTORE_LAVORI: params = new Object[] { soggetto.getDescrizioneCompleta(), (SoggettiUtil.isSoggettoPrincipale(soggetto.getSoggettoId(), @@ -536,7 +541,7 @@ public class AsseverazioniUtil { soggetto.getAlbo(), soggetto.getProvinciaAlbo(), soggetto.getNumIscrAlbo() }; break; - case DITTA: + case TipoSoggettoUtil.DITTA: params = new Object[] { soggetto.getCodiceFiscale().toUpperCase() + " - " + soggetto.getLegaleRap(), soggetto.getDenominazione() @@ -549,10 +554,10 @@ public class AsseverazioniUtil { .getAmbitoAttivita() : LanguageUtil.get(Locale.ITALIAN, "label-ambito-" + soggetto.getAmbitoProfessione()))) }; break; - case GEOLOGO: + case TipoSoggettoUtil.GEOLOGO: params = new String[] { soggetto.getDescrizioneCompleta() }; break; - case PROGETTISTA: + case TipoSoggettoUtil.PROGETTISTA: Territorio territorio = TerritorioLocalServiceUtil.getTerritorio(intPratica.getTerritorioId()); params = new Object[] { soggetto.getDescrizioneCompleta(), diff --git a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/util/ProtocolloUtil.java b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/util/ProtocolloUtil.java index 7c6f00c6..4762ac3f 100644 --- a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/util/ProtocolloUtil.java +++ b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/util/ProtocolloUtil.java @@ -8,7 +8,6 @@ import it.tref.liferay.portos.bo.shared.protocollo.model.Protocollo; import it.tref.liferay.portos.bo.shared.protocollo.model.Protocollo.TipoProtocollo; import it.tref.liferay.portos.bo.shared.util.ConfigurazioneConstants; -import java.io.InputStream; import java.util.ArrayList; import java.util.Collections; import java.util.List; @@ -25,95 +24,88 @@ import com.liferay.portal.kernel.util.ContentTypes; import com.liferay.portal.kernel.util.Http.Body; import com.liferay.portal.kernel.util.Http.Options; import com.liferay.portal.kernel.util.HttpUtil; -import com.liferay.portal.kernel.util.StreamUtil; import com.liferay.portal.kernel.util.StringPool; import com.liferay.portal.kernel.util.Validator; public class ProtocolloUtil { - public static String protocollaPartenzaAccessoAtti(long accessoAttiId, long intPraticaId, long groupId, String className, long companyId, String screenName) throws Exception { + public static String protocollaPartenzaAccessoAtti(long accessoAttiId, long intPraticaId, long groupId, + String className, long companyId, String screenName) throws Exception { String protocollo = null; - InputStream inputStream = null; + File allegato = new File(); + + String doc = String.valueOf(accessoAttiId); + + String sha256 = DigestUtils.sha256Hex(doc); + + allegato.setFileId("0"); + allegato.setFileSha256(sha256); + + // utilizzato anche come discriminate tra la 1a e la 2a chiamata + // 1a recupero numero protocollo -> 1 allegato finto + // 2a aggiorno dati del documento prodotto -> 2 allegati, il 1o + // giusto e il 2o per recupero + // num protocollo + + Protocollo protocolloBean = new Protocollo(); + protocolloBean.setOggetto(generaOggettoProtocollo(className, accessoAttiId)); + protocolloBean.setChiuso(false); + protocolloBean.setTipo(TipoProtocollo.USCITA); + protocolloBean.setUtenteId(screenName); + protocolloBean.setUfficioId(String.valueOf(groupId)); + protocolloBean.setPraticaId(String.valueOf(accessoAttiId)); + protocolloBean.setFiles(Collections.singletonList(allegato)); + Options options = createCall(companyId, protocolloBean, true); + + String responseBody = HttpUtil.URLtoString(options); + if (options.getResponse().getResponseCode() == HttpServletResponse.SC_OK + || options.getResponse().getResponseCode() == HttpServletResponse.SC_CREATED) { + JSONObject risposta = JSONFactoryUtil.createJSONObject(responseBody); + protocollo = risposta.getString("anno") + String.format("%07d", risposta.getInt("numero")); + } else { + throw new Exception(options.getResponse().getResponseCode() + StringPool.SPACE + responseBody); + } - try { + return protocollo; + } - File allegato = new File(); - - String doc = String.valueOf(accessoAttiId); - - String sha256 = DigestUtils.sha256Hex(doc); - - allegato.setFileId("0"); - allegato.setFileSha256(sha256); - - // utilizzato anche come discriminate tra la 1a e la 2a chiamata - // 1a recupero numero protocollo -> 1 allegato finto - // 2a aggiorno dati del documento prodotto -> 2 allegati, il 1o giusto e il 2o per recupero - // num protocollo - - Protocollo protocolloBean = new Protocollo(); - protocolloBean.setOggetto(generaOggettoProtocollo(className, accessoAttiId)); - protocolloBean.setChiuso(false); - protocolloBean.setTipo(TipoProtocollo.USCITA); - protocolloBean.setUtenteId(screenName); - protocolloBean.setUfficioId(String.valueOf(groupId)); - protocolloBean.setPraticaId(String.valueOf(accessoAttiId)); - protocolloBean.setFiles(Collections.singletonList(allegato)); - Options options = createCall(companyId, protocolloBean, true); - - String responseBody = HttpUtil.URLtoString(options); - if (options.getResponse().getResponseCode() == HttpServletResponse.SC_OK - || options.getResponse().getResponseCode() == HttpServletResponse.SC_CREATED) { - JSONObject risposta = JSONFactoryUtil.createJSONObject(responseBody); - protocollo = risposta.getString("anno") + String.format("%07d", risposta.getInt("numero")); - } else { - throw new Exception(options.getResponse().getResponseCode() + StringPool.SPACE + responseBody); - } + public static String protocollaArrivoAccessoAtti(long groupId, long companyId, String userName, + long accessoAttiId, String className) throws Exception { - } finally { - StreamUtil.cleanUp(inputStream); + String protocollo = null; + + List allegati = new ArrayList(); + File allegato = new File(); + String doc = String.valueOf(accessoAttiId); + String sha256 = DigestUtils.sha256Hex(doc); + allegato.setFileId("0"); + allegato.setFileSha256(sha256); + allegati.add(allegato); + + Protocollo protocolloBean = new Protocollo(); + protocolloBean.setOggetto(generaOggettoProtocollo(className, accessoAttiId)); + protocolloBean.setChiuso(false); + protocolloBean.setTipo(TipoProtocollo.INGRESSO); + protocolloBean.setUtenteId(userName); + protocolloBean.setUfficioId(String.valueOf(groupId)); + protocolloBean.setPraticaId(String.valueOf(accessoAttiId)); + + protocolloBean.setFiles(allegati); + Options options = createCall(companyId, protocolloBean, true); + + String responseBody = HttpUtil.URLtoString(options); + if (options.getResponse().getResponseCode() == HttpServletResponse.SC_OK + || options.getResponse().getResponseCode() == HttpServletResponse.SC_CREATED) { + JSONObject risposta = JSONFactoryUtil.createJSONObject(responseBody); + protocollo = risposta.getString("anno") + String.format("%07d", risposta.getInt("numero")); + } else { + throw new Exception(options.getResponse().getResponseCode() + StringPool.SPACE + responseBody); } return protocollo; } - - public static String protocollaArrivoAccessoAtti(long groupId, long companyId, String userName, long accessoAttiId, String className) throws Exception { - - String protocollo = null; - - List allegati = new ArrayList(); - File allegato = new File(); - String doc = String.valueOf(accessoAttiId); - String sha256 = DigestUtils.sha256Hex(doc); - allegato.setFileId("0"); - allegato.setFileSha256(sha256); - allegati.add(allegato); - - Protocollo protocolloBean = new Protocollo(); - protocolloBean.setOggetto(generaOggettoProtocollo(className, accessoAttiId)); - protocolloBean.setChiuso(false); - protocolloBean.setTipo(TipoProtocollo.INGRESSO); - protocolloBean.setUtenteId(userName); - protocolloBean.setUfficioId(String.valueOf(groupId)); - protocolloBean.setPraticaId(String.valueOf(accessoAttiId)); - - protocolloBean.setFiles(allegati); - Options options = createCall(companyId, protocolloBean, true); - - - String responseBody = HttpUtil.URLtoString(options); - if (options.getResponse().getResponseCode() == HttpServletResponse.SC_OK - || options.getResponse().getResponseCode() == HttpServletResponse.SC_CREATED) { - JSONObject risposta = JSONFactoryUtil.createJSONObject(responseBody); - protocollo = risposta.getString("anno") + String.format("%07d", risposta.getInt("numero")); - } else { - throw new Exception(options.getResponse().getResponseCode() + StringPool.SPACE + responseBody); - } - - return protocollo; - } public static String generaOggettoProtocollo(String className, long classPk) { @@ -128,11 +120,12 @@ public class ProtocolloUtil { return "Oggetto: " + className + " " + classPk; } - private static Options createCall(long companyId, Protocollo protocolloBean, boolean post) throws SystemException { - String url = - ConfigurazioneLocalServiceUtil.findByC_ChiaveString(companyId, - ConfigurazioneConstants.PROTOCOLLAZIONE_SERVICE_URL); + private static Options createCall(long companyId, Protocollo protocolloBean, boolean post) + throws SystemException { + + String url = ConfigurazioneLocalServiceUtil.findByC_ChiaveString(companyId, + ConfigurazioneConstants.PROTOCOLLAZIONE_SERVICE_URL); Options options = new Options(); options.setLocation(url); @@ -145,7 +138,6 @@ public class ProtocolloUtil { options.setBody(body); - return options; } diff --git a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/util/ValidazionePraticaUtil.java b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/util/ValidazionePraticaUtil.java index a5c914fd..01e6c5c8 100644 --- a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/util/ValidazionePraticaUtil.java +++ b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/util/ValidazionePraticaUtil.java @@ -1004,7 +1004,7 @@ public class ValidazionePraticaUtil { List docObbligatori = DocumentiPraticaUtil.getDocObbligatoriDomanda(intPratica, dettPratica); List soggetti = SoggettoLocalServiceUtil.getValidTmpByDettPratica(dettPraticaId); String cfTitolare = intPratica.getUserName(); - + for (String docObbligatorio : docObbligatori) { List docs = DocPraticaLocalServiceUtil.getValidTmpByIntPratica_Tipologia( intPraticaId, docObbligatorio, QueryUtil.ALL_POS, QueryUtil.ALL_POS); @@ -1015,7 +1015,7 @@ public class ValidazionePraticaUtil { } else { List firmeMancanti = new UniqueList<>(); for (DocPratica doc : docs) { - List firmeObbligatorie = getFirmeObbligatorie(docObbligatorio); + List firmeObbligatorie = getFirmeObbligatorie(doc.getTipologia()); FirmeBean firmeBean = FirmeUtil.deserialize(doc.getJsonFirmatari()); List firmePresenti = firmeBean.allSignatures(); @@ -1027,7 +1027,7 @@ public class ValidazionePraticaUtil { if (firmePresenti.contains(cfTitolare)) { firmeObbligatorie.remove(TipoSoggettoUtil.TITOLARE_DIGITALE); } - for (String firma:firmeObbligatorie) { + for (String firma : firmeObbligatorie) { firmeMancanti.add(firma); } } @@ -1331,8 +1331,11 @@ public class ValidazionePraticaUtil { } private static List getFirmeObbligatorie(String tipologiaAllegato) { - return firmeObbligatorie.containsKey(tipologiaAllegato) ? firmeObbligatorie.get(tipologiaAllegato) - : vuota; + List firme = new ArrayList<>(); + if (firmeObbligatorie.containsKey(tipologiaAllegato)) { + firme.addAll(firmeObbligatorie.get(tipologiaAllegato)); + } + return firme; } private static final List vuota = new ArrayList<>(); diff --git a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/service/impl/AsseverazioneLocalServiceImpl.java b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/service/impl/AsseverazioneLocalServiceImpl.java index 71e1e1b6..b417bd3b 100644 --- a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/service/impl/AsseverazioneLocalServiceImpl.java +++ b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/service/impl/AsseverazioneLocalServiceImpl.java @@ -364,8 +364,10 @@ public class AsseverazioneLocalServiceImpl extends AsseverazioneLocalServiceBase List soggetti = soggettoLocalService.getValidTmpByIntPratica(dettPratica .getIntPraticaId()); for (Soggetto soggetto : soggetti) { - if ((TipoSoggettoUtil.COMMITTENTE.equalsIgnoreCase(soggetto.getTipologiaSoggetto())) - || TipoSoggettoUtil.DITTA.equalsIgnoreCase(soggetto.getTipologiaSoggetto()) + if ( + // (TipoSoggettoUtil.COMMITTENTE.equalsIgnoreCase(soggetto.getTipologiaSoggetto())) + // || + TipoSoggettoUtil.DITTA.equalsIgnoreCase(soggetto.getTipologiaSoggetto()) || TipoSoggettoUtil.DIRETTORE_LAVORI .equalsIgnoreCase(soggetto.getTipologiaSoggetto()) || TipoSoggettoUtil.PROGETTISTA.equalsIgnoreCase(soggetto.getTipologiaSoggetto()) diff --git a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/service/impl/DettPraticaLocalServiceImpl.java b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/service/impl/DettPraticaLocalServiceImpl.java index 80f94d6a..abe8cfbe 100644 --- a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/service/impl/DettPraticaLocalServiceImpl.java +++ b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/service/impl/DettPraticaLocalServiceImpl.java @@ -41,11 +41,15 @@ import java.math.BigDecimal; import java.util.ArrayList; import java.util.Date; import java.util.List; -import java.util.Locale; - -import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import org.apache.http.HttpResponse; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.entity.StringEntity; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClientBuilder; +import org.apache.http.util.EntityUtils; + import com.liferay.portal.kernel.dao.orm.Disjunction; import com.liferay.portal.kernel.dao.orm.DynamicQuery; import com.liferay.portal.kernel.dao.orm.OrderFactoryUtil; @@ -71,7 +75,6 @@ import com.liferay.portal.kernel.search.SearchContext; import com.liferay.portal.kernel.util.ContentTypes; import com.liferay.portal.kernel.util.FastDateFormatFactoryUtil; import com.liferay.portal.kernel.util.GetterUtil; -import com.liferay.portal.kernel.util.Http.Body; import com.liferay.portal.kernel.util.Http.Options; import com.liferay.portal.kernel.util.HttpUtil; import com.liferay.portal.kernel.util.LocaleUtil; @@ -2076,8 +2079,6 @@ public class DettPraticaLocalServiceImpl extends DettPraticaLocalServiceBaseImpl private void updateAsset(DettPratica dettPratica, ServiceContext serviceContext) throws PortalException, SystemException { - Locale locale = serviceContext.getLocale(); - AssetEntry assetEntry = assetEntryLocalService.updateEntry(dettPratica.getUserId(), dettPratica.getGroupId(), dettPratica.getCreateDate(), dettPratica.getModifiedDate(), DettPratica.class.getName(), dettPratica.getPrimaryKey(), dettPratica.getUuid(), 0L, @@ -2431,7 +2432,7 @@ public class DettPraticaLocalServiceImpl extends DettPraticaLocalServiceBaseImpl case TipoSoggettoUtil.DITTA: dettPratica.setCodiceFiscalePrincipaleDitta(codiceFiscale); break; - + case TipoSoggettoUtil.ARCHEOLOGO: dettPratica.setCodiceFiscalePrincipaleArcheologo(codiceFiscale); break; @@ -2450,24 +2451,25 @@ public class DettPraticaLocalServiceImpl extends DettPraticaLocalServiceBaseImpl DettPratica dettPratica = dettPraticaLocalService.getDettPratica(dettPraticaId); String jsonToVersioning = dettPratica.serializeToVersioning(); - Options options = new Options(); - options.setLocation(url); - options.setPost(true); - Body body = new Body(jsonToVersioning, ContentTypes.APPLICATION_JSON, "UTF-8"); - options.setBody(body); + HttpPost request = new HttpPost(url); + request.setHeader("Content-type", ContentTypes.APPLICATION_JSON); + request.setEntity(new StringEntity(jsonToVersioning)); + CloseableHttpClient client = HttpClientBuilder.create().build(); + HttpResponse response = client.execute(request); - String responseBody = HttpUtil.URLtoString(options); - if (options.getResponse().getResponseCode() == HttpServletResponse.SC_OK - || options.getResponse().getResponseCode() == HttpServletResponse.SC_CREATED) { - JSONObject response = JSONFactoryUtil.createJSONObject(responseBody); - int version = response.getInt("version"); + int statusCode = response.getStatusLine().getStatusCode(); + String responseBody = EntityUtils.toString(response.getEntity(), StringPool.UTF8); + client.close(); + + if (statusCode == HttpServletResponse.SC_OK || statusCode == HttpServletResponse.SC_CREATED) { + JSONObject responseObj = JSONFactoryUtil.createJSONObject(responseBody); + int version = responseObj.getInt("version"); dettPratica.setVersion(version); dettPratica.setVersionata(true); dettPraticaLocalService.updateDettPratica(dettPratica); } else { - throw new PortalException(options.getResponse().getResponseCode() + StringPool.SPACE - + responseBody); + throw new PortalException(statusCode + StringPool.SPACE + responseBody); } } diff --git a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/util/ContentType.java b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/util/ContentType.java deleted file mode 100644 index 5fb9e2a4..00000000 --- a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/util/ContentType.java +++ /dev/null @@ -1,30 +0,0 @@ -package it.tref.liferay.portos.bo.util; - -public enum ContentType { - - PDF("application/pdf"), P7M("application/pkcs7-signature"), P7M_MIME("application/pkcs7-mime"), XDBF( - "application/x-dbf"); - - private String contentType; - - ContentType(String contentType) { - this.contentType = contentType; - } - - public String getContentType() { - return contentType; - } - - public static ContentType parse(String contentType) { - - for (ContentType value : values()) { - if (value.contentType.equalsIgnoreCase(contentType)) { - return value; - } - } - - throw new IllegalArgumentException("Invalid value for ContentType: " + contentType); - - } - -} diff --git a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/util/ProtocollazioneUtil.java b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/util/ProtocollazioneUtil.java index 1fdfdf14..4f65f41e 100644 --- a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/util/ProtocollazioneUtil.java +++ b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/util/ProtocollazioneUtil.java @@ -1,5 +1,6 @@ package it.tref.liferay.portos.bo.util; +import it.mwg.sismica.bo.util.HttpPostUtil; import it.tref.liferay.portos.bo.model.Avviso; import it.tref.liferay.portos.bo.model.Collaudo; import it.tref.liferay.portos.bo.model.DettPratica; @@ -34,19 +35,20 @@ import org.apache.commons.codec.digest.DigestUtils; import org.apache.commons.csv.CSVFormat; import org.apache.commons.csv.CSVRecord; import org.apache.commons.io.IOUtils; +import org.apache.http.HttpResponse; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.entity.StringEntity; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClientBuilder; +import org.apache.http.util.EntityUtils; import com.liferay.portal.kernel.exception.PortalException; import com.liferay.portal.kernel.exception.SystemException; import com.liferay.portal.kernel.json.JSONFactoryUtil; import com.liferay.portal.kernel.json.JSONObject; -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.util.ContentTypes; import com.liferay.portal.kernel.util.GetterUtil; -import com.liferay.portal.kernel.util.Http.Body; -import com.liferay.portal.kernel.util.Http.Options; -import com.liferay.portal.kernel.util.HttpUtil; import com.liferay.portal.kernel.util.ParamUtil; import com.liferay.portal.kernel.util.StreamUtil; import com.liferay.portal.kernel.util.StringPool; @@ -59,15 +61,6 @@ import com.liferay.portlet.documentlibrary.service.DLFileEntryLocalServiceUtil; public class ProtocollazioneUtil { - private static final Log _log = LogFactoryUtil.getLog(ProtocollazioneUtil.class); - - // public static String protocollaPartenza(DettPratica dettPratica, Avviso - // avviso) throws - // Exception { - // - // return protocollaPartenza(dettPratica, avviso, null); - // } - public static String protocollaPartenza(Avviso avviso, Long fileEntryId) throws Exception { String protocollo = null; @@ -80,7 +73,6 @@ public class ProtocollazioneUtil { File allegato = new File(); if (Validator.isNotNull(fileEntryId)) { - FileEntry fileEntry = DLAppLocalServiceUtil.getFileEntry(fileEntryId); inputStream = DLFileEntryLocalServiceUtil.getFileAsStream(fileEntry.getFileEntryId(), @@ -91,7 +83,6 @@ public class ProtocollazioneUtil { allegato.setFileSha256(sha256); } else { - String doc = String.valueOf(avviso.getAvvisoId()); String sha256 = DigestUtils.sha256Hex(doc); @@ -100,11 +91,10 @@ public class ProtocollazioneUtil { allegato.setFileSha256(sha256); } - // utilizzato anche come discriminate tra la 1a e la 2a chiamata - // 1a recupero numero protocollo -> 1 allegato finto - // 2a aggiorno dati del documento prodotto -> 2 allegati, il 1o - // giusto e il 2o per recupero - // num protocollo + // utilizzato anche come discriminate tra la 1a e la 2a chiamata 1a + // recupero numero protocollo -> 1 allegato finto 2a aggiorno dati + // del documento prodotto -> 2 allegati, il 1o giusto e il 2o per + // recupero num protocollo Protocollo protocolloBean = new Protocollo(); protocolloBean.setOggetto(generaOggettoProtocollo(avviso.getClassName(), avviso.getAvvisoId())); @@ -114,17 +104,8 @@ public class ProtocollazioneUtil { protocolloBean.setUfficioId(String.valueOf(groupId)); protocolloBean.setPraticaId(String.valueOf(avviso.getClassPk())); protocolloBean.setFiles(Collections.singletonList(allegato)); - Options options = createCall(avviso.getCompanyId(), protocolloBean, true); - - String responseBody = HttpUtil.URLtoString(options); - if (options.getResponse().getResponseCode() == HttpServletResponse.SC_OK - || options.getResponse().getResponseCode() == HttpServletResponse.SC_CREATED) { - JSONObject risposta = JSONFactoryUtil.createJSONObject(responseBody); - protocollo = risposta.getString("anno") + String.format("%07d", risposta.getInt("numero")); - } else { - throw new Exception(options.getResponse().getResponseCode() + StringPool.SPACE + responseBody); - } - + JSONObject risposta = HttpPostUtil.postProtocolloBean(avviso.getCompanyId(), protocolloBean); + protocollo = call(avviso.getCompanyId(), protocolloBean); } finally { StreamUtil.cleanUp(inputStream); } @@ -134,8 +115,6 @@ public class ProtocollazioneUtil { public static String protocollaArrivo(Object praticaInstance, String title) throws Exception { - String protocollo = null; - long groupId = 0l; long praticaId = 0l; long companyId = 0l; @@ -202,25 +181,12 @@ public class ProtocollazioneUtil { protocolloBean.setPraticaId(String.valueOf(praticaId)); protocolloBean.setFiles(allegati); - Options options = createCall(companyId, protocolloBean, true); - - String responseBody = HttpUtil.URLtoString(options); - if (options.getResponse().getResponseCode() == HttpServletResponse.SC_OK - || options.getResponse().getResponseCode() == HttpServletResponse.SC_CREATED) { - JSONObject risposta = JSONFactoryUtil.createJSONObject(responseBody); - protocollo = risposta.getString("anno") + String.format("%07d", risposta.getInt("numero")); - } else { - throw new Exception(options.getResponse().getResponseCode() + StringPool.SPACE + responseBody); - } - - return protocollo; + return call(companyId, protocolloBean); } public static String protocollaArrivoAccessoAtti(long groupId, long companyId, String userName, long accessoAttiId, String className) throws Exception { - String protocollo = null; - List allegati = new ArrayList(); File allegato = new File(); String doc = String.valueOf(accessoAttiId); @@ -238,18 +204,7 @@ public class ProtocollazioneUtil { protocolloBean.setPraticaId(String.valueOf(accessoAttiId)); protocolloBean.setFiles(allegati); - Options options = createCall(companyId, protocolloBean, true); - - String responseBody = HttpUtil.URLtoString(options); - if (options.getResponse().getResponseCode() == HttpServletResponse.SC_OK - || options.getResponse().getResponseCode() == HttpServletResponse.SC_CREATED) { - JSONObject risposta = JSONFactoryUtil.createJSONObject(responseBody); - protocollo = risposta.getString("anno") + String.format("%07d", risposta.getInt("numero")); - } else { - throw new Exception(options.getResponse().getResponseCode() + StringPool.SPACE + responseBody); - } - - return protocollo; + return call(companyId, protocolloBean); } public static String generaOggettoProtocollo(String className, long classPk) { @@ -266,73 +221,6 @@ public class ProtocollazioneUtil { return "Oggetto: " + className + " " + classPk; } - public static void test() { - - String url = "http://172.16.20.148:8080/portos-protocollazione-service/v1/api-rest/genera-protocollo"; - // String url = - // "http://10.159.51.84:8080/portos-protocollazione-service/v1/api-rest/genera-protocollo"; - Options options = new Options(); - options.setLocation(url); - options.setPost(true); - flexjson.JSONSerializer serialize = new flexjson.JSONSerializer(); - // JSONSerializer jsonSerializer = - // JSONFactoryUtil.createJSONSerializer(); - - serialize.exclude("*.class"); - - Protocollo protocolloBean = new Protocollo(); - protocolloBean.setOggetto("oggetto"); - protocolloBean.setChiuso(false); - protocolloBean.setTipo(TipoProtocollo.INGRESSO); - protocolloBean.setUtenteId("SSSS"); - protocolloBean.setUfficioId("genio"); - String protocollo = serialize.serialize(protocolloBean); - - Body body = new Body(protocollo, ContentTypes.APPLICATION_JSON, "UTF-8"); - options.setBody(body); - - try { - String responseBody = HttpUtil.URLtoString(options); - - if (options.getResponse().getResponseCode() == HttpServletResponse.SC_OK - || options.getResponse().getResponseCode() == HttpServletResponse.SC_CREATED) { - System.out.println("ok " + responseBody); - } else { - System.out.println("error " + responseBody); - } - } catch (IOException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - - } - - private static void createCall(Protocollo protocollo) { - - } - - private static Options createCall2(long companyId, Protocollo protocolloBean, boolean post) throws SystemException { - - String url = - ConfigurazioneLocalServiceUtil.findByC_ChiaveString(companyId, - ConfigurazioneConstants.PROTOCOLLAZIONE_SERVICE_URL); - - Options options = new Options(); - options.setLocation(url); - options.setPost(post); - - flexjson.JSONSerializer serialize = new flexjson.JSONSerializer(); - serialize.exclude("*.class"); - String protocollo = serialize.serialize(protocolloBean); - Body body = new Body(protocollo, ContentTypes.APPLICATION_JSON, "UTF-8"); - - options.setBody(body); - - - return options; - - } - public static List csvToOggettoProtocollo(java.io.File file) throws FileNotFoundException, IOException, ParseException { diff --git a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/service.properties b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/service.properties index e408862c..c2e35069 100644 --- a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/service.properties +++ b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/service.properties @@ -13,8 +13,8 @@ ## build.namespace=portos_bo - build.number=2564 - build.date=1599647467248 + build.number=2574 + build.date=1599664865866 build.auto.upgrade=true ## diff --git a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/html/fascicolo/navigator/page_dettagli_principali.jsp b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/html/fascicolo/navigator/page_dettagli_principali.jsp index 36bb9a37..4832a78c 100644 --- a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/html/fascicolo/navigator/page_dettagli_principali.jsp +++ b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/html/fascicolo/navigator/page_dettagli_principali.jsp @@ -351,7 +351,7 @@ String title = ""; if (!label.equals("")) { String pref = label.substring(0, 1); - if (!(pref.equals("1") || pref.equals("2"))) { + if (label.length() > 1) { title = label.substring(0, label.length()-1); uso = title.substring(title.length()-1); out.print(LanguageUtil.get(pageContext, "destinazione-uso-"+uso)+":");