it.cnr.contab.doccont00.bp.MandatoAutomaticoWizardBP Maven / Gradle / Ivy
/*
* Copyright (C) 2019 Consiglio Nazionale delle Ricerche
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see .
*/
/*
* * Created on Mar 27, 2006
*
* To change the template for this generated file go to
* Window>Preferences>Java>Code Generation>Code and Comments
*/
package it.cnr.contab.doccont00.bp;
import it.cnr.contab.doccont00.ejb.MandatoAutomaticoComponentSession;
import it.cnr.contab.doccont00.ejb.MandatoComponentSession;
import java.util.*;
import it.cnr.contab.doccont00.comp.MandatoAutomaticoComponent;
import it.cnr.contab.doccont00.core.bulk.*;
import it.cnr.jada.action.ActionContext;
import it.cnr.jada.action.BusinessProcessException;
import it.cnr.jada.bulk.OggettoBulk;
import it.cnr.jada.bulk.ValidationException;
import it.cnr.jada.util.action.*;
/**
* Business Process che gestisce le attività di CRUD per l'entita' Mandato Automatico da impegni
*/
public class MandatoAutomaticoWizardBP extends it.cnr.jada.util.action.SimpleCRUDBP {
private final SimpleDetailCRUDController impegni = new SimpleDetailCRUDController("Impegni",V_obbligazioneBulk.class,"impegniColl",this);
private final SimpleDetailCRUDController mandati = new SimpleDetailCRUDController("Mandati",MandatoBulk.class,"mandatiColl",this);
private final SimpleDetailCRUDController documentiPassivi = new SimpleDetailCRUDController("DocumentiPassivi",V_doc_passivo_obbligazione_wizardBulk.class,"docPassiviColl",this);
private Integer codice_terzo;
private String ti_impegni;
private String ti_automatismo;
public MandatoAutomaticoWizardBP()
{
super();
setTab("tab","tabCriteriRicerca");
}
public MandatoAutomaticoWizardBP(String function)
{
super(function);
setTab("tab","tabCriteriRicerca");
}
/**
*
*
*
* @param function La funzione con cui è stato creato il BusinessProcess
* @param codice_cds
* @param importo
*/
public MandatoAutomaticoWizardBP(String function, Integer codice_terzo, String ti_impegni, String ti_automatismo )
{
super(function);
setCodice_terzo(codice_terzo);
setTi_impegni(ti_impegni);
setTi_automatismo(ti_automatismo);
setTab("tab","tabCriteriRicerca");
}
/**
* Metodo utilizzato per gestire la modifica delle coordinate bancarie (BancaBulk) a seguito della
* modifica delle modalita Di Pagamento
* @param context ActionContext in uso.
*
*/
public void cambiaModalitaPagamento(it.cnr.jada.action.ActionContext context) throws it.cnr.jada.action.BusinessProcessException
{
try
{
MandatoAutomaticoWizardBulk mandato = (MandatoAutomaticoWizardBulk) getModel();
List result = ((MandatoAutomaticoComponentSession) createComponentSession()).findBancaOptions( context.getUserContext(), mandato);
mandato.setBancaOptions( result );
setModel( context, mandato );
} catch(Exception e) {
throw handleException(e);
}
}
public void create(it.cnr.jada.action.ActionContext context) throws it.cnr.jada.action.BusinessProcessException
{
try {
setModel(context, ((MandatoAutomaticoComponentSession)createComponentSession()).creaMandatoAutomatico(context.getUserContext(), getModel()));
setDirty(false);
setEditable(false);
setStatus(VIEW);
MandatoAutomaticoWizardBulk wizard = (MandatoAutomaticoWizardBulk) getModel();
if (wizard.getMandatiColl().size() == 0 )
setMessage( "Attenzione! Nessun mandato è stato generato.");
else
{
if (wizard.getMandatiColl().size() == 1 )
setMessage( "Il Mandato automatico" + (wizard.isAutomatismoDaImpegni()?" a favore del Terzo " + wizard.getMandato_terzo().getTerzo().getCd_terzo().toString():"") + " è stato generato.");
if (wizard.getMandatiColl().size() == 2 )
setMessage( "I Mandati automatici" + (wizard.isAutomatismoDaImpegni()?" a favore del Terzo " + wizard.getMandato_terzo().getTerzo().getCd_terzo().toString():"") + " sono stati generati.");
if (wizard.isAutomatismoDaImpegni())
wizard.setImpegniColl(wizard.getImpegniSelezionatiColl());
else if (wizard.isAutomatismoDaDocumentiPassivi())
wizard.setDocPassiviColl(wizard.getDocPassiviSelezionatiColl());
}
} catch(Exception e) {
throw handleException(e);
}
}
public void setTab(String s, String s1) {
if (s1.equals("tabCriteriRicerca")) {
setEditable(true);
setStatus(EDIT);
}
super.setTab(s, s1);
}
public void inizializzaMappaAutomatismo(ActionContext actioncontext) throws it.cnr.jada.action.BusinessProcessException
{
try {
MandatoAutomaticoWizardBulk bulk = (MandatoAutomaticoWizardBulk)getModel();
setTi_impegni(bulk.getTi_impegni());
bulk.setTi_automatismo(getTi_automatismo());
MandatoAutomaticoComponentSession session = (MandatoAutomaticoComponentSession) createComponentSession();
bulk = (MandatoAutomaticoWizardBulk) session.inizializzaMappaAutomatismo( actioncontext.getUserContext(), bulk );
setModel(actioncontext, bulk);
if ((bulk.isAutomatismoDaImpegni() && bulk.getImpegniColl().size()>0) ||
(bulk.isAutomatismoDaDocumentiPassivi() && bulk.getDocPassiviColl().size()>0))
setTab("tab", "tabMandatoAutomatico");
} catch(Exception e) {
throw handleException(e);
}
}
/**
* Metodo utilizzato per creare una toolbar applicativa personalizzata.
* @return null In questo caso la toolbar è vuota
*/
protected it.cnr.jada.util.jsp.Button[] createToolbar()
{
return null;
}
/**
*
* Restituisce il valore della proprietà 'codice_terzo'
*
* @return Il valore della proprietà 'codice_terzo'
*/
public Integer getCodice_terzo() {
return codice_terzo;
}
/**
* @return it.cnr.jada.util.action.SimpleDetailCRUDController
*/
public final it.cnr.jada.util.action.SimpleDetailCRUDController getImpegni() {
return impegni;
}
/**
* @return it.cnr.jada.util.action.SimpleDetailCRUDController
*/
public final it.cnr.jada.util.action.SimpleDetailCRUDController getMandati() {
return mandati;
}
public it.cnr.jada.util.action.SimpleDetailCRUDController getDocumentiPassivi() {
return documentiPassivi;
}
/**
* Abilito il bottone di emissione del mandato.
* @return TRUE Abilitato se non sono ancora stati emessi mandati
* FALSE Non è abilitato se sono già stati emessi i mandati
*/
public boolean isEmettiMandatoButtonEnabled() {
return ((MandatoAutomaticoWizardBulk)getModel()).getMandatiColl().size() == 0 ;
}
/**
* Abilito il flag di calcolo automatico.
* @return TRUE Il flag di calcolo automatico è abilitato
* FALSE Il flag di calcolo automatico non è abilitato
*/
public boolean isFlCalcoloAutomaticoCheckboxEnabled() {
return ((MandatoAutomaticoWizardBulk)getModel()).getMandatiColl().size() == 0 ;
}
/**
* Visualizzo il flag di calcolo automatico.
* @return TRUE Il flag di calcolo automatico è abilitato
* FALSE Il flag di calcolo automatico non è abilitato
*/
public boolean isFlCalcoloAutomaticoCheckboxVisible() {
return false ;
}
/**
* Gestisce l'abilitazione o meno del bottone di visualizzazione di un mandato di accreditamento
* @return TRUE Abilitato se un mandato e' stato selezionato nella lista dei mandati
* FALSE Non è abilitato se nessun mandato e' stato selezionato nella lista dei mandati
*/
public boolean isVisualizzaMandatoButtonEnabled() {
return getMandati().getModel() != null ;
}
/**
*
* Imposta il valore della proprietà 'codice_terzo'
*
* @param newCodice_cds Il valore da assegnare a 'codice_terzo'
*/
public void setCodice_terzo(Integer codice_terzo) {
this.codice_terzo = codice_terzo;
}
public String getTi_impegni() {
return ti_impegni;
}
public void setTi_impegni(String ti_impegni) {
this.ti_impegni = ti_impegni;
}
/**
* Metodo utilizzato per gestire il caricamento dei documenti passivi.
* @param context ActionContext in uso.
*
* @return Forward
*
* @exception BusinessProcessException
*/
public void cercaDocPassivi(it.cnr.jada.action.ActionContext context) throws it.cnr.jada.action.BusinessProcessException
{
MandatoIBulk mandatoI = (MandatoIBulk) getModel();
try
{
MandatoComponentSession session = (MandatoComponentSession) createComponentSession();
mandatoI = (MandatoIBulk) session.listaDocPassivi( context.getUserContext(), (MandatoBulk) getModel() );
setModel( context, mandatoI );
resyncChildren( context );
} catch(Exception e)
{
mandatoI.setDocPassiviColl( new ArrayList());
setModel( context, mandatoI );
resyncChildren( context );
throw handleException(e);
}
}
/**
* Metodo utilizzato per gestire il caricamento degli impegni.
* @param context ActionContext in uso.
*
* @return Forward
*
* @exception BusinessProcessException
*/
public void cercaImpegni(it.cnr.jada.action.ActionContext context) throws it.cnr.jada.action.BusinessProcessException
{
MandatoAutomaticoWizardBulk mandato = (MandatoAutomaticoWizardBulk) getModel();
try
{
MandatoAutomaticoComponentSession session = (MandatoAutomaticoComponentSession) createComponentSession();
mandato = (MandatoAutomaticoWizardBulk) session.listaImpegniTerzo( context.getUserContext(), mandato );
setModel( context, mandato );
resyncChildren( context );
} catch(Exception e)
{
mandato.setDocPassiviColl( new ArrayList());
setModel( context, mandato );
resyncChildren( context );
throw handleException(e);
}
}
public String getTi_automatismo() {
return ti_automatismo;
}
public void setTi_automatismo(String ti_automatismo) {
this.ti_automatismo = ti_automatismo;
}
/**
* Abilito il tab di creazione mandati automatici solo se ci sono sopra, in quanto posso accedere
* al Tab in questione solo tramite la conferma della ricerca.
*/
public boolean isMandatoAutomaticoTabEnabled() {
return getTab("tab").equals("tabMandatoAutomatico");
}
} © 2015 - 2025 Weber Informatics LLC | Privacy Policy