Search in sources :

Example 1 with ComuneBulk

use of it.cnr.contab.anagraf00.tabter.bulk.ComuneBulk in project sigla-main by consiglionazionaledellericerche.

the class Esenzioni_addizionaliComponent method Aggiornamento.

public void Aggiornamento(UserContext usercontext, Esenzioni_addizionaliBulk esenzioni_addizionali) throws ComponentException {
    try {
        Esenzioni_addcomBulk Esenzioni_addcom = null;
        Esenzioni_addcomBulk nuovo_Esenzioni_addcom = null;
        for (Iterator i = esenzioni_addizionali.getDettagli().iterator(); i.hasNext(); ) {
            Esenzioni_addizionaliBulk nuova = (Esenzioni_addizionaliBulk) i.next();
            ComuneHome home = (ComuneHome) getHome(usercontext, ComuneBulk.class);
            ComuneBulk comune = home.findComune(usercontext, nuova.getCd_catastale());
            if (comune != null) {
                Esenzioni_addcomHome home_esenzioni = (Esenzioni_addcomHome) getHome(usercontext, Esenzioni_addcomBulk.class);
                Esenzioni_addcom = home_esenzioni.findEsenzione(usercontext, comune);
            }
            if (Esenzioni_addcom != null) {
                Esenzioni_addcom.setToBeUpdated();
                Esenzioni_addcom.setDt_fine_validita(it.cnr.jada.util.ejb.EJBCommonServices.getServerDate());
                modificaConBulk(usercontext, Esenzioni_addcom);
            } else {
                Esenzioni_addcom = new Esenzioni_addcomBulk();
                Esenzioni_addcom.setCd_catastale(nuova.getCd_catastale());
                Esenzioni_addcom.setPg_comune(comune.getPg_comune());
            }
            nuovo_Esenzioni_addcom = Esenzioni_addcom;
            java.util.GregorianCalendar gc = getGregorianCalendar();
            gc.setTime(it.cnr.jada.util.ejb.EJBCommonServices.getServerDate());
            gc.add(java.util.Calendar.DAY_OF_YEAR, +1);
            nuovo_Esenzioni_addcom.setDt_inizio_validita(new Timestamp(gc.getTime().getTime()));
            nuovo_Esenzioni_addcom.setDt_fine_validita(EsercizioHome.DATA_INFINITO);
            nuovo_Esenzioni_addcom.setImporto(nuova.getImporto());
            nuovo_Esenzioni_addcom.setCrudStatus(OggettoBulk.TO_BE_CREATED);
            super.creaConBulk(usercontext, nuovo_Esenzioni_addcom);
            nuova.setToBeDeleted();
            eliminaConBulk(usercontext, nuova);
        }
    } catch (it.cnr.jada.persistency.PersistencyException ex) {
        throw handleException(ex);
    }
}
Also used : Esenzioni_addizionaliBulk(it.cnr.contab.compensi00.tabrif.bulk.Esenzioni_addizionaliBulk) PersistencyException(it.cnr.jada.persistency.PersistencyException) Iterator(java.util.Iterator) Esenzioni_addcomHome(it.cnr.contab.compensi00.tabrif.bulk.Esenzioni_addcomHome) Esenzioni_addcomBulk(it.cnr.contab.compensi00.tabrif.bulk.Esenzioni_addcomBulk) Timestamp(java.sql.Timestamp) ComuneHome(it.cnr.contab.anagraf00.tabter.bulk.ComuneHome) ComuneBulk(it.cnr.contab.anagraf00.tabter.bulk.ComuneBulk)

Example 2 with ComuneBulk

use of it.cnr.contab.anagraf00.tabter.bulk.ComuneBulk in project sigla-main by consiglionazionaledellericerche.

the class Esenzioni_addizionaliComponent method verifica_aggiornamento.

