Sfoglia il codice sorgente

Fix Post Http per patch Liferay

master
Salvatore La Manna 4 anni fa
parent
commit
21b094d1f1
  1. 53
      liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/mwg/sismica/bo/util/HttpPostUtil.java
  2. 73
      liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/util/AsseverazioniUtil.java
  3. 152
      liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/util/ProtocolloUtil.java
  4. 13
      liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/util/ValidazionePraticaUtil.java
  5. 6
      liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/service/impl/AsseverazioneLocalServiceImpl.java
  6. 40
      liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/service/impl/DettPraticaLocalServiceImpl.java
  7. 30
      liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/util/ContentType.java
  8. 142
      liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/util/ProtocollazioneUtil.java
  9. 4
      liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/service.properties
  10. 2
      liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/html/fascicolo/navigator/page_dettagli_principali.jsp

53
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;
}
}

73
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<Soggetto> 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<String> nuoviDelegati = new ArrayList<String>(
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<String> 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<Asseverazione> asseverazioniEseguite = AsseverazioneLocalServiceUtil
.findByDettPratica_Tipologia_InEsito(dettPraticaId, tipoSoggetto,
@ -488,12 +493,12 @@ public class AsseverazioniUtil {
public static Map<String, String> iconMapper = new HashMap<String, String>();
static {
Map<String, String> aMap = new HashMap<String, String>();
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(),

152
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<File> allegati = new ArrayList<File>();
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<File> allegati = new ArrayList<File>();
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;
}

13
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<String> docObbligatori = DocumentiPraticaUtil.getDocObbligatoriDomanda(intPratica, dettPratica);
List<Soggetto> soggetti = SoggettoLocalServiceUtil.getValidTmpByDettPratica(dettPraticaId);
String cfTitolare = intPratica.getUserName();
for (String docObbligatorio : docObbligatori) {
List<DocPratica> docs = DocPraticaLocalServiceUtil.getValidTmpByIntPratica_Tipologia(
intPraticaId, docObbligatorio, QueryUtil.ALL_POS, QueryUtil.ALL_POS);
@ -1015,7 +1015,7 @@ public class ValidazionePraticaUtil {
} else {
List<String> firmeMancanti = new UniqueList<>();
for (DocPratica doc : docs) {
List<String> firmeObbligatorie = getFirmeObbligatorie(docObbligatorio);
List<String> firmeObbligatorie = getFirmeObbligatorie(doc.getTipologia());
FirmeBean firmeBean = FirmeUtil.deserialize(doc.getJsonFirmatari());
List<String> 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<String> getFirmeObbligatorie(String tipologiaAllegato) {
return firmeObbligatorie.containsKey(tipologiaAllegato) ? firmeObbligatorie.get(tipologiaAllegato)
: vuota;
List<String> firme = new ArrayList<>();
if (firmeObbligatorie.containsKey(tipologiaAllegato)) {
firme.addAll(firmeObbligatorie.get(tipologiaAllegato));
}
return firme;
}
private static final List<String> vuota = new ArrayList<>();

6
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<Soggetto> 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())

40
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);
}
}

30
liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/util/ContentType.java

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

142
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<File> allegati = new ArrayList<File>();
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<OggettoProtocollo> csvToOggettoProtocollo(java.io.File file)
throws FileNotFoundException, IOException, ParseException {

4
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
##

2
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)+":");

Caricamento…
Annulla
Salva