Sfoglia il codice sorgente

- modifica step fine lavori

feature/pannello-pratiche
marcoalderighi 2 anni fa
parent
commit
c035a61ca0
  1. 6
      liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/html/fascicolo/navigator/header.jsp
  2. 1
      liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/html/fascicolo/navigator/page_fl_dati.jsp
  3. 7
      liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/WEB-INF/src/content/Language.properties
  4. 52
      liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/fe/portlet/FascicoloFePortlet.java
  5. 10
      liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/fascicolofe/edit_fine-lavori.jsp
  6. 113
      liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/fascicolofe/edit_first-step-fine-lavori.jsp
  7. 10
      liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/fascicolofe/fascicolo_action.jsp

6
liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/html/fascicolo/navigator/header.jsp

@ -77,6 +77,12 @@
PraticaUtil.getStatoPraticaLabel(intPratica.getStatoPratica(), intPratica))%></strong> PraticaUtil.getStatoPraticaLabel(intPratica.getStatoPratica(), intPratica))%></strong>
</div> </div>
</div> </div>
<div class="row">
<div class="col-sm-2 col-md-2">Data Inizio Lavori:</div>
<div class="col-sm-4 col-md-4">
<strong><%= dateFormatDate.format(dettPratica.getDataInizioLavoriOpera()) %></strong>
</div>
</div>
</div> </div>
</liferay-ui:panel> </liferay-ui:panel>

1
liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/html/fascicolo/navigator/page_fl_dati.jsp

@ -27,6 +27,7 @@
> >
<liferay-ui:search-container-column-text name="Data" cssClass="text-nowrap" value='<%= Validator.isNotNull(fineLavori.getDataEffettuazione()) ? dateFormatDateTime.format(fineLavori.getDataEffettuazione()) : ""%>' /> <liferay-ui:search-container-column-text name="Data" cssClass="text-nowrap" value='<%= Validator.isNotNull(fineLavori.getDataEffettuazione()) ? dateFormatDateTime.format(fineLavori.getDataEffettuazione()) : ""%>' />
<liferay-ui:search-container-column-text cssClass="text-nowrap" name="Direttore Lavori" value="<%= fineLavori.getCodiceFiscaleDelegato().toUpperCase() %>"/> <liferay-ui:search-container-column-text cssClass="text-nowrap" name="Direttore Lavori" value="<%= fineLavori.getCodiceFiscaleDelegato().toUpperCase() %>"/>
<liferay-ui:search-container-column-text cssClass="text-nowrap" name="Data Fine Lavori" value='<%= dateFormatDate.format(fineLavori.getDataFineLavori()%>'/>
<liferay-ui:search-container-column-text cssClass="text-nowrap" name="Tipologia" value='<%= fineLavori.getParziale() ? "Parziale" : "Totale" %>'/> <liferay-ui:search-container-column-text cssClass="text-nowrap" name="Tipologia" value='<%= fineLavori.getParziale() ? "Parziale" : "Totale" %>'/>
<liferay-ui:search-container-column-text> <liferay-ui:search-container-column-text>

7
liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/WEB-INF/src/content/Language.properties