public Esenzioni_addizionaliBulk verifica_aggiornamento(UserContext usercontext, Esenzioni_addizionaliBulk esenzioni_addizionali) throws ComponentException {
    Esenzioni_addcomBulk Esenzioni_addcom = null;
    try {
        ComuneHome home = (ComuneHome) getHome(usercontext, ComuneBulk.class);
        ComuneBulk comune = home.findComune(usercontext, esenzioni_addizionali.getCd_catastale());
        if (comune != null && comune.getPg_comune() != null && (esenzioni_addizionali.getDs_comune().toUpperCase().startsWith(comune.getDs_comune().toUpperCase()))) {
            Esenzioni_addcomHome home_esenzioni = (Esenzioni_addcomHome) getHome(usercontext, Esenzioni_addcomBulk.class);
            Esenzioni_addcom = home_esenzioni.findEsenzione(usercontext, comune);
        } else if (comune != null && comune.getPg_comune() != null && !(esenzioni_addizionali.getDs_comune().toUpperCase().startsWith(comune.getDs_comune().toUpperCase()))) {
            // throw new ApplicationException("Corrispondenza Descrizione comune non trovata "+esenzioni_addizionali.getCd_catastale()+" - "+esenzioni_addizionali.getDs_comune()+" - "+comune.getDs_comune());
            Esenzioni_addcomHome home_esenzioni = (Esenzioni_addcomHome) getHome(usercontext, Esenzioni_addcomBulk.class);
            Esenzioni_addcom = home_esenzioni.findEsenzione(usercontext, comune);
            esenzioni_addizionali.setNota("Corrispondenza Descrizione comune non trovata " + esenzioni_addizionali.getCd_catastale() + " - " + esenzioni_addizionali.getDs_comune() + " - " + comune.getDs_comune());
        } else
            throw new ApplicationException("Comune non trovato - Codice Catastale: " + esenzioni_addizionali.getCd_catastale() + " - " + esenzioni_addizionali.getDs_comune());
        if ((Esenzioni_addcom != null && Esenzioni_addcom.getImporto().compareTo(new java.math.BigDecimal(0)) != 0 && Esenzioni_addcom.getImporto().compareTo(esenzioni_addizionali.getImporto()) != 0) || (Esenzioni_addcom != null && esenzioni_addizionali.getNota() != null)) {
            esenzioni_addizionali.setOld_importo(Esenzioni_addcom.getImporto());
            esenzioni_addizionali.setToBeCreated();
            creaConBulk(usercontext, esenzioni_addizionali);
            return esenzioni_addizionali;
        } else if (Esenzioni_addcom == null) {
            esenzioni_addizionali.setOld_importo(new java.math.BigDecimal(0));
            if (esenzioni_addizionali.getImporto().compareTo(esenzioni_addizionali.getOld_importo()) != 0) {
                esenzioni_addizionali.setToBeCreated();
                creaConBulk(usercontext, esenzioni_addizionali);
                return esenzioni_addizionali;
            } else
                return null;
        } else
            return null;
    } catch (it.cnr.jada.persistency.PersistencyException ex) {
        throw handleException(ex);
    }
}
Also used : PersistencyException(it.cnr.jada.persistency.PersistencyException) ApplicationException(it.cnr.jada.comp.ApplicationException) Esenzioni_addcomHome(it.cnr.contab.compensi00.tabrif.bulk.Esenzioni_addcomHome) Esenzioni_addcomBulk(it.cnr.contab.compensi00.tabrif.bulk.Esenzioni_addcomBulk) ComuneHome(it.cnr.contab.anagraf00.tabter.bulk.ComuneHome) ComuneBulk(it.cnr.contab.anagraf00.tabter.bulk.ComuneBulk)

Example 3 with ComuneBulk

use of it.cnr.contab.anagraf00.tabter.bulk.ComuneBulk in project sigla-main by consiglionazionaledellericerche.

the class MandatoComponent method aggiungiDocPassivi.

