Search in sources :

Example 1 with AnticipoBulk

use of it.cnr.contab.missioni00.docs.bulk.AnticipoBulk in project sigla-main by consiglionazionaledellericerche.

the class MissioneComponent method inizializzaBulkPerModifica.

/**
 * Pre-post-conditions:
 * <p>
 * Nome: inizializza Missione
 * Pre:  L'utente ha richiesto l'inizializzzaione dei dati di una missione già inserita per una eventuale modifica
 * Post: Il sistema carica la missione, il terzo della missione, gli inquadramenti e i tipi di rapporto,
 * le tappe della missione (metodo 'caricaTappeMissione'), i dettagli di spesa della missione (metodo 'caricaDettagliMissione'),
 * gli eventuali anticipi, obbligazioni o compensi (metodo 'loadCompenso')
 * su cui la missione e' stata contabilizzata
 *
 * @return la MissioneBulk inizializzata
 * @param    userContext    lo UserContext che ha generato la richiesta
 * @param    bulk    la MissioneBulk da inizializzare
 */
public OggettoBulk inizializzaBulkPerModifica(UserContext userContext, OggettoBulk bulk) throws ComponentException {
    MissioneBulk missione = (MissioneBulk) bulk;
    if (missione.getEsercizio() == null)
        throw new it.cnr.jada.comp.ApplicationException("L'esercizio del documento non è valorizzato! Impossibile proseguire.");
    if (missione.getEsercizio().intValue() > it.cnr.contab.utenze00.bp.CNRUserContext.getEsercizio(userContext).intValue())
        throw new it.cnr.jada.comp.ApplicationException("Il documento deve appartenere o all'esercizio di scrivania o ad esercizi precedenti per essere aperto in modifica!");
    missione = (MissioneBulk) super.inizializzaBulkPerModifica(userContext, missione);
    try {
        lockBulk(userContext, missione);
        if (missione == null)
            return null;
        caricaTerzoInModificaMissione(userContext, missione);
        // Inizializzo gli attributi del terzo, la collection di modalita e termini
        // di pagamento e la collection dei tipi rapporto
        completaTerzo(userContext, missione, missione.getV_terzo());
        // Inizializzo la collection degli inquadramenti e dei tipi rapporto eleggibili
        findInquadramentiETipiTrattamento(userContext, missione);
        // Carico il Tipo rapporto selezionato
        caricaTipoTrattamento(missione);
        // Lettura delle tappe della missione e inizializzazioni della relativa collection e dictionary
        caricaTappeMissione(userContext, missione);
        // Lettura dei dettagli della missione e inizializzazioni della collection delle spese e della diaria
        caricaDettagliMissione(userContext, missione);
        // Inizializzo la collection dei giorni
        missione.riempiElencoGiorniCollPerModifica();
        missione.ordinaCollectionGiorni();
        // Riempi gli oggetti complessi persistenti
        getHomeCache(userContext).fetchAll(userContext);
        // Se la missione ha un anticipo associato carico l'eventuale rimborso
        if (missione.isMissioneConAnticipo())
            missione.setAnticipo(caricaRimborsoAnticipo(userContext, missione.getAnticipo()));
        if (missione.getAnticipo() != null)
            missione.setAnticipoClone((AnticipoBulk) missione.getAnticipo().clone());
        // associata alla missione che si sta modificando)
        if (missione.getObbligazione_scadenzario() != null) {
            missione.setObbligazione_scadenzarioClone(new Obbligazione_scadenzarioBulk());
            missione.getObbligazione_scadenzarioClone().setEsercizio_originale(missione.getEsercizio_ori_obbligazione());
            missione.getObbligazione_scadenzarioClone().setPg_obbligazione(missione.getPg_obbligazione());
            missione.getObbligazione_scadenzarioClone().setPg_obbligazione_scadenzario(missione.getPg_obbligazione_scadenzario());
            missione.getObbligazione_scadenzarioClone().setEsercizio(missione.getObbligazione_scadenzario().getEsercizio());
            missione.getObbligazione_scadenzarioClone().setCd_cds(missione.getObbligazione_scadenzario().getCd_cds());
        }
        // In base allo stato di riporto dell'obbligazione della missione (o del relativo compenso)
        // inizializzo la variabile 'riportata' della missione
        missione.setRiportata(getStatoRiporto(userContext, missione));
        /**
         * Gennaro Borriello - (02/11/2004 15.04.39)
         *	Aggiunta gestione dell Stato Riportato all'esercizio di scrivania.
         */
        missione.setRiportataInScrivania(getStatoRiportoInScrivania(userContext, missione));
        // carico Compenso
        if (missione.isMissioneConCompenso())
            loadCompenso(userContext, missione);
        missione.setMissioneIniziale((MissioneBulk) missione.clone());
    } catch (Throwable e) {
        throw handleException(e);
    }
    if (Optional.ofNullable(missione).map(missioneBulk -> !Optional.ofNullable(missioneBulk.getFl_associato_compenso()).orElse(Boolean.TRUE)).orElse(Boolean.FALSE)) {
        caricaScrittura(userContext, missione);
    }
    return missione;
}
Also used : V_terzo_per_compensoHome(it.cnr.contab.compensi00.docs.bulk.V_terzo_per_compensoHome) it.cnr.contab.anagraf00.core.bulk(it.cnr.contab.anagraf00.core.bulk) LoggerFactory(org.slf4j.LoggerFactory) BigDecimal(java.math.BigDecimal) Rif_inquadramentoHome(it.cnr.contab.anagraf00.tabrif.bulk.Rif_inquadramentoHome) it.cnr.contab.missioni00.tabrif.bulk(it.cnr.contab.missioni00.tabrif.bulk) DivisaHome(it.cnr.contab.docamm00.tabrif.bulk.DivisaHome) AccertamentoAbstractComponentSession(it.cnr.contab.doccont00.ejb.AccertamentoAbstractComponentSession) Timestamp(java.sql.Timestamp) Tipo_rapportoHome(it.cnr.contab.anagraf00.tabrif.bulk.Tipo_rapportoHome) Parametri_cnrBulk(it.cnr.contab.config00.bulk.Parametri_cnrBulk) Elemento_voceBulk(it.cnr.contab.config00.pdcfin.bulk.Elemento_voceBulk) CambioBulk(it.cnr.contab.docamm00.tabrif.bulk.CambioBulk) Serializable(java.io.Serializable) RemoteException(java.rmi.RemoteException) IPrintMgr(it.cnr.jada.comp.IPrintMgr) Numerazione_doc_ammBulk(it.cnr.contab.docamm00.docs.bulk.Numerazione_doc_ammBulk) NazioneBulk(it.cnr.contab.anagraf00.tabter.bulk.NazioneBulk) Tipo_trattamentoHome(it.cnr.contab.compensi00.tabrif.bulk.Tipo_trattamentoHome) CompensoBulk(it.cnr.contab.compensi00.docs.bulk.CompensoBulk) UserContext(it.cnr.jada.UserContext) it.cnr.jada.persistency.sql(it.cnr.jada.persistency.sql) RemoveAccent(it.cnr.contab.util.RemoveAccent) java.util(java.util) Unita_organizzativaBulk(it.cnr.contab.config00.sto.bulk.Unita_organizzativaBulk) Utility(it.cnr.contab.util.Utility) Filtro_ricerca_obbligazioniVBulk(it.cnr.contab.docamm00.docs.bulk.Filtro_ricerca_obbligazioniVBulk) it.cnr.contab.doccont00.core.bulk(it.cnr.contab.doccont00.core.bulk) CompensoHome(it.cnr.contab.compensi00.docs.bulk.CompensoHome) V_terzo_per_compensoBulk(it.cnr.contab.compensi00.docs.bulk.V_terzo_per_compensoBulk) IntrospectionException(it.cnr.jada.persistency.IntrospectionException) ScritturaPartitaDoppiaFromDocumentoComponent(it.cnr.contab.coepcoan00.comp.ScritturaPartitaDoppiaFromDocumentoComponent) ObbligazioniTable(it.cnr.contab.docamm00.docs.bulk.ObbligazioniTable) ProgressiviAmmComponentSession(it.cnr.contab.docamm00.ejb.ProgressiviAmmComponentSession) RemoteIterator(it.cnr.jada.util.RemoteIterator) Elemento_voceHome(it.cnr.contab.config00.pdcfin.bulk.Elemento_voceHome) DocumentoContabileComponentSession(it.cnr.contab.doccont00.comp.DocumentoContabileComponentSession) CNRUserContext(it.cnr.contab.utenze00.bp.CNRUserContext) Configurazione_cnrComponentSession(it.cnr.contab.config00.ejb.Configurazione_cnrComponentSession) ApplicationException(it.cnr.jada.comp.ApplicationException) PersistencyException(it.cnr.jada.persistency.PersistencyException) DivisaBulk(it.cnr.contab.docamm00.tabrif.bulk.DivisaBulk) Logger(org.slf4j.Logger) ObbligazioneAbstractComponentSession(it.cnr.contab.doccont00.ejb.ObbligazioneAbstractComponentSession) RiportoDocAmmComponentSession(it.cnr.contab.docamm00.ejb.RiportoDocAmmComponentSession) Rif_inquadramentoBulk(it.cnr.contab.anagraf00.tabrif.bulk.Rif_inquadramentoBulk) DatiFinanziariScadenzeDTO(it.cnr.contab.doccont00.core.DatiFinanziariScadenzeDTO) NazioneHome(it.cnr.contab.anagraf00.tabter.bulk.NazioneHome) it.cnr.contab.missioni00.docs.bulk(it.cnr.contab.missioni00.docs.bulk) Tipo_trattamentoBulk(it.cnr.contab.compensi00.tabrif.bulk.Tipo_trattamentoBulk) CambioHome(it.cnr.contab.docamm00.tabrif.bulk.CambioHome) Filtro_trattamentoBulk(it.cnr.contab.compensi00.tabrif.bulk.Filtro_trattamentoBulk) it.cnr.jada.bulk(it.cnr.jada.bulk) Unita_organizzativaHome(it.cnr.contab.config00.sto.bulk.Unita_organizzativaHome) Tipo_rapportoBulk(it.cnr.contab.anagraf00.tabrif.bulk.Tipo_rapportoBulk) ComponentException(it.cnr.jada.comp.ComponentException) ApplicationException(it.cnr.jada.comp.ApplicationException)

