Salvatore La Manna
3 anni fa
102 ha cambiato i file con 3283 aggiunte e 2402 eliminazioni
File diff soppresso perché troppo grande
Load Diff
@ -1,276 +0,0 @@
|
||||
package it.tref.liferay.portos.bo.util; |
||||
|
||||
import it.tref.liferay.portos.bo.model.Collaudo; |
||||
import it.tref.liferay.portos.bo.model.Delega; |
||||
import it.tref.liferay.portos.bo.model.DettPratica; |
||||
import it.tref.liferay.portos.bo.model.DocPratica; |
||||
import it.tref.liferay.portos.bo.model.FineLavori; |
||||
import it.tref.liferay.portos.bo.model.Soggetto; |
||||
import it.tref.liferay.portos.bo.service.CollaudoServiceUtil; |
||||
import it.tref.liferay.portos.bo.service.DelegaLocalServiceUtil; |
||||
import it.tref.liferay.portos.bo.service.DettPraticaLocalServiceUtil; |
||||
import it.tref.liferay.portos.bo.service.DettPraticaServiceUtil; |
||||
import it.tref.liferay.portos.bo.service.DocPraticaLocalServiceUtil; |
||||
import it.tref.liferay.portos.bo.service.FineLavoriServiceUtil; |
||||
import it.tref.liferay.portos.bo.service.SoggettoLocalServiceUtil; |
||||
import it.tref.liferay.portos.bo.shared.util.TipoSoggettoUtil; |
||||
|
||||
import java.util.ArrayList; |
||||
import java.util.HashMap; |
||||
import java.util.List; |
||||
import java.util.Map; |
||||
|
||||
import com.liferay.portal.kernel.dao.orm.QueryUtil; |
||||
import com.liferay.portal.kernel.exception.PortalException; |
||||
import com.liferay.portal.kernel.exception.SystemException; |
||||
import com.liferay.portal.kernel.util.Validator; |
||||
import com.liferay.portal.model.User; |
||||
import com.liferay.portal.service.UserLocalServiceUtil; |
||||
|
||||
public class DelegheUtil { |
||||
|
||||
public static final String STATO_ASSEGNATA = "AS"; |
||||
public static final String STATO_ESEGUITA = "ES"; |
||||
public static final String STATO_ANNULLATA = "AN"; |
||||
public static final String STATO_RIFIUTATA = "RI"; |
||||
|
||||
public static final String TIPO_TOTALE = "TT"; |
||||
public static final String TIPO_COMPILAZIONE = "CO"; |
||||
public static final String TIPO_GEOLOGO = "GE"; |
||||
public static final String TIPO_FIRMA_INSERIMENTO_ALLEGATI = "FI"; |
||||
public static final String TIPO_PAGAMENTO = "PG"; |
||||
public static final String TIPO_VISUALIZZAZIONE = "VI"; |
||||
public static final String TIPO_FINE_LAVORI = "FL"; |
||||
public static final String TIPO_COLLAUDO = "CL"; |
||||
|
||||
public static boolean hasDelegaFirma(long userId, long docPraticaId, boolean sezioneGeologica) |
||||
throws PortalException, SystemException { |
||||
|
||||
DocPratica docPratica = DocPraticaLocalServiceUtil.getDocPratica(docPraticaId); |
||||
boolean controllo = true; |
||||
DettPratica dettPratica = null; |
||||
if (DettPratica.class.getName().equals(docPratica.getClassName())) { |
||||
dettPratica = DettPraticaServiceUtil.getDettPratica(docPratica.getClassPk()); |
||||
controllo = dettPratica.praticaIsEditable(); |
||||
} |
||||
if (controllo) { |
||||
User user = UserLocalServiceUtil.getUser(userId); |
||||
long owner = 0L; |
||||
long intPraticaId = 0L; |
||||
if (DettPratica.class.getName().equals(docPratica.getClassName())) { |
||||
intPraticaId = dettPratica.getIntPraticaId(); |
||||
owner = dettPratica.getUserId(); |
||||
} else if (FineLavori.class.getName().equals(docPratica.getClassName())) { |
||||
FineLavori fineLavori = FineLavoriServiceUtil.getFineLavori(docPratica.getClassPk()); |
||||
owner = fineLavori.getUserId(); |
||||
} else if (Collaudo.class.getName().equals(docPratica.getClassName())) { |
||||
Collaudo collaudo = CollaudoServiceUtil.getCollaudo(docPratica.getClassPk()); |
||||
owner = collaudo.getUserId(); |
||||
} |
||||
if (user.getUserId() == owner) { |
||||
controllo = true; |
||||
} else if (DettPratica.class.getName().equals(docPratica.getClassName())) { |
||||
List<Delega> deleghe = findDeleghe(intPraticaId, sezioneGeologica); |
||||
controllo = false; |
||||
if (!deleghe.isEmpty()) { |
||||
controllo = false; |
||||
for (Delega delega : deleghe) { |
||||
if (delega.getCodiceFiscale().equalsIgnoreCase(user.getScreenName())) { |
||||
controllo = true; |
||||
break; |
||||
} |
||||
} |
||||
} |
||||
} else { |
||||
controllo = false; |
||||
} |
||||
} |
||||
return controllo; |
||||
} |
||||
|
||||
private static List<Delega> findDeleghe(long intPraticaid, boolean sezioneGeologica) throws SystemException { |
||||
|
||||
List<Delega> deleghe = new ArrayList<Delega>(); |
||||
deleghe.addAll(DelegaLocalServiceUtil.findByIntPratica_Tipologia_InEsito(intPraticaid, |
||||
DelegheUtil.TIPO_COMPILAZIONE, new String[] { DelegheUtil.STATO_ASSEGNATA }, QueryUtil.ALL_POS, |
||||
QueryUtil.ALL_POS, null)); |
||||
deleghe.addAll(DelegaLocalServiceUtil.findByIntPratica_Tipologia_InEsito(intPraticaid, |
||||
DelegheUtil.TIPO_FIRMA_INSERIMENTO_ALLEGATI, new String[] { DelegheUtil.STATO_ASSEGNATA }, |
||||
QueryUtil.ALL_POS, QueryUtil.ALL_POS, null)); |
||||
if (sezioneGeologica) { |
||||
deleghe.addAll(DelegaLocalServiceUtil.findByIntPratica_Tipologia_InEsito(intPraticaid, |
||||
DelegheUtil.TIPO_GEOLOGO, new String[] { DelegheUtil.STATO_ASSEGNATA }, QueryUtil.ALL_POS, |
||||
QueryUtil.ALL_POS, null)); |
||||
} |
||||
return deleghe; |
||||
} |
||||
|
||||
public static boolean hasDelegaDeleteFile(long userId, long docPraticaId, boolean sezioneGeologica) |
||||
throws PortalException, SystemException { |
||||
|
||||
// TODO completare e controllare
|
||||
DocPratica docPratica = DocPraticaLocalServiceUtil.getDocPratica(docPraticaId); |
||||
DettPratica dettPratica = DettPraticaLocalServiceUtil.getDettPratica(docPratica.getClassPk()); |
||||
return dettPratica.praticaIsEditable(); |
||||
} |
||||
|
||||
public static boolean hasCambioStatoDelega(long userId, long delegaId) throws PortalException, SystemException { |
||||
|
||||
return true; |
||||
} |
||||
|
||||
public static boolean hasCreazioneDelega(long userId, long intPraticaId) throws PortalException, SystemException { |
||||
|
||||
return true; |
||||
} |
||||
|
||||
public static boolean hasDeleteDelega(long userId, long intPraticaId) throws PortalException, SystemException { |
||||
|
||||
return hasCreazioneDelega(userId, intPraticaId); |
||||
} |
||||
|
||||
public static boolean hasAnnullaDelega(long userId, long intPraticaId) throws PortalException, SystemException { |
||||
|
||||
return hasCreazioneDelega(userId, intPraticaId); |
||||
} |
||||
|
||||
public static boolean canCompilaDomanda(long userId, long dettPraticaId) throws PortalException, SystemException { |
||||
|
||||
boolean controllo = false; |
||||
User user = UserLocalServiceUtil.getUser(userId); |
||||
DettPratica dettPratica = DettPraticaServiceUtil.getDettPratica(dettPraticaId); |
||||
List<Delega> deleghe = DelegaLocalServiceUtil.findByIntPratica_Tipologia_InEsito(dettPratica.getIntPraticaId(), |
||||
DelegheUtil.TIPO_COMPILAZIONE, new String[] { DelegheUtil.STATO_ASSEGNATA }, QueryUtil.ALL_POS, |
||||
QueryUtil.ALL_POS, null); |
||||
if (deleghe.isEmpty()) { |
||||
if (user.getUserId() == dettPratica.getUserId()) { |
||||
controllo = true; |
||||
} else { |
||||
controllo = false; |
||||
} |
||||
} else { |
||||
controllo = false; |
||||
for (Delega delega : deleghe) { |
||||
if (delega.getCodiceFiscale().equalsIgnoreCase(user.getScreenName())) { |
||||
controllo = true; |
||||
} |
||||
} |
||||
} |
||||
return controllo; |
||||
} |
||||
|
||||
public static Soggetto getPersonaDelegaCompilazioneDomanda(long dettPraticaId) throws SystemException, |
||||
PortalException { |
||||
|
||||
Soggetto soggetto = null; |
||||
DettPratica dettPratica = DettPraticaServiceUtil.getDettPratica(dettPraticaId); |
||||
if (dettPratica.praticaIsEditable()) { |
||||
List<Delega> deleghe = DelegaLocalServiceUtil.findByIntPratica_Tipologia_InEsito( |
||||
dettPratica.getIntPraticaId(), DelegheUtil.TIPO_COMPILAZIONE, |
||||
new String[] { DelegheUtil.STATO_ASSEGNATA }, QueryUtil.ALL_POS, QueryUtil.ALL_POS, null); |
||||
if (!deleghe.isEmpty()) { |
||||
for (Delega delega : deleghe) { |
||||
List<Soggetto> soggetti = SoggettoLocalServiceUtil.findByDettPratica_CodiceFiscale(dettPraticaId, |
||||
delega.getCodiceFiscale()); |
||||
for (Soggetto soggettoTmp : soggetti) { |
||||
soggetto = soggettoTmp; |
||||
} |
||||
} |
||||
} |
||||
} |
||||
return soggetto; |
||||
} |
||||
|
||||
public static Soggetto getPersonaDelegaCompilazioneSezioneGeologica(long dettPraticaId) throws SystemException, |
||||
PortalException { |
||||
|
||||
Soggetto soggetto = null; |
||||
DettPratica dettPratica = DettPraticaServiceUtil.getDettPratica(dettPraticaId); |
||||
if (dettPratica.praticaIsEditable()) { |
||||
List<Delega> deleghe = DelegaLocalServiceUtil.findByIntPratica_Tipologia_InEsito( |
||||
dettPratica.getIntPraticaId(), DelegheUtil.TIPO_GEOLOGO, |
||||
new String[] { DelegheUtil.STATO_ASSEGNATA }, QueryUtil.ALL_POS, QueryUtil.ALL_POS, null); |
||||
if (!deleghe.isEmpty()) { |
||||
for (Delega delega : deleghe) { |
||||
List<Soggetto> soggetti = SoggettoLocalServiceUtil.findByDettPratica_CodiceFiscale(dettPraticaId, |
||||
delega.getCodiceFiscale()); |
||||
for (Soggetto soggettoTmp : soggetti) { |
||||
soggetto = soggettoTmp; |
||||
} |
||||
} |
||||
} else { |
||||
soggetto = getPersonaDelegaCompilazioneDomanda(dettPraticaId); |
||||
} |
||||
} |
||||
return soggetto; |
||||
} |
||||
|
||||
public static List<Soggetto> getGeologi(long intPraticaId) throws SystemException { |
||||
|
||||
List<Soggetto> geologi = new ArrayList<Soggetto>(); |
||||
List<Soggetto> soggetti = SoggettoLocalServiceUtil.findByIntPratica(intPraticaId); |
||||
for (Soggetto soggetto : soggetti) { |
||||
if (soggetto.getTipologiaSoggetto().equalsIgnoreCase(TipoSoggettoUtil.GEOLOGO) |
||||
&& Validator.isNull(soggetto.getSostituitoDa())) |
||||
geologi.add(soggetto); |
||||
} |
||||
return geologi; |
||||
} |
||||
|
||||
public static boolean hasDelegaPagamento(long userId, long dettPraticaId) throws PortalException, SystemException { |
||||
|
||||
boolean controllo = false; |
||||
User user = UserLocalServiceUtil.getUser(userId); |
||||
DettPratica dettPratica = DettPraticaServiceUtil.getDettPratica(dettPraticaId); |
||||
List<Delega> deleghe = DelegaLocalServiceUtil.findByIntPratica_Tipologia_InEsito(dettPratica.getIntPraticaId(), |
||||
DelegheUtil.TIPO_PAGAMENTO, new String[] { DelegheUtil.STATO_ASSEGNATA }, QueryUtil.ALL_POS, |
||||
QueryUtil.ALL_POS, null); |
||||
if (deleghe.isEmpty()) { |
||||
if (user.getUserId() == dettPratica.getUserId()) { |
||||
controllo = true; |
||||
} else { |
||||
controllo = false; |
||||
} |
||||
} else { |
||||
controllo = false; |
||||
for (Delega delega : deleghe) { |
||||
if (delega.getCodiceFiscale().equalsIgnoreCase(user.getScreenName())) { |
||||
controllo = true; |
||||
} |
||||
} |
||||
} |
||||
return controllo; |
||||
} |
||||
|
||||
public static boolean canDoPayment(long userId, long dettPraticaId) throws PortalException, SystemException { |
||||
|
||||
return canCompilaDomanda(userId, dettPraticaId) || hasDelegaPagamento(userId, dettPraticaId); |
||||
} |
||||
|
||||
public static boolean hasDelegheCompilazioneAttive(long dettPraticaId) throws SystemException { |
||||
|
||||
return DelegaLocalServiceUtil.countByDettPratica_Tipologia_InEsito(dettPraticaId, new String[] { |
||||
TIPO_COMPILAZIONE, TIPO_GEOLOGO, TIPO_FIRMA_INSERIMENTO_ALLEGATI }, new String[] { STATO_ASSEGNATA }) > 0; |
||||
} |
||||
|
||||
public static boolean hasDelegaAttiva(long userId, long dettPraticaId) throws PortalException, SystemException { |
||||
|
||||
User user = UserLocalServiceUtil.getUser(userId); |
||||
return DelegaLocalServiceUtil.countByDettPratica_CodiceFiscale_InEsito(dettPraticaId, user.getScreenName(), |
||||
new String[] { STATO_ASSEGNATA }) > 0; |
||||
} |
||||
|
||||
@SuppressWarnings("serial") |
||||
public static final Map<String, String> iconMapper = new HashMap<String, String>() { |
||||
{ |
||||
put(TIPO_TOTALE, "fa-bullseye"); |
||||
put(TIPO_COMPILAZIONE, "fa-pencil"); |
||||
put(TIPO_FIRMA_INSERIMENTO_ALLEGATI, "fa-paperclip"); |
||||
put(TIPO_GEOLOGO, "fa-globe"); |
||||
put(TIPO_COLLAUDO, "fa-cogs"); |
||||
put(TIPO_PAGAMENTO, "fa-eur"); |
||||
put(TIPO_VISUALIZZAZIONE, "fa-eye"); |
||||
put(TIPO_FINE_LAVORI, "fa-window-close"); |
||||
} |
||||
}; |
||||
} |
@ -1,258 +0,0 @@
|
||||
package it.tref.liferay.portos.bo.util; |
||||
|
||||
import it.mwg.sismica.bo.shared.util.WorkflowConstants; |
||||
import it.tref.liferay.portos.bo.model.Avviso; |
||||
import it.tref.liferay.portos.bo.model.Comune; |
||||
import it.tref.liferay.portos.bo.model.ControlloPratica; |
||||
import it.tref.liferay.portos.bo.model.DettPratica; |
||||
import it.tref.liferay.portos.bo.model.IntPratica; |
||||
import it.tref.liferay.portos.bo.model.ParereGeologo; |
||||
import it.tref.liferay.portos.bo.model.Provincia; |
||||
import it.tref.liferay.portos.bo.model.Soggetto; |
||||
import it.tref.liferay.portos.bo.model.Territorio; |
||||
import it.tref.liferay.portos.bo.service.AvvisoLocalServiceUtil; |
||||
import it.tref.liferay.portos.bo.service.ComuneLocalServiceUtil; |
||||
import it.tref.liferay.portos.bo.service.ControlloPraticaLocalServiceUtil; |
||||
import it.tref.liferay.portos.bo.service.DettPraticaLocalServiceUtil; |
||||
import it.tref.liferay.portos.bo.service.IntPraticaLocalServiceUtil; |
||||
import it.tref.liferay.portos.bo.service.ParereGeologoLocalServiceUtil; |
||||
import it.tref.liferay.portos.bo.service.ProvinciaLocalServiceUtil; |
||||
import it.tref.liferay.portos.bo.service.SoggettoLocalServiceUtil; |
||||
import it.tref.liferay.portos.bo.service.TerritorioLocalServiceUtil; |
||||
import it.tref.liferay.portos.bo.shared.util.TipoSoggettoUtil; |
||||
import it.tref.liferay.portos.mailmanager.shared.messaging.util.MailManagerUtil; |
||||
import it.tref.liferay.portos.mailmanager.shared.model.FileAttachment; |
||||
|
||||
import java.util.Date; |
||||
import java.util.List; |
||||
|
||||
import com.liferay.portal.kernel.exception.PortalException; |
||||
import com.liferay.portal.kernel.exception.SystemException; |
||||
import com.liferay.portal.kernel.json.JSONFactoryUtil; |
||||
import com.liferay.portal.kernel.json.JSONObject; |
||||
import com.liferay.portal.kernel.language.LanguageUtil; |
||||
import com.liferay.portal.kernel.log.Log; |
||||
import com.liferay.portal.kernel.log.LogFactoryUtil; |
||||
import com.liferay.portal.kernel.util.FastDateFormatFactoryUtil; |
||||
import com.liferay.portal.kernel.util.LocaleUtil; |
||||
import com.liferay.portal.kernel.util.StringPool; |
||||
import com.liferay.portal.kernel.util.Validator; |
||||
import com.liferay.portal.model.User; |
||||
import com.liferay.portal.service.ServiceContext; |
||||
import com.liferay.portal.service.UserLocalServiceUtil; |
||||
|
||||
public class MailUtil { |
||||
|
||||
private static final Log _log = LogFactoryUtil.getLog(MailUtil.class); |
||||
|
||||
public static void invioMailNotifica(long intPraticaId, long dettPraticaId, long classPk, String className, |
||||
String[] to, String[] cc, String[] ccn, String templateName, JSONObject templateVariables, |
||||
List<FileAttachment> allegati, ServiceContext serviceContext) throws PortalException, SystemException { |
||||
|
||||
IntPratica intPratica = IntPraticaLocalServiceUtil.getIntPratica(intPraticaId); |
||||
DettPratica dettPratica = DettPraticaLocalServiceUtil.fetchDettPratica(dettPraticaId); |
||||
Territorio territorio = TerritorioLocalServiceUtil.getTerritorio(intPratica.getTerritorioId()); |
||||
Comune comune = ComuneLocalServiceUtil.getComune(territorio.getComuneId()); |
||||
Provincia provincia = ProvinciaLocalServiceUtil.fetchByC_C(territorio.getCompanyId(), |
||||
territorio.getCodiceProvincia()); |
||||
User titolaredigitaleUser = UserLocalServiceUtil.getUser(intPratica.getUserId()); |
||||
List<Soggetto> titolari = SoggettoLocalServiceUtil.getValidByIntPratica_CodiceFiscale( |
||||
intPratica.getIntPraticaId(), titolaredigitaleUser.getScreenName()); |
||||
String titolareDigitale = StringPool.BLANK; |
||||
String titolareDigitaleMail = StringPool.BLANK; |
||||
String titolareDigitaleRoles = StringPool.BLANK; |
||||
if (!titolari.isEmpty()) { |
||||
titolareDigitale = titolari.get(0).getTitle(); |
||||
titolareDigitaleMail = titolari.get(0).getEmail(); |
||||
for (Soggetto titolare : titolari) { |
||||
titolareDigitaleRoles += LanguageUtil.get(LocaleUtil.ITALIAN, |
||||
"gc-soggetto-" + titolare.getTipologiaSoggetto()) |
||||
+ StringPool.SPACE; |
||||
} |
||||
} |
||||
String committenteTitle = StringPool.BLANK; |
||||
String descIntervento = StringPool.BLANK; |
||||
String tempId = StringPool.BLANK; |
||||
if (Validator.isNotNull(dettPratica)) { |
||||
tempId = dettPratica.getTitle(); |
||||
descIntervento = dettPratica.getDescLongIntervento(); |
||||
Soggetto committentePrincipale = SoggettoLocalServiceUtil |
||||
.getValidByIntPratica_CodiceFiscale_TipologiaSoggetto(intPratica.getIntPraticaId(), |
||||
dettPratica.getCodiceFiscalePrincipaleCommittente(), TipoSoggettoUtil.COMMITTENTE); |
||||
if (Validator.isNotNull(committentePrincipale)) { |
||||
committenteTitle = committentePrincipale.getTitle(); |
||||
} |
||||
} |
||||
templateVariables.put("tempId", tempId); |
||||
templateVariables.put("praticaNum", intPratica.getNumeroProgetto()); |
||||
templateVariables.put("titolareDigitale", titolareDigitale); |
||||
templateVariables.put("titolareDigitaleRoles", titolareDigitaleRoles); |
||||
templateVariables.put("titolareDigitaleMail", titolareDigitaleMail); |
||||
templateVariables.put("intervento", descIntervento); |
||||
templateVariables.put("provincia", provincia.getProvincia()); |
||||
templateVariables.put("comune", comune.getDenominazione()); |
||||
templateVariables.put("committente", committenteTitle); |
||||
MailManagerUtil.sendMailByTemplatName(className, classPk, templateName, to, cc, ccn, templateVariables, |
||||
allegati, serviceContext); |
||||
} |
||||
|
||||
// ADT
|
||||
public static void invioNotificaAssegnazioneIstruttore(Avviso avviso) throws PortalException, SystemException { |
||||
|
||||
_log.info("start invioNotificaAssegnazioneIstruttore: avviso_id = " + avviso.getAvvisoId() |
||||
+ " - IntPraticaId = " + avviso.getIntPraticaId()); |
||||
DettPratica dettPratica = DettPraticaLocalServiceUtil.getDettPratica(avviso.getClassPk()); |
||||
IntPratica intPratica = IntPraticaLocalServiceUtil.getIntPratica(dettPratica.getIntPraticaId()); |
||||
if (avviso.getControlloPraticaId() == 0) { |
||||
_log.info("invioNotificaAssegnazioneIstruttore - skip invio email - controllopratica non trovato per avviso_id = " |
||||
+ avviso.getAvvisoId()); |
||||
AvvisoLocalServiceUtil.updateAvvisoInviatoTecnico(avviso.getAvvisoId(), true); |
||||
return; |
||||
} |
||||
ControlloPratica controlloPratica = ControlloPraticaLocalServiceUtil.getControlloPratica(avviso |
||||
.getControlloPraticaId()); |
||||
ServiceContext serviceContext = new ServiceContext(); |
||||
serviceContext.setCompanyId(controlloPratica.getCompanyId()); |
||||
serviceContext.setScopeGroupId(controlloPratica.getGroupId()); |
||||
serviceContext.setUserId(controlloPratica.getUserId()); |
||||
User tecnicoIstruttore = recuperaTecnicoIstruttore(intPratica); |
||||
if (tecnicoIstruttore == null) { |
||||
_log.info("invioNotificaAssegnazioneIstruttore - skip invio email - tecnicoIstruttore non trovato per avviso_id = " |
||||
+ avviso.getAvvisoId()); |
||||
AvvisoLocalServiceUtil.updateAvvisoInviatoTecnico(avviso.getAvvisoId(), true); |
||||
return; |
||||
} |
||||
String[] to = { tecnicoIstruttore.getEmailAddress() }; |
||||
String[] cc = new String[0]; |
||||
String[] ccn = new String[0]; |
||||
// recupero dati
|
||||
String tipoPratica = StringPool.BLANK; |
||||
if (intPratica.isDeposito()) { |
||||
tipoPratica = LanguageUtil.get(LocaleUtil.ITALIAN, "tipo-pratica-01"); |
||||
} else if (intPratica.isAutorizzazione()) { |
||||
tipoPratica = LanguageUtil.get(LocaleUtil.ITALIAN, "tipo-pratica-02"); |
||||
} |
||||
Territorio territorio = TerritorioLocalServiceUtil.getTerritorio(intPratica.getTerritorioId()); |
||||
Comune comune = ComuneLocalServiceUtil.getComune(territorio.getComuneId()); |
||||
Provincia provincia = ProvinciaLocalServiceUtil.fetchByC_C(territorio.getCompanyId(), |
||||
territorio.getCodiceProvincia()); |
||||
JSONObject templateVariables = JSONFactoryUtil.createJSONObject(); |
||||
templateVariables.put("receiver", tecnicoIstruttore.getFullName()); |
||||
templateVariables.put("tipoPratica", tipoPratica); |
||||
templateVariables.put("tipoOggetto", "Assegnazione Istruttoria"); |
||||
templateVariables.put( |
||||
"dataInvio", |
||||
FastDateFormatFactoryUtil.getSimpleDateFormat("dd/MM/yyyy HH:mm").format( |
||||
intPratica.getStatusDate() != null ? intPratica.getStatusDate() : new Date())); |
||||
templateVariables.put("praticaNum", intPratica.getNumeroProgetto()); |
||||
templateVariables.put("provincia", provincia.getProvincia()); |
||||
templateVariables.put("comune", comune.getDenominazione()); |
||||
String className = IntPratica.class.getName(); |
||||
long classPk = intPratica.getIntPraticaId(); |
||||
MailManagerUtil.sendMailByTemplatName(className, classPk, "NOTIFICA-BO", to, cc, ccn, templateVariables, null, |
||||
serviceContext); |
||||
AvvisoLocalServiceUtil.updateAvvisoInviatoTecnico(avviso.getAvvisoId(), true); |
||||
} |
||||
|
||||
// Invio notifica istruttore dopo inserimento parere geologo
|
||||
public static void invioNotificaIstruttoreByGeologo(long parereGeologoId, ServiceContext serviceContext) { |
||||
|
||||
_log.info("start invioNotificaIstruttoreByGeologo parereGeologoId=" + parereGeologoId); |
||||
long intPraticaId = 0L; |
||||
try { |
||||
ParereGeologo parereGeologo = ParereGeologoLocalServiceUtil.getParereGeologo(parereGeologoId); |
||||
intPraticaId = parereGeologo.getIntPraticaId(); |
||||
IntPratica intPratica = IntPraticaLocalServiceUtil.getIntPratica(intPraticaId); |
||||
User tecnicoIstruttore = recuperaTecnicoIstruttore(intPratica); |
||||
_log.info("email tecnico istruttore=" + tecnicoIstruttore.getEmailAddress()); |
||||
String[] to = { tecnicoIstruttore.getEmailAddress() }; |
||||
String[] cc = new String[0]; |
||||
String[] ccn = new String[0]; |
||||
// recupero dati
|
||||
String tipoPratica = StringPool.BLANK; |
||||
if (intPratica.isDeposito()) { |
||||
tipoPratica = LanguageUtil.get(LocaleUtil.ITALIAN, "tipo-pratica-01"); |
||||
} else if (intPratica.isAutorizzazione()) { |
||||
tipoPratica = LanguageUtil.get(LocaleUtil.ITALIAN, "tipo-pratica-02"); |
||||
} |
||||
Territorio territorio = TerritorioLocalServiceUtil.getTerritorio(intPratica.getTerritorioId()); |
||||
Comune comune = ComuneLocalServiceUtil.getComune(territorio.getComuneId()); |
||||
Provincia provincia = ProvinciaLocalServiceUtil.fetchByC_C(territorio.getCompanyId(), |
||||
territorio.getCodiceProvincia()); |
||||
JSONObject templateVariables = JSONFactoryUtil.createJSONObject(); |
||||
templateVariables.put("receiver", tecnicoIstruttore.getFullName()); |
||||
templateVariables.put("tipoPratica", tipoPratica); |
||||
templateVariables.put("tipoOggetto", "Risposta a Richiesta Parere Endoprocedimentale"); |
||||
templateVariables |
||||
.put("dataInvio", |
||||
FastDateFormatFactoryUtil.getSimpleDateFormat("dd/MM/yyyy HH:mm").format( |
||||
parereGeologo.getDtCompilazione() != null ? parereGeologo.getDtCompilazione() |
||||
: new Date())); |
||||
templateVariables.put("praticaNum", intPratica.getNumeroProgetto()); |
||||
templateVariables.put("provincia", provincia.getProvincia()); |
||||
templateVariables.put("comune", comune.getDenominazione()); |
||||
String className = ParereGeologo.class.getName(); |
||||
long classPk = parereGeologoId; |
||||
MailManagerUtil.sendMailByTemplatName(className, classPk, "NOTIFICA-BO", to, cc, ccn, templateVariables, |
||||
null, serviceContext); |
||||
} catch (Exception e) { |
||||
_log.error("invioNotificaIstruttoreByGeologo - Errore invio mail al tecnico istruttore per pratica id=" |
||||
+ intPraticaId, e); |
||||
} |
||||
} |
||||
|
||||
public static void invioNotificaGeologo(ParereGeologo parereGeologo, ServiceContext serviceContext) { |
||||
|
||||
_log.info("start invioNotificaGeologo parereGeologo=" + parereGeologo.getParereGeologoId()); |
||||
try { |
||||
User geologo = UserLocalServiceUtil.getUser(parereGeologo.getGeologoUserId()); |
||||
IntPratica intPratica = IntPraticaLocalServiceUtil.getIntPratica(parereGeologo.getIntPraticaId()); |
||||
_log.info("email geologo = " + geologo.getEmailAddress()); |
||||
String[] to = { geologo.getEmailAddress() }; |
||||
String[] cc = new String[0]; |
||||
String[] ccn = new String[0]; |
||||
String tipoPratica = StringPool.BLANK; |
||||
if (intPratica.isDeposito()) { |
||||
tipoPratica = LanguageUtil.get(LocaleUtil.ITALIAN, "tipo-pratica-01"); |
||||
} else if (intPratica.isAutorizzazione()) { |
||||
tipoPratica = LanguageUtil.get(LocaleUtil.ITALIAN, "tipo-pratica-02"); |
||||
} |
||||
Territorio territorio = TerritorioLocalServiceUtil.getTerritorio(intPratica.getTerritorioId()); |
||||
Comune comune = ComuneLocalServiceUtil.getComune(territorio.getComuneId()); |
||||
Provincia provincia = ProvinciaLocalServiceUtil.fetchByC_C(territorio.getCompanyId(), |
||||
territorio.getCodiceProvincia()); |
||||
JSONObject templateVariables = JSONFactoryUtil.createJSONObject(); |
||||
templateVariables.put("receiver", geologo.getFullName()); |
||||
templateVariables.put("tipoPratica", tipoPratica); |
||||
templateVariables.put("tipoOggetto", "Richiesta Parere"); |
||||
templateVariables |
||||
.put("dataInvio", |
||||
FastDateFormatFactoryUtil.getSimpleDateFormat("dd/MM/yyyy HH:mm").format( |
||||
parereGeologo.getDtCompilazione() != null ? parereGeologo.getDtCompilazione() |
||||
: new Date())); |
||||
templateVariables.put("praticaNum", intPratica.getNumeroProgetto()); |
||||
templateVariables.put("provincia", provincia.getProvincia()); |
||||
templateVariables.put("comune", comune.getDenominazione()); |
||||
String className = ParereGeologo.class.getName(); |
||||
long classPk = parereGeologo.getParereGeologoId(); |
||||
MailManagerUtil.sendMailByTemplatName(className, classPk, "NOTIFICA-GEOLOGO", to, cc, ccn, |
||||
templateVariables, null, serviceContext); |
||||
} catch (Exception e) { |
||||
_log.error( |
||||
"invioNotificaGeologo - Errore invio mail al geologo - ParereGeologoId=" |
||||
+ parereGeologo.getParereGeologoId(), e); |
||||
} |
||||
} |
||||
|
||||
public static User recuperaTecnicoIstruttore(IntPratica intPratica) throws PortalException, SystemException { |
||||
|
||||
long statusByUserId = intPratica.getStatusByUserId(); |
||||
User istruttoreUser = null; |
||||
if (Validator.isNotNull(statusByUserId) && intPratica.getStatus() != WorkflowConstants.STATUS_DRAFT) { |
||||
istruttoreUser = UserLocalServiceUtil.getUser(statusByUserId); |
||||
_log.info("istruttore pratica id=" + intPratica.getIntPraticaId() + StringPool.COLON |
||||
+ istruttoreUser.getScreenName() + StringPool.SPACE + istruttoreUser.getEmailAddress()); |
||||
} |
||||
return istruttoreUser; |
||||
} |
||||
} |
@ -1,181 +0,0 @@
|
||||
package it.tref.liferay.portos.bo.util; |
||||
|
||||
import it.tref.liferay.portos.bo.model.Collaudo; |
||||
import it.tref.liferay.portos.bo.model.DettPratica; |
||||
import it.tref.liferay.portos.bo.model.FineLavori; |
||||
import it.tref.liferay.portos.bo.model.IntPratica; |
||||
import it.tref.liferay.portos.bo.model.Pagamento; |
||||
import it.tref.liferay.portos.bo.service.CollaudoLocalServiceUtil; |
||||
import it.tref.liferay.portos.bo.service.ConfigurazioneLocalServiceUtil; |
||||
import it.tref.liferay.portos.bo.service.DettPraticaLocalServiceUtil; |
||||
import it.tref.liferay.portos.bo.service.FineLavoriLocalServiceUtil; |
||||
import it.tref.liferay.portos.bo.service.IntPraticaLocalServiceUtil; |
||||
import it.tref.liferay.portos.bo.service.PagamentoLocalServiceUtil; |
||||
import it.tref.liferay.portos.bo.shared.util.ConfigurazioneConstants; |
||||
import it.tref.liferay.portos.bo.shared.util.Constants; |
||||
import it.tref.liferay.portos.bo.shared.util.PagamentoConstants; |
||||
import it.tref.liferay.portos.bo.shared.util.TipoIntegrazioneUtil; |
||||
|
||||
import java.math.BigDecimal; |
||||
import java.util.HashMap; |
||||
import java.util.Map; |
||||
|
||||
import com.liferay.portal.kernel.exception.PortalException; |
||||
import com.liferay.portal.kernel.exception.SystemException; |
||||
import com.liferay.portal.kernel.log.Log; |
||||
import com.liferay.portal.kernel.log.LogFactoryUtil; |
||||
import com.liferay.portal.kernel.util.Validator; |
||||
|
||||
public abstract class PagamentiCommonUtil { |
||||
|
||||
private static Log _log = LogFactoryUtil.getLog(PagamentiCommonUtil.class); |
||||
|
||||
private static final Map<String, Integer> NUMERO_BOLLI_INTEGRAZIONE = new HashMap<String, Integer>() { |
||||
{ |
||||
put(TipoIntegrazioneUtil.RICHIESTA_INTEGRAZIONE, 0); |
||||
put(TipoIntegrazioneUtil.FINE_LAVORI_PARZIALE, 2); |
||||
put(TipoIntegrazioneUtil.FINE_LAVORI, 2); |
||||
put(TipoIntegrazioneUtil.COLLAUDO_PARZIALE, 2); |
||||
put(TipoIntegrazioneUtil.COLLAUDO, 2); |
||||
put(TipoIntegrazioneUtil.VARIANTE, 2); |
||||
put(TipoIntegrazioneUtil.VARIAZIONE_SOGGETTO, 0); |
||||
} |
||||
}; |
||||
|
||||
public static boolean isPagamentoRidotto(long dettPraticaId) throws Exception { |
||||
|
||||
DettPratica dettPratica = DettPraticaLocalServiceUtil.getDettPratica(dettPraticaId); |
||||
IntPratica intPratica = IntPraticaLocalServiceUtil.getIntPratica(dettPratica.getIntPraticaId()); |
||||
return intPratica.getTipoPratica().equals(Constants.TIPO_PRATICA_DEPOSITO); |
||||
} |
||||
|
||||
public static BigDecimal getImportoBolli(long companyId, long classPK, String className, String tipoIntegrazione) |
||||
throws PortalException, SystemException { |
||||
|
||||
try { |
||||
boolean normEsenteBollo = false; |
||||
if (DettPratica.class.getName().equals(className)) { |
||||
DettPratica dettPratica = DettPraticaLocalServiceUtil.getDettPratica(classPK); |
||||
normEsenteBollo = dettPratica.isNormEsenteBollo(); |
||||
} else if (FineLavori.class.getName().equals(className)) { |
||||
FineLavori fineLavori = FineLavoriLocalServiceUtil.getFineLavori(classPK); |
||||
normEsenteBollo = fineLavori.isNormEsenteBollo(); |
||||
} else if (Collaudo.class.getName().equals(className)) { |
||||
Collaudo collaudo = CollaudoLocalServiceUtil.getCollaudo(classPK); |
||||
normEsenteBollo = collaudo.isNormEsenteBollo(); |
||||
} |
||||
if (normEsenteBollo) { |
||||
return new BigDecimal("0.00"); |
||||
} |
||||
} catch (PortalException e) {} |
||||
int numeroBolli = getNumeroBolli(tipoIntegrazione); |
||||
BigDecimal importoBolliBigDecimal = new BigDecimal(ConfigurazioneLocalServiceUtil.findByC_ChiaveString( |
||||
companyId, ConfigurazioneConstants.IMPORTO_BOLLO)); |
||||
return importoBolliBigDecimal.multiply(new BigDecimal(numeroBolli)); |
||||
|
||||
} |
||||
|
||||
public static Integer getNumeroBolli(String tipoIntegrazione) throws PortalException, SystemException { |
||||
|
||||
if (Validator.isNull(tipoIntegrazione)) { |
||||
return 2; |
||||
} else { |
||||
return getNumeroBolliByTipoIntegrazione(tipoIntegrazione); |
||||
} |
||||
} |
||||
|
||||
private static Integer getNumeroBolliByTipoIntegrazione(String tipoIntegrazione) { |
||||
|
||||
return NUMERO_BOLLI_INTEGRAZIONE.get(tipoIntegrazione); |
||||
} |
||||
|
||||
public static boolean existsSpeseIstruttoria(String tipoIntegrazione) { |
||||
|
||||
return !TipoIntegrazioneUtil.FINE_LAVORI_PARZIALE.equals(tipoIntegrazione) |
||||
&& !TipoIntegrazioneUtil.FINE_LAVORI.equals(tipoIntegrazione) |
||||
&& !TipoIntegrazioneUtil.COLLAUDO_PARZIALE.equals(tipoIntegrazione) |
||||
&& !TipoIntegrazioneUtil.COLLAUDO.equals(tipoIntegrazione); |
||||
} |
||||
|
||||
public static boolean pagamentiInitialized(long classPK, String className) throws PortalException, SystemException { |
||||
|
||||
boolean normEsenteSpese = false; |
||||
boolean normEsenteBollo = false; |
||||
long pagamentoIdSpese = 0L; |
||||
long pagamentoIdBolli = 0L; |
||||
if (DettPratica.class.getName().equals(className)) { |
||||
DettPratica dettPratica = DettPraticaLocalServiceUtil.getDettPratica(classPK); |
||||
normEsenteSpese = dettPratica.isNormEsenteSpese(); |
||||
normEsenteBollo = dettPratica.isNormEsenteBollo(); |
||||
pagamentoIdSpese = dettPratica.getPagamentoIdOneri(); |
||||
pagamentoIdBolli = dettPratica.getPagamentoIdBolli(); |
||||
} else if (FineLavori.class.getName().equals(className)) { |
||||
FineLavori fineLavori = FineLavoriLocalServiceUtil.getFineLavori(classPK); |
||||
normEsenteSpese = true; |
||||
normEsenteBollo = fineLavori.isNormEsenteBollo(); |
||||
pagamentoIdSpese = 0L; |
||||
pagamentoIdBolli = fineLavori.getPagamentoId(); |
||||
} else if (Collaudo.class.getName().equals(className)) { |
||||
Collaudo collaudo = CollaudoLocalServiceUtil.getCollaudo(classPK); |
||||
normEsenteSpese = true; |
||||
normEsenteBollo = collaudo.isNormEsenteBollo(); |
||||
pagamentoIdSpese = 0L; |
||||
pagamentoIdBolli = collaudo.getPagamentoId(); |
||||
} |
||||
if (!normEsenteBollo && !normEsenteSpese) { |
||||
return Validator.isNotNull(pagamentoIdBolli) || Validator.isNotNull(pagamentoIdSpese); |
||||
} else if (normEsenteBollo) { |
||||
return Validator.isNotNull(pagamentoIdSpese); |
||||
} else if (normEsenteSpese) { |
||||
return Validator.isNotNull(pagamentoIdBolli); |
||||
} |
||||
return false; |
||||
} |
||||
|
||||
public static boolean pagamentiCompleted(long classPK, String className) throws PortalException, SystemException { |
||||
|
||||
boolean normEsenteSpese = false; |
||||
boolean normEsenteBollo = false; |
||||
long pagamentoIdSpese = 0; |
||||
long pagamentoIdBolli = 0; |
||||
|
||||
if (DettPratica.class.getName().equals(className)) { |
||||
DettPratica dettPratica = DettPraticaLocalServiceUtil.getDettPratica(classPK); |
||||
normEsenteSpese = dettPratica.isNormEsenteSpese(); |
||||
normEsenteBollo = dettPratica.isNormEsenteBollo(); |
||||
pagamentoIdSpese = dettPratica.getPagamentoIdOneri(); |
||||
pagamentoIdBolli = dettPratica.getPagamentoIdBolli(); |
||||
} else if (FineLavori.class.getName().equals(className)) { |
||||
FineLavori fineLavori = FineLavoriLocalServiceUtil.getFineLavori(classPK); |
||||
normEsenteSpese = true; |
||||
normEsenteBollo = fineLavori.isNormEsenteBollo(); |
||||
pagamentoIdSpese = 0L; |
||||
pagamentoIdBolli = fineLavori.getPagamentoId(); |
||||
} else if (Collaudo.class.getName().equals(className)) { |
||||
Collaudo collaudo = CollaudoLocalServiceUtil.getCollaudo(classPK); |
||||
normEsenteSpese = true; |
||||
normEsenteBollo = collaudo.isNormEsenteBollo(); |
||||
pagamentoIdSpese = 0L; |
||||
pagamentoIdBolli = collaudo.getPagamentoId(); |
||||
} |
||||
boolean completed = false; |
||||
if (!normEsenteBollo && !normEsenteSpese) { |
||||
if (Validator.isNull(pagamentoIdBolli) || Validator.isNull(pagamentoIdSpese)) { |
||||
return false; |
||||
} |
||||
Pagamento pagamentoBolli = PagamentoLocalServiceUtil.getPagamento(pagamentoIdBolli); |
||||
Pagamento pagamentoSpese = PagamentoLocalServiceUtil.getPagamento(pagamentoIdSpese); |
||||
completed = PagamentoConstants.UTILIZZATA_PAGATA.equalsIgnoreCase(pagamentoBolli.getUtilizzata()) |
||||
&& PagamentoConstants.UTILIZZATA_PAGATA.equalsIgnoreCase(pagamentoSpese.getUtilizzata()); |
||||
} else { |
||||
if (normEsenteBollo && Validator.isNotNull(pagamentoIdSpese)) { |
||||
Pagamento pagamentoSpese = PagamentoLocalServiceUtil.getPagamento(pagamentoIdSpese); |
||||
completed = PagamentoConstants.UTILIZZATA_PAGATA.equalsIgnoreCase(pagamentoSpese.getUtilizzata()); |
||||
} else if (normEsenteSpese && Validator.isNotNull(pagamentoIdBolli)) { |
||||
Pagamento pagamentoBolli = PagamentoLocalServiceUtil.getPagamento(pagamentoIdBolli); |
||||
completed = PagamentoConstants.UTILIZZATA_PAGATA.equalsIgnoreCase(pagamentoBolli.getUtilizzata()); |
||||
} |
||||
} |
||||
return completed; |
||||
} |
||||
} |
@ -1,142 +0,0 @@
|
||||
package it.tref.liferay.portos.bo.util; |
||||
|
||||
import it.tref.liferay.portos.bo.model.Collaudo; |
||||
import it.tref.liferay.portos.bo.model.DettPratica; |
||||
import it.tref.liferay.portos.bo.model.FineLavori; |
||||
import it.tref.liferay.portos.bo.model.Pagamento; |
||||
import it.tref.liferay.portos.bo.service.CollaudoLocalServiceUtil; |
||||
import it.tref.liferay.portos.bo.service.DettPraticaLocalServiceUtil; |
||||
import it.tref.liferay.portos.bo.service.FineLavoriLocalServiceUtil; |
||||
import it.tref.liferay.portos.bo.service.PagamentoLocalServiceUtil; |
||||
import it.tref.liferay.portos.bo.shared.util.PagamentoConstants; |
||||
import it.tref.liferay.portos.bo.shared.util.TipoIntegrazioneUtil; |
||||
|
||||
import java.math.BigDecimal; |
||||
import java.util.ArrayList; |
||||
import java.util.Calendar; |
||||
import java.util.Date; |
||||
import java.util.List; |
||||
|
||||
import com.liferay.portal.kernel.exception.PortalException; |
||||
import com.liferay.portal.kernel.exception.SystemException; |
||||
import com.liferay.portal.kernel.util.CalendarFactoryUtil; |
||||
import com.liferay.portal.kernel.util.StringPool; |
||||
import com.liferay.portal.kernel.util.Validator; |
||||
import com.liferay.portal.service.ServiceContext; |
||||
|
||||
public abstract class PagamentiUtil { |
||||
|
||||
public static BigDecimal getImportoBolli(long companyId, long dettPraticaId, String tipoIntegrazione) |
||||
throws PortalException, SystemException { |
||||
|
||||
return PagamentiCommonUtil.getImportoBolli(companyId, dettPraticaId, DettPratica.class.getName(), |
||||
tipoIntegrazione); |
||||
} |
||||
|
||||
public static Date getScadenzaPending() { |
||||
|
||||
Calendar calendar = CalendarFactoryUtil.getCalendar(); |
||||
calendar.add(Calendar.MINUTE, -30); |
||||
return calendar.getTime(); |
||||
} |
||||
|
||||
public static boolean isPagamentoScadutoInPending(Pagamento pagamento) { |
||||
|
||||
return pagamento.getCreateDate().compareTo(getScadenzaPending()) < 0; |
||||
} |
||||
|
||||
public static Pagamento nuovoPagamento(String currentURL, long classPk, String className, String tipoPagamento, |
||||
String importo, String codiceFiscaleCommittente, ServiceContext serviceContext) throws PortalException, |
||||
SystemException { |
||||
|
||||
boolean esenzioneBolli = false; |
||||
boolean esenzioneSpeseIstruttoria = false; |
||||
String tipoIntegrazione = StringPool.BLANK; |
||||
long pagamentoId = 0L; |
||||
if (DettPratica.class.getName().equals(className)) { |
||||
DettPratica dettPratica = DettPraticaLocalServiceUtil.getDettPratica(classPk); |
||||
esenzioneBolli = dettPratica.isNormEsenteBollo(); |
||||
esenzioneSpeseIstruttoria = dettPratica.isNormEsenteSpese(); |
||||
tipoIntegrazione = dettPratica.getTipoIntegrazione(); |
||||
if (PagamentoConstants.PAGAMENTO_ONERI.equals(tipoPagamento)) { |
||||
pagamentoId = dettPratica.getPagamentoIdOneri(); |
||||
} else if (PagamentoConstants.PAGAMENTO_BOLLI.equals(tipoPagamento)) { |
||||
pagamentoId = dettPratica.getPagamentoIdBolli(); |
||||
} |
||||
} else if (FineLavori.class.getName().equals(className)) { |
||||
FineLavori fineLavori = FineLavoriLocalServiceUtil.getFineLavori(classPk); |
||||
esenzioneBolli = fineLavori.isNormEsenteBollo(); |
||||
esenzioneSpeseIstruttoria = true; |
||||
tipoIntegrazione = TipoIntegrazioneUtil.FINE_LAVORI; |
||||
if (PagamentoConstants.PAGAMENTO_ONERI.equals(tipoPagamento)) { |
||||
throw new SystemException("error.fields.fineLavori.pagamento.classPk.invalid"); |
||||
} else if (PagamentoConstants.PAGAMENTO_BOLLI.equals(tipoPagamento)) { |
||||
pagamentoId = fineLavori.getPagamentoId(); |
||||
} |
||||
} else if (Collaudo.class.getName().equals(className)) { |
||||
Collaudo collaudo = CollaudoLocalServiceUtil.getCollaudo(classPk); |
||||
esenzioneBolli = collaudo.isNormEsenteBollo(); |
||||
esenzioneSpeseIstruttoria = true; |
||||
tipoIntegrazione = TipoIntegrazioneUtil.COLLAUDO; |
||||
if (PagamentoConstants.PAGAMENTO_ONERI.equals(tipoPagamento)) { |
||||
throw new SystemException("error.fields.collaudo.pagamento.classPk.invalid"); |
||||
} else if (PagamentoConstants.PAGAMENTO_BOLLI.equals(tipoPagamento)) { |
||||
pagamentoId = collaudo.getPagamentoId(); |
||||
} |
||||
} else { |
||||
throw new SystemException("error.fields.pratica.pagamento.classPk.invalid"); |
||||
} |
||||
List<String> importi = new ArrayList<>(); |
||||
if (esenzioneSpeseIstruttoria && esenzioneBolli) { |
||||
throw new SystemException("error.fields.pratica.pagamento.esente.oneri.bolli"); |
||||
} else { |
||||
if ((PagamentoConstants.PAGAMENTO_BOLLI.equals(tipoPagamento) && !esenzioneBolli) |
||||
|| (PagamentoConstants.PAGAMENTO_ONERI.equals(tipoPagamento) && !esenzioneSpeseIstruttoria)) { |
||||
if (Validator.isNotNull(importo)) { |
||||
importo = importo.replaceAll(StringPool.COMMA, StringPool.PERIOD); |
||||
try { |
||||
BigDecimal importoVal = new BigDecimal(importo); |
||||
importo = importoVal.toPlainString(); |
||||
if (PagamentoConstants.PAGAMENTO_BOLLI.equals(tipoPagamento)) { |
||||
int numeroBolli = PagamentiCommonUtil.getNumeroBolli(tipoIntegrazione); |
||||
BigDecimal singoloImporto = importoVal.divide(new BigDecimal(numeroBolli)); |
||||
for (int i = 0; i < numeroBolli; i++) { |
||||
importi.add(singoloImporto.toPlainString()); |
||||
} |
||||
} else if (PagamentoConstants.PAGAMENTO_ONERI.equals(tipoPagamento)) { |
||||
importi.add(importo); |
||||
} |
||||
} catch (NumberFormatException e) { |
||||
throw new SystemException("error.fields.pratica.pagamento." |
||||
+ (PagamentoConstants.PAGAMENTO_BOLLI.equals(tipoPagamento) ? "bolli" |
||||
: "speseistruttoria") + ".valid", e); |
||||
} |
||||
} else { |
||||
if (PagamentoConstants.PAGAMENTO_BOLLI.equals(tipoPagamento) |
||||
|| PagamentiCommonUtil.existsSpeseIstruttoria(tipoIntegrazione)) { |
||||
throw new SystemException("error.fields.pratica.pagamento." |
||||
+ (PagamentoConstants.PAGAMENTO_BOLLI.equals(tipoPagamento) ? "bolli" |
||||
: "speseistruttoria") + ".required"); |
||||
} |
||||
} |
||||
} else { |
||||
return null; |
||||
} |
||||
} |
||||
boolean add = true; |
||||
if (Validator.isNotNull(pagamentoId)) { |
||||
Pagamento pagamento = PagamentoLocalServiceUtil.getPagamento(pagamentoId); |
||||
if (pagamento.getClassPk() == classPk) { |
||||
add = false; |
||||
PagamentoLocalServiceUtil.updatePagamento(pagamentoId, codiceFiscaleCommittente, importo); |
||||
} |
||||
return pagamento; |
||||
} |
||||
if (add) { |
||||
return PagamentoLocalServiceUtil.addPagamentoAndUpdate(StringPool.BLANK, StringPool.BLANK, |
||||
PagamentoConstants.MEZZO_MANUALE, codiceFiscaleCommittente, tipoPagamento, importo, |
||||
PagamentoConstants.UTILIZZATA_IN_CORSO, classPk, className, serviceContext); |
||||
} |
||||
return null; |
||||
} |
||||
} |
@ -0,0 +1,35 @@
|
||||
package it.mwg.sismica.bo.shared.util; |
||||
|
||||
import java.util.HashMap; |
||||
import java.util.Map; |
||||
|
||||
public class DelegheUtil { |
||||
|
||||
public static final String STATO_ASSEGNATA = "AS"; |
||||
public static final String STATO_ESEGUITA = "ES"; |
||||
public static final String STATO_ANNULLATA = "AN"; |
||||
public static final String STATO_RIFIUTATA = "RI"; |
||||
|
||||
public static final String TIPO_TOTALE = "TT"; |
||||
public static final String TIPO_COMPILAZIONE = "CO"; |
||||
public static final String TIPO_GEOLOGO = "GE"; |
||||
public static final String TIPO_FIRMA_INSERIMENTO_ALLEGATI = "FI"; |
||||
public static final String TIPO_PAGAMENTO = "PG"; |
||||
public static final String TIPO_VISUALIZZAZIONE = "VI"; |
||||
public static final String TIPO_FINE_LAVORI = "FL"; |
||||
public static final String TIPO_COLLAUDO = "CL"; |
||||
|
||||
@SuppressWarnings("serial") |
||||
public static final Map<String, String> iconMapper = new HashMap<String, String>() { |
||||
{ |
||||
put(TIPO_TOTALE, "fa-bullseye"); |
||||
put(TIPO_COMPILAZIONE, "fa-pencil"); |
||||
put(TIPO_FIRMA_INSERIMENTO_ALLEGATI, "fa-paperclip"); |
||||
put(TIPO_GEOLOGO, "fa-globe"); |
||||
put(TIPO_COLLAUDO, "fa-cogs"); |
||||
put(TIPO_PAGAMENTO, "fa-eur"); |
||||
put(TIPO_VISUALIZZAZIONE, "fa-eye"); |
||||
put(TIPO_FINE_LAVORI, "fa-window-close"); |
||||
} |
||||
}; |
||||
} |
Some files were not shown because too many files have changed in this diff Show More
Caricamento…
Reference in new issue