Search in sources :

Example 1 with AnagraficoBulk

use of it.cnr.contab.anagraf00.core.bulk.AnagraficoBulk in project sigla-main by consiglionazionaledellericerche.

the class CompensoComponent method inizializzaBulkPerStampa.

/**
 * inizializzaBulkPerStampa method comment.
 */
private it.cnr.jada.bulk.OggettoBulk inizializzaBulkPerStampa(it.cnr.jada.UserContext userContext, StampaPartitarioCompensiVBulk stampa) throws it.cnr.jada.comp.ComponentException {
    stampa.setEsercizio(it.cnr.contab.utenze00.bp.CNRUserContext.getEsercizio(userContext));
    stampa.setCd_cds(it.cnr.contab.utenze00.bp.CNRUserContext.getCd_cds(userContext));
    stampa.setCd_unita_organizzativa(it.cnr.contab.utenze00.bp.CNRUserContext.getCd_unita_organizzativa(userContext));
    stampa.setDataInizio(getFirstDayOfYear(it.cnr.contab.utenze00.bp.CNRUserContext.getEsercizio(userContext).intValue()));
    stampa.setDataFine(getDataOdierna(userContext));
    stampa.setAnagraficoForPrint(new AnagraficoBulk());
    return stampa;
}
Also used : AnagraficoBulk(it.cnr.contab.anagraf00.core.bulk.AnagraficoBulk)

Example 2 with AnagraficoBulk

use of it.cnr.contab.anagraf00.core.bulk.AnagraficoBulk in project sigla-main by consiglionazionaledellericerche.

the class CompensoComponent method loadTipoTrattamento.

/**
 * Viene caricato da db il TIPO TRATTAMENTO valido in Data Registrazione
 * compenso
 */
