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;
}
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);
}
}
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;
}
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);
}
}
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;
}
Aggregations