@ -107,3 +107,10 @@ error.geniocivilefe.pagamento.allegato.length.valid=Nome del file troppo lungo (
error.geniocivilefe.pagamento.allegato.is.request=Nessun allegato inviato error.geniocivilefe.pagamento.allegato.is.request=Nessun allegato inviato
avviso-destinazione=Le classi III e IV non sono selezionabili per le pratiche di tipo B o C, le stesse devono essere presentate quali pratiche di Tipo A - Autorizzazione. avviso-destinazione=Le classi III e IV non sono selezionabili per le pratiche di tipo B o C, le stesse devono essere presentate quali pratiche di Tipo A - Autorizzazione.
## Fine lavori ##
add-fine-lavori-key=Comunica data fine lavori parziale/totale
data-inizio-lavori-key=Data Inizio Lavori
add-inizio-lavory-key=Comunica inizio lavori
edit-fine-lavori-key=Inserisci relazione fine lavori
edit-fine-lavori-title-key=Inserisci relazione Fine Lavori

52
liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/fe/portlet/FascicoloFePortlet.java

@ -584,6 +584,7 @@ public class FascicoloFePortlet extends MVCPortlet {
try { try {
FineLavori fineLavori = FineLavoriServiceUtil.addFineLavori(intPraticaId, serviceContext); FineLavori fineLavori = FineLavoriServiceUtil.addFineLavori(intPraticaId, serviceContext);
fineLavori.setNormEsenteCollaudo(dettPratica.getCollaudoStatico()); fineLavori.setNormEsenteCollaudo(dettPratica.getCollaudoStatico());
fineLavori.setRichiestaAttestazione(true);
fineLavori = FineLavoriServiceUtil.updateFineLavori(fineLavori); fineLavori = FineLavoriServiceUtil.updateFineLavori(fineLavori);
successURL = HttpUtil.addParameter(successURL, response.getNamespace() + "fineLavoriId", successURL = HttpUtil.addParameter(successURL, response.getNamespace() + "fineLavoriId",
String.valueOf(fineLavori.getFineLavoriId())); String.valueOf(fineLavori.getFineLavoriId()));
@ -772,13 +773,56 @@ public class FascicoloFePortlet extends MVCPortlet {
PortalUtil.copyRequestParameters(request, response); PortalUtil.copyRequestParameters(request, response);
} }
public void saveFineLavori(ActionRequest request, ActionResponse response) throws Exception { public void salvaFirstStepFineLavori(ActionRequest request, ActionResponse response) throws Exception {
long fineLavoriId = ParamUtil.getLong(request, "fineLavoriId"); long fineLavoriId = ParamUtil.getLong(request, "fineLavoriId");
boolean bozza = ParamUtil.getBoolean(request, "bozza");
boolean parziale = ParamUtil.getBoolean(request, "tipoFineLavori"); boolean parziale = ParamUtil.getBoolean(request, "tipoFineLavori");
Date dataFineLavori = ParamUtil.getDate(request, "dataFineLavori", Date dataFineLavori = ParamUtil.getDate(request, "dataFineLavori",
DateFormatFactoryUtil.getDate(request.getLocale()), null); DateFormatFactoryUtil.getDate(request.getLocale()), null);
long userId = PortalUtil.getUserId(request);
try {
FineLavori fineLavori = FineLavoriServiceUtil.getFineLavori(fineLavoriId);
if (!fineLavori.isCompletata()) {
fineLavori.setParziale(parziale);
fineLavori.setDataFineLavori(dataFineLavori);
FineLavoriServiceUtil.updateFineLavori(fineLavori);
}
String redirect = ParamUtil.getString(request, "redirect");
if (Validator.isNull(redirect)) {
String successURL = ParamUtil.getString(request, "successURL");
if (Validator.isNotNull(successURL)) {
successURL = HttpUtil.removeParameter(successURL, response.getNamespace() + "fineLavoriId");
successURL = HttpUtil.addParameter(successURL, response.getNamespace() + "fineLavoriId",
String.valueOf(fineLavoriId));
/*
* SDB: forse non è più necessario distinguere la fase i creazione di una nuovo fineLavori da un
* editing
*/
response.sendRedirect(successURL);
}
}
} catch (PortalException e) {
_log.error(e, e);
PortalUtil.copyRequestParameters(request, response);
response.setRenderParameter("mvcPath", "/html/fascicolofe/edit_fine-lavori.jsp");
response.setRenderParameter("fineLavoriId", String.valueOf(fineLavoriId));
throw e;
} catch (Exception e) {
_log.error(e, e);
PortalUtil.copyRequestParameters(request, response);
response.setRenderParameter("mvcPath", "/html/fascicolofe/edit_fine-lavori.jsp");
response.setRenderParameter("fineLavoriId", String.valueOf(fineLavoriId));
throw e;
}
}
public void saveFineLavori(ActionRequest request, ActionResponse response) throws Exception {
long fineLavoriId = ParamUtil.getLong(request, "fineLavoriId");
boolean bozza = ParamUtil.getBoolean(request, "bozza");
// boolean parziale = ParamUtil.getBoolean(request, "tipoFineLavori");
// Date dataFineLavori = ParamUtil.getDate(request, "dataFineLavori",
// DateFormatFactoryUtil.getDate(request.getLocale()), null);
String codiceFiscaleDelegato = ParamUtil.getString(request, "direttoreLavori"); String codiceFiscaleDelegato = ParamUtil.getString(request, "direttoreLavori");
boolean normEsenteBollo = ParamUtil.getBoolean(request, "normEsenteBollo"); boolean normEsenteBollo = ParamUtil.getBoolean(request, "normEsenteBollo");
boolean normEsenteSpese = ParamUtil.getBoolean(request, "normEsenteSpese"); boolean normEsenteSpese = ParamUtil.getBoolean(request, "normEsenteSpese");
@ -792,7 +836,7 @@ public class FascicoloFePortlet extends MVCPortlet {
FineLavori fineLavori = FineLavoriServiceUtil.getFineLavori(fineLavoriId); FineLavori fineLavori = FineLavoriServiceUtil.getFineLavori(fineLavoriId);
if (!fineLavori.isCompletata()) { if (!fineLavori.isCompletata()) {
FineLavoriServiceUtil.updateFineLavori(userId, fineLavori.getFineLavoriId(), FineLavoriServiceUtil.updateFineLavori(userId, fineLavori.getFineLavoriId(),
fineLavori.getIntPraticaId(), parziale, false, dataFineLavori, codiceFiscaleDelegato, fineLavori.getIntPraticaId(), fineLavori.getParziale(), false, fineLavori.getDataFineLavori(), codiceFiscaleDelegato,
normEsenteBollo, normEsenteSpese, normEsenteCollaudo, comunicazioneDirettoreLavori, normEsenteBollo, normEsenteSpese, normEsenteCollaudo, comunicazioneDirettoreLavori,
richiestaAttestazione); richiestaAttestazione);
} }

10
liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/fascicolofe/edit_fine-lavori.jsp

@ -68,7 +68,7 @@ request.setAttribute("bean.fineLavori", fineLavori);
} else if (Validator.isNull(fineLavori.getFineLavoriId())) { } else if (Validator.isNull(fineLavori.getFineLavoriId())) {
label = "new-fine-lavori"; label = "new-fine-lavori";
} else { } else {
label = "edit-fine-lavori"; label = "edit-fine-lavori-title-key";
} }
%> %>
<liferay-ui:header title='<%= LanguageUtil.get(pageContext, label) + " #" + dettPratica.getTitle() %>' <liferay-ui:header title='<%= LanguageUtil.get(pageContext, label) + " #" + dettPratica.getTitle() %>'
@ -206,7 +206,7 @@ request.setAttribute("bean.fineLavori", fineLavori);
</div> </div>
<div class="col-sm-6 col-md-3"> <div class="col-sm-6 col-md-3">
<aui:select label="" name="tipoFineLavori" showEmptyOption="true" <aui:select label="" name="tipoFineLavori" showEmptyOption="true"
disabled="<%= disabledEditing %>" > disabled="<%= true %>" >
<c:if test="<%= AzioniPraticheUtil.isAllowedAction(intPratica.getIntPraticaId(), <c:if test="<%= AzioniPraticheUtil.isAllowedAction(intPratica.getIntPraticaId(),
AzioniPraticheUtil.ACTION_FL_PARZIALE) %>"> AzioniPraticheUtil.ACTION_FL_PARZIALE) %>">
<aui:option label='Parziale' value="true" selected="<%= Validator.isNotNull(fineLavori) <aui:option label='Parziale' value="true" selected="<%= Validator.isNotNull(fineLavori)
@ -232,7 +232,7 @@ request.setAttribute("bean.fineLavori", fineLavori);
<liferay-util:param name="field" value="dataFineLavori" /> <liferay-util:param name="field" value="dataFineLavori" />
<liferay-util:param name="fmName" value="<%= fmName %>" /> <liferay-util:param name="fmName" value="<%= fmName %>" />
<liferay-util:param name="bean" value="bean.fineLavori" /> <liferay-util:param name="bean" value="bean.fineLavori" />
<liferay-util:param name="disabled" value="<%= String.valueOf(disabledEditing) %>" /> <liferay-util:param name="disabled" value="true" />
</liferay-util:include> </liferay-util:include>
</div> </div>
</div> </div>
@ -241,7 +241,9 @@ request.setAttribute("bean.fineLavori", fineLavori);
<div class="col-xs-12"> <div class="col-xs-12">
<aui:input name="richiestaAttestazione" label="fl-attestazione" <aui:input name="richiestaAttestazione" label="fl-attestazione"
disabled="<%= disabledEditing %>" /> disabled="<%= disabledEditing %>" />
* <%= LanguageUtil.get(pageContext, "fl-attestazione-note") %> * <%= LanguageUtil.get(pageContext, "fl-attestazione-note-1") %>
* <%= LanguageUtil.get(pageContext, "fl-attestazione-note-2") %>
* <%= LanguageUtil.get(pageContext, "fl-attestazione-note-3") %>
</div> </div>
</div> </div>
<hr> <hr>

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

@ -0,0 +1,113 @@
<%@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"%>
<%@page import="it.tref.liferay.portos.bo.model.FineLavori"%>
<%@page import="it.tref.liferay.portos.bo.util.AzioniPraticheUtil"%>
<%@page import="it.tref.liferay.portos.bo.model.DettPratica"%>
<%@page import="it.tref.liferay.portos.bo.service.DettPraticaLocalServiceUtil"%>
<%@include file="/html/fascicolofe/init.jsp"%>
<%
String backURL = ParamUtil.getString(request, "backURL");
long fineLavoriId = ParamUtil.getLong(request, "fineLavoriId", 0L);
FineLavori fineLavori = FineLavoriLocalServiceUtil.fetchFineLavori(fineLavoriId);
long intPraticaId = fineLavori.getIntPraticaId();
IntPratica intPratica = IntPraticaServiceUtil.getIntPratica(intPraticaId);
DettPratica dettPratica = DettPraticaServiceUtil.getLastCompletedByIntPratica(intPraticaId);
if (dettPratica == null) {
dettPratica = DettPraticaServiceUtil.getLastEditableByIntPratica(intPraticaId);
}
String fmName = "fmFirstStepFineLavori";
%>
<liferay-portlet:actionURL name="salvaFirstStepFineLavori" var="salvaFirstStepFineLavoriURL" >
<liferay-portlet:param name="fineLavoriId" value="<%= String.valueOf(fineLavoriId) %>"/>
<liferay-portlet:param name="backURL" value="<%= backURL %>"/>
<liferay-portlet:param name="successURL" value="<%= currentURL %>"/>
</liferay-portlet:actionURL>
<aui:form
name="<%= fmName %>"
onSubmit="preventDefault();"
action="<%= salvaFirstStepFineLavoriURL %>"
>
<div class="container-fluid">
<div class="col-xs-9">
<liferay-ui:header title='<%= "Comunica data Fine Lavori #" + dettPratica.getTitle() %>'
localizeTitle="false" backURL="<%= backURL %>" />
</div>
<div class="col-xs-3">
<div class="pull-right" >
<liferay-ui:icon-menu showWhenSingleIcon="false" extended="false" showExpanded="true"
cssClass="inline_toolbar" >
<liferay-ui:icon iconCssClass="fa fa-check-square" message="salva-conferma"
url="javascript:saveFirstStepFineLavori();" linkCssClass="btn btn-primary" />
</liferay-ui:icon-menu>
</div>
</div>
</div>
<div class="container-fluid">
<div class="row">
<div class="col-md-12">
<div class="module-group">
<c:if test="<%= Validator.isNotNull(dettPratica.getDataInizioLavoriOpera()) %>">
<liferay-ui:panel extended="false" defaultState="open" collapsible="false" title="Inizio lavori">
<div class="container-fluid">
<div class="row">
<div class="col-xs-12">
<%= dateFormatDate.format(dettPratica.getDataInizioLavoriOpera()) %>
</div>
</div>
</div>
</liferay-ui:panel>
<liferay-ui:panel extended="false" defaultState="open" collapsible="false" title="Fine lavori">
<div class="container-fluid">
<div class="row">
<div class="col-sm-6 col-md-3">
<%= LanguageUtil.get(pageContext, "fl-tipo") %>
</div>
<div class="col-sm-6 col-md-3">
<aui:select label="" name="tipoFineLavori" showEmptyOption="true" >
<c:if test="<%= AzioniPraticheUtil.isAllowedAction(intPratica.getIntPraticaId(),
AzioniPraticheUtil.ACTION_FL_PARZIALE) %>">
<aui:option label='Parziale' value="true" />
</c:if>
<c:if test="<%= AzioniPraticheUtil.isAllowedAction(intPratica.getIntPraticaId(),
AzioniPraticheUtil.ACTION_FL_TOTALE)%>">
<aui:option label='Totale' value="false" />
</c:if>
<c:if test="<%= !AzioniPraticheUtil.isAllowedAction(intPratica.getIntPraticaId(), AzioniPraticheUtil.ACTION_FL_PARZIALE) &&
!AzioniPraticheUtil.isAllowedAction(intPratica.getIntPraticaId(), AzioniPraticheUtil.ACTION_FL_TOTALE) %>">
<aui:option label='Parziale' disabled="true" value="true" />
<aui:option label='Totale' disabled="true" value="false" />
</c:if>
</aui:select>
</div>
</div>
<div class="row">
<div class="col-sm-6 col-md-3">
<%= LanguageUtil.get(pageContext, "fl-data-fine") %>
</div>
<div class="col-sm-6 col-md-3">
<liferay-util:include page="/html/common/input_date_time.jsp" servletContext="<%= application %>">
<liferay-util:param name="field" value="dataFineLavori" />
<liferay-util:param name="fmName" value="<%= fmName %>" />
<liferay-util:param name="bean" value="bean.fineLavori" />
<liferay-util:param name="disabled" value="false" />
</liferay-util:include>
</div>
</div>
</div>
</liferay-ui:panel>
</c:if>
</div>
</div>
</div>
</aui:form>
<aui:script use="aui-base">
Liferay.provide(
window,
'saveFirstStepFineLavori',
function () {
submitForm(document.<portlet:namespace /><%= fmName %>);
},
['aui-base']
);
</aui:script>

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

@ -236,7 +236,7 @@ String randomId = StringUtil.randomId() + StringPool.UNDERLINE + intPraticaIdStr
<liferay-portlet:param name="dettPraticaId" <liferay-portlet:param name="dettPraticaId"
value="<%= String.valueOf(dettPratica.getDettPraticaId()) %>" /> value="<%= String.valueOf(dettPratica.getDettPraticaId()) %>" />
</liferay-portlet:renderURL> </liferay-portlet:renderURL>
<liferay-ui:icon iconCssClass="fa fa-plus" message="Comunica inizio lavori" <liferay-ui:icon iconCssClass="fa fa-plus" message="add-inizio-lavory-key"
url="<%= addInizioLavoriURL %>" /> url="<%= addInizioLavoriURL %>" />
</c:when> </c:when>
<c:otherwise> <c:otherwise>
@ -245,14 +245,14 @@ String randomId = StringUtil.randomId() + StringPool.UNDERLINE + intPraticaIdStr
|| AzioniPraticheUtil.isAllowedAction(intPraticaId, AzioniPraticheUtil.ACTION_FL_TOTALE)) || AzioniPraticheUtil.isAllowedAction(intPraticaId, AzioniPraticheUtil.ACTION_FL_TOTALE))
&& ValidazionePraticaUtil.praticaCanAddFineLavori(intPraticaId, user.getScreenName()) %>"> && ValidazionePraticaUtil.praticaCanAddFineLavori(intPraticaId, user.getScreenName()) %>">
<liferay-portlet:renderURL var="editUrl" > <liferay-portlet:renderURL var="editUrl" >
<liferay-portlet:param name="mvcPath" value="/html/fascicolofe/edit_fine-lavori.jsp"/> <liferay-portlet:param name="mvcPath" value="/html/fascicolofe/edit_first-step-fine-lavori.jsp"/>
<liferay-portlet:param name="backURL" value="<%= redirect %>" /> <liferay-portlet:param name="backURL" value="<%= redirect %>" />
</liferay-portlet:renderURL> </liferay-portlet:renderURL>
<liferay-portlet:actionURL name="addFineLavori" var="addFineLavoriURL"> <liferay-portlet:actionURL name="addFineLavori" var="addFineLavoriURL">
<liferay-portlet:param name="successURL" value="<%= editUrl %>"/> <liferay-portlet:param name="successURL" value="<%= editUrl %>"/>
<liferay-portlet:param name="intPraticaId" value="<%= intPraticaIdString %>" /> <liferay-portlet:param name="intPraticaId" value="<%= intPraticaIdString %>" />
</liferay-portlet:actionURL> </liferay-portlet:actionURL>
<liferay-ui:icon iconCssClass="fa fa-plus" message="add-fine-lavori" <liferay-ui:icon iconCssClass="fa fa-plus" message="add-fine-lavori-key"
url="<%= addFineLavoriURL %>" /> url="<%= addFineLavoriURL %>" />
</c:if> </c:if>
</c:otherwise> </c:otherwise>
@ -264,8 +264,9 @@ String randomId = StringUtil.randomId() + StringPool.UNDERLINE + intPraticaIdStr
<liferay-portlet:param name="intPraticaId" value="<%= intPraticaIdString %>" /> <liferay-portlet:param name="intPraticaId" value="<%= intPraticaIdString %>" />
<liferay-portlet:param name="backURL" value="<%= redirect %>" /> <liferay-portlet:param name="backURL" value="<%= redirect %>" />
</liferay-portlet:renderURL> </liferay-portlet:renderURL>
<liferay-ui:icon iconCssClass="fa fa-edit" message="edit-fine-lavori" url="<%= editFineLavoriURL %>" /> <liferay-ui:icon iconCssClass="fa fa-edit" message="edit-fine-lavori-key" url="<%= editFineLavoriURL %>" />
</c:if> </c:if>
<%--
<c:if test="<%= ValidazionePraticaUtil.praticaCanDeleteFineLavori(intPraticaId, user.getScreenName()) %>"> <c:if test="<%= ValidazionePraticaUtil.praticaCanDeleteFineLavori(intPraticaId, user.getScreenName()) %>">
<liferay-portlet:actionURL name="deleteFineLavori" var="deleteFineLavoriURL"> <liferay-portlet:actionURL name="deleteFineLavori" var="deleteFineLavoriURL">
<liferay-portlet:param name="intPraticaId" value="<%= intPraticaIdString %>" /> <liferay-portlet:param name="intPraticaId" value="<%= intPraticaIdString %>" />
@ -276,6 +277,7 @@ String randomId = StringUtil.randomId() + StringPool.UNDERLINE + intPraticaIdStr
<liferay-ui:icon iconCssClass="fa fa-trash-o" message="delete-fine-lavori" <liferay-ui:icon iconCssClass="fa fa-trash-o" message="delete-fine-lavori"
url="<%= deleteFineLavoriURL %>" /> url="<%= deleteFineLavoriURL %>" />
</c:if> </c:if>
--%>
</c:if> </c:if>
<c:if test="<%= ValidazionePraticaUtil.praticaCanAddCollaudo(intPraticaId, user.getScreenName()) <c:if test="<%= ValidazionePraticaUtil.praticaCanAddCollaudo(intPraticaId, user.getScreenName())
|| ValidazionePraticaUtil.praticaCanEditCollaudo(intPraticaId, user.getScreenName()) || ValidazionePraticaUtil.praticaCanEditCollaudo(intPraticaId, user.getScreenName())

Caricamento…
Annulla
Salva