private void loadTipoTrattamento(UserContext userContext, CompensoBulk compenso) throws ComponentException {
    try {
        Tipo_trattamentoHome trattHome = (Tipo_trattamentoHome) getHome(userContext, Tipo_trattamentoBulk.class);
        Filtro_trattamentoBulk filtro = new Filtro_trattamentoBulk();
        filtro.setCdTipoTrattamento(compenso.getCd_trattamento());
        filtro.setTipoAnagrafico(compenso.getTi_anagrafico());
        filtro.setDataValidita(compenso.getDt_registrazione());
        filtro.setFlSenzaCalcoli(compenso.getFl_senza_calcoli());
        filtro.setFlDefaultCongualio(new Boolean(compenso.isDaConguaglio()));
        filtro.setTiIstituzionaleCommerciale(compenso.getTi_istituz_commerc());
        filtro.setFlBonus(compenso.isDaBonus());
        filtro.setFlSplitPayment(compenso.getFl_split_payment());
        if (filtro.getCdTipoRapporto() != null && filtro.getCdTipoRapporto().equals("DIP")) {
            try {
                TerzoHome tHome = (TerzoHome) getHomeCache(userContext).getHome(TerzoBulk.class);
                TerzoBulk tKey = new TerzoBulk(compenso.getCd_terzo());
                TerzoBulk t = (TerzoBulk) tHome.findByPrimaryKey(tKey);
                RapportoHome rHome = (RapportoHome) getHomeCache(userContext).getHome(RapportoBulk.class);
                java.util.Collection collRapp = rHome.findByCdAnagCdTipoRapporto(t.getCd_anag(), filtro.getCdTipoRapporto());
                boolean exit = false;
                for (java.util.Iterator i = collRapp.iterator(); i.hasNext() && !exit; ) {
                    RapportoBulk r = (RapportoBulk) i.next();
                    exit = true;
                    if (r.getCd_ente_prev_sti() == null)
                        // throw new
                        // it.cnr.jada.comp.ApplicationException("Non è stato possibile recuperare l''Ente Previdenziale del dipendente selezionato.");
                        // non blocco perchè potrebbero esserci trattamenti
                        // che non prevedono contributi previdenziali
                        // quindi passo il codice fittizio 'XX'
                        filtro.setEntePrev("XX");
                    else
                        filtro.setEntePrev(r.getCd_ente_prev_sti());
                    if (r.getCd_rapp_impiego_sti() == null)
                        throw new it.cnr.jada.comp.ApplicationException("Per il dipendente in esame non è definito un Rapporto di Impiego!");
                    else {
                        Ass_rapp_impiegoHome assHome = (Ass_rapp_impiegoHome) getHome(userContext, Ass_rapp_impiegoBulk.class);
                        Ass_rapp_impiegoBulk assKey = new Ass_rapp_impiegoBulk(r.getCd_rapp_impiego_sti());
                        Ass_rapp_impiegoBulk ass = (Ass_rapp_impiegoBulk) assHome.findByPrimaryKey(assKey);
                        filtro.setTipoRappImpiego(ass.getTipo_rapp_impiego());
                    }
                }
            } catch (IntrospectionException e) {
                throw handleException(e);
            }
            // solo per il rapporto DIP aggiungo il filtro "Anno prec" a
            // seconda della data di inizio competenza
            GregorianCalendar data_da = (GregorianCalendar) GregorianCalendar.getInstance();
            data_da.setTime(compenso.getDt_da_competenza_coge());
            if (data_da.get(GregorianCalendar.YEAR) == (compenso.getEsercizio() - 1))
                filtro.setFlAnnoPrec(new Boolean(true));
            else
                filtro.setFlAnnoPrec(new Boolean(false));
        }
        if (compenso.getDt_da_competenza_coge() != null && compenso.getDt_a_competenza_coge() != null) {
            GregorianCalendar data_da = (GregorianCalendar) GregorianCalendar.getInstance();
            GregorianCalendar data_a = (GregorianCalendar) GregorianCalendar.getInstance();
            data_da.setTime(compenso.getDt_da_competenza_coge());
            data_a.setTime(compenso.getDt_a_competenza_coge());
            TerzoHome tHome = (TerzoHome) getHomeCache(userContext).getHome(TerzoBulk.class);
            TerzoBulk tKey = new TerzoBulk(compenso.getCd_terzo());
            TerzoBulk t = (TerzoBulk) tHome.findByPrimaryKey(tKey);
            AnagraficoHome aHome = (AnagraficoHome) getHomeCache(userContext).getHome(AnagraficoBulk.class);
            AnagraficoBulk aKey = new AnagraficoBulk(t.getCd_anag());
            AnagraficoBulk a = (AnagraficoBulk) aHome.findByPrimaryKey(aKey);
            if (data_da.get(GregorianCalendar.YEAR) == data_a.get(GregorianCalendar.YEAR)) {
                if (a.getFl_cervellone() && !(new Integer(data_da.get(GregorianCalendar.YEAR)).compareTo(a.getAnno_inizio_res_fis().intValue()) < 0) && !(new Integer(data_da.get(GregorianCalendar.YEAR)).compareTo(a.getAnno_fine_agevolazioni().intValue()) > 0)) {
                    filtro.setFlAgevolazioniCervelli(new Boolean(a.getFl_cervellone()));
                } else
                    filtro.setFlAgevolazioniCervelli(new Boolean(false));
            } else // cavallo
            if (compenso.getFl_compenso_conguaglio() && a.getFl_cervellone() && !(new Integer(data_da.get(GregorianCalendar.YEAR)).compareTo(a.getAnno_inizio_res_fis().intValue()) < 0) && !(new Integer(data_da.get(GregorianCalendar.YEAR)).compareTo(a.getAnno_fine_agevolazioni().intValue()) > 0)) {
                filtro.setFlAgevolazioniCervelli(new Boolean(a.getFl_cervellone()));
            } else
                filtro.setFlAgevolazioniCervelli(new Boolean(false));
        }
        if (filtro.getCdTipoRapporto() != null && getTipoRapportoProf(userContext).getCd_tipo_rapporto() != null && filtro.getCdTipoRapporto().equals(getTipoRapportoProf(userContext).getCd_tipo_rapporto())) {
            if (compenso.isGestione_doc_ele()) {
                if (!compenso.getFl_generata_fattura()) {
                    // se non ho scelto senza calcoli non devo vedere nulla
                    if (!compenso.getFl_senza_calcoli())
                        filtro.setTipoAnagrafico("X");
                }
            }
        }
        Tipo_trattamentoBulk tratt = trattHome.findTipoTrattamentoValido(filtro);
        compenso.setTipoTrattamento(tratt);
        if (isCompensoSoloInailEnte(tratt)) {
            if (compenso.isDaMinicarriera()) {
                throw new ApplicationException("Attenzione! Non è possibile utilizzare un trattamento di tipo 'Torno Subito con solo INAIL a carico ente' per una minicarriera");
            }
            compenso.setCompensoSoloInailEnte(true);
        }
    } catch (it.cnr.jada.persistency.PersistencyException ex) {
        throw handleException(ex);
    }
}
Also used : IntrospectionException(it.cnr.jada.persistency.IntrospectionException) TerzoHome(it.cnr.contab.anagraf00.core.bulk.TerzoHome) Tipo_trattamentoBulk(it.cnr.contab.compensi00.tabrif.bulk.Tipo_trattamentoBulk) TerzoBulk(it.cnr.contab.anagraf00.core.bulk.TerzoBulk) Ass_rapp_impiegoHome(it.cnr.contab.anagraf00.core.bulk.Ass_rapp_impiegoHome) Ass_rapp_impiegoBulk(it.cnr.contab.anagraf00.core.bulk.Ass_rapp_impiegoBulk) RapportoHome(it.cnr.contab.anagraf00.core.bulk.RapportoHome) ApplicationException(it.cnr.jada.comp.ApplicationException) PersistencyException(it.cnr.jada.persistency.PersistencyException) Iterator(java.util.Iterator) Collection(java.util.Collection) AnagraficoBulk(it.cnr.contab.anagraf00.core.bulk.AnagraficoBulk) Filtro_trattamentoBulk(it.cnr.contab.compensi00.tabrif.bulk.Filtro_trattamentoBulk) RapportoBulk(it.cnr.contab.anagraf00.core.bulk.RapportoBulk) GregorianCalendar(java.util.GregorianCalendar) ApplicationException(it.cnr.jada.comp.ApplicationException) AnagraficoHome(it.cnr.contab.anagraf00.core.bulk.AnagraficoHome) Tipo_trattamentoHome(it.cnr.contab.compensi00.tabrif.bulk.Tipo_trattamentoHome)

