Sfoglia il codice sorgente

fixes vari a workflow fine lavori

feature/pannello-pratiche
marcoalderighi 2 anni fa
parent
commit
784f63a862
  1. BIN
      liferay-plugins-sdk-6.2/dist/portos-bo-shared-6.2.0.1.jar
  2. BIN
      liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/lib/portos-bo-portlet-service.jar
  3. BIN
      liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/lib/portos-bo-shared.jar
  4. 2
      liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/util/AsseverazioniUtil.java
  5. 278
      liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/util/ValidazionePraticaUtil.java
  6. 2
      liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/service/impl/FineLavoriLocalServiceImpl.java
  7. 4
      liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/service.properties
  8. BIN
      liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/WEB-INF/lib/portos-bo-portlet-service.jar
  9. BIN
      liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/WEB-INF/lib/portos-bo-shared.jar
  10. 11
      liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/fascicolofe/edit_first-step-fine-lavori.jsp
  11. 61
      liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/fascicolofe/fascicolo_action.jsp

BIN
liferay-plugins-sdk-6.2/dist/portos-bo-shared-6.2.0.1.jar vendored

File binario non mostrato.

BIN
liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/lib/portos-bo-portlet-service.jar

File binario non mostrato.

BIN
liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/lib/portos-bo-shared.jar

File binario non mostrato.

2
liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/util/AsseverazioniUtil.java