/**
 * aggiungiDocPassivi PreCondition: E' stata generata la richiesta di
 * aggiungere ad un mandato nuovi documenti amministrativi passivi ( fatture
 * passive o domenti generici passivi). Tali documenti hanno lo stesso terzo
 * e la stessa classe di pagamento. PostCondition: Per ogni documento
 * passivo viene creata una o piu' righe di mandato (metodo creaMandatoRiga)
 * secondo la seguente regola: - per ogni documento generico viene creata
 * una sola riga di mandato - per ogni fattura passiva viene creata una riga
 * di mandato ed eventualmente righe aggiuntive se tale fattura e' associata
 * a note di debito e/o note di credito Viene creata una istanza di
 * MandatoTerzoBulk (metodo creaMandatoTerzo) coi dati del terzo presente
 * nei documenti amministrativi errore - beneficiari diversi PreCondition:
 * Il codice terzo dei documenti amministrativi passivi da aggiungere al
 * mandato non e' lo stesso per tutti i documenti PostCondition: Un
 * messaggio di errore segnala all'utente l'impossibilità di aggiungere i
 * documenti al mandato errore - classe di pagamento PreCondition: La classe
 * di pagamento (Bancario,Postale,etc.) dei documenti amministrativi passivi
 * da aggiungere al mandato non e' lo stesso per tutti i documenti.
 * PostCondition: Un messaggio di errore segnala all'utente l'impossibilità
 * di aggiungere i documenti al mandato errore - mandato di regolarizzazione
 * PreCondition: I documenti amministrativi passivi selezionati per essere
 * aggiunti ad un mandato di regolarizzazione sono stati contabilizzati in
 * parte su obbligazioni relative a capitoli di bilancio e in parte su
 * obbligazioni relative a partite di giro. PostCondition: Un messaggio di
 * errore segnala all'utente l'impossibilità di aggiungere i documenti al
 * mandato
 * <p>
 * errore - mandato competenza/residuo PreCondition: I documenti
 * amministrativi passivi selezionati per essere aggiunti ad un mandato sono
 * stati contabilizzati in parte su impegni residui e in parte su impegni di
 * competenza PostCondition: Un messaggio di errore segnala all'utente
 * l'impossibilità di aggiungere i documenti al mandato
 *
 * @param aUC        lo <code>UserContext</code> che ha generato la richiesta
 * @param mandato    <code>MandatoBulk</code> il mandato da aggiornare
 * @param docPassivi <code>List</code> la lista dei documenti passivi selezionati
 *                   dall'utente
 * @return mandato <code>MandatoBulk</code> il Mandato aggiornato
 */
