From 18e1515b6d83a9c77814a98eb5575823b9f1efa3 Mon Sep 17 00:00:00 2001 From: marcoalderighi Date: Tue, 21 Mar 2023 14:44:28 +0100 Subject: [PATCH] =?UTF-8?q?aggiunta=20funzionalit=C3=A0=20per=20cancellazi?= =?UTF-8?q?one=20ControlloPratica=20per=20Pratiche=20di=20tipologia=20C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dist/portos-bo-shared-6.2.0.1.jar | Bin 45433 -> 45428 bytes .../build.xml | 2 +- .../docroot/WEB-INF/lib/portos-bo-shared.jar | Bin 0 -> 45428 bytes .../portlet/AdvancedOperationPortlet.java | 41 +++++++++++++++++- .../operation/util/AdvancedOperationUtil.java | 16 +++++++ .../docroot/html/view.jsp | 24 ++++++++++ 6 files changed, 80 insertions(+), 3 deletions(-) create mode 100644 liferay-plugins-sdk-6.2/portlets/portos-advanced-operation-portlet/docroot/WEB-INF/lib/portos-bo-shared.jar diff --git a/liferay-plugins-sdk-6.2/dist/portos-bo-shared-6.2.0.1.jar b/liferay-plugins-sdk-6.2/dist/portos-bo-shared-6.2.0.1.jar index 8b81cf20cf578fbd7b2709bd2f36720092581984..f8e54d4a98e27bb433dc155370aeefac57d1b1c5 100644 GIT binary patch delta 3535 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 delta 3524 zcmY+Hc|4R|8^>p{Ws7*j3{jRyGqN_eq{Y~>gvl0VPZVN|!pIPLEDyIWVXWD+hD1oH zrzBB|EHff&O(;v!JDutMyifDb_qu-PcVFk+bN}-@t8~N$9l>W|f@I@{!MI?s+DNZt zK6zvf6S$i)J@y_1*uQ>AW_=-0>Hl`7A$fWqk_m_#egN<=90TYHR|Cw2YXXkIrGGI6 zp$J+mLIuzjp$>Q(aU76_FlMbI%>g5j7QcB^$oI0FyU(AyLvn07VBMWfAFzxK54gg1 z>bI@}F)G-hJ~$UU7mRs;`WW^Bz{Q2MOFk)jv`UMF5{ZHh}eHqsn2H!cgmEO>e+qIe=&Sh(2pc zLBEt$3>}Anr_dYE5`2x`z=7AmL0Hu)L2C zC6P~bE$pXa=(=&;0(C5Yk7P;`b@fNv)LQuGwu$dQR^OBNTuX_So0~v3BuYQ!FY0JY zm+f_G3|+ZY_G#n#@ZY<2%W7RV-=qxj`rwU2E=eC6%TqqOpou!-dpC=m;@Vv?J+be_Zp~bfG`OQJt&sc8Ri=C3 z&M`|9g}DI1xU*cZj`JEXlLI3Pg9e{s_lmx?JI#}2DgTeGx-9xaao(J_(bSxr;eM&G zvm(yejD~`i8Y!hxdneijwbVy+Vvx~XfD`|8O{&B3>rbC#WX9Miiu)!Y#n`nx-w1Xm zw44p<%bRl$mzbN$ZB?7kNX(8*;8XQhjxnNrgKK73t&}?*=(&qh2qVA9wE56*dMF_^ zUGbw$V&lYp!jYZZN;Z!#ne~;_MERb?REUOXmWYa-eC932wj_#opvS3|r+*~b>@-<= za_@bY_;E~``)Kto@uj6?Tn&fgie_q?y#NFU4A! zyuZX2t{Pi>*?@yPAbi{~?Q2RpWyM&-_xauquI8+M(K0(ts%2nqfNhwkqff$L(=O?S z1JCRRRs!^?uZ?T0CcO^3mh|1^GdknLRc!SlgY-&sq&@w9tOUAkj$C(f$ilNmJ;tlv zB>sjgy2lxQKW_Ua(vSYM!t}UKTW9hnIrAZ1 zeGFzM-cr}leMKoCaFl!x|Gwh&qTfG-7tL-Ft{6Kdp)B|v2;HC3>+NJI8s4QL(j|1; z4uaOpWFdzD7Y8%zm3<#@TEy3?MQLL9vrh)y^&84CmBF=ypF-QIlVkD~jk8J~)Yx<# zuFVtf_H#6?@Z$33&LNuHE2NF!k1A%~$WqMf(Y&{lQzzzb`wSa-R#z6odP5m=e9DVi1-dxh&LM=$e0_s%MMTs56^BMF&t3|H70bXOSkGu+;0 zWGPEwx-^S8FOZ)q+`r)FMZhoumDbbTyH+ahT%;-^hiWbBz5kM*`_F^K+_)L5xC5m* zj*C359Q=~c=NX%+*hitjZR%2ab-6!u|ZapP=Neh;-0*LaZ=x9hus!NB3+ zl2+M^5#xQ9%LkNha6**8^l|MIp9|Nfu*5od;*VG@ttN6ZZgWx~VPG8=*1WJOIw45f zlvjxVZ+mraML+F&}yTIG(&+t~X zxhu^kMVJrdH^e^GeCL9txXiKIQzDD~G1|2m61FA;Y3ps5=4AVdx`jKEZ);6^B3)-x zPInAuBvY{-Y3GkbL6xJe6NxW|{i^3Z&hnnF(l&JN>B5x%J3d9Seo1x)ZFm$Ow-LLFGhV4$M0`(AJM6$-*-{D)@?KTylrSR`#)$hrwb$9uJtT3R%^L({Zc)&SvB~yk5xGdUE=<;OtLr&o*5`()942)BFESFJuVqks?}CZ zj_8#6IXoN9yM@6cMHU!q>&9MD(SlhUQvwqCU9{oYCHoDJw{MJR3WS_0>z%p-XG|yf z{nc=WVXMP6&hL{n1S{XJV@*A(>lP+w^h&RtYA3t&y``x+U;}!(+*WAxlu4VWDA3 zTYS39`zV*$!p|pd>vObot$T1J!6aQ6n2y<|j?+;>9Y#0w;PLTOVV5)OW;MGRNeD?# z26@LM#2dbYVImfaW~foDI=CsG5uRd|h>6b0gMPW4D8@5UM>ec-Gw)UaM>~Ray)zim z9@kmT5za?BHOWoMh{zCgWN#D;MZL`*Ik||q#@o)nsM-vF@5VU5SP%<6%s`878B88l zUEed=bZEV*TF}YAlYk_cB%UKd{U<^b0WzHig??IF#<K-CIAnus^ zA7ckaDlwZ?sD{q4l8|`#OI85-eEoN7%8Ke^dA#ESSW6QL-&w_2@)|274X4I%BAH

z@edllDi-@4__)X2?2++3{Uj@{>;{jOkn>;1npeL2E&M;cy0{Ww+?trDGUVuVn zK7f&Bo`8#Gp@0|5eE~Cykg zGn@d1U98y;hAFhpJIFtQr^}n*zH4*>- diff --git a/liferay-plugins-sdk-6.2/portlets/portos-advanced-operation-portlet/build.xml b/liferay-plugins-sdk-6.2/portlets/portos-advanced-operation-portlet/build.xml index 79da3e91..a419fc91 100644 --- a/liferay-plugins-sdk-6.2/portlets/portos-advanced-operation-portlet/build.xml +++ b/liferay-plugins-sdk-6.2/portlets/portos-advanced-operation-portlet/build.xml @@ -2,6 +2,6 @@ - + \ No newline at end of file diff --git a/liferay-plugins-sdk-6.2/portlets/portos-advanced-operation-portlet/docroot/WEB-INF/lib/portos-bo-shared.jar b/liferay-plugins-sdk-6.2/portlets/portos-advanced-operation-portlet/docroot/WEB-INF/lib/portos-bo-shared.jar new file mode 100644 index 0000000000000000000000000000000000000000..f8e54d4a98e27bb433dc155370aeefac57d1b1c5 GIT binary patch literal 45428 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 controlloPraticaList = + ControlloPraticaLocalServiceUtil.findByIntPratica(intPraticaId); + for(ControlloPratica cp : controlloPraticaList){ + _log.info("AdvancedOperationPortlet --- Deleting ControlloPratica " + cp.getControlloPraticaId() + + " of IntPraticaId " + intPraticaId); + ControlloPraticaLocalServiceUtil.deleteControlloPratica(cp); + } + } + actionResponse.setRenderParameter("intPraticaId", String.valueOf(intPraticaId)); + } + public void reindexPratica(ActionRequest actionRequest, ActionResponse actionResponse) throws Exception{ _checkIfUserIsCompanyAdmin(actionRequest); @@ -41,10 +62,12 @@ public class AdvancedOperationPortlet extends MVCPortlet { long intPraticaId = ParamUtil.getLong(actionRequest, "intPraticaId", 0L); if (intPraticaId != 0L) { + _log.info("AdvancedOperationPortlet --- Reindexing fascicolo of IntPraticaId " + intPraticaId); IntPraticaLocalServiceUtil.reIndexFasciolo(intPraticaId, themeDisplay.getCompanyId()); } actionResponse.setRenderParameter("intPraticaId", String.valueOf(intPraticaId)); } + public void cambiaDataInizioLavori(ActionRequest actionRequest, ActionResponse actionResponse) throws Exception{ _checkIfUserIsCompanyAdmin(actionRequest); @@ -53,7 +76,7 @@ public class AdvancedOperationPortlet extends MVCPortlet { Date dataInizioLavoriOpera = ParamUtil.getDate(actionRequest, "dataInizioLavoriOperaInput", DateFormatFactoryUtil.getSimpleDateFormat("yyyy-MM-dd"), null); IntPratica intPratica = IntPraticaLocalServiceUtil.fetchIntPratica(intPraticaId); - + _log.info("AdvancedOperationPortlet --- Changing DataInizioLavori on DettPraticas of IntPraticaId" + intPraticaId); List dettPraticaListWithInizioLavori = AdvancedOperationUtil.fetchDettPraticaListWithInizioLavori(intPratica); for(DettPratica dettPratica : dettPraticaListWithInizioLavori){ dettPratica.setDataInizioLavoriOpera(dataInizioLavoriOpera); @@ -71,6 +94,7 @@ public class AdvancedOperationPortlet extends MVCPortlet { boolean normLavoriInProprioFlag = ParamUtil.getBoolean(actionRequest, "normLavoriInProprioFlag"); List dettPraticaList = DettPraticaLocalServiceUtil.findByIntPraticaId(intPraticaId); + _log.info("AdvancedOperationPortlet --- Fixing NormLavoriInProprio flag of IntPraticaId " + intPraticaId); for(DettPratica dettPratica : dettPraticaList){ if(dettPratica.getNormLavoriInProprio() == normLavoriInProprioFlag){ dettPratica.setNormLavoriInProprio(!normLavoriInProprioFlag); @@ -89,6 +113,7 @@ public class AdvancedOperationPortlet extends MVCPortlet { boolean collaudoStaticoFlag = ParamUtil.getBoolean(actionRequest, "collaudoStaticoFlag"); List dettPraticaList = DettPraticaLocalServiceUtil.findByIntPraticaId(intPraticaId); + _log.info("AdvancedOperationPortlet --- Fixing CollaudoStatico flag of IntPraticaId " + intPraticaId); for(DettPratica dettPratica : dettPraticaList){ if(dettPratica.getCollaudoStatico() == collaudoStaticoFlag){ dettPratica.setCollaudoStatico(!collaudoStaticoFlag); @@ -107,10 +132,14 @@ public class AdvancedOperationPortlet extends MVCPortlet { IntPratica intPratica = IntPraticaLocalServiceUtil.fetchIntPratica(intPraticaId); if(WorkflowConstants.STATUS_DRAFT == intPratica.getStatus()){ + _log.info("AdvancedOperationPortlet --- Fixing StatusPratica (From DRAFT to PENDING) " + + "of IntPraticaId " + intPraticaId); intPratica.setStatus(WorkflowConstants.STATUS_PENDING); intPratica.setModifiedDate(new Date()); IntPraticaLocalServiceUtil.updateIntPratica(intPratica); } else { + _log.info("AdvancedOperationPortlet --- Impossible operation: Fixing StatusPratica (From DRAFT to PENDING) " + + "of IntPraticaId " + intPraticaId); SessionErrors.add(actionRequest, "operazione-impossibile"); } actionResponse.setRenderParameter("intPraticaId", String.valueOf(intPraticaId)); @@ -124,6 +153,8 @@ public class AdvancedOperationPortlet extends MVCPortlet { IntPratica intPratica = IntPraticaLocalServiceUtil.fetchIntPratica(intPraticaId); if(WorkflowConstants.STATUS_INCOMPLETE == intPratica.getStatus()){ + _log.info("AdvancedOperationPortlet --- Recovering Pratica Vidimata (INCOMPLETE ==> DRAFT) " + + "with IntPraticaId " + intPraticaId); _ripristinaPratica(intPratica, WorkflowConstants.STATUS_DRAFT); } else { SessionErrors.add(actionRequest, "operazione-impossibile"); @@ -138,8 +169,10 @@ public class AdvancedOperationPortlet extends MVCPortlet { long intPraticaId = ParamUtil.getLong(actionRequest, "intPraticaId", -1L); IntPratica intPratica = IntPraticaLocalServiceUtil.fetchIntPratica(intPraticaId); - + if(WorkflowConstants.STATUS_INCOMPLETE == intPratica.getStatus()){ + _log.info("AdvancedOperationPortlet --- Recovering Pratica Vidimata (INCOMPLETE ==> APPROVED) " + + "with IntPraticaId " + intPraticaId); _ripristinaPratica(intPratica, WorkflowConstants.STATUS_APPROVED); } else { SessionErrors.add(actionRequest, "operazione-impossibile"); @@ -155,7 +188,11 @@ public class AdvancedOperationPortlet extends MVCPortlet { long intPraticaId = ParamUtil.getLong(actionRequest, "intPraticaId", -1L); List docPraticaOrfani = AdvancedOperationUtil.getDocPraticaOrfani(intPraticaId); + _log.info("AdvancedOperationPortlet --- Deleting Documenti Orfani " + + "of IntPraticaId " + intPraticaId); for(DocPratica docPratica : docPraticaOrfani){ + _log.info("AdvancedOperationPortlet --- Deleting Documento Orfan " + docPratica.getDocPraticaId() + + " of IntPraticaId " + intPraticaId); DocPraticaLocalServiceUtil.deleteDocPratica(docPratica); } actionResponse.setRenderParameter("intPraticaId", String.valueOf(intPraticaId)); diff --git a/liferay-plugins-sdk-6.2/portlets/portos-advanced-operation-portlet/docroot/WEB-INF/src/it/nextmind/liferay/portos/advanced/operation/util/AdvancedOperationUtil.java b/liferay-plugins-sdk-6.2/portlets/portos-advanced-operation-portlet/docroot/WEB-INF/src/it/nextmind/liferay/portos/advanced/operation/util/AdvancedOperationUtil.java index 244e9548..76b58a90 100644 --- a/liferay-plugins-sdk-6.2/portlets/portos-advanced-operation-portlet/docroot/WEB-INF/src/it/nextmind/liferay/portos/advanced/operation/util/AdvancedOperationUtil.java +++ b/liferay-plugins-sdk-6.2/portlets/portos-advanced-operation-portlet/docroot/WEB-INF/src/it/nextmind/liferay/portos/advanced/operation/util/AdvancedOperationUtil.java @@ -21,12 +21,28 @@ import it.tref.liferay.portos.bo.model.IntPratica; import it.tref.liferay.portos.bo.service.ControlloPraticaLocalServiceUtil; import it.tref.liferay.portos.bo.service.DettPraticaLocalServiceUtil; import it.tref.liferay.portos.bo.service.DocPraticaLocalServiceUtil; +import it.tref.liferay.portos.bo.shared.util.Constants; +import java.io.Console; import java.util.ArrayList; import java.util.Date; import java.util.List; public class AdvancedOperationUtil { + + public static boolean hasControlloPratica_ProceduraC(IntPratica intPratica){ + if(Constants.PROCEDURA_C.equalsIgnoreCase(intPratica.getTipoProcedura())){ + try{ + long intPraticaId = intPratica.getIntPraticaId(); + List controlloPraticas = ControlloPraticaLocalServiceUtil.findByIntPratica(intPraticaId); + return !controlloPraticas.isEmpty(); + } catch (SystemException e){ + _log.error(e,e); + return false; + } + } + return false; + } public static List getListaTask(IntPratica intPratica) { if(Validator.isNull(intPratica)){ diff --git a/liferay-plugins-sdk-6.2/portlets/portos-advanced-operation-portlet/docroot/html/view.jsp b/liferay-plugins-sdk-6.2/portlets/portos-advanced-operation-portlet/docroot/html/view.jsp index 2a9e43e5..61813f14 100644 --- a/liferay-plugins-sdk-6.2/portlets/portos-advanced-operation-portlet/docroot/html/view.jsp +++ b/liferay-plugins-sdk-6.2/portlets/portos-advanced-operation-portlet/docroot/html/view.jsp @@ -242,6 +242,30 @@ <% } %> + <% if(AdvancedOperationUtil.hasControlloPratica_ProceduraC(intPratica)){ %> +

+ + + + + <% + String functionControlloPratica = "javascript:"+renderResponse.getNamespace()+"openConfirmationDialog('"+renderResponse.getNamespace()+"deleteControlloPratica','Sei sicuro di voler eliminare questo ControlloPratica ed il relativo WorkFlow?')"; + %> + + + + +
+ <% } %> + <% if(AdvancedOperationUtil.isPraticaAnnullata(intPratica)){ %>