From f45dd41375bb885dd20cc17a48c0b17057d93e9b Mon Sep 17 00:00:00 2001 From: Salvatore La Manna Date: Tue, 29 Sep 2020 17:02:55 +0200 Subject: [PATCH] correzione permessi altri tipi di allegati --- .../it/mwg/sismica/bo/util/SismicaUtil.java | 180 ++++++++++++++++++ 1 file changed, 180 insertions(+) diff --git a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/mwg/sismica/bo/util/SismicaUtil.java b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/mwg/sismica/bo/util/SismicaUtil.java index dfdd6403..d8ec6a0a 100644 --- a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/mwg/sismica/bo/util/SismicaUtil.java +++ b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/mwg/sismica/bo/util/SismicaUtil.java @@ -5,21 +5,29 @@ */ package it.mwg.sismica.bo.util; +import it.tref.liferay.portos.bo.model.AllegatoManuale; import it.tref.liferay.portos.bo.model.Asseverazione; import it.tref.liferay.portos.bo.model.Avviso; import it.tref.liferay.portos.bo.model.ControlloPratica; import it.tref.liferay.portos.bo.model.DettPratica; +import it.tref.liferay.portos.bo.model.DocAggiuntiva; import it.tref.liferay.portos.bo.model.DocPratica; import it.tref.liferay.portos.bo.model.IntPratica; +import it.tref.liferay.portos.bo.model.Pagamento; +import it.tref.liferay.portos.bo.model.ParereGeologo; import it.tref.liferay.portos.bo.model.Territorio; import it.tref.liferay.portos.bo.model.impl.AvvisoImpl; +import it.tref.liferay.portos.bo.service.AllegatoManualeLocalServiceUtil; import it.tref.liferay.portos.bo.service.AsseverazioneLocalServiceUtil; import it.tref.liferay.portos.bo.service.AvvisoLocalServiceUtil; import it.tref.liferay.portos.bo.service.ConfigurazioneLocalServiceUtil; import it.tref.liferay.portos.bo.service.ControlloPraticaLocalServiceUtil; import it.tref.liferay.portos.bo.service.DettPraticaLocalServiceUtil; +import it.tref.liferay.portos.bo.service.DocAggiuntivaLocalServiceUtil; import it.tref.liferay.portos.bo.service.DocPraticaLocalServiceUtil; import it.tref.liferay.portos.bo.service.IntPraticaLocalServiceUtil; +import it.tref.liferay.portos.bo.service.PagamentoLocalServiceUtil; +import it.tref.liferay.portos.bo.service.ParereGeologoLocalServiceUtil; import it.tref.liferay.portos.bo.service.TerritorioLocalServiceUtil; import it.tref.liferay.portos.bo.shared.util.ConfigurazioneConstants; import it.tref.liferay.portos.bo.shared.util.StatoPraticaConstants; @@ -1049,9 +1057,55 @@ public class SismicaUtil { raFolder = ResourceActionLocalServiceUtil .getResourceAction(DLFolder.class.getName(), ActionKeys.VIEW); + esito.addAll(riparaPermessiAllegatiManuali(companyId)); esito.addAll(riparaPermessiAsseverazioni(companyId)); esito.addAll(riparaPermessiAvvisi(companyId)); + esito.addAll(riparaPermessiDocAggiuntive(companyId)); esito.addAll(riparaPermessiDocPratica(companyId)); + esito.addAll(riparaPermessiPagamenti(companyId)); + esito.addAll(riparaPermessiPareriGeologi(companyId)); + return esito; + } + + public static List riparaPermessiAllegatiManuali(long companyId) throws SystemException, + PortalException { + List esito = new ArrayList<>(); + + int inizio = 0; + int totali = 0; + List documenti = null; + String tipoDocumento = null; + do { + documenti = AllegatoManualeLocalServiceUtil.getAllegatoManuales(inizio, inizio + SLICE); + for (AllegatoManuale documento : documenti) { + if (Validator.isNull(tipoDocumento)) { + tipoDocumento = documento.getClass().getSimpleName(); + } + IntPratica pratica = null; + try { + pratica = IntPraticaLocalServiceUtil.getIntPratica(documento.getIntPraticaId()); + } catch (PortalException e) { + } + if (Validator.isNotNull(pratica) && (documento.getFileEntryId() != 0)) { + Territorio territorio = TerritorioLocalServiceUtil.getTerritorio(pratica + .getTerritorioId()); + FileEntry fileEntry = null; + try { + fileEntry = DLAppServiceUtil.getFileEntry(documento.getFileEntryId()); + } catch (Exception e) { + _log.info(e.getClass() + ": " + e.getMessage()); + } + esito.addAll(riparaPermessiFileEntry(companyId, territorio.getGroupId(), fileEntry, + "Pratica " + pratica.getNumeroProgetto() + " (" + pratica.getIntPraticaId() + + "), " + tipoDocumento + " " + documento.getPrimaryKey())); + } + } + inizio += SLICE; + if (documenti.size() > 0) { + totali += documenti.size(); + _log.info(totali + " " + tipoDocumento); + } + } while (documenti.size() > 0); return esito; } @@ -1164,6 +1218,48 @@ public class SismicaUtil { return esito; } + public static List riparaPermessiDocAggiuntive(long companyId) throws SystemException, + PortalException { + List esito = new ArrayList<>(); + + int inizio = 0; + int totali = 0; + List documenti = null; + String tipoDocumento = null; + do { + documenti = DocAggiuntivaLocalServiceUtil.getDocAggiuntivas(inizio, inizio + SLICE); + for (DocAggiuntiva documento : documenti) { + if (Validator.isNull(tipoDocumento)) { + tipoDocumento = documento.getClass().getSimpleName(); + } + IntPratica pratica = null; + try { + pratica = IntPraticaLocalServiceUtil.getIntPratica(documento.getIntPraticaId()); + } catch (PortalException e) { + } + if (Validator.isNotNull(pratica) && (documento.getFileEntryId() != 0)) { + Territorio territorio = TerritorioLocalServiceUtil.getTerritorio(pratica + .getTerritorioId()); + FileEntry fileEntry = null; + try { + fileEntry = DLAppServiceUtil.getFileEntry(documento.getFileEntryId()); + } catch (Exception e) { + _log.info(e.getClass() + ": " + e.getMessage()); + } + esito.addAll(riparaPermessiFileEntry(companyId, territorio.getGroupId(), fileEntry, + "Pratica " + pratica.getNumeroProgetto() + " (" + pratica.getIntPraticaId() + + "), " + tipoDocumento + " " + documento.getPrimaryKey())); + } + } + inizio += SLICE; + if (documenti.size() > 0) { + totali += documenti.size(); + _log.info(totali + " " + tipoDocumento); + } + } while (documenti.size() > 0); + return esito; + } + public static List riparaPermessiDocPratica(long companyId) throws SystemException, PortalException { List esito = new ArrayList<>(); @@ -1206,6 +1302,90 @@ public class SismicaUtil { return esito; } + public static List riparaPermessiPagamenti(long companyId) throws SystemException, + PortalException { + List esito = new ArrayList<>(); + + int inizio = 0; + int totali = 0; + List documenti = null; + String tipoDocumento = null; + do { + documenti = PagamentoLocalServiceUtil.getPagamentos(inizio, inizio + SLICE); + for (Pagamento documento : documenti) { + if (Validator.isNull(tipoDocumento)) { + tipoDocumento = documento.getClass().getSimpleName(); + } + IntPratica pratica = null; + try { + pratica = IntPraticaLocalServiceUtil.getIntPratica(documento.getIntPraticaId()); + } catch (PortalException e) { + } + if (Validator.isNotNull(pratica) && (documento.getFileEntryId() != 0)) { + Territorio territorio = TerritorioLocalServiceUtil.getTerritorio(pratica + .getTerritorioId()); + FileEntry fileEntry = null; + try { + fileEntry = DLAppServiceUtil.getFileEntry(documento.getFileEntryId()); + } catch (Exception e) { + _log.info(e.getClass() + ": " + e.getMessage()); + } + esito.addAll(riparaPermessiFileEntry(companyId, territorio.getGroupId(), fileEntry, + "Pratica " + pratica.getNumeroProgetto() + " (" + pratica.getIntPraticaId() + + "), " + tipoDocumento + " " + documento.getPrimaryKey())); + } + } + inizio += SLICE; + if (documenti.size() > 0) { + totali += documenti.size(); + _log.info(totali + " " + tipoDocumento); + } + } while (documenti.size() > 0); + return esito; + } + + public static List riparaPermessiPareriGeologi(long companyId) throws SystemException, + PortalException { + List esito = new ArrayList<>(); + + int inizio = 0; + int totali = 0; + List documenti = null; + String tipoDocumento = null; + do { + documenti = ParereGeologoLocalServiceUtil.getParereGeologos(inizio, inizio + SLICE); + for (ParereGeologo documento : documenti) { + if (Validator.isNull(tipoDocumento)) { + tipoDocumento = documento.getClass().getSimpleName(); + } + IntPratica pratica = null; + try { + pratica = IntPraticaLocalServiceUtil.getIntPratica(documento.getIntPraticaId()); + } catch (PortalException e) { + } + if (Validator.isNotNull(pratica) && (documento.getFileEntryId() != 0)) { + Territorio territorio = TerritorioLocalServiceUtil.getTerritorio(pratica + .getTerritorioId()); + FileEntry fileEntry = null; + try { + fileEntry = DLAppServiceUtil.getFileEntry(documento.getFileEntryId()); + } catch (Exception e) { + _log.info(e.getClass() + ": " + e.getMessage()); + } + esito.addAll(riparaPermessiFileEntry(companyId, territorio.getGroupId(), fileEntry, + "Pratica " + pratica.getNumeroProgetto() + " (" + pratica.getIntPraticaId() + + "), " + tipoDocumento + " " + documento.getPrimaryKey())); + } + } + inizio += SLICE; + if (documenti.size() > 0) { + totali += documenti.size(); + _log.info(totali + " " + tipoDocumento); + } + } while (documenti.size() > 0); + return esito; + } + private static List riparaPermessiFileEntry(long companyId, long groupId, FileEntry fileEntry, String datiDocumento) throws PortalException, SystemException { List esito = new ArrayList<>();