Example 2 with AnticipoBulk

use of it.cnr.contab.missioni00.docs.bulk.AnticipoBulk in project sigla-main by consiglionazionaledellericerche.

the class CRUDAnticipoAction method doEliminaScadenzaObbligazione.

/**
 * Il metodo gestisce l'eliminazione dell'associazione anticipo-scadenza :
 * - l'aggiornamento/inserimento a db di tale scadenza con im_associato_doc_amm=0
 * - se l'anticipo usa il fondo economale devo eliminare questa associazione
 */
public Forward doEliminaScadenzaObbligazione(ActionContext context) {
    try {
        fillModel(context);
        CRUDAnticipoBP bp = (CRUDAnticipoBP) getBusinessProcess(context);
        AnticipoBulk anticipo = (AnticipoBulk) bp.getModel();
        if ((anticipo.getPg_obbligazione_scadenzario() == null) || (anticipo.getPg_obbligazione() == null) || (anticipo.getEsercizio_ori_obbligazione() == null))
            throw new it.cnr.jada.comp.ApplicationException("Non esiste alcuna scadenza da eliminare!");
        anticipo.addToDocumentiContabiliCancellati(anticipo.getScadenza_obbligazione());
        anticipo.setScadenza_obbligazione(new Obbligazione_scadenzarioBulk());
        if (anticipo.getStato_pagamento_fondo_eco().compareTo(AnticipoBulk.STATO_ASSEGNATO_FONDO_ECO) == 0)
            anticipo.setStato_pagamento_fondo_eco(AnticipoBulk.STATO_LIBERO_FONDO_ECO);
        bp.setDirty(true);
        return context.findDefaultForward();
    } catch (Exception e) {
        return handleException(context, e);
    }
}
Also used : Obbligazione_scadenzarioBulk(it.cnr.contab.doccont00.core.bulk.Obbligazione_scadenzarioBulk) CRUDAnticipoBP(it.cnr.contab.missioni00.bp.CRUDAnticipoBP) AnticipoBulk(it.cnr.contab.missioni00.docs.bulk.AnticipoBulk) BusinessProcessException(it.cnr.jada.action.BusinessProcessException) ValidationException(it.cnr.jada.bulk.ValidationException)