Example 3 with AnagraficoBulk

use of it.cnr.contab.anagraf00.core.bulk.AnagraficoBulk in project sigla-main by consiglionazionaledellericerche.

the class CompensoComponent method selectAnagraficoForPrintByClause.

/**
 * Costruisce l'istruzione SQL corrispondente ad una ricerca con le clausole
 * specificate. Aggiunge una clausola a tutte le operazioni di ricerca
 * eseguite sull'Anagrafico per una operazione di Stampa per il Partitario
 * Compensi.
 *
 * Nome: Richiesta di ricerca di una Anagrafica Pre: E' stata generata la
 * richiesta di ricerca di una Anagrafica per una operazione di Stampa per
 * il Partitario Compensi. Post: Viene restituito l'SQLBuilder con le
 * clausole richieste
 *
 * @param userContext
 *            lo userContext che ha generato la richiesta
 * @param compenso
 *            l'OggettoBulk che rappresenta il contesto della ricerca.
 * @param tipologia
 *            l'OggettoBulk da usare come prototipo della ricerca; sul
 *            prototipo vengono costruite delle clausole aggiuntive che
 *            vengono aggiunte in AND alle clausole specificate.
 * @param clauses
 *            L'albero logico delle clausole da applicare alla ricerca
 * @return Un'istanza di SQLBuilder contenente l'istruzione SQL da eseguire
 *         e tutti i parametri della query.
 */