public MandatoBulk aggiungiDocPassivi(UserContext aUC, MandatoBulk mandato, List docPassivi) throws ComponentException {
    Integer cd_terzo;
    String ti_pagamento, ti_competenza_residuo;
    Boolean pGiro;
    V_doc_passivo_obbligazioneBulk docPassivo;
    Mandato_rigaBulk riga;
    Collection docPassiviCollegati;
    try {
        if (mandato.getMandato_rigaColl().size() == 0)
            mandato.setMandato_terzo(null);
        if (mandato.getMandato_terzo() == null) {
            cd_terzo = ((V_doc_passivo_obbligazioneBulk) docPassivi.get(0)).getCodice_terzo_o_cessionario();
            ti_pagamento = ((V_doc_passivo_obbligazioneBulk) docPassivi.get(0)).getTi_pagamento();
            pGiro = ((V_doc_passivo_obbligazioneBulk) docPassivi.get(0)).getFl_pgiro();
            ti_competenza_residuo = ((V_doc_passivo_obbligazioneBulk) docPassivi.get(0)).getTi_competenza_residuo();
        } else {
            cd_terzo = mandato.getMandato_terzo().getCd_terzo();
            ti_pagamento = mandato.getMandato_rigaColl().get(0).getBanca().getTi_pagamento();
            pGiro = mandato.getMandato_rigaColl().get(0).getFl_pgiro();
            ti_competenza_residuo = mandato.getTi_competenza_residuo();
        }
        for (Iterator i = docPassivi.iterator(); i.hasNext(); ) {
            docPassivo = (V_doc_passivo_obbligazioneBulk) i.next();
            if (!cd_terzo.equals(docPassivo.getCodice_terzo_o_cessionario()))
                throw new ApplicationException("E' possibile selezionare solo doc passivi relativi ad un unico beneficiario");
            if (!MandatoBulk.TIPO_REGOLARIZZAZIONE.equals(mandato.getTi_mandato()) && !ti_pagamento.equals(docPassivo.getTi_pagamento()))
                throw new ApplicationException("E' possibile selezionare solo doc passivi relativi ad una stessa classe di pagamento");
            /*
                 * simona 9.10.02 if ( mandato.getTi_mandato().equals(
                 * mandato.TIPO_REGOLARIZZAZIONE ) &&
                 * !docPassivo.getFl_pgiro().equals( pGiro )) throw new
                 * ApplicationException(
                 * "Per il mandato di regolarizzaione non e' possibile selezionare doc passivi su partite di giro e doc passivi su capitoli di bilancio"
                 * );
                 */
            if (!ti_competenza_residuo.equals(docPassivo.getTi_competenza_residuo()))
                throw new ApplicationException("E' possibile selezionare solo doc passivi dello stesso tipo COMPETENZA/RESIDUO.");
            // creo mandato_riga
            riga = creaMandatoRiga(aUC, mandato, docPassivo);
            // controllo cap /swift
            if (riga.getBanca() != null && ((Rif_modalita_pagamentoBulk.BANCARIO.equals(riga.getBanca().getTi_pagamento()) || (Rif_modalita_pagamentoBulk.IBAN.equals(riga.getBanca().getTi_pagamento()))))) {
                BancaBulk banca = (BancaBulk) getHome(aUC, BancaBulk.class).findByPrimaryKey(new BancaBulk(riga.getCd_terzo(), riga.getPg_banca()));
                if (banca != null && banca.getCodice_iban() != null && riga.getBanca().getAbi() != null && banca.getCodice_iban().startsWith("IT")) {
                    if (riga.getCd_terzo() != null) {
                        TerzoBulk terzo = (TerzoBulk) getHome(aUC, TerzoBulk.class).findByPrimaryKey(new TerzoBulk(riga.getCd_terzo()));
                        if (terzo.getPg_comune_sede() != null) {
                            ComuneBulk comune = (ComuneBulk) getHome(aUC, ComuneBulk.class).findByPrimaryKey(new ComuneBulk(terzo.getPg_comune_sede()));
                            if (comune.getTi_italiano_estero().equals(NazioneBulk.ITALIA) && terzo.getCap_comune_sede() == null)
                                throw new ApplicationException("Attenzione per la modalità di pagamento presente sul documento è necessario indicare il cap sul terzo.");
                        }
                    }
                } else if (banca != null && banca.getCodice_iban() != null && riga.getBanca().getAbi() == null) {
                    NazioneHome nazioneHome = (NazioneHome) getHome(aUC, NazioneBulk.class);
                    SQLBuilder sqlExists = nazioneHome.createSQLBuilder();
                    sqlExists.addSQLClause("AND", "NAZIONE.CD_ISO", SQLBuilder.EQUALS, banca.getCodice_iban().substring(0, 2));
                    sqlExists.addSQLClause("AND", "NAZIONE.FL_SEPA", SQLBuilder.EQUALS, "Y");
                    if (sqlExists.executeCountQuery(getConnection(aUC)) != 0 && riga.getBanca().getCodice_swift() == null)
                        throw new ApplicationException("Attenzione per la modalità di pagamento presente sul documento è necessario indicare il codice swift/bic.");
                }
            }
            // estrae le eventuali note di credito/debito
            docPassiviCollegati = ((MandatoIHome) getHome(aUC, mandato.getClass())).findDocPassiviCollegati(docPassivo);
            for (Iterator j = docPassiviCollegati.iterator(); j.hasNext(); ) creaMandatoRigaCollegato(aUC, mandato, (V_doc_passivo_obbligazioneBulk) j.next(), riga);
        }
        // creo mandato terzo
        if (mandato.getMandato_terzo() == null) {
            Mandato_terzoBulk mTerzo = creaMandatoTerzo(aUC, mandato, cd_terzo);
            mandato.setMandato_terzo(mTerzo);
        }
        mandato.setTi_competenza_residuo(ti_competenza_residuo);
        mandato.refreshImporto();
        return mandato;
    } catch (Exception e) {
        throw handleException(e);
    }
}
Also used : AddressException(javax.mail.internet.AddressException) DetailedRuntimeException(it.cnr.jada.DetailedRuntimeException) IntrospectionException(it.cnr.jada.persistency.IntrospectionException) SQLException(java.sql.SQLException) ApplicationException(it.cnr.jada.comp.ApplicationException) PersistencyException(it.cnr.jada.persistency.PersistencyException) ApplicationMessageFormatException(it.cnr.contab.util.ApplicationMessageFormatException) ComponentException(it.cnr.jada.comp.ComponentException) ApplicationException(it.cnr.jada.comp.ApplicationException) NazioneHome(it.cnr.contab.anagraf00.tabter.bulk.NazioneHome) ComuneBulk(it.cnr.contab.anagraf00.tabter.bulk.ComuneBulk)

Example 4 with ComuneBulk

use of it.cnr.contab.anagraf00.tabter.bulk.ComuneBulk in project sigla-main by consiglionazionaledellericerche.

the class Unita_organizzativaComponent method getIndirizzoUnitaOrganizzativa.

/**
 * Recupera l'indirizzo della sede dell'unità organizzativa
 *
 * @param userContext
 * @param uo            -- l'Unita' Organizzativa di cui si vuole conoscere l'indirizzo
 * @param withoutComune -- se "true"  restituisce solo l'indirizzo
 *                      se "false" restituisce l'indirizzo completo di cap e comune
 * @return l'indirizzo della sede dell'unità organizzativa
 * @throws it.cnr.jada.comp.ComponentException
 */
public String getIndirizzoUnitaOrganizzativa(UserContext userContext, Unita_organizzativaBulk uo, boolean withoutComune) throws it.cnr.jada.comp.ComponentException {
    try {
        TerzoBulk terzo = Utility.createTerzoComponentSession().cercaTerzoPerUnitaOrganizzativa(userContext, uo);
        String indirizzo = "";
        if (terzo != null) {
            if (terzo.getVia_sede() != null)
                indirizzo = indirizzo + terzo.getVia_sede();
            if (terzo.getNumero_civico_sede() != null)
                indirizzo = indirizzo + ", " + terzo.getNumero_civico_sede();
            if (!withoutComune) {
                if (terzo.getCap_comune_sede() != null)
                    indirizzo = indirizzo + " - " + terzo.getCap_comune_sede();
                if (terzo.getComune_sede() != null) {
                    ComuneBulk comune = (ComuneBulk) getHome(userContext, ComuneBulk.class).findByPrimaryKey(terzo.getComune_sede());
                    if (comune != null && comune.getDs_comune() != null)
                        indirizzo = indirizzo + "  " + comune.getDs_comune();
                }
            }
        }
        return indirizzo;
    } catch (Exception e) {
        throw handleException(e);
    }
}
Also used : TerzoBulk(it.cnr.contab.anagraf00.core.bulk.TerzoBulk) SQLException(java.sql.SQLException) ApplicationException(it.cnr.jada.comp.ApplicationException) PersistencyException(it.cnr.jada.persistency.PersistencyException) CRUDDuplicateKeyException(it.cnr.jada.comp.CRUDDuplicateKeyException) ComponentException(it.cnr.jada.comp.ComponentException) ComuneBulk(it.cnr.contab.anagraf00.tabter.bulk.ComuneBulk)

Example 5 with ComuneBulk

use of it.cnr.contab.anagraf00.tabter.bulk.ComuneBulk in project sigla-main by consiglionazionaledellericerche.

the class Fondo_spesaBulk method initializeForInsert.

public OggettoBulk initializeForInsert(it.cnr.jada.util.action.CRUDBP bp, it.cnr.jada.action.ActionContext context) {
    initialize(bp, context);
    setIm_ammontare_spesa(new java.math.BigDecimal(0).setScale(2, java.math.BigDecimal.ROUND_HALF_UP));
    setImportoNettoSpesa(new java.math.BigDecimal(0).setScale(2, java.math.BigDecimal.ROUND_HALF_UP));
    setDs_spesa(null);
    try {
        java.sql.Timestamp date = getCurrentDate();
        int annoSolare = getDateCalendar(date).get(java.util.Calendar.YEAR);
        int esercizioInScrivania = it.cnr.contab.utenze00.bp.CNRUserContext.getEsercizio(context.getUserContext()).intValue();
        if (annoSolare != esercizioInScrivania)
            date = new java.sql.Timestamp(new java.text.SimpleDateFormat("dd/MM/yyyy").parse("31/12/" + esercizioInScrivania).getTime());
        setDt_spesa(date);
    } catch (java.text.ParseException e) {
        throw new it.cnr.jada.DetailedRuntimeException(e);
    }
    setTipoDocumento(TIPO_DOC_FP);
    setFl_documentata(Boolean.FALSE);
    setFl_fornitore_saltuario(Boolean.TRUE);
    setFl_reintegrata(Boolean.FALSE);
    setFl_obbligazione(Boolean.FALSE);
    setDt_da_competenza_coge(getDt_spesa());
    setDt_a_competenza_coge(getDt_spesa());
    setCitta(new ComuneBulk());
    return this;
}
Also used : it.cnr.jada.persistency.sql(it.cnr.jada.persistency.sql) ComuneBulk(it.cnr.contab.anagraf00.tabter.bulk.ComuneBulk)

Aggregations

ComuneBulk (it.cnr.contab.anagraf00.tabter.bulk.ComuneBulk)38 ComponentException (it.cnr.jada.comp.ComponentException)13 PersistencyException (it.cnr.jada.persistency.PersistencyException)12 RemoteException (java.rmi.RemoteException)12 TerzoBulk (it.cnr.contab.anagraf00.core.bulk.TerzoBulk)11 NazioneBulk (it.cnr.contab.anagraf00.tabter.bulk.NazioneBulk)10 ApplicationException (it.cnr.jada.comp.ApplicationException)10 Iterator (java.util.Iterator)9 AnagraficoBulk (it.cnr.contab.anagraf00.core.bulk.AnagraficoBulk)8 ComuneHome (it.cnr.contab.anagraf00.tabter.bulk.ComuneHome)8 EJBException (javax.ejb.EJBException)8 RemoteIterator (it.cnr.jada.util.RemoteIterator)7 Timestamp (java.sql.Timestamp)7 AnagraficoComponentSession (it.cnr.contab.anagraf00.ejb.AnagraficoComponentSession)5 IntrospectionException (it.cnr.jada.persistency.IntrospectionException)5 SQLBuilder (it.cnr.jada.persistency.sql.SQLBuilder)5 Unita_organizzativaBulk (it.cnr.contab.config00.sto.bulk.Unita_organizzativaBulk)4 BusinessProcessException (it.cnr.jada.action.BusinessProcessException)4 ElaboraFileIntraComponentSession (it.cnr.contab.docamm00.ejb.ElaboraFileIntraComponentSession)3 IOException (java.io.IOException)3