Example 3 with AnticipoBulk

use of it.cnr.contab.missioni00.docs.bulk.AnticipoBulk in project sigla-main by consiglionazionaledellericerche.

the class CRUDAnticipoAction method doRiportaIndietro.

/**
 * Il metodo gestisce la selezione del bottone "Riporta indietro". Ciò implica :
 * - se non ho rimborso : riportare indietro l'obbligazione senza committare
 * - se ho rimborso : riportare indietro l'accertamento e committare
 */
public Forward doRiportaIndietro(ActionContext context) throws java.rmi.RemoteException {
    try {
        fillModel(context);
        CRUDAnticipoBP bp = (CRUDAnticipoBP) getBusinessProcess(context);
        AnticipoBulk anticipo = (AnticipoBulk) bp.getModel();
        if (!anticipo.hasRimborso())
            bp.riportaIndietro(context);
        else
            bp.riportaRimborsoIndietro(context);
        return context.findDefaultForward();
    } catch (Throwable t) {
        return handleException(context, t);
    }
}
Also used : CRUDAnticipoBP(it.cnr.contab.missioni00.bp.CRUDAnticipoBP) AnticipoBulk(it.cnr.contab.missioni00.docs.bulk.AnticipoBulk)

Example 4 with AnticipoBulk

use of it.cnr.contab.missioni00.docs.bulk.AnticipoBulk in project sigla-main by consiglionazionaledellericerche.