public SQLBuilder selectAnagraficoForPrintByClause(UserContext userContext, StampaCertificazioneVBulk stampa, AnagraficoBulk anagrafico, CompoundFindClause clauses) throws ComponentException {
    AnagraficoHome home = (AnagraficoHome) getHome(userContext, anagrafico);
    SQLBuilder sql = home.createSQLBuilder();
    sql.addClause(clauses);
    return sql;
}
Also used : SQLBuilder(it.cnr.jada.persistency.sql.SQLBuilder) AnagraficoHome(it.cnr.contab.anagraf00.core.bulk.AnagraficoHome)

Example 4 with AnagraficoBulk

use of it.cnr.contab.anagraf00.core.bulk.AnagraficoBulk in project sigla-main by consiglionazionaledellericerche.

the class CompensoComponent method findTipiTrattamento.

/**
 * Viene richiesta la lista dei Tipi di Trattamento legati al Tipo di
 * Rapporto selezionato
 *
 * Pre-post-conditions:
 *
 * Nome: Tipo di Rapporto NON selezionato Pre: Non è stato selezionato il
 * tipo di rapporto Post: Non vengono caricati i Tipi Trattamento
 *
 * Nome: Terzo selezionato Pre: E' stato selezionato un tipo di rapporto
 * valido per il compenso Post: Viene restituita la lista dei Tipi di
 * Trattamento legati al Tipo di rapporto selezionato
 *
 * @param userContext
 *            lo UserContext che ha generato la richiesta
 * @param compenso
 *            l'OggettoBulk da completare
 * @return La lista dei Tipi di Trattamento associati al Tipo Rapporto
 *         selezionato
 */
