Sfoglia il codice sorgente

Fix per pratiche con molti allegati

master
Salvatore La Manna 4 anni fa
parent
commit
8e86eb57d5
  1. 11
      liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/util/DelegheUtil.java
  2. 4
      liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/service.properties
  3. 59
      liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/allegatipratica/allegati_action.jspf
  4. 70
      liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/allegatipratica/view.jsp
  5. 1
      liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/fascicolofe/edit_fascicolo.jsp
  6. 1
      liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/fascicolofe/navigator/domanda/page_dettagli_principali.jsp

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

@ -51,13 +51,24 @@ public class DelegheUtil {
private final static Log _log = LogFactoryUtil.getLog(DelegheUtil.class);
private static int cntPraticaIsEditable = 0;
public static boolean hasDelegaFirma(long userId, long docPraticaId, boolean sezioneGeologica)
throws PortalException, SystemException {
return hasDelegaFirma(userId, docPraticaId, sezioneGeologica, null);
}
public static boolean hasDelegaFirma(long userId, long docPraticaId, boolean sezioneGeologica,
Boolean praticaIsEditable) throws PortalException, SystemException {
DocPratica docPratica = DocPraticaLocalServiceUtil.getDocPratica(docPraticaId);
boolean controllo = true;
if (DettPratica.class.getName().equals(docPratica.getClassName())) {
if (null == praticaIsEditable) {
controllo = ValidazionePraticaUtil.praticaIsEditable(docPratica.getClassPk());
} else {
controllo = praticaIsEditable;
}
}
if (controllo) {
User user = UserLocalServiceUtil.getUser(userId);

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=2533
build.date=1608199554355
build.number=2537
build.date=1610976073338
build.auto.upgrade=true
##

59
liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/allegatipratica/allegati_action.jsp → liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/allegatipratica/allegati_action.jspf

@ -1,45 +1,16 @@
<%@page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@page import="it.tref.liferay.portos.bo.service.DettPraticaLocalServiceUtil"%>
<%@page import="it.tref.liferay.portos.bo.service.IntPraticaLocalServiceUtil"%>
<%@page import="it.tref.liferay.portos.bo.model.IntPratica"%>
<%@page import="it.tref.liferay.portos.bo.shared.util.PortletKeys"%>
<%@page import="it.tref.liferay.portos.bo.util.DelegheUtil"%>
<%@page import="it.tref.liferay.portos.bo.model.DettPratica"%>
<%@page import="it.tref.liferay.portos.bo.shared.util.FirmeUtil"%>
<%@page import="it.tref.liferay.portos.bo.shared.bean.FirmeBean"%>
<%@page import="it.tref.liferay.portos.bo.model.DocPratica"%>
<%@page import="it.tref.liferay.portos.bo.service.DocPraticaServiceUtil"%>
<%@page import="com.liferay.portal.security.permission.ActionKeys"%>
<%@page import="com.liferay.portal.kernel.util.WebKeys"%>
<%@page import="com.liferay.portal.kernel.dao.search.SearchContainer"%>
<%@page import="java.util.Map"%>
<%@page import="java.util.HashMap"%>
<%@page import="com.liferay.portal.kernel.util.StringUtil"%>
<%@page import="com.liferay.portal.kernel.portlet.LiferayWindowState"%>
<%@page import="com.liferay.portal.service.permission.PortletPermissionUtil"%>
<%@include file="/html/allegatipratica/init.jsp"%>
<%
String redirect = ParamUtil.getString(request, "backUrl");
String comingFrom = ParamUtil.getString(request, "comingFrom");
long classPk = ParamUtil.getLong(request, "classPk");
String className = ParamUtil.getString(request, "className");
String refresh="Liferay.fire('allegati-"+comingFrom+"-open');Liferay.Portlet.refresh('#p_p_id_"+PortletKeys.ALLEGATI+"_INSTANCE_page_allegati_');Liferay.Portlet.refresh('#p_p_id_"+PortletKeys.ALLEGATI+"_INSTANCE_page_geologica_');";
long docPraticaId = ParamUtil.getLong(request, "docPraticaId");
DocPratica docPratica = DocPraticaServiceUtil.getDocPratica(docPraticaId);
FirmeBean firme = FirmeUtil.deserialize(docPratica.getJsonFirmatari());
boolean disabledInput = ParamUtil.getBoolean(request,"disabledInput", false);
boolean hasDelegaFirma = DelegheUtil.hasDelegaFirma(user.getUserId(), docPraticaId, "page_geologica".equalsIgnoreCase(comingFrom));
boolean canSignGeoDocs = "page_geologica".equalsIgnoreCase(comingFrom) && hasDelegaFirma;
boolean hasDelegaFirma = DelegheUtil.hasDelegaFirma(
user.getUserId(),
docPratica.getDocPraticaId(),
comingFromGeologica,
praticaIsEditable
);
String refreshAll = "Liferay.fire('allegati-"+comingFrom+"-open');Liferay.Portlet.refresh('#p_p_id_"+PortletKeys.ALLEGATI+"_INSTANCE_page_allegati_');Liferay.Portlet.refresh('#p_p_id_"+PortletKeys.ALLEGATI+"_INSTANCE_page_geologica_');";
long docPraticaId = docPratica.getDocPraticaId();
boolean canSignGeoDocsAll = comingFromGeologica && hasDelegaFirma;
%>
<liferay-ui:icon-menu icon="" showExpanded="<%=true %>" showWhenSingleIcon="<%=true%>">
<c:if test="<%= docPratica.getClassPk()==classPk && hasDelegaFirma && (!disabledInput || canSignGeoDocs)%>">
<c:if test="<%= docPratica.getClassPk()==classPk && hasDelegaFirma && (!disabledInput || canSignGeoDocsAll)%>">
<%
if (firme.firmaIsPresent(user.getScreenName())) {
if (firme.firmaIsAnnullabile(user.getScreenName())) {
@ -69,7 +40,7 @@ boolean canSignGeoDocs = "page_geologica".equalsIgnoreCase(comingFrom) && hasDel
success: function(event, id, obj) {
window.parent.Liferay.fire('allegati-<%=comingFrom%>-open');
if( "<%= comingFrom %>" == "page_allegati" || "<%= comingFrom %>" == "page_geologica"){
<%=refresh%>
<%=refreshAll%>
}else{
Liferay.fire('allegati-"+comingFrom+"-open');
Liferay.Portlet.refresh("#p_p_id<portlet:namespace/>");
@ -114,7 +85,7 @@ boolean canSignGeoDocs = "page_geologica".equalsIgnoreCase(comingFrom) && hasDel
success: function(event, id, obj) {
window.parent.Liferay.fire('allegati-<%=comingFrom%>-open');
if( "<%= comingFrom %>" == "page_allegati" || "<%= comingFrom %>" == "page_geologica"){
<%=refresh%>
<%=refreshAll%>
}else{
Liferay.fire('allegati-"+comingFrom+"-open');
Liferay.Portlet.refresh("#p_p_id<portlet:namespace/>");
@ -178,7 +149,7 @@ boolean canSignGeoDocs = "page_geologica".equalsIgnoreCase(comingFrom) && hasDel
success: function(event, id, obj) {
window.parent.Liferay.fire('allegati-<%=comingFrom%>-open');
if( "<%= comingFrom %>" == "page_allegati" || "<%= comingFrom %>" == "page_geologica"){
<%=refresh%>
<%=refreshAll%>
}else{
Liferay.fire('allegati-"+comingFrom+"-open');
Liferay.Portlet.refresh("#p_p_id<portlet:namespace/>");
@ -227,7 +198,7 @@ boolean canSignGeoDocs = "page_geologica".equalsIgnoreCase(comingFrom) && hasDel
success: function(event, id, obj) {
window.parent.Liferay.fire('allegati-<%=comingFrom%>-open');
if( "<%= comingFrom %>" == "page_allegati" || "<%= comingFrom %>" == "page_geologica"){
<%=refresh%>
<%=refreshAll%>
}else{
Liferay.fire('allegati-"+comingFrom+"-open');
Liferay.Portlet.refresh("#p_p_id<portlet:namespace/>");
@ -273,7 +244,7 @@ boolean canSignGeoDocs = "page_geologica".equalsIgnoreCase(comingFrom) && hasDel
success: function(event, id, obj) {
window.parent.Liferay.fire('allegati-<%=comingFrom%>-open');
if( "<%= comingFrom %>" == "page_allegati" || "<%= comingFrom %>" == "page_geologica"){
<%=refresh%>
<%=refreshAll%>
}else{
Liferay.fire('allegati-"+comingFrom+"-open');
Liferay.Portlet.refresh("#p_p_id<portlet:namespace/>");

70
liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/allegatipratica/view.jsp

@ -1,4 +1,5 @@
<%@page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@page import="it.tref.liferay.portos.bo.util.ValidazionePraticaUtil"%>
<%@page import="it.tref.liferay.portos.bo.shared.util.SessionUtil"%>
<%@page import="java.util.HashMap"%>
<%@page import="java.util.Map"%>
@ -41,15 +42,23 @@ String comingFrom = ParamUtil.getString(
"comingFrom",
GetterUtil.getString(PortalUtil.getOriginalServletRequest(request).getParameter("comingFrom"), "page_allegati")
);
boolean comingFromGeologica = comingFrom.equalsIgnoreCase("page_geologica");
boolean comingFromAllegati = comingFrom.equalsIgnoreCase("page_allegati");
boolean comingFromFineLavori = comingFrom.equalsIgnoreCase("page_fine_lavori");
boolean comingFromCollaudo = comingFrom.equalsIgnoreCase("page_collaudo");
long classPk = ParamUtil.getLong(request, "classPk");
String className = ParamUtil.getString(request, "className");
boolean isDettPratica = DettPratica.class.getName().equalsIgnoreCase(className);
boolean isFineLavori = FineLavori.class.getName().equalsIgnoreCase(className);
boolean isCollaudo = Collaudo.class.getName().equalsIgnoreCase(className);
long intPraticaId = ParamUtil.getLong(request, "intPraticaId");
if (FineLavori.class.getName().equalsIgnoreCase(className)) {
boolean praticaIsEditable = false;
if (isFineLavori) {
FineLavori fineLavori = FineLavoriServiceUtil.getFineLavori(classPk);
intPraticaId = fineLavori.getIntPraticaId();
} else if (Collaudo.class.getName().equalsIgnoreCase(className)) {
} else if (isCollaudo) {
Collaudo collaudo = CollaudoServiceUtil.getCollaudo(classPk);
intPraticaId = collaudo.getIntPraticaId();
} else {
@ -65,7 +74,7 @@ if (FineLavori.class.getName().equalsIgnoreCase(className)) {
if (dettPratica == null) {
dettPratica = DettPraticaServiceUtil.getDettPratica(classPk);
}
praticaIsEditable = ValidazionePraticaUtil.praticaIsEditable(dettPratica.getDettPraticaId());
request.setAttribute("bean.dettPratica", dettPratica);
classPk = dettPratica.getDettPraticaId();
intPraticaId = dettPratica.getIntPraticaId();
@ -86,7 +95,7 @@ boolean disabledInput = true;
boolean canSignGeoDocs = false;
if (Validator.isNotNull(request.getParameter("disabled"))) {
disabledInput = disabled;
} else if ("page_allegati".equalsIgnoreCase(comingFrom)) {
} else if (comingFromAllegati) {
Boolean hasDelegaCompilazioneDomanda = (Boolean) SessionUtil.getDettPraticaObject(request, classPk, "hasDelegaCompilazioneDomanda");
if (null == hasDelegaCompilazioneDomanda) {
hasDelegaCompilazioneDomanda = DelegheUtil.hasDelegaCompilazioneDomanda(user.getUserId(),classPk);
@ -94,18 +103,18 @@ if (Validator.isNotNull(request.getParameter("disabled"))) {
disabledInput = !hasDelegaCompilazioneDomanda
&& !DelegheUtil.hasDelegaFirmaAllegati(user.getUserId(),classPk);
soggettoDelegato = DelegheUtil.getPersonaDelegaCompilazioneDomanda(classPk);
} else if ("page_geologica".equalsIgnoreCase(comingFrom)) {
} else if (comingFromGeologica) {
disabledInput = !DelegheUtil.hasDelegaCompilazioneSezioneGeologica(user.getUserId(),classPk);
soggettoDelegato = DelegheUtil.getPersonaDelegaCompilazioneSezioneGeologica(classPk);
canSignGeoDocs = true;
} else if ("page_fine_lavori".equalsIgnoreCase(comingFrom)) {
} else if (comingFromFineLavori) {
disabledInput = disabled;
} else if ("page_collaudo".equalsIgnoreCase(comingFrom)) {
} else if (comingFromCollaudo) {
disabledInput = disabled;
}
%>
<c:if test="<%= DettPratica.class.getName().equals(className) %>">
<c:if test="<%= isDettPratica %>">
<liferay-util:include page="/html/fascicolofe/navigator/header.jsp" servletContext="<%=application%>">
<liferay-util:param name="disabledInput" value="<%= String.valueOf(disabledInput) %>" />
<c:if test="<%=soggettoDelegato!=null%>">
@ -135,7 +144,7 @@ String refresh = "Liferay.fire('allegati-" + comingFrom + "-open');Liferay.Portl
<div class="navbar-container header_allegati_table">
<c:if test="<%= !inBO %>">
<c:choose>
<c:when test='<%= comingFrom.equals("page_geologica") %>'>
<c:when test='<%= comingFromGeologica %>'>
<h3 class="title-table">Allegati Geologici</h3>
</c:when>
<c:otherwise>
@ -165,13 +174,13 @@ String refresh = "Liferay.fire('allegati-" + comingFrom + "-open');Liferay.Portl
<%
List<String> tipologiaAllegati = new ArrayList<String>();
if ("page_geologica".equals(comingFrom)) {
if (comingFromGeologica) {
tipologiaAllegati = DocumentiPraticaUtil.getDocGeologo();
}else if ("page_allegati".equals(comingFrom)) {
} else if (comingFromAllegati) {
tipologiaAllegati = DocumentiPraticaUtil.getDocDomanda();
}else if ("page_fine_lavori".equals(comingFrom)) {
} else if (comingFromFineLavori) {
tipologiaAllegati = DocumentiPraticaUtil.getDocFineLavori();
}else if ("page_collaudo".equals(comingFrom)) {
} else if (comingFromCollaudo) {
tipologiaAllegati = DocumentiPraticaUtil.getDocCollaudo();
}
%>
@ -198,14 +207,14 @@ if ("page_geologica".equals(comingFrom)) {
</div>
</c:if>
<c:if test="<%=inBO%>">
<c:if test='<%= !"page_geologica".equals(comingFrom) %>'>
<c:if test='<%= !comingFromGeologica %>'>
<div class='row asseverazioni-header'>
<div class="col-xs-6 col-sm-6 col-md-6 col-lg-6">Descrizione</div>
<div class="col-xs-4 col-sm-4 col-md-4 col-lg-4 asserazioni-header-title">Firme presenti</div>
<div class="col-xs-2 col-sm-2 col-md-2 col-lg-2">Azioni</div>
</div>
</c:if>
<c:if test='<%=" page_geologica".equals(comingFrom) %>'>
<c:if test='<%= comingFromGeologica %>'>
<div class='row asseverazioni-header'>
<div class="col-xs-6 col-sm-6 col-md-6 col-lg-6">Descrizione</div>
<div class="col-xs-2 col-sm-2 col-md-2 col-lg-2 asserazioni-header-title">Provenienza</div>
@ -219,9 +228,9 @@ if ("page_geologica".equals(comingFrom)) {
<%
for (String codiceDoc : tipologiaAllegati) {
List<DocPratica> docPraticas = new ArrayList<DocPratica>();
List<DocPratica> docPraticas = null;
if(FineLavori.class.getName().equals(className) || Collaudo.class.getName().equals(className)) {
if (isFineLavori || isCollaudo) {
docPraticas = DocPraticaServiceUtil.findByClassPk_Tipologia(classPk, codiceDoc, QueryUtil.ALL_POS,QueryUtil.ALL_POS);
} else {
docPraticas = DocPraticaServiceUtil.findByIntPratica_ClassPk_Tipologia(intPraticaId, classPk, codiceDoc, QueryUtil.ALL_POS,QueryUtil.ALL_POS);
@ -319,16 +328,15 @@ for (String codiceDoc:tipologiaAllegati) {
<div class='col-xs-2 col-sm-2 col-md-2 col-lg-2 <%=inBO ? "hidden" : ""%> asserazioni-body-title'>
<%
String adding = StringPool.BLANK;
if (FineLavori.class.getName().equals(className)) {
if (isFineLavori) {
FineLavori fineLavori = FineLavoriLocalServiceUtil.fetchFineLavori(docPratica.getClassPk());
if (fineLavori != null) {
adding = fineLavori.getFullDescription();
out.print(fineLavori.getFullDescription());
}
} else if (Collaudo.class.getName().equalsIgnoreCase(className)) {
} else if (isCollaudo) {
Collaudo collaudo = CollaudoLocalServiceUtil.fetchCollaudo(docPratica.getClassPk());
if (collaudo != null) {
adding = collaudo.getFullDescription();
out.print(collaudo.getFullDescription());
}
} else {
long pk = docPratica.getClassPk();
@ -337,10 +345,9 @@ for (String codiceDoc:tipologiaAllegati) {
}
DettPratica dettPratica = dettPraticas.get(pk);
if (Validator.isNotNull(dettPratica)) {
adding = dettPratica.getFullDescription();
out.print(dettPratica.getFullDescription());
}
}
out.print(adding);
%>
</div>
@ -360,11 +367,11 @@ for (String codiceDoc:tipologiaAllegati) {
%>
</div>
<c:if test='<%= inBO && "page_geologica".equals(comingFrom) %>'>
<c:if test='<%= inBO && comingFromGeologica %>'>
<div class="col-xs-2 col-sm-2 col-md-2 col-lg-2">
<span>
<%
if (className.equals(DettPratica.class.getName())) {
if (isDettPratica) {
pk = docPratica.getClassPk();
if (!dettPraticas.containsKey(pk)) {
dettPraticas.put(pk, DettPraticaLocalServiceUtil.fetchDettPratica(pk));
@ -389,7 +396,7 @@ for (String codiceDoc:tipologiaAllegati) {
<c:if test='<%= inBO %>'>
<c:choose>
<c:when test='<%= "page_geologica".equals(comingFrom) %>'>
<c:when test='<%= comingFromGeologica %>'>
<div class="col-xs-2 col-sm-2 col-md-2 col-lg-2 asserazioni-body-title text-center">
</c:when>
<c:otherwise>
@ -432,9 +439,9 @@ for (String codiceDoc:tipologiaAllegati) {
</liferay-util:include>
</c:when>
<c:otherwise>
<c:if test="<%= !inBO %>">
<c:if test="<%= !disabledInput || canSignGeoDocs %>">
<liferay-util:include page="/html/allegatipratica/allegati_action.jsp"
<c:if test="<%= !inBO && !disabledInput || canSignGeoDocs %>">
<%@ include file="/html/allegatipratica/allegati_action.jspf" %>
<%-- <liferay-util:include page="/html/allegatipratica/allegati_action.jsp"
servletContext="<%= application %>">
<liferay-util:param name="backUrl" value="<%= currentURL %>" />
<liferay-util:param name="comingFrom" value="<%= comingFrom %>" />
@ -442,8 +449,7 @@ for (String codiceDoc:tipologiaAllegati) {
<liferay-util:param name="className" value="<%= className %>" />
<liferay-util:param name="docPraticaId" value="<%= String.valueOf(docPratica.getDocPraticaId()) %>" />
<liferay-util:param name="disabledInput" value="<%= String.valueOf(disabledInput) %>" />
</liferay-util:include>
</c:if>
</liferay-util:include> --%>
</c:if>
<c:if test="<%= inBO %>">
<liferay-portlet:renderURL var="previewURL" windowState="<%= LiferayWindowState.POP_UP.toString() %>">

1
liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/fascicolofe/edit_fascicolo.jsp

@ -15,7 +15,6 @@
<%@ include file="/html/fascicolofe/init.jsp" %>
<%
String backURL = ParamUtil.getString(request, "backURL");
long dettPraticaId = ParamUtil.getLong(request, "dettPraticaId", 0l);
long intPraticaId = ParamUtil.getLong(request, "intPraticaId", 0l);

1
liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/fascicolofe/navigator/domanda/page_dettagli_principali.jsp

@ -26,7 +26,6 @@
<%@ include file="/html/fascicolofe/init.jsp"%>
<%
DettPratica dettPratica = (DettPratica) request.getAttribute("bean.dettPratica");
IntPratica intPratica = IntPraticaLocalServiceUtil.getIntPratica(dettPratica.getIntPraticaId());
Territorio territorio = TerritorioLocalServiceUtil.getTerritorio(intPratica.getTerritorioId());

Caricamento…
Annulla
Salva