the class CRUDAnticipoAction method doSearchListabanche.

/**
 * Il metodo gestisce la selezione del bottone di ricerca delle Banche
 */
public Forward doSearchListabanche(ActionContext context) {
    try {
        fillModel(context);
        AnticipoBulk anticipo = (AnticipoBulk) getBusinessProcess(context).getModel();
        return search(context, getFormField(context, "main.listabanche"), anticipo.getModalita_pagamento().getTiPagamentoColumnSet());
    } catch (Throwable t) {
        return handleException(context, t);
    }
}
Also used : AnticipoBulk(it.cnr.contab.missioni00.docs.bulk.AnticipoBulk)

Example 5 with AnticipoBulk

use of it.cnr.contab.missioni00.docs.bulk.AnticipoBulk in project sigla-main by consiglionazionaledellericerche.

the class CRUDMissioneAction method doBlankSearchFind_anticipo.

/**
 * Il metodo gestisce l'eliminazione dell'associazione missione-anticipo.
 * Il metodo effettua le opportune validazioni sull'importo della scadenza eventualmente associata alla missione e
 * ricalcola gli importi della missione
 */
public Forward doBlankSearchFind_anticipo(ActionContext context, MissioneBulk missione) {
    try {
        CRUDMissioneBP bp = (CRUDMissioneBP) context.getBusinessProcess();
        if (!missione.isMissioneConAnticipo()) {
            missione.setAnticipo(new AnticipoBulk());
            return context.findDefaultForward();
        }
        missione.setAnticipo(new AnticipoBulk());
        if (missione.isMissioneConObbligazione()) {
            missione.calcolaConsuntivi();
            if (missione.getImporto_scadenza_obbligazione().compareTo(missione.getObbligazione_scadenzario().getIm_scadenza()) != 0)
                setMessage(context, it.cnr.jada.util.action.FormBP.WARNING_MESSAGE, "L'importo della scadenza deve essere " + missione.getImporto_scadenza_obbligazione().toString());
        }
        return context.findDefaultForward();
    } catch (Throwable t) {
        return handleException(context, t);
    }
}
Also used : AnticipoBulk(it.cnr.contab.missioni00.docs.bulk.AnticipoBulk) CRUDMissioneBP(it.cnr.contab.missioni00.bp.CRUDMissioneBP)

Aggregations

AnticipoBulk (it.cnr.contab.missioni00.docs.bulk.AnticipoBulk)34 CRUDAnticipoBP (it.cnr.contab.missioni00.bp.CRUDAnticipoBP)23 BusinessProcessException (it.cnr.jada.action.BusinessProcessException)10 ValidationException (it.cnr.jada.bulk.ValidationException)9 AnticipoComponentSession (it.cnr.contab.missioni00.ejb.AnticipoComponentSession)6 Obbligazione_scadenzarioBulk (it.cnr.contab.doccont00.core.bulk.Obbligazione_scadenzarioBulk)4 HookForward (it.cnr.jada.action.HookForward)4 CompensoBulk (it.cnr.contab.compensi00.docs.bulk.CompensoBulk)3 RiportoDocAmmComponentSession (it.cnr.contab.docamm00.ejb.RiportoDocAmmComponentSession)3 TerzoBulk (it.cnr.contab.anagraf00.core.bulk.TerzoBulk)2 Elemento_voceBulk (it.cnr.contab.config00.pdcfin.bulk.Elemento_voceBulk)2 Filtro_ricerca_obbligazioniVBulk (it.cnr.contab.docamm00.docs.bulk.Filtro_ricerca_obbligazioniVBulk)2 IDocumentoAmministrativoBulk (it.cnr.contab.docamm00.docs.bulk.IDocumentoAmministrativoBulk)2 MissioneBulk (it.cnr.contab.missioni00.docs.bulk.MissioneBulk)2 RimborsoBulk (it.cnr.contab.missioni00.docs.bulk.RimborsoBulk)2 ComponentException (it.cnr.jada.comp.ComponentException)2 it.cnr.contab.anagraf00.core.bulk (it.cnr.contab.anagraf00.core.bulk)1 Anagrafico_esercizioBulk (it.cnr.contab.anagraf00.core.bulk.Anagrafico_esercizioBulk)1 Anagrafico_esercizioHome (it.cnr.contab.anagraf00.core.bulk.Anagrafico_esercizioHome)1 TerzoHome (it.cnr.contab.anagraf00.core.bulk.TerzoHome)1