@ -147,6 +147,8 @@ public class AsseverazioniUtil {
// Fine Lavori
put(DocumentiPraticaUtil.TIPOLOGIA_ALLEGATO_GIORNALE_LAVORI,
Arrays.asList(TipoSoggettoUtil.DIRETTORE_LAVORI));
put(DocumentiPraticaUtil.TIPOLOGIA_ALLEGATO_DICHIARAZIONE_DIRETTORE_LAVORI,
Arrays.asList(TipoSoggettoUtil.DIRETTORE_LAVORI));
// Collaudo
put(DocumentiPraticaUtil.TIPOLOGIA_ALLEGATO_RELAZIONE_COLLAUDO,
Arrays.asList(TipoSoggettoUtil.COLLAUDATORE));

278
liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/util/ValidazionePraticaUtil.java

@ -203,7 +203,7 @@ public class ValidazionePraticaUtil {
}
public static boolean praticaHasRichiestaIntegrazioneAttiva(long intPraticaId) throws SystemException,
PortalException {
PortalException {
IntPratica intPratica = IntPraticaServiceUtil.getIntPratica(intPraticaId);
return intPratica.getStatoPratica().equals(StatoPraticaConstants.INTEGRAZIONE);
@ -223,7 +223,7 @@ public class ValidazionePraticaUtil {
}
public static boolean praticaCanAddFineLavori(long intPraticaId, String userScreenName) throws SystemException,
PortalException {
PortalException {
DettPratica dettPratica = DettPraticaServiceUtil.getLastCompletedByIntPratica(intPraticaId);
return Validator.isNotNull(dettPratica)
@ -233,8 +233,17 @@ public class ValidazionePraticaUtil {
&& !praticaHasIntegrazioneInProgress(intPraticaId);
}
public static boolean praticaCanAddFineLavoriDate(long intPraticaId, String userScreenName) throws SystemException,
PortalException {
DettPratica dettPratica = DettPraticaServiceUtil.getLastCompletedByIntPratica(intPraticaId);
return Validator.isNotNull(dettPratica)
&& userScreenName.equalsIgnoreCase(dettPratica.getCodiceFiscaleDelegatoFineLavori())
&& praticaHasFineLavoriDateToSet(intPraticaId);
}
public static boolean praticaCanEditFineLavori(long intPraticaId, String userScreenName) throws SystemException,
PortalException {
PortalException {
DettPratica dettPratica = DettPraticaServiceUtil.getLastCompletedByIntPratica(intPraticaId);
return Validator.isNotNull(dettPratica)
@ -243,13 +252,22 @@ public class ValidazionePraticaUtil {
}
public static boolean praticaCanDeleteFineLavori(long intPraticaId, String userScreenName) throws SystemException,
PortalException {
PortalException {
DettPratica dettPratica = DettPraticaServiceUtil.getLastCompletedByIntPratica(intPraticaId);
return Validator.isNotNull(dettPratica)
&& userScreenName.equalsIgnoreCase(dettPratica.getCodiceFiscaleDelegatoFineLavori())
&& praticaHasFineLavoriPaymentPending(intPraticaId);
}
public static boolean praticaHasFineLavoriDateToSet(long intPraticaId) throws SystemException, PortalException {
FineLavori fineLavori = FineLavoriServiceUtil.getLastEditable(intPraticaId);
if(Validator.isNotNull(fineLavori)){
return Validator.isNull(fineLavori.getDataFineLavori());
}
return false;
}
public static boolean praticaHasFineLavoriInProgress(long intPraticaId) throws SystemException, PortalException {
@ -267,7 +285,7 @@ public class ValidazionePraticaUtil {
}
public static boolean praticaCanAddCollaudo(long intPraticaId, String userScreenName) throws SystemException,
PortalException {
PortalException {
DettPratica dettPratica = DettPraticaServiceUtil.getLastCompletedByIntPratica(intPraticaId);
return Validator.isNotNull(dettPratica)
@ -279,7 +297,7 @@ public class ValidazionePraticaUtil {
}
public static boolean praticaCanEditCollaudo(long intPraticaId, String userScreenName) throws SystemException,
PortalException {
PortalException {
DettPratica dettPratica = DettPraticaServiceUtil.getLastCompletedByIntPratica(intPraticaId);
return Validator.isNotNull(dettPratica)
@ -288,7 +306,7 @@ public class ValidazionePraticaUtil {
}
public static boolean praticaCanDeleteCollaudo(long intPraticaId, String userScreenName) throws SystemException,
PortalException {
PortalException {
DettPratica dettPratica = DettPraticaServiceUtil.getLastCompletedByIntPratica(intPraticaId);
return Validator.isNotNull(dettPratica)
@ -316,8 +334,8 @@ public class ValidazionePraticaUtil {
DettPratica dettPratica = DettPraticaServiceUtil.getDettPratica(dettPraticaId);
return AsseverazioniUtil.hasAsseverazioniAttive(dettPraticaId)
|| (dettPratica.getStatus() == WorkflowConstants.STATUS_DRAFT
&& SoggettoLocalServiceUtil.countValidTmpByIntPratica(dettPratica.getIntPraticaId()) > 0
&& praticaIsCompleta(dettPraticaId) && !DelegheUtil.hasDelegheCompilazioneAttive(dettPraticaId));
&& SoggettoLocalServiceUtil.countValidTmpByIntPratica(dettPratica.getIntPraticaId()) > 0
&& praticaIsCompleta(dettPraticaId) && !DelegheUtil.hasDelegheCompilazioneAttive(dettPraticaId));
}
public static boolean pagamentoIsEnable(long dettPraticaId) throws SystemException, PortalException {
@ -350,7 +368,7 @@ public class ValidazionePraticaUtil {
&& AsseverazioniUtil.allAsseverazioniCompleted(dettPraticaId)
&& (intPratica.getStatoPratica().equals(StatoPraticaConstants.INTEGRAZIONE) || dettPratica
.getTipoIntegrazione().equals(TipoIntegrazioneUtil.RICHIESTA_INTEGRAZIONE))
&& dettPratica.getStatus() != WorkflowConstants.STATUS_APPROVED;
&& dettPratica.getStatus() != WorkflowConstants.STATUS_APPROVED;
}
public static boolean praticaCanAbort(long intPraticaId, long userId) throws SystemException, PortalException {
@ -393,21 +411,21 @@ public class ValidazionePraticaUtil {
}
public static List<String> notCompletedSection(String section, long dettPraticaId) throws PortalException,
SystemException {
SystemException {
switch (section) {
case SezioniUtil.SEZIONE_DETTAGLI_PRINCIPALI:
return notCompletedDettagliPrincipali(dettPraticaId);
case SezioniUtil.SEZIONE_ANAGRAFE_SOGGETTI:
return notCompletedAnagrafeSoggetti(dettPraticaId);
case SezioniUtil.SEZIONE_DESCRIZIONE_EDIFICIO:
return notCompletedDescrizioneEdificio(dettPraticaId);
case SezioniUtil.SEZIONE_GEOLOGICA:
return notCompletedSezioneGeologica(dettPraticaId);
case SezioniUtil.SEZIONE_ALLEGATI:
return notCompletedSezioniAllegati(dettPraticaId);
default:
return new ArrayList<>();
case SezioniUtil.SEZIONE_DETTAGLI_PRINCIPALI:
return notCompletedDettagliPrincipali(dettPraticaId);
case SezioniUtil.SEZIONE_ANAGRAFE_SOGGETTI:
return notCompletedAnagrafeSoggetti(dettPraticaId);
case SezioniUtil.SEZIONE_DESCRIZIONE_EDIFICIO:
return notCompletedDescrizioneEdificio(dettPraticaId);
case SezioniUtil.SEZIONE_GEOLOGICA:
return notCompletedSezioneGeologica(dettPraticaId);
case SezioniUtil.SEZIONE_ALLEGATI:
return notCompletedSezioniAllegati(dettPraticaId);
default:
return new ArrayList<>();
}
}
@ -417,7 +435,7 @@ public class ValidazionePraticaUtil {
}
private static List<String> notCompletedDettagliPrincipali(long dettPraticaId) throws PortalException,
SystemException {
SystemException {
DettPratica dettPratica = DettPraticaServiceUtil.getDettPratica(dettPraticaId);
List<String> notCompleted = new ArrayList<>();
@ -428,50 +446,50 @@ public class ValidazionePraticaUtil {
}
boolean aiSensi = AzioniPraticheUtil.isDeposito(intPratica.getIntPraticaId())
? (dettPratica.getNormDpr01Dep() || dettPratica.getNormDpr02Dep())
: (dettPratica.getNormDpr01Aut() || dettPratica.getNormDpr02Aut());
if (!aiSensi) {
notCompleted.add("at-least-aiSensi");
}
boolean nelRispetto = dettPratica.getNormDm01() || dettPratica.getNormDm02() || dettPratica.getNormDm2018();
if (!nelRispetto) {
notCompleted.add("at-least-nelRispetto");
}
if (dettPratica.getNormSismaBonus() && Validator.isNull(dettPratica.getClRischioPreInt())
&& Validator.isNull(dettPratica.getClRischioPostInt())) {
if (Validator.isNull(dettPratica.getClRischioPreInt())) {
notCompleted.add("cl-rischio-pre-int");
}
if (Validator.isNull(dettPratica.getClRischioPostInt())) {
notCompleted.add("cl-rischio-post-int");
}
}
if (dettPratica.getIntervFinPub() && Validator.isNull(dettPratica.getIntervFinPubDesc())) {
notCompleted.add("interv-fin-pub-desc");
}
if (Validator.isNull(dettPratica.getDescLongIntervento())) {
notCompleted.add("desc-long-intervento");
}
if (!(dettPratica.getTcNuovaCostruzione() || dettPratica.getTcMiglioramentoSismico()
|| dettPratica.getTcAdeguamentoSismico() || dettPratica.getTcRiparazioneInterventoLocale())) {
notCompleted.add("fascicolo_title_intervento");
}
if (Validator.isNull(dettPratica.getDestinazione())) {
notCompleted.add("destinazione");
}
if (Validator.isNull(dettPratica.getVia())) {
notCompleted.add("via");
}
if (Validator.isNull(dettPratica.getLocalizzazioneGeografica())
|| dettPratica.getLocalizzazioneGeografica().startsWith("||")) {
notCompleted.add("Localizzazione geografica mancante");
}
boolean tipologiaCostruttiva = intPratica.getTipoProcedura().equalsIgnoreCase(Constants.PROCEDURA_C)
|| dettPratica.getTcInCA() || dettPratica.getTcInAcciaio() || dettPratica.getTcInMuratura()
|| dettPratica.getTcInLegno() || dettPratica.getTcAltro();
if (!tipologiaCostruttiva) {
notCompleted.add("Tipologia Costruttiva Mancante");
}
return notCompleted;
: (dettPratica.getNormDpr01Aut() || dettPratica.getNormDpr02Aut());
if (!aiSensi) {
notCompleted.add("at-least-aiSensi");
}
boolean nelRispetto = dettPratica.getNormDm01() || dettPratica.getNormDm02() || dettPratica.getNormDm2018();
if (!nelRispetto) {
notCompleted.add("at-least-nelRispetto");
}
if (dettPratica.getNormSismaBonus() && Validator.isNull(dettPratica.getClRischioPreInt())
&& Validator.isNull(dettPratica.getClRischioPostInt())) {
if (Validator.isNull(dettPratica.getClRischioPreInt())) {
notCompleted.add("cl-rischio-pre-int");
}
if (Validator.isNull(dettPratica.getClRischioPostInt())) {
notCompleted.add("cl-rischio-post-int");
}
}
if (dettPratica.getIntervFinPub() && Validator.isNull(dettPratica.getIntervFinPubDesc())) {
notCompleted.add("interv-fin-pub-desc");
}
if (Validator.isNull(dettPratica.getDescLongIntervento())) {
notCompleted.add("desc-long-intervento");
}
if (!(dettPratica.getTcNuovaCostruzione() || dettPratica.getTcMiglioramentoSismico()
|| dettPratica.getTcAdeguamentoSismico() || dettPratica.getTcRiparazioneInterventoLocale())) {
notCompleted.add("fascicolo_title_intervento");
}
if (Validator.isNull(dettPratica.getDestinazione())) {
notCompleted.add("destinazione");
}
if (Validator.isNull(dettPratica.getVia())) {
notCompleted.add("via");
}
if (Validator.isNull(dettPratica.getLocalizzazioneGeografica())
|| dettPratica.getLocalizzazioneGeografica().startsWith("||")) {
notCompleted.add("Localizzazione geografica mancante");
}
boolean tipologiaCostruttiva = intPratica.getTipoProcedura().equalsIgnoreCase(Constants.PROCEDURA_C)
|| dettPratica.getTcInCA() || dettPratica.getTcInAcciaio() || dettPratica.getTcInMuratura()
|| dettPratica.getTcInLegno() || dettPratica.getTcAltro();
if (!tipologiaCostruttiva) {
notCompleted.add("Tipologia Costruttiva Mancante");
}
return notCompleted;
}
// ADT
@ -491,7 +509,7 @@ public class ValidazionePraticaUtil {
}
private static List<String> notCompletedAnagrafeSoggetti(long dettPraticaId) throws PortalException,
SystemException {
SystemException {
DettPratica dettPratica = DettPraticaServiceUtil.getDettPratica(dettPraticaId);
long intPraticaId = dettPratica.getIntPraticaId();
@ -524,27 +542,27 @@ public class ValidazionePraticaUtil {
tipoSoggetto));
}
switch (soggetto.getTipologiaSoggetto()) {
case TipoSoggettoUtil.COLLAUDATORE:
collaudatore = true;
numeroCollaudatori++;
break;
case TipoSoggettoUtil.COMMITTENTE:
committente = true;
break;
case TipoSoggettoUtil.DIRETTORE_LAVORI:
direttore = true;
break;
case TipoSoggettoUtil.DITTA:
ditta = true;
break;
case TipoSoggettoUtil.GEOLOGO:
geologo = true;
break;
case TipoSoggettoUtil.PROGETTISTA:
progettista = true;
break;
default:
break;
case TipoSoggettoUtil.COLLAUDATORE:
collaudatore = true;
numeroCollaudatori++;
break;
case TipoSoggettoUtil.COMMITTENTE:
committente = true;
break;
case TipoSoggettoUtil.DIRETTORE_LAVORI:
direttore = true;
break;
case TipoSoggettoUtil.DITTA:
ditta = true;
break;
case TipoSoggettoUtil.GEOLOGO:
geologo = true;
break;
case TipoSoggettoUtil.PROGETTISTA:
progettista = true;
break;
default:
break;
}
}
boolean isDelegaCommittente = SoggettiUtil.isTitolareInCommittenti(intPraticaId)
@ -614,7 +632,7 @@ public class ValidazionePraticaUtil {
}
private static List<String> notCompletedDescrizioneEdificio(long dettPraticaId) throws PortalException,
SystemException {
SystemException {
DettPratica dettPratica = DettPraticaServiceUtil.getDettPratica(dettPraticaId);
List<String> notCompleted = new ArrayList<>();
@ -671,17 +689,17 @@ public class ValidazionePraticaUtil {
boolean elevazioni = (Validator.isNotNull(dettPratica.getDccStruttureEleMuraturePietrame())
|| Validator.isNotNull(dettPratica.getDccStruttureEleMuratureLaterizio())
|| Validator.isNotNull(dettPratica.getDccStruttureEleMuratureMisto()) || Validator
.isNotNull(dettPratica.getDccStruttureEleMuratureStoriche()))
.isNotNull(dettPratica.getDccStruttureEleMuratureStoriche()))
|| Validator.isNotNull(dettPratica.getDccStruttureEleAcciaio())
|| Validator.isNotNull(dettPratica.getDccStruttureEleCA())
|| Validator.isNotNull(dettPratica.getDccStruttureEleLegno())
|| (Validator.isNotNull(dettPratica.getDccStruttureEleMistoCA())
|| Validator.isNotNull(dettPratica.getDccStruttureEleMistoAcciaio())
|| Validator.isNotNull(dettPratica.getDccStruttureEleMistoMuratura()) || Validator
.isNotNull(dettPratica.getDccStruttureEleMistoLegno()))
|| Validator.isNotNull(dettPratica.getDccStruttureElePrefabbricato())
|| (Validator.isNotNull(dettPratica.getDccStruttureEleAltro()) && Validator.isNotNull(dettPratica
.getDccStruttureEleAltroDescrizione()));
.isNotNull(dettPratica.getDccStruttureEleMistoLegno()))
|| Validator.isNotNull(dettPratica.getDccStruttureElePrefabbricato())
|| (Validator.isNotNull(dettPratica.getDccStruttureEleAltro()) && Validator.isNotNull(dettPratica
.getDccStruttureEleAltroDescrizione()));
if (!elevazioni) {
notCompleted.add("dcc-strutture-ele");
}
@ -842,7 +860,7 @@ public class ValidazionePraticaUtil {
}
private static List<String> notCompletedDatiSezionGeologica(long dettPraticaId) throws PortalException,
SystemException {
SystemException {
DettPratica dettPratica = DettPraticaServiceUtil.getDettPratica(dettPraticaId);
List<String> notCompleted = new ArrayList<>();
@ -1028,33 +1046,33 @@ public class ValidazionePraticaUtil {
}
private static boolean isDocPraticaRequired(DettPratica dettPratica, String codiceDoc) throws SystemException,
PortalException {
PortalException {
boolean required = true;
switch (codiceDoc) {
case DocumentiPraticaUtil.TIPOLOGIA_ALLEGATO_A00:
if (isRiparazioneLocale(dettPratica)) {
return false;
}
return !dettPratica.getNormEsenteSpese();
case DocumentiPraticaUtil.TIPOLOGIA_ALLEGATO_A05:
case DocumentiPraticaUtil.TIPOLOGIA_ALLEGATO_A06:
case DocumentiPraticaUtil.TIPOLOGIA_ALLEGATO_A07:
return !dettPratica.getNormArt3com3();
case DocumentiPraticaUtil.TIPOLOGIA_ALLEGATO_A15:
// nell'ultima version A15 non è più obbligatorio, ma se c'è deve essere firmato da GEOLOGO E DIRETTORE
// dei LAVORI
case DocumentiPraticaUtil.TIPOLOGIA_ALLEGATO_A00:
if (isRiparazioneLocale(dettPratica)) {
return false;
case DocumentiPraticaUtil.TIPOLOGIA_ALLEGATO_A09:
return !dettPratica.getNormArt3com4();
case DocumentiPraticaUtil.TIPOLOGIA_ALLEGATO_A17:
return isA17Required(dettPratica);
case DocumentiPraticaUtil.TIPOLOGIA_ALLEGATO_A29:
return dettPratica.getNormLavoriInProprio();
case DocumentiPraticaUtil.TIPOLOGIA_ALLEGATO_DELEGA:
return isA98Required(dettPratica);
default:
return required;
}
return !dettPratica.getNormEsenteSpese();
case DocumentiPraticaUtil.TIPOLOGIA_ALLEGATO_A05:
case DocumentiPraticaUtil.TIPOLOGIA_ALLEGATO_A06:
case DocumentiPraticaUtil.TIPOLOGIA_ALLEGATO_A07:
return !dettPratica.getNormArt3com3();
case DocumentiPraticaUtil.TIPOLOGIA_ALLEGATO_A15:
// nell'ultima version A15 non è più obbligatorio, ma se c'è deve essere firmato da GEOLOGO E DIRETTORE
// dei LAVORI
return false;
case DocumentiPraticaUtil.TIPOLOGIA_ALLEGATO_A09:
return !dettPratica.getNormArt3com4();
case DocumentiPraticaUtil.TIPOLOGIA_ALLEGATO_A17:
return isA17Required(dettPratica);
case DocumentiPraticaUtil.TIPOLOGIA_ALLEGATO_A29:
return dettPratica.getNormLavoriInProprio();
case DocumentiPraticaUtil.TIPOLOGIA_ALLEGATO_DELEGA:
return isA98Required(dettPratica);
default:
return required;
}
}
@ -1226,10 +1244,10 @@ public class ValidazionePraticaUtil {
if (Validator.isNull(fineLavori.getParziale())) {
notCompleted.add("fl-tipo");
}
if (fineLavori.getParziale()
&& FineLavoriLocalServiceUtil.countByIntPraticaId_Parziale(fineLavori.getIntPraticaId(), false) > 0) {
notCompleted.add("fl-parziale-not-possibile");
}
// if (fineLavori.getParziale()
// && FineLavoriLocalServiceUtil.countByIntPraticaId_Parziale(fineLavori.getIntPraticaId(), false) > 0) {
// notCompleted.add("fl-parziale-not-possibile");
// }
if (Validator.isNull(fineLavori.getDataFineLavori())) {
notCompleted.add("fl-data-fine");
}
@ -1243,7 +1261,7 @@ public class ValidazionePraticaUtil {
}
return notCompleted;
}
public static List<String> getDocObbligatoriFineLavori(long intPraticaId) throws PortalException, SystemException{
List<String> tipologiaAllegati = new ArrayList<>();
DettPratica dettPratica = _getAvailableDettPratica(intPraticaId);
@ -1256,7 +1274,7 @@ public class ValidazionePraticaUtil {
}
return tipologiaAllegati;
}
public static List<String> getDocFineLavori(long intPraticaId) throws PortalException, SystemException{
List<String> tipologiaAllegati = new ArrayList<>();
DettPratica dettPratica = _getAvailableDettPratica(intPraticaId);
@ -1269,7 +1287,7 @@ public class ValidazionePraticaUtil {
}
return tipologiaAllegati;
}
private static DettPratica _getAvailableDettPratica(long intPraticaId) throws SystemException, PortalException{
DettPratica dettPratica = DettPraticaServiceUtil.getLastEditableByIntPratica(intPraticaId);
if (Validator.isNull(dettPratica)) {
@ -1277,7 +1295,7 @@ public class ValidazionePraticaUtil {
}
return dettPratica;
}
private static boolean isFineLavoriAllegatiCompleted(long fineLavoriId) throws PortalException, SystemException {
FineLavori fineLavori = FineLavoriServiceUtil.getFineLavori(fineLavoriId);
@ -1340,7 +1358,7 @@ public class ValidazionePraticaUtil {
codiceDoc, QueryUtil.ALL_POS, QueryUtil.ALL_POS);
if (docs.isEmpty()) {
return false; // Ci dev'essere almeno un allegato per tipo
// obbligatorio
// obbligatorio
}
for (DocPratica doc : docs) {
FirmeBean firme = FirmeUtil.deserialize(doc.getJsonFirmatari());
@ -1417,7 +1435,7 @@ public class ValidazionePraticaUtil {
}
private static List<String> extractSigns(long companyId, String fileName, byte[] fileBytes) throws IOException,
PortalException, SystemException {
PortalException, SystemException {
Company company = CompanyLocalServiceUtil.getCompany(companyId);
String urlPdfExtractor = (String) company.getExpandoBridge().getAttribute("url_pdf_extractor", false);

2
liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/service/impl/FineLavoriLocalServiceImpl.java

@ -185,7 +185,7 @@ public class FineLavoriLocalServiceImpl extends FineLavoriLocalServiceBaseImpl {
AvvisoLocalServiceUtil.addAvviso(intPraticaId, descLong, dtAvviso, tipoAvviso, tipoDocumento,
fileEntryIdTemplate, classPk, className, controlloPraticaId, serviceContext);
}
@Override
public FineLavori getLastEditable(long intPraticaId) throws SystemException {

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=2860
build.date=1678457427172
build.number=2870
build.date=1678981829109
build.auto.upgrade=true
##

BIN
liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/WEB-INF/lib/portos-bo-portlet-service.jar

File binario non mostrato.

BIN
liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/WEB-INF/lib/portos-bo-shared.jar

File binario non mostrato.

11
liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/fascicolofe/edit_first-step-fine-lavori.jsp

@ -1,3 +1,4 @@
<%@page import="it.tref.liferay.portos.bo.service.FineLavoriServiceUtil"%>
<%@page import="it.tref.liferay.portos.bo.service.DettPraticaServiceUtil"%>
<%@page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@page import="it.tref.liferay.portos.bo.service.FineLavoriLocalServiceUtil"%>
@ -10,7 +11,13 @@
String backURL = ParamUtil.getString(request, "backURL");
long fineLavoriId = ParamUtil.getLong(request, "fineLavoriId", 0L);
FineLavori fineLavori = FineLavoriLocalServiceUtil.fetchFineLavori(fineLavoriId);
long intPraticaId = fineLavori.getIntPraticaId();
long intPraticaId = 0L;
if(Validator.isNull(fineLavori)){
intPraticaId = ParamUtil.getLong(request, "intPraticaId", 0L);
fineLavori = FineLavoriServiceUtil.getLastEditable(intPraticaId);
} else {
intPraticaId = fineLavori.getIntPraticaId();
}
IntPratica intPratica = IntPraticaServiceUtil.getIntPratica(intPraticaId);
DettPratica dettPratica = DettPraticaServiceUtil.getLastCompletedByIntPratica(intPraticaId);
if (dettPratica == null) {
@ -23,7 +30,7 @@ String fmName = "fmFirstStepFineLavori";
<liferay-portlet:param name="backURL" value="<%= currentURL %>" />
</liferay-portlet:renderURL>
<liferay-portlet:actionURL name="salvaFirstStepFineLavori" var="salvaFirstStepFineLavoriURL" >
<liferay-portlet:param name="fineLavoriId" value="<%= String.valueOf(fineLavoriId) %>"/>
<liferay-portlet:param name="fineLavoriId" value="<%= String.valueOf(fineLavori.getFineLavoriId()) %>"/>
<liferay-portlet:param name="backURL" value="<%= backURL %>"/>
<liferay-portlet:param name="successURL" value="<%= successURL %>"/>
</liferay-portlet:actionURL>

61
liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/fascicolofe/fascicolo_action.jsp

@ -1,3 +1,4 @@
<%@page import="it.tref.liferay.portos.bo.shared.util.StatoPraticaConstants"%>
<%@page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@page import="it.tref.liferay.portos.bo.model.Asseverazione"%>
<%@page import="it.tref.liferay.portos.bo.model.Delega"%>
@ -222,7 +223,8 @@ String randomId = StringUtil.randomId() + StringPool.UNDERLINE + intPraticaIdStr
<c:if test="<%= isProgetti || isAltriProgetti || isDeleghe %>">
<c:if test="<%= ValidazionePraticaUtil.praticaCanAddFineLavori(intPraticaId,user.getScreenName())
|| ValidazionePraticaUtil.praticaCanEditFineLavori(intPraticaId, user.getScreenName()) %>">
<c:if test="<%= !intPratica.getSospesa() %>">
<c:if test="<%= !intPratica.getSospesa() &&
!StatoPraticaConstants.SOTTOPOSTA_A_PARERE.equals(intPratica.getStatoPratica()) %>">
<div class="separator"></div>
<%
DettPratica dettPratica = DettPraticaLocalServiceUtil.getLastCompletedByIntPratica(intPraticaId);
@ -240,25 +242,49 @@ String randomId = StringUtil.randomId() + StringPool.UNDERLINE + intPraticaIdStr
url="<%= addInizioLavoriURL %>" />
</c:when>
<c:otherwise>
<c:if test="<%= (AzioniPraticheUtil.isAllowedAction(intPraticaId,
AzioniPraticheUtil.ACTION_FL_PARZIALE)
|| AzioniPraticheUtil.isAllowedAction(intPraticaId, AzioniPraticheUtil.ACTION_FL_TOTALE))
&& ValidazionePraticaUtil.praticaCanAddFineLavori(intPraticaId, user.getScreenName()) %>">
<liferay-portlet:renderURL var="editUrl" >
<liferay-portlet:param name="mvcPath" value="/html/fascicolofe/edit_first-step-fine-lavori.jsp"/>
<liferay-portlet:param name="backURL" value="<%= redirect %>" />
</liferay-portlet:renderURL>
<liferay-portlet:actionURL name="addFineLavori" var="addFineLavoriURL">
<liferay-portlet:param name="successURL" value="<%= editUrl %>"/>
<liferay-portlet:param name="intPraticaId" value="<%= intPraticaIdString %>" />
</liferay-portlet:actionURL>
<liferay-ui:icon iconCssClass="fa fa-plus" message="add-fine-lavori-key"
url="<%= addFineLavoriURL %>" />
</c:if>
<c:choose>
<c:when test="<%= (AzioniPraticheUtil.isAllowedAction(intPraticaId, AzioniPraticheUtil.ACTION_FL_PARZIALE)
|| AzioniPraticheUtil.isAllowedAction(intPraticaId, AzioniPraticheUtil.ACTION_FL_TOTALE)) &&
ValidazionePraticaUtil.praticaCanAddFineLavori(intPraticaId, user.getScreenName()) %>">
<liferay-portlet:renderURL var="editUrl" >
<liferay-portlet:param name="mvcPath" value="/html/fascicolofe/edit_first-step-fine-lavori.jsp"/>
<liferay-portlet:param name="backURL" value="<%= redirect %>" />
</liferay-portlet:renderURL>
<liferay-portlet:actionURL name="addFineLavori" var="addFineLavoriURL">
<liferay-portlet:param name="successURL" value="<%= editUrl %>"/>
<liferay-portlet:param name="intPraticaId" value="<%= intPraticaIdString %>" />
</liferay-portlet:actionURL>
<liferay-ui:icon iconCssClass="fa fa-plus" message="add-fine-lavori-key"
url="<%= addFineLavoriURL %>" />
</c:when>
<c:otherwise>
<c:if test="<%= ValidazionePraticaUtil.praticaCanEditFineLavori(intPraticaId, user.getScreenName()) %>">
<c:if test="<%= ValidazionePraticaUtil.praticaCanAddFineLavoriDate(intPraticaId, user.getScreenName()) %>">
<liferay-portlet:renderURL var="editUrl" >
<liferay-portlet:param name="mvcPath" value="/html/fascicolofe/edit_first-step-fine-lavori.jsp"/>
<liferay-portlet:param name="intPraticaId" value="<%= intPraticaIdString %>" />
<liferay-portlet:param name="backURL" value="<%= redirect %>" />
</liferay-portlet:renderURL>
<liferay-ui:icon iconCssClass="fa fa-plus" message="add-fine-lavori-key"
url="<%= editUrl %>" />
</c:if>
<c:if test="<%= !ValidazionePraticaUtil.praticaCanAddFineLavoriDate(intPraticaId, user.getScreenName()) %>">
<liferay-portlet:renderURL var="editFineLavoriURL" >
<liferay-portlet:param name="mvcPath" value="/html/fascicolofe/edit_fine-lavori.jsp"/>
<liferay-portlet:param name="intPraticaId" value="<%= intPraticaIdString %>" />
<liferay-portlet:param name="backURL" value="<%= redirect %>" />
</liferay-portlet:renderURL>
<liferay-ui:icon iconCssClass="fa fa-edit" message="edit-fine-lavori-key" url="<%= editFineLavoriURL %>" />
</c:if>
</c:if>
</c:otherwise>
</c:choose>
</c:otherwise>
</c:choose>
</c:if>
<c:if test="<%= ValidazionePraticaUtil.praticaCanEditFineLavori(intPraticaId, user.getScreenName()) %>">
<%--
<c:if test="<%= ValidazionePraticaUtil.praticaCanEditFineLavori(intPraticaId, user.getScreenName()) &&
!ValidazionePraticaUtil.praticaCanAddFineLavoriDate(intPraticaId, user.getScreenName()) %>">
<liferay-portlet:renderURL var="editFineLavoriURL" >
<liferay-portlet:param name="mvcPath" value="/html/fascicolofe/edit_fine-lavori.jsp"/>
<liferay-portlet:param name="intPraticaId" value="<%= intPraticaIdString %>" />
@ -266,7 +292,6 @@ String randomId = StringUtil.randomId() + StringPool.UNDERLINE + intPraticaIdStr
</liferay-portlet:renderURL>
<liferay-ui:icon iconCssClass="fa fa-edit" message="edit-fine-lavori-key" url="<%= editFineLavoriURL %>" />
</c:if>
<%--
<c:if test="<%= ValidazionePraticaUtil.praticaCanDeleteFineLavori(intPraticaId, user.getScreenName()) %>">
<liferay-portlet:actionURL name="deleteFineLavori" var="deleteFineLavoriURL">
<liferay-portlet:param name="intPraticaId" value="<%= intPraticaIdString %>" />

Caricamento…
Annulla
Salva