public java.util.Collection findTipiTrattamento(UserContext userContext, CompensoBulk compenso) throws ComponentException {
    try {
        if (compenso.getTipoRapporto() == null)
            return null;
        Tipo_trattamentoHome trattHome = (Tipo_trattamentoHome) getHome(userContext, Tipo_trattamentoBulk.class);
        Filtro_trattamentoBulk filtro = new Filtro_trattamentoBulk();
        filtro.setCdTipoRapporto(compenso.getCd_tipo_rapporto());
        filtro.setTipoAnagrafico(compenso.getTi_anagrafico());
        filtro.setDataValidita(compenso.getDt_registrazione());
        filtro.setFlSenzaCalcoli(compenso.getFl_senza_calcoli());
        filtro.setFlDefaultCongualio(new Boolean(compenso.isDaConguaglio()));
        filtro.setTiIstituzionaleCommerciale(compenso.getTi_istituz_commerc());
        filtro.setFlBonus(compenso.isDaBonus());
        filtro.setFlSplitPayment(compenso.getFl_split_payment());
        if (filtro.getCdTipoRapporto() != null && filtro.getCdTipoRapporto().equals("DIP")) {
            try {
                TerzoHome tHome = (TerzoHome) getHomeCache(userContext).getHome(TerzoBulk.class);
                TerzoBulk tKey = new TerzoBulk(compenso.getCd_terzo());
                TerzoBulk t = (TerzoBulk) tHome.findByPrimaryKey(tKey);
                RapportoHome rHome = (RapportoHome) getHomeCache(userContext).getHome(RapportoBulk.class);
                java.util.Collection collRapp = rHome.findByCdAnagCdTipoRapporto(t.getCd_anag(), filtro.getCdTipoRapporto());
                boolean exit = false;
                for (java.util.Iterator i = collRapp.iterator(); i.hasNext() && !exit; ) {
                    RapportoBulk r = (RapportoBulk) i.next();
                    exit = true;
                    if (r.getCd_ente_prev_sti() == null)
                        // throw new
                        // it.cnr.jada.comp.ApplicationException("Non è stato possibile recuperare l''Ente Previdenziale del dipendente selezionato.");
                        // non blocco perchè potrebbero esserci trattamenti
                        // che non prevedono contributi previdenziali
                        // quindi passo il codice fittizio 'XX'
                        filtro.setEntePrev("XX");
                    else
                        filtro.setEntePrev(r.getCd_ente_prev_sti());
                    if (r.getCd_rapp_impiego_sti() == null)
                        throw new it.cnr.jada.comp.ApplicationException("Per il dipendente in esame non è definito un Rapporto di Impiego!");
                    else {
                        Ass_rapp_impiegoHome assHome = (Ass_rapp_impiegoHome) getHome(userContext, Ass_rapp_impiegoBulk.class);
                        Ass_rapp_impiegoBulk assKey = new Ass_rapp_impiegoBulk(r.getCd_rapp_impiego_sti());
                        Ass_rapp_impiegoBulk ass = (Ass_rapp_impiegoBulk) assHome.findByPrimaryKey(assKey);
                        filtro.setTipoRappImpiego(ass.getTipo_rapp_impiego());
                    }
                }
            } catch (IntrospectionException e) {
                throw handleException(e);
            }
            // solo per il rapporto DIP aggiungo il filtro "Anno prec" a
            // seconda della data di inizio competenza
            GregorianCalendar data_da = (GregorianCalendar) GregorianCalendar.getInstance();
            data_da.setTime(compenso.getDt_da_competenza_coge());
            if (data_da.get(GregorianCalendar.YEAR) == (compenso.getEsercizio() - 1))
                filtro.setFlAnnoPrec(new Boolean(true));
            else
                filtro.setFlAnnoPrec(new Boolean(false));
        }
        if (compenso.getDt_da_competenza_coge() != null && compenso.getDt_a_competenza_coge() != null) {
            GregorianCalendar data_da = (GregorianCalendar) GregorianCalendar.getInstance();
            GregorianCalendar data_a = (GregorianCalendar) GregorianCalendar.getInstance();
            data_da.setTime(compenso.getDt_da_competenza_coge());
            data_a.setTime(compenso.getDt_a_competenza_coge());
            TerzoHome tHome = (TerzoHome) getHomeCache(userContext).getHome(TerzoBulk.class);
            TerzoBulk tKey = new TerzoBulk(compenso.getCd_terzo());
            TerzoBulk t = (TerzoBulk) tHome.findByPrimaryKey(tKey);
            AnagraficoHome aHome = (AnagraficoHome) getHomeCache(userContext).getHome(AnagraficoBulk.class);
            AnagraficoBulk aKey = new AnagraficoBulk(t.getCd_anag());
            AnagraficoBulk a = (AnagraficoBulk) aHome.findByPrimaryKey(aKey);
            if (a.getFl_cervellone() && (a.getAnno_inizio_res_fis() == null || a.getAnno_fine_agevolazioni() == null)) {
                throw new it.cnr.jada.comp.ApplicationException("Per la persona in esame è impostata l'agevolazione fiscale del rientro dei cervelli ma non è indicato l'anno inizio residenza fiscale o l'anno di fine delle agevolazioni.");
            }
            if (data_da.get(GregorianCalendar.YEAR) == data_a.get(GregorianCalendar.YEAR)) {
                if (a.getFl_cervellone() && !(new Integer(data_da.get(GregorianCalendar.YEAR)).compareTo(a.getAnno_inizio_res_fis().intValue()) < 0) && !(new Integer(data_da.get(GregorianCalendar.YEAR)).compareTo(a.getAnno_fine_agevolazioni().intValue()) > 0)) {
                    filtro.setFlAgevolazioniCervelli(new Boolean(a.getFl_cervellone()));
                } else
                    filtro.setFlAgevolazioniCervelli(new Boolean(false));
            } else // cavallo
            if (compenso.getFl_compenso_conguaglio() && a.getFl_cervellone() && !(new Integer(data_da.get(GregorianCalendar.YEAR)).compareTo(a.getAnno_inizio_res_fis().intValue()) < 0) && !(new Integer(data_da.get(GregorianCalendar.YEAR)).compareTo(a.getAnno_fine_agevolazioni().intValue()) > 0)) {
                filtro.setFlAgevolazioniCervelli(new Boolean(a.getFl_cervellone()));
            } else
                filtro.setFlAgevolazioniCervelli(new Boolean(false));
        }
        if (filtro.getCdTipoRapporto() != null && getTipoRapportoProf(userContext).getCd_tipo_rapporto() != null && filtro.getCdTipoRapporto().equals(getTipoRapportoProf(userContext).getCd_tipo_rapporto())) {
            if (compenso.isGestione_doc_ele()) {
                if (!compenso.getFl_generata_fattura()) {
                    // se non ho scelto senza calcoli non devo vedere nulla
                    if (!compenso.getFl_senza_calcoli())
                        filtro.setTipoAnagrafico("X");
                }
            }
        }
        return trattHome.findTipiTrattamento(filtro);
    } catch (it.cnr.jada.persistency.PersistencyException ex) {
        throw handleException(compenso, ex);
    }
}
Also used : IntrospectionException(it.cnr.jada.persistency.IntrospectionException) TerzoHome(it.cnr.contab.anagraf00.core.bulk.TerzoHome) Tipo_trattamentoBulk(it.cnr.contab.compensi00.tabrif.bulk.Tipo_trattamentoBulk) TerzoBulk(it.cnr.contab.anagraf00.core.bulk.TerzoBulk) Ass_rapp_impiegoHome(it.cnr.contab.anagraf00.core.bulk.Ass_rapp_impiegoHome) Ass_rapp_impiegoBulk(it.cnr.contab.anagraf00.core.bulk.Ass_rapp_impiegoBulk) RapportoHome(it.cnr.contab.anagraf00.core.bulk.RapportoHome) ApplicationException(it.cnr.jada.comp.ApplicationException) PersistencyException(it.cnr.jada.persistency.PersistencyException) Iterator(java.util.Iterator) Collection(java.util.Collection) AnagraficoBulk(it.cnr.contab.anagraf00.core.bulk.AnagraficoBulk) Filtro_trattamentoBulk(it.cnr.contab.compensi00.tabrif.bulk.Filtro_trattamentoBulk) RapportoBulk(it.cnr.contab.anagraf00.core.bulk.RapportoBulk) GregorianCalendar(java.util.GregorianCalendar) ApplicationException(it.cnr.jada.comp.ApplicationException) AnagraficoHome(it.cnr.contab.anagraf00.core.bulk.AnagraficoHome) Tipo_trattamentoHome(it.cnr.contab.compensi00.tabrif.bulk.Tipo_trattamentoHome)

