@ -1,3 +1,20 @@
<%@page import="it.tref.liferay.portos.bo.service.DettPraticaLocalServiceUtil"%>
<%@page import="it.tref.liferay.portos.bo.model.DettPratica"%>
<%@page import="com.liferay.portal.model.User"%>
<%@page import="com.liferay.portal.service.UserLocalServiceUtil"%>
<%@page import="com.liferay.portal.kernel.language.LanguageUtil"%>
<%@page import="com.liferay.portal.kernel.portlet.LiferayWindowState"%>
<%@page import="javax.portlet.PortletMode"%>
<%@page import="com.liferay.portal.model.GroupConstants"%>
<%@page import="com.liferay.portal.model.Group"%>
<%@page import="com.liferay.portal.util.PortletKeys"%>
<%@page import="javax.portlet.PortletRequest"%>
<%@page import="javax.portlet.PortletURL"%>
<%@page import="com.liferay.portlet.PortletURLFactoryUtil"%>
<%@page import="com.liferay.portal.service.LayoutLocalServiceUtil"%>
<%@page import="com.liferay.portal.service.GroupLocalServiceUtil"%>
<%@page import="com.liferay.portal.kernel.workflow.WorkflowTask"%>
<%@page import="it.tref.liferay.portos.bo.service.SoggettoLocalServiceUtil"%>
<%@page import="com.liferay.portal.kernel.util.DateFormatFactoryUtil"%>
<%@page import="java.util.Date"%>
<%@page import="com.liferay.portal.util.PortalUtil"%>
@ -28,7 +45,6 @@
</liferay-portlet:actionURL>
<aui:container id="adv-operation-portlet">
<h1>Problemi pratica</h1>
<aui:row>
<liferay-ui:error key="nessuna-pratica-trovata" message="Nessuna pratica trovata" />
<liferay-ui:error key="operazione-impossibile" message="Impossibile eseguire questa azione su questa Pratica" />
@ -65,192 +81,368 @@
</aui:row>
<% if(Validator.isNotNull(intPratica)){ %>
<aui:row style="margin-top: 10px" id="praticaAdminDiv">
<aui:row id="praticaRecapDiv">
<aui:row>
<liferay-security:doAsURL
doAsUserId="<%= intPratica.getUserId() %>"
var="impersonateUserURL">
</liferay-security:doAsURL>
<aui:col span="3">
<p style="font-size: 30px; margin: 20px 0;">
<b>Pratica:</b> <%= intPraticaId %>
<liferay-ui:icon
image="impersonate_user"
target="_blank"
url="<%= impersonateUserURL %>">
</liferay-ui:icon>
</p>
</aui:col>
</aui:row>
<aui:row>
<aui:col span="2">
<p><b>Numero Progetto:</b> <%= intPratica.getNumeroProgetto() %></p>
</aui:col>
<aui:col span="2">
<p><b>Username:</b> <%= intPratica.getUserName() %></p>
</aui:col>
<aui:col span="2">
<p><b>Tipo Pratica:</b> <%= intPratica.getTipoPratica() %></p>
</aui:col>
<aui:col span="2">
<p><b>ID Territorio:</b> <%= intPratica.getTerritorioId() %></p>
</aui:col>
</aui:row>
<aui:row>
<aui:col span="2">
<p><b>Tipo Procedura:</b> <%= intPratica.getTipoProcedura() %></p>
</aui:col>
<aui:col span="2">
<p><b>Stato Pratica:</b> <%= intPratica.getStatoPratica() %></p>
</aui:col>
<aui:col span="2">
<p><b>Validata:</b> <%= intPratica.getValidata() %></p>
</aui:col>
<aui:col span="2">
<p><b>Esito Controllo:</b> <%= intPratica.getEsitoControllo() %></p>
</aui:col>
</aui:row>
<aui:row>
<aui:col span="2">
<p><b>Status:</b> <%= intPratica.getStatus() %></p>
</aui:col>
</aui:row>
<aui:row>
<% if(AdvancedOperationUtil.hasDettPratica(intPraticaId)){
boolean normLavoriInProprioFlag = AdvancedOperationUtil.getNormLavoriInProprioFlag(intPraticaId);
%>
<aui:col span="3">
<liferay-portlet:actionURL
name="fixNormLavoriInProprio"
var="fixNormLavoriInProprioURL" >
<liferay-portlet:param name="intPraticaId" value="<%= String.valueOf(intPraticaId) %>"/>
<liferay-portlet:param name="normLavoriInProprioFlag" value="<%= String.valueOf(normLavoriInProprioFlag) %>"/>
<liferay-portlet:param name="mvcPath" value="/html/view.jsp"/>
</liferay-portlet:actionURL>
<%
String functionLavori = "javascript:"+renderResponse.getNamespace()+"openConfirmationDialog('"+renderResponse.getNamespace()+"fixLavoriInEconomia','Sei sicuro di voler cambiare i flag LAVORI IN ECONOMIA di questa pratica?')";
%>
<aui:form action="<%= fixNormLavoriInProprioURL %>" method="post" name="fixLavoriInEconomia">
<aui:button
name="normLavoriInProprioBtn"
cssClass="btn-primary"
type="button"
value="<%= AdvancedOperationUtil.getLavoriInEconomiaBtnLabel(normLavoriInProprioFlag) %>"
onClick='<%= functionLavori %>'/>
</aui:form>
</aui:col>
<% } %>
<% if(AdvancedOperationUtil.isStatoPraticaIN(intPratica)){ %>
<aui:col span="3">
<liferay-portlet:actionURL
name="fixStatusPratica"
var="fixStatusPraticaURL" >
<liferay-portlet:param name="intPraticaId" value="<%= String.valueOf(intPraticaId) %>"/>
<liferay-portlet:param name="mvcPath" value="/html/view.jsp"/>
</liferay-portlet:actionURL>
<%
String functionStatus = "javascript:"+renderResponse.getNamespace()+"openConfirmationDialog('"+renderResponse.getNamespace()+"fixStatusPratica','Sei sicuro di voler modificare lo status di questa pratica?')";
%>
<aui:form action="<%= fixStatusPraticaURL %>" method="post" name="fixStatusPratica">
<aui:button
type="button"
cssClass="btn-primary"
name="fixStatusPraticaBtn"
onClick='<%= functionStatus %>'
value="Fixa lo STATUS"
>
</aui:button>
</aui:form>
</aui:col>
<% } %>
<% if(AdvancedOperationUtil.isPraticaAnnullata(intPratica)){ %>
<aui:col span="3">
<liferay-portlet:actionURL
name="ripristinaPraticaVidimata"
var="ripristinaPraticaVidimataURL" >
<liferay-portlet:param name="intPraticaId" value="<%= String.valueOf(intPraticaId) %>"/>
<liferay-portlet:param name="mvcPath" value="/html/view.jsp"/>
</liferay-portlet:actionURL>
<%
String functionRipristinaVidimata = "javascript:"+renderResponse.getNamespace()+"openConfirmationDialog('"+renderResponse.getNamespace()+"ripristinaPraticaVidimata','Sei sicuro di voler ripristinare questa pratica come VIDIMATA?')";
%>
<aui:form action="<%= ripristinaPraticaVidimataURL %>" method="post" name="ripristinaPraticaVidimata">
<aui:button
type="button"
cssClass="btn-primary"
name="ripristinaPraticaVidimataBtn"
onClick='<%= functionRipristinaVidimata %>'
value="Ripristina come VIDIMATA"
>
</aui:button>
</aui:form>
</aui:col>
<aui:col span="3">
<liferay-portlet:actionURL
name="ripristinaPraticaConforme"
var="ripristinaPraticaConformeURL" >
<liferay-portlet:param name="intPraticaId" value="<%= String.valueOf(intPraticaId) %>"/>
<liferay-portlet:param name="mvcPath" value="/html/view.jsp"/>
</liferay-portlet:actionURL>
<%
String functionRipristinaConforme = "javascript:"+renderResponse.getNamespace()+"openConfirmationDialog('"+renderResponse.getNamespace()+"ripristinaPraticaConforme','Sei sicuro di voler ripristinare questa pratica come AUTORIZZATA/CONFORME?')";
%>
<aui:form action="<%= ripristinaPraticaConformeURL %>" method="post" name="ripristinaPraticaConforme">
<aui:button
type="button"
cssClass="btn-primary"
name="ripristinaPraticaConformeBtn"
onClick='<%= functionRipristinaConforme %>'
value="Ripristina come AUTORIZZATA/CONFORME"
>
</aui:button>
</aui:form>
</aui:col>
<% } %>
</aui:row>
<aui:row style="margin-top: 10px" id="praticaAdminDiv">
<aui:row id="praticaRecapDiv">
<aui:row>
<aui:col span="3">
<p style="font-size: 30px; margin: 20px 0;">
<b>Pratica:</b> <%= intPraticaId %>
</p>
</aui:col>
</aui:row>
<aui:row id="docPraticaDiv">
<h1>Problemi documenti</h1>
<aui:row>
<div class="module-group">
<liferay-ui:panel title="DETTAGLI" collapsible="false" extended="true">
<aui:row>
<aui:col span="2">
<p><b>Numero Progetto:</b> <%= intPratica.getNumeroProgetto() %></p>
</aui:col>
<aui:col span="2">
<p><b>Username:</b> <%= intPratica.getUserName() %></p>
</aui:col>
<aui:col span="2">
<p><b>Tipo Pratica:</b> <%= intPratica.getTipoPratica() %></p>
</aui:col>
<aui:col span="2">
<p><b>ID Territorio:</b> <%= intPratica.getTerritorioId() %></p>
</aui:col>
</aui:row>
<aui:row>
<aui:col span="2">
<p><b>Tipo Procedura:</b> <%= intPratica.getTipoProcedura() %></p>
</aui:col>
<aui:col span="2">
<p><b>Stato Pratica:</b> <%= intPratica.getStatoPratica() %></p>
</aui:col>
<aui:col span="2">
<p><b>Validata:</b> <%= intPratica.getValidata() %></p>
</aui:col>
<aui:col span="2">
<p><b>Esito Controllo:</b> <%= intPratica.getEsitoControllo() %></p>
</aui:col>
</aui:row>
<aui:row>
<aui:col span="2">
<p><b>Status:</b> <%= intPratica.getStatus() %></p>
</aui:col>
</aui:row>
<h1>Gestione documenti con IntPratica inestistente</h1>
<%
List<DocPratica> docPraticaList = DocPraticaLocalServiceUtil.findByIntPratica(intPraticaId);
%>
<h2>Documenti Totali: <%= docPraticaList.size() %></h2>
<%
List<DocPratica> docPraticaOrfaniList = AdvancedOperationUtil.getDocPraticaOrfani(intPraticaId);
if(!docPraticaOrfaniList.isEmpty()){
%>
<liferay-portlet:actionURL
name="deleteDocPratica"
var="deleteDocPraticaURL" >
<liferay-portlet:param name="intPraticaId" value="<%= String.valueOf(intPraticaId) %>"/>
<liferay-portlet:param name="mvcPath" value="/html/view.jsp"/>
</liferay-portlet:actionURL>
<aui:row>
<h2>Documenti orfani di DettPratica: <%= docPraticaOrfaniList.size() %></h2>
<aui:row>
<div style="display:flex;">
<% if(AdvancedOperationUtil.isStatoPraticaIN(intPratica)){ %>
<aui:col span="3">
<liferay-portlet:actionURL
name="fixStatusPratica"
var="fixStatusPraticaURL" >
<liferay-portlet:param name="intPraticaId" value="<%= String.valueOf(intPraticaId) %>"/>
<liferay-portlet:param name="mvcPath" value="/html/view.jsp"/>
</liferay-portlet:actionURL>
<%
String functionStatus = "javascript:"+renderResponse.getNamespace()+"openConfirmationDialog('"+renderResponse.getNamespace()+"fixStatusPratica','Sei sicuro di voler modificare lo status di questa pratica?')";
%>
<aui:form action="<%= fixStatusPraticaURL %>" method="post" name="fixStatusPratica">
<aui:button
type="button"
cssClass="btn-primary"
name="fixStatusPraticaBtn"
onClick='<%= functionStatus %>'
value="Fixa lo STATUS"
>
</aui:button>
</aui:form>
</aui:col>
<% } %>
<%
String functionEliminaDoc = "javascript:"+renderResponse.getNamespace()+"openConfirmationDialog('"+renderResponse.getNamespace()+"deleteDocPratica','Sei sicuro di voler eliminare tutti i documenti?')";
%>
<aui:form action="<%= deleteDocPraticaURL %>" method="post" name="deleteDocPratica">
<aui:button-row>
<% if(AdvancedOperationUtil.isPraticaAnnullata(intPratica)){ %>
<aui:col span="3">
<liferay-portlet:actionURL
name="ripristinaPraticaVidimata"
var="ripristinaPraticaVidimataURL" >
<liferay-portlet:param name="intPraticaId" value="<%= String.valueOf(intPraticaId) %>"/>
<liferay-portlet:param name="mvcPath" value="/html/view.jsp"/>
</liferay-portlet:actionURL>
<%
String functionRipristinaVidimata = "javascript:"+renderResponse.getNamespace()+"openConfirmationDialog('"+renderResponse.getNamespace()+"ripristinaPraticaVidimata','Sei sicuro di voler ripristinare questa pratica come VIDIMATA?')";
%>
<aui:form action="<%= ripristinaPraticaVidimataURL %>" method="post" name="ripristinaPraticaVidimata">
<aui:button
type="button"
cssClass="btn-primary"
name="ripristinaPraticaVidimataBtn"
onClick='<%= functionRipristinaVidimata %>'
value="Ripristina come VIDIMATA"
>
</aui:button>
</aui:form>
</aui:col>
<aui:col span="3">
<liferay-portlet:actionURL
name="ripristinaPraticaConforme"
var="ripristinaPraticaConformeURL" >
<liferay-portlet:param name="intPraticaId" value="<%= String.valueOf(intPraticaId) %>"/>
<liferay-portlet:param name="mvcPath" value="/html/view.jsp"/>
</liferay-portlet:actionURL>
<%
String functionRipristinaConforme = "javascript:"+renderResponse.getNamespace()+"openConfirmationDialog('"+renderResponse.getNamespace()+"ripristinaPraticaConforme','Sei sicuro di voler ripristinare questa pratica come AUTORIZZATA/CONFORME?')";
%>
<aui:form action="<%= ripristinaPraticaConformeURL %>" method="post" name="ripristinaPraticaConforme">
<aui:button
type="button"
cssClass="btn-primary"
name="ripristinaPraticaConformeBtn"
onClick='<%= functionRipristinaConforme %>'
value="Ripristina come AUTORIZZATA/CONFORME"
>
</aui:button>
</aui:form>
</aui:col>
<% } %>
</div>
</aui:row>
</liferay-ui:panel>
</div>
<div class="module-group">
<liferay-ui:panel title="REINDICIZZAZIONE" extended="true" collapsible="false">
<aui:row>
<liferay-portlet:actionURL
name="reindexPratica"
var="reindexPraticaURL" >
<liferay-portlet:param name="intPraticaId" value="<%= String.valueOf(intPraticaId) %>"/>
<liferay-portlet:param name="mvcPath" value="/html/view.jsp"/>
</liferay-portlet:actionURL>
<%
String functionReindex = "javascript:"+renderResponse.getNamespace()+"openConfirmationDialog('"+renderResponse.getNamespace()+"reindexPratica','Sei sicuro di voler reindicizzare questa pratica?')";
%>
<aui:form action="<%= reindexPraticaURL %>" method="post" name="reindexPratica">
<aui:button
type="button"
name="deleteDocPraticaBtn"
cssClass="btn-primary"
onClick='<%= functionEliminaDoc %>'
value="Elimina tutti">
name="reindexPraticaBtn"
onClick='<%= functionReindex %>'
value="Reindicizza Pratica"
>
</aui:button>
</aui:button-row>
</aui:form>
</aui:row>
<%
}
%>
</aui:form>
</aui:row>
</liferay-ui:panel>
</div>
<div class="module-group">
<liferay-ui:panel title="IMPERSONAMENTO" extended="true" collapsible="false">
<aui:row>
<div style="display:flex;">
<liferay-security:doAsURL
doAsUserId="<%= intPratica.getUserId() %>"
var="impersonateUserURL">
</liferay-security:doAsURL>
<div style=" margin-right: 15px;">
<p><b>Impersona titolare:</b></p>
</div>
<liferay-ui:icon
image="impersonate_user"
target="_blank"
url="<%= impersonateUserURL %>">
</liferay-ui:icon>
</div>
</aui:row>
<% if(SoggettoLocalServiceUtil.countByIntPratica(intPraticaId) > 1){ %>
<aui:row>
<div style="display:flex;">
<div style=" margin-right: 15px;">
<p><b>Impersona soggetti:</b></p>
</div>
<liferay-ui:icon
id="impersonaSoggettiBtn"
image="team_icon"
message="Visualizza Soggetti"
target="_blank"
>
</liferay-ui:icon>
</div>
</aui:row>
<aui:row>
<div id="sc-soggetti-da-impersonare" class="hide">
<liferay-ui:search-container emptyResultsMessage="Nessun soggetto disponibile">
<liferay-ui:search-container-results
results="<%= SoggettoLocalServiceUtil.findByIntPratica(intPraticaId) %>"
total="<%= SoggettoLocalServiceUtil.countByIntPratica(intPraticaId) %>"
/>
<liferay-ui:search-container-row className="it.tref.liferay.portos.bo.model.Soggetto" modelVar="soggetto">
<liferay-security:doAsURL
doAsUserId="<%= soggetto.getUserId() %>"
var="impersonateSoggettoURL">
</liferay-security:doAsURL>
<liferay-ui:search-container-column-text name="RUOLO">
<%= soggetto.getFullTipologiaSoggetto() %>
</liferay-ui:search-container-column-text>
<liferay-ui:search-container-column-text name="DENOMINAZIONE">
<%= soggetto.getDescrizioneCompleta() %>
</liferay-ui:search-container-column-text>
<liferay-ui:search-container-column-text name="AGGIUNTO DA">
<%
DettPratica adding = DettPraticaLocalServiceUtil.fetchDettPratica(soggetto.getDettPraticaId());
if (adding != null) {
out.print(adding.getFullDescription());
}
%>
</liferay-ui:search-container-column-text>
<liferay-ui:search-container-column-text name="IMPERSONA" cssClass="text-center text-nowrap">
<liferay-ui:icon
image="impersonate_user"
message="Impersona Soggetto"
target="_blank"
url="<%= impersonateSoggettoURL %>"
>
</liferay-ui:icon>
</liferay-ui:search-container-column-text>
</liferay-ui:search-container-row>
<liferay-ui:search-iterator paginate="false" />
</liferay-ui:search-container>
</div>
</aui:row>
<% } %>
</liferay-ui:panel>
</div>
<div class="module-group">
<%
List<WorkflowTask> listaTask = AdvancedOperationUtil.getListaTask(intPratica);
if(Validator.isNotNull(listaTask) && !listaTask.isEmpty()){
%>
<liferay-ui:panel title="GESTIONE ATTIVITÀ" extended="true" collapsible="false">
<aui:row>
<div style="display:flex;">
<div style=" margin-right: 15px;">
<p><b>Gestisci ultima attività:</b></p>
</div>
<%
Group controlPanelGroup = GroupLocalServiceUtil.getGroup(company.getCompanyId(), GroupConstants.CONTROL_PANEL);
long controlPanelPlid = LayoutLocalServiceUtil.getDefaultPlid(controlPanelGroup.getGroupId(),true);
PortletURL workflowTaskURL = PortletURLFactoryUtil.create(request, PortletKeys.MY_WORKFLOW_TASKS,
controlPanelPlid, PortletRequest.RENDER_PHASE);
workflowTaskURL.setParameter("struts_action", "/my_workflow_tasks/edit_workflow_task");
workflowTaskURL.setParameter("workflowTaskId", String.valueOf(listaTask.get(0).getWorkflowTaskId()));
workflowTaskURL.setPortletMode(PortletMode.VIEW);
workflowTaskURL.setWindowState(LiferayWindowState.POP_UP);
%>
<div title='<%= LanguageUtil.get(pageContext,"workflow-action-manage") %>' class="tooltip-info">
<liferay-ui:icon
useDialog="true"
image="action_right"
message="Gestisci Attività"
url='<%= workflowTaskURL.toString() + "&controlPanelCategory=my" %>'
/>
</div>
</div>
</aui:row>
<%
if(intPratica.getStatusByUserId() != 0L ){
User tecnico = UserLocalServiceUtil.fetchUser(intPratica.getStatusByUserId());
if (Validator.isNotNull(tecnico)) {
%>
<aui:row>
<div style="display:flex;">
<liferay-security:doAsURL
doAsUserId="<%= tecnico.getUserId() %>"
var="impersonateIstruttoreURL">
</liferay-security:doAsURL>
<div style=" margin-right: 15px;">
<p><b>Impersona Istruttore:</b></p>
</div>
<liferay-ui:icon
image="impersonate_user"
target="_blank"
message="Impersona Istruttore"
url="<%= impersonateIstruttoreURL %>">
</liferay-ui:icon>
</div>
</aui:row>
<%
}
}
%>
</liferay-ui:panel>
<%
}
%>
</div>
</aui:row>
<aui:row id="docPraticaDiv">
<div class="module-group">
<liferay-ui:panel title="DOCUMENTI ORFANI" collapsible="false" extended="true">
<%
List<DocPratica> docPraticaList = DocPraticaLocalServiceUtil.findByIntPratica(intPraticaId);
%>
<h2>Documenti Totali: <%= docPraticaList.size() %></h2>
<%
List<DocPratica> docPraticaOrfaniList = AdvancedOperationUtil.getDocPraticaOrfani(intPraticaId);
if(!docPraticaOrfaniList.isEmpty()){
%>
<liferay-portlet:actionURL
name="deleteDocPratica"
var="deleteDocPraticaURL" >
<liferay-portlet:param name="intPraticaId" value="<%= String.valueOf(intPraticaId) %>"/>
<liferay-portlet:param name="mvcPath" value="/html/view.jsp"/>
</liferay-portlet:actionURL>
<aui:row>
<h2>Documenti orfani di DettPratica: <%= docPraticaOrfaniList.size() %></h2>
<aui:row>
<aui:col span="2">
<h3>DlFileEntryId</h3>
</aui:col>
<aui:col span="2">
<h3>docPraticaId</h3>
</aui:col>
<aui:col span="2">
<h3>dettPraticaId</h3>
</aui:col>
<aui:col span="6">
<h3>FileName</h3>
</aui:col>
</aui:row>
<%
for(DocPratica docPratica : docPraticaOrfaniList){
if(Validator.isNotNull(docPratica)){
%>
<aui:row>
<aui:col span="2">
<p><%= docPratica.getDlFileEntryId() %></p>
</aui:col>
<aui:col span="2">
<p><%= docPratica.getDocPraticaId() %></p>
</aui:col>
<aui:col span="2">
<p><%= docPratica.getClassPk() %></p>
</aui:col>
<aui:col span="6">
<p><%= docPratica.getFileName() %></p>
</aui:col>
</aui:row>
<%
}
}
%>
<%
String functionEliminaDoc = "javascript:"+renderResponse.getNamespace()+"openConfirmationDialog('"+renderResponse.getNamespace()+"deleteDocPratica','Sei sicuro di voler eliminare tutti i documenti?')";
%>
<aui:form action="<%= deleteDocPraticaURL %>" method="post" name="deleteDocPratica">
<aui:button-row>
<aui:button
type="button"
name="deleteDocPraticaBtn"
cssClass="btn-primary"
onClick='<%= functionEliminaDoc %>'
value="Elimina tutti">
</aui:button>
</aui:button-row>
</aui:form>
</aui:row>
</liferay-ui:panel>
</div>
<%
}
%>
</aui:row>
</aui:row>
</aui:row>
<% } %>
@ -268,6 +460,18 @@
<aui:script use="event-valuechange,aui-modal,aui-io-request">
<% if(Validator.isNotNull(intPratica)){ %>
A.one('#impersonaSoggettiBtn').on('click', function(){
var soggettoDiv = A.one('#sc-soggetti-da-impersonare');
if(soggettoDiv.hasClass('hide')){
soggettoDiv.show();
} else {
soggettoDiv.hide();
}
});
<% } %>
A.one('#<portlet:namespace />intPraticaId').on('valuechange', function(e){
if(e.newVal <= 0 ){
A.one('#<portlet:namespace />numeroProgetto').attr('disabled', false);