Example 5 with AnagraficoBulk

use of it.cnr.contab.anagraf00.core.bulk.AnagraficoBulk in project sigla-main by consiglionazionaledellericerche.

the class FatturaPassivaComponent method completaFornitore.

// ^^@@
/**
 * Normale.
 * PreCondition:
 * Vengono richiesti i dati relativi al fornitore della fattura passiva
 * PostCondition:
 * vengono trasmessi i dati relativi al fornitore.
 */
// ^^@@
public Fattura_passivaBulk completaFornitore(it.cnr.jada.UserContext uc, Fattura_passivaBulk fattura_passiva, it.cnr.contab.anagraf00.core.bulk.TerzoBulk fornitoreTrovato) throws ComponentException {
    try {
        if (fattura_passiva != null) {
            if (fattura_passiva.isEstera()) {
                if (fattura_passiva.getFl_extra_ue() != null && fattura_passiva.getFl_extra_ue().booleanValue() && !it.cnr.contab.anagraf00.tabter.bulk.NazioneBulk.EXTRA_CEE.equalsIgnoreCase(fornitoreTrovato.getAnagrafico().getTi_italiano_estero()))
                    throw new it.cnr.jada.comp.ApplicationException("La fattura è estera. La nazionalità del fornitore deve appartenere ad uno Stato extra UE.");
                if (fattura_passiva.getFl_intra_ue() != null && fattura_passiva.getFl_intra_ue().booleanValue() && !it.cnr.contab.anagraf00.tabter.bulk.NazioneBulk.CEE.equalsIgnoreCase(fornitoreTrovato.getAnagrafico().getTi_italiano_estero()))
                    throw new it.cnr.jada.comp.ApplicationException("La fattura è estera. La nazionalità del fornitore deve appartenere ad uno Stato intra UE.");
                AnagraficoComponentSession sess = (AnagraficoComponentSession) it.cnr.jada.util.ejb.EJBCommonServices.createEJB("CNRANAGRAF00_EJB_AnagraficoComponentSession", AnagraficoComponentSession.class);
                if (fattura_passiva.getFl_intra_ue() != null && fattura_passiva.getFl_intra_ue().booleanValue() && !sess.verificaStrutturaPiva(uc, fornitoreTrovato.getAnagrafico()))
                    throw new it.cnr.jada.comp.ApplicationException("Verificare la partita Iva del fornitore non corrisponde al modello della sua nazionalità.");
            }
            fattura_passiva.setFornitore(fornitoreTrovato);
            fattura_passiva.setNome(fornitoreTrovato.getAnagrafico().getNome());
            fattura_passiva.setCognome(fornitoreTrovato.getAnagrafico().getCognome());
            fattura_passiva.setRagione_sociale(fornitoreTrovato.getAnagrafico().getRagione_sociale());
            fattura_passiva.setCodice_fiscale(fornitoreTrovato.getAnagrafico().getCodice_fiscale());
            if (fattura_passiva.getPartita_iva() != null) {
                it.cnr.contab.anagraf00.core.bulk.AnagraficoHome home = (it.cnr.contab.anagraf00.core.bulk.AnagraficoHome) getHome(uc, AnagraficoBulk.class);
                Collection coll = home.findGruppiIvaAssociati(fornitoreTrovato.getAnagrafico());
                Boolean trovato = false;
                if (coll != null && !coll.isEmpty()) {
                    for (java.util.Iterator i = coll.iterator(); i.hasNext(); ) {
                        AssGruppoIvaAnagBulk assGruppoIvaAnagBulk = (AssGruppoIvaAnagBulk) i.next();
                        AnagraficoBulk anagraficoBulk = (AnagraficoBulk) home.findByPrimaryKey(assGruppoIvaAnagBulk.getAnagraficoGruppoIva());
                        if (anagraficoBulk != null && anagraficoBulk.isGruppoIVA() && fattura_passiva.getDt_fattura_fornitore().compareTo(anagraficoBulk.getDtIniValGruppoIva()) > 0 && fattura_passiva.getDt_fattura_fornitore().compareTo(anagraficoBulk.getDt_canc()) < 0 && anagraficoBulk.getPartita_iva().compareTo(fattura_passiva.getPartita_iva()) == 0) {
                            trovato = true;
                        }
                    }
                }
                if (!trovato) {
                    fattura_passiva.setPartita_iva(fornitoreTrovato.getAnagrafico().getPartita_iva());
                }
            } else {
                fattura_passiva.setPartita_iva(fornitoreTrovato.getAnagrafico().getPartita_iva());
            }
            it.cnr.contab.anagraf00.core.bulk.TerzoHome home = (it.cnr.contab.anagraf00.core.bulk.TerzoHome) getHome(uc, fornitoreTrovato);
            try {
                fattura_passiva.setTermini(findTermini(uc, fattura_passiva));
                fattura_passiva.setModalita(findModalita(uc, fattura_passiva));
                fattura_passiva.setTermini_pagamento(null);
                fattura_passiva.setModalita_pagamento(null);
                fattura_passiva.setBanca(null);
                fattura_passiva.setBanche(null);
                fattura_passiva.setCessionario(null);
            } catch (it.cnr.jada.persistency.PersistencyException e) {
                throw handleException(e);
            } catch (it.cnr.jada.persistency.IntrospectionException e) {
                throw handleException(e);
            }
            // Aggiorno le righe
            if (fattura_passiva.getFattura_passiva_dettColl() != null) {
                Iterator dettagli = fattura_passiva.getFattura_passiva_dettColl().iterator();
                while (dettagli.hasNext()) {
                    Fattura_passiva_rigaBulk riga = (Fattura_passiva_rigaBulk) dettagli.next();
                    if (!riga.getFornitore().equalsByPrimaryKey(fattura_passiva.getFornitore())) {
                        riga.setFornitore(fattura_passiva.getFornitore());
                        riga.setTermini(fattura_passiva.getTermini());
                        riga.setModalita(fattura_passiva.getModalita());
                        riga.setTermini_pagamento(null);
                        riga.setModalita_pagamento(null);
                        riga.setBanca(null);
                        riga.setBanche(null);
                        riga.setCessionario(null);
                        riga.setToBeUpdated();
                    }
                }
            }
        }
    } catch (ValidationException e) {
        throw new ApplicationException(e.getMessage());
    } catch (Throwable t) {
        throw handleException(fattura_passiva, t);
    }
    return fattura_passiva;
}
Also used : IntrospectionException(it.cnr.jada.persistency.IntrospectionException) RemoteIterator(it.cnr.jada.util.RemoteIterator) ApplicationException(it.cnr.jada.comp.ApplicationException) PersistencyException(it.cnr.jada.persistency.PersistencyException) ApplicationException(it.cnr.jada.comp.ApplicationException) java.util(java.util) AnagraficoComponentSession(it.cnr.contab.anagraf00.ejb.AnagraficoComponentSession) it.cnr.contab.docamm00.intrastat.bulk(it.cnr.contab.docamm00.intrastat.bulk) it.cnr.contab.anagraf00.core.bulk(it.cnr.contab.anagraf00.core.bulk) it.cnr.contab.docamm00.fatturapa.bulk(it.cnr.contab.docamm00.fatturapa.bulk) it.cnr.contab.docamm00.tabrif.bulk(it.cnr.contab.docamm00.tabrif.bulk) it.cnr.contab.config00.bulk(it.cnr.contab.config00.bulk) it.cnr.contab.docamm00.docs.bulk(it.cnr.contab.docamm00.docs.bulk) it.cnr.contab.doccont00.core.bulk(it.cnr.contab.doccont00.core.bulk) it.cnr.contab.inventario01.bulk(it.cnr.contab.inventario01.bulk) it.cnr.contab.ordmag.ordini.bulk(it.cnr.contab.ordmag.ordini.bulk) it.cnr.jada.bulk(it.cnr.jada.bulk) it.cnr.contab.inventario00.docs.bulk(it.cnr.contab.inventario00.docs.bulk)

Aggregations

AnagraficoBulk (it.cnr.contab.anagraf00.core.bulk.AnagraficoBulk)48 ApplicationException (it.cnr.jada.comp.ApplicationException)33 TerzoBulk (it.cnr.contab.anagraf00.core.bulk.TerzoBulk)31 PersistencyException (it.cnr.jada.persistency.PersistencyException)26 ComponentException (it.cnr.jada.comp.ComponentException)24 RemoteException (java.rmi.RemoteException)24 IntrospectionException (it.cnr.jada.persistency.IntrospectionException)17 BigDecimal (java.math.BigDecimal)14 Timestamp (java.sql.Timestamp)14 ComuneBulk (it.cnr.contab.anagraf00.tabter.bulk.ComuneBulk)13 it.cnr.jada.bulk (it.cnr.jada.bulk)13 java.util (java.util)13 it.cnr.contab.anagraf00.core.bulk (it.cnr.contab.anagraf00.core.bulk)12 AnagraficoComponentSession (it.cnr.contab.anagraf00.ejb.AnagraficoComponentSession)12 EJBException (javax.ejb.EJBException)12 BusinessProcessException (it.cnr.jada.action.BusinessProcessException)11 Iterator (java.util.Iterator)11 AnagraficoHome (it.cnr.contab.anagraf00.core.bulk.AnagraficoHome)10 IOException (java.io.IOException)10 TerzoHome (it.cnr.contab.anagraf00.core.bulk.TerzoHome)9