Search in sources :

Example 1 with PersistencyException

use of it.cnr.jada.persistency.PersistencyException in project sigla-main by consiglionazionaledellericerche.

the class ScritturaPartitaDoppiaComponent method proposeScritturaPartitaDoppiaMandatoStipendi.

private Scrittura_partita_doppiaBulk proposeScritturaPartitaDoppiaMandatoStipendi(UserContext userContext, MandatoBulk mandato) throws ComponentException, PersistencyException, RemoteException {
    // recupero il documento generico passivo leggendolo dalla tabelle stipendiCofiBulk
    Stipendi_cofiBulk stipendiCofiBulk = ((Stipendi_cofiHome) getHome(userContext, Stipendi_cofiBulk.class)).findStipendiCofi(mandato);
    if (!Optional.ofNullable(stipendiCofiBulk).isPresent())
        throw new ApplicationException("Il mandato " + mandato.getEsercizio() + "/" + mandato.getCds() + "/" + mandato.getPg_mandato() + " non risulta pagare uno stipendio. Proposta di prima nota non possibile.");
    CompensoBulk compensoStipendi = (CompensoBulk) Utility.createCompensoComponentSession().inizializzaBulkPerModifica(userContext, new CompensoBulk(stipendiCofiBulk.getCd_cds_comp(), stipendiCofiBulk.getCd_uo_comp(), stipendiCofiBulk.getEsercizio_comp(), stipendiCofiBulk.getPg_comp()));
    // Recupero dal compenso tutti i conti patrimoniali aperti
    List<Movimento_cogeBulk> dettPnPatrimonialePartita = this.findContoAnag(userContext, compensoStipendi);
    if (dettPnPatrimonialePartita == null || dettPnPatrimonialePartita.isEmpty())
        throw new ApplicationException("Non รจ stato possibile individuare la riga di tipo debito/credito per il compenso " + stipendiCofiBulk.getEsercizio_comp() + "/" + stipendiCofiBulk.getCd_cds_comp() + "/" + stipendiCofiBulk.getCd_uo_comp() + "/" + stipendiCofiBulk.getPg_comp() + ". Proposta di prima nota non possibile.");
    TestataPrimaNota testataPrimaNota = new TestataPrimaNota(mandato.getMandato_terzo().getCd_terzo(), null, null);
    // Chiudo i conti patrimoniali
    Voce_epBulk voceEpBanca = this.findContoBanca(userContext, CNRUserContext.getEsercizio(userContext));
    for (Iterator<Movimento_cogeBulk> i = dettPnPatrimonialePartita.iterator(); i.hasNext(); ) {
        Movimento_cogeBulk dettPN = i.next();
        testataPrimaNota.addDettaglio(compensoStipendi.getTipoDocumentoEnum().getTipoPatrimoniale(), Movimento_cogeBulk.getControSezione(compensoStipendi.getTipoDocumentoEnum().getSezionePatrimoniale()), dettPN.getCd_voce_ep(), dettPN.getIm_movimento());
        testataPrimaNota.addDettaglio(Movimento_cogeBulk.TipoRiga.TESORERIA.value(), compensoStipendi.getTipoDocumentoEnum().getSezionePatrimoniale(), voceEpBanca.getCd_voce_ep(), dettPN.getIm_movimento());
    }
    // Devo leggere la reversale vincolata
    List<Contributo_ritenutaBulk> righeCori = compensoStipendi.getChildren();
    BigDecimal imRitenute = righeCori.stream().map(Contributo_ritenutaBulk::getAmmontare).reduce(BigDecimal.ZERO, BigDecimal::add);
    if (imRitenute.compareTo(mandato.getIm_ritenute()) != 0)
        throw new ApplicationException("L'importo delle righe ritenute del compenso associato al mandato non corrisponde con l'importo ritenute associato al mandato.");
    // Registrazione conto CONTRIBUTI-RITENUTE
    righeCori.stream().forEach(cori -> {
        try {
            BigDecimal imCori = cori.getAmmontare();
            Pair<Voce_epBulk, Voce_epBulk> pairContoCori = this.findPairContiMandato(userContext, cori);
            Voce_epBulk contoVersamentoCori = pairContoCori.getSecond();
            testataPrimaNota.openDettaglioPatrimoniale(compensoStipendi, contoVersamentoCori.getCd_voce_ep(), imCori, false);
            testataPrimaNota.addDettaglio(Movimento_cogeBulk.TipoRiga.TESORERIA.value(), Movimento_cogeBulk.getControSezione(compensoStipendi.getTipoDocumentoEnum().getSezionePatrimoniale()), voceEpBanca.getCd_voce_ep(), imCori);
        } catch (ComponentException | PersistencyException e) {
            throw new ApplicationRuntimeException(e);
        }
    });
    return this.generaScrittura(userContext, mandato, Arrays.asList(testataPrimaNota), true);
}
Also used : Contributo_ritenutaBulk(it.cnr.contab.compensi00.docs.bulk.Contributo_ritenutaBulk) Stipendi_cofiHome(it.cnr.contab.pdg00.cdip.bulk.Stipendi_cofiHome) BigDecimal(java.math.BigDecimal) PersistencyException(it.cnr.jada.persistency.PersistencyException) Stipendi_cofiBulk(it.cnr.contab.pdg00.cdip.bulk.Stipendi_cofiBulk) CompensoBulk(it.cnr.contab.compensi00.docs.bulk.CompensoBulk)

Example 2 with PersistencyException

use of it.cnr.jada.persistency.PersistencyException in project sigla-main by consiglionazionaledellericerche.

the class ScritturaPartitaDoppiaComponent method getCORI.

private List<Contributo_ritenutaBulk> getCORI(UserContext userContext, Mandato_rigaBulk mandatoRiga) throws PersistencyException, ComponentException {
    Documento_generico_rigaHome dgHome = (Documento_generico_rigaHome) getHome(userContext, Documento_generico_rigaBulk.class);
    Ass_obb_acr_pgiroHome assObbAccHome = (Ass_obb_acr_pgiroHome) getHome(userContext, Ass_obb_acr_pgiroBulk.class);
    Contributo_ritenutaHome coriHome = (Contributo_ritenutaHome) getHome(userContext, Contributo_ritenutaBulk.class);
    List<Contributo_ritenutaBulk> coriList = new ArrayList<>();
    Documento_generico_rigaBulk docRiga = (Documento_generico_rigaBulk) dgHome.findByPrimaryKey(new Documento_generico_rigaBulk(mandatoRiga.getEsercizio_doc_amm().toString(), mandatoRiga.getCd_tipo_documento_amm(), mandatoRiga.getCd_uo_doc_amm(), mandatoRiga.getEsercizio_doc_amm(), mandatoRiga.getPg_doc_amm(), BigDecimal.ONE.longValue()));
    if (docRiga.getPg_obbligazione() != null) {
        List<Ass_obb_acr_pgiroBulk> assObbAccList = (List<Ass_obb_acr_pgiroBulk>) assObbAccHome.findPgiroMandatoRiga(userContext, mandatoRiga);
        assObbAccList.stream().forEach(assObbAcc -> {
            try {
                SQLBuilder sqlCori = coriHome.createSQLBuilder();
                sqlCori.addClause(FindClause.AND, "cd_cds_accertamento", SQLBuilder.EQUALS, assObbAcc.getCd_cds());
                sqlCori.addClause(FindClause.AND, "esercizio_accertamento", SQLBuilder.EQUALS, assObbAcc.getEsercizio());
                sqlCori.addClause(FindClause.AND, "esercizio_ori_accertamento", SQLBuilder.EQUALS, assObbAcc.getEsercizio_ori_accertamento());
                sqlCori.addClause(FindClause.AND, "pg_accertamento", SQLBuilder.EQUALS, assObbAcc.getPg_accertamento());
                coriList.addAll(coriHome.fetchAll(sqlCori));
            } catch (PersistencyException e) {
                throw new ApplicationRuntimeException(e);
            }
        });
    }
    return coriList;
}
Also used : Contributo_ritenutaBulk(it.cnr.contab.compensi00.docs.bulk.Contributo_ritenutaBulk) PersistencyException(it.cnr.jada.persistency.PersistencyException) BulkList(it.cnr.jada.bulk.BulkList) Contributo_ritenutaHome(it.cnr.contab.compensi00.docs.bulk.Contributo_ritenutaHome)

Example 3 with PersistencyException

use of it.cnr.jada.persistency.PersistencyException in project sigla-main by consiglionazionaledellericerche.

the class ScritturaPartitaDoppiaComponent method proposeTestataPrimaNotaDocumento.

private List<TestataPrimaNota> proposeTestataPrimaNotaDocumento(UserContext userContext, IDocumentoAmministrativoBulk docamm) throws ComponentException {
    try {
        List<TestataPrimaNota> testataPrimaNotaList = new ArrayList<>();
        // Le fatture generate da compenso non creano scritture di prima nota in quanto create direttamente dal compenso stesso
        if (Optional.of(docamm).filter(Fattura_passivaBulk.class::isInstance).map(Fattura_passivaBulk.class::cast).map(Fattura_passivaBulk::isGenerataDaCompenso).orElse(Boolean.FALSE))
            return null;
        final boolean isCommercialeWithAutofattura = this.hasAutofattura(userContext, docamm);
        final boolean registraIva = this.registraIvaCoge(docamm) || isCommercialeWithAutofattura;
        List<IDocumentoAmministrativoRigaBulk> righeDocamm = docamm.getChildren();
        Map<Integer, Map<Timestamp, Map<Timestamp, List<IDocumentoAmministrativoRigaBulk>>>> mapTerzo = righeDocamm.stream().collect(Collectors.groupingBy(IDocumentoAmministrativoRigaBulk::getCd_terzo, Collectors.groupingBy(IDocumentoAmministrativoRigaBulk::getDt_da_competenza_coge, Collectors.groupingBy(IDocumentoAmministrativoRigaBulk::getDt_a_competenza_coge))));
        mapTerzo.keySet().stream().forEach(aCdTerzo -> {
            mapTerzo.get(aCdTerzo).keySet().forEach(aDtDaCompCoge -> {
                mapTerzo.get(aCdTerzo).get(aDtDaCompCoge).keySet().forEach(aDtACompCoge -> {
                    List<IDocumentoAmministrativoRigaBulk> righeDocammTerzo = mapTerzo.get(aCdTerzo).get(aDtDaCompCoge).get(aDtACompCoge);
                    TestataPrimaNota testataPrimaNota = new TestataPrimaNota(aCdTerzo, aDtDaCompCoge, aDtACompCoge);
                    testataPrimaNotaList.add(testataPrimaNota);
                    Map<Integer, Map<String, Map<String, Map<String, List<IDocumentoAmministrativoRigaBulk>>>>> mapVoce = righeDocammTerzo.stream().collect(Collectors.groupingBy(rigaDoc -> rigaDoc.getScadenzaDocumentoContabile().getFather().getEsercizio(), Collectors.groupingBy(rigaDoc2 -> rigaDoc2.getScadenzaDocumentoContabile().getFather().getTi_appartenenza(), Collectors.groupingBy(rigaDoc3 -> rigaDoc3.getScadenzaDocumentoContabile().getFather().getTi_gestione(), Collectors.groupingBy(rigaDoc4 -> rigaDoc4.getScadenzaDocumentoContabile().getFather().getCd_elemento_voce())))));
                    mapVoce.keySet().stream().forEach(aEseVoce -> {
                        mapVoce.get(aEseVoce).keySet().forEach(aTiAppartenenza -> {
                            mapVoce.get(aEseVoce).get(aTiAppartenenza).keySet().forEach(aTiGestione -> {
                                mapVoce.get(aEseVoce).get(aTiAppartenenza).get(aTiGestione).keySet().forEach(aCdVoce -> {
                                    try {
                                        List<IDocumentoAmministrativoRigaBulk> righeDocammVoce = mapVoce.get(aEseVoce).get(aTiAppartenenza).get(aTiGestione).get(aCdVoce);
                                        BigDecimal imImponibile = righeDocammVoce.stream().map(IDocumentoAmministrativoRigaBulk::getIm_imponibile).reduce(BigDecimal.ZERO, BigDecimal::add);
                                        BigDecimal imIva = righeDocammVoce.stream().map(iDocumentoAmministrativoRigaBulk -> Optional.ofNullable(iDocumentoAmministrativoRigaBulk.getIm_iva()).orElse(BigDecimal.ZERO)).reduce(BigDecimal.ZERO, BigDecimal::add);
                                        // Registrazione IVA
                                        if (registraIva) {
                                            if (isCommercialeWithAutofattura) {
                                                Pair<Voce_epBulk, Voce_epBulk> pairContoIva = this.findPairAutofatturaIva(userContext, righeDocammVoce.stream().findAny().get());
                                                testataPrimaNota.openDettaglioIva(docamm, pairContoIva.getFirst().getCd_voce_ep(), imIva);
                                                testataPrimaNota.closeDettaglioIva(docamm, pairContoIva.getSecond().getCd_voce_ep(), imIva);
                                            } else {
                                                Pair<Voce_epBulk, Voce_epBulk> pairContoIva = this.findPairIva(userContext, righeDocammVoce.stream().findAny().get());
                                                testataPrimaNota.openDettaglioIva(docamm, pairContoIva.getFirst().getCd_voce_ep(), imIva);
                                                testataPrimaNota.openDettaglioCostoRicavo(docamm, pairContoIva.getSecond().getCd_voce_ep(), imIva);
                                            }
                                        }
                                        // Registrazione conto COSTO
                                        BigDecimal imCosto = registraIva ? imImponibile : imImponibile.add(imIva);
                                        Pair<Voce_epBulk, Voce_epBulk> pairContoCosto = this.findPairCosto(userContext, righeDocammVoce.stream().findAny().get());
                                        testataPrimaNota.openDettaglioCostoRicavo(docamm, pairContoCosto.getFirst().getCd_voce_ep(), imCosto);
                                        testataPrimaNota.openDettaglioPatrimoniale(docamm, pairContoCosto.getSecond().getCd_voce_ep(), imCosto, true);
                                    } catch (ComponentException | PersistencyException | RemoteException e) {
                                        throw new ApplicationRuntimeException(e);
                                    }
                                });
                            });
                        });
                    });
                });
            });
        });
        return testataPrimaNotaList;
    } catch (Exception e) {
        throw handleException(e);
    }
}
Also used : TerzoBulk(it.cnr.contab.anagraf00.core.bulk.TerzoBulk) UserContext(it.cnr.jada.UserContext) Liquidazione_ivaVBulk(it.cnr.contab.gestiva00.core.bulk.Liquidazione_ivaVBulk) it.cnr.jada.persistency.sql(it.cnr.jada.persistency.sql) AnticipoBulk(it.cnr.contab.missioni00.docs.bulk.AnticipoBulk) OggettoBulk(it.cnr.jada.bulk.OggettoBulk) java.util(java.util) Stipendi_cofiBulk(it.cnr.contab.pdg00.cdip.bulk.Stipendi_cofiBulk) EsercizioBulk(it.cnr.contab.config00.esercizio.bulk.EsercizioBulk) it.cnr.jada.comp(it.cnr.jada.comp) LoggerFactory(org.slf4j.LoggerFactory) Utility(it.cnr.contab.util.Utility) Anagrafico_esercizioBulk(it.cnr.contab.anagraf00.core.bulk.Anagrafico_esercizioBulk) Ass_anag_voce_epHome(it.cnr.contab.coepcoan00.tabrif.bulk.Ass_anag_voce_epHome) Contributo_ritenutaBulk(it.cnr.contab.compensi00.docs.bulk.Contributo_ritenutaBulk) it.cnr.contab.doccont00.core.bulk(it.cnr.contab.doccont00.core.bulk) TerzoHome(it.cnr.contab.anagraf00.core.bulk.TerzoHome) Configurazione_cnrBulk(it.cnr.contab.config00.bulk.Configurazione_cnrBulk) BigDecimal(java.math.BigDecimal) SQLException(java.sql.SQLException) Ass_anag_voce_epBulk(it.cnr.contab.coepcoan00.tabrif.bulk.Ass_anag_voce_epBulk) Pair(org.springframework.data.util.Pair) Stipendi_cofiHome(it.cnr.contab.pdg00.cdip.bulk.Stipendi_cofiHome) Ass_tipo_cori_voce_epBulk(it.cnr.contab.compensi00.tabrif.bulk.Ass_tipo_cori_voce_epBulk) Anagrafico_esercizioHome(it.cnr.contab.anagraf00.core.bulk.Anagrafico_esercizioHome) it.cnr.contab.config00.sto.bulk(it.cnr.contab.config00.sto.bulk) TipoIVA(it.cnr.contab.util.enumeration.TipoIVA) RoundingMode(java.math.RoundingMode) MissioneBulk(it.cnr.contab.missioni00.docs.bulk.MissioneBulk) CNRUserContext(it.cnr.contab.utenze00.bp.CNRUserContext) PersistencyException(it.cnr.jada.persistency.PersistencyException) Liquidazione_ivaBulk(it.cnr.contab.gestiva00.core.bulk.Liquidazione_ivaBulk) Timestamp(java.sql.Timestamp) it.cnr.contab.docamm00.docs.bulk(it.cnr.contab.docamm00.docs.bulk) Liquidazione_ivaHome(it.cnr.contab.gestiva00.core.bulk.Liquidazione_ivaHome) Ass_tipo_cori_voce_epHome(it.cnr.contab.compensi00.tabrif.bulk.Ass_tipo_cori_voce_epHome) BulkList(it.cnr.jada.bulk.BulkList) it.cnr.contab.config00.pdcep.bulk(it.cnr.contab.config00.pdcep.bulk) Tipo_contributo_ritenutaBulk(it.cnr.contab.compensi00.tabrif.bulk.Tipo_contributo_ritenutaBulk) Collectors(java.util.stream.Collectors) Elemento_voceBulk(it.cnr.contab.config00.pdcfin.bulk.Elemento_voceBulk) it.cnr.contab.coepcoan00.core.bulk(it.cnr.contab.coepcoan00.core.bulk) Serializable(java.io.Serializable) RemoteException(java.rmi.RemoteException) DetailedRuntimeException(it.cnr.jada.DetailedRuntimeException) Contributo_ritenutaHome(it.cnr.contab.compensi00.docs.bulk.Contributo_ritenutaHome) CompensoBulk(it.cnr.contab.compensi00.docs.bulk.CompensoBulk) RimborsoBulk(it.cnr.contab.missioni00.docs.bulk.RimborsoBulk) Timestamp(java.sql.Timestamp) BigDecimal(java.math.BigDecimal) SQLException(java.sql.SQLException) PersistencyException(it.cnr.jada.persistency.PersistencyException) RemoteException(java.rmi.RemoteException) DetailedRuntimeException(it.cnr.jada.DetailedRuntimeException) PersistencyException(it.cnr.jada.persistency.PersistencyException) BulkList(it.cnr.jada.bulk.BulkList) RemoteException(java.rmi.RemoteException)

Example 4 with PersistencyException

use of it.cnr.jada.persistency.PersistencyException in project sigla-main by consiglionazionaledellericerche.

the class ScritturaPartitaDoppiaComponent method findContoAnag.

private Voce_epBulk findContoAnag(UserContext userContext, TerzoBulk terzo, String tipoConto) throws ComponentException, PersistencyException {
    Voce_epBulk voceEpBulk = null;
    TerzoHome terzohome = (TerzoHome) getHome(userContext, TerzoBulk.class);
    TerzoBulk terzoDB = (TerzoBulk) terzohome.findByPrimaryKey(terzo);
    if (Optional.ofNullable(terzo).isPresent()) {
        Anagrafico_esercizioHome anagesehome = (Anagrafico_esercizioHome) getHome(userContext, Anagrafico_esercizioBulk.class);
        Anagrafico_esercizioBulk anagEse = (Anagrafico_esercizioBulk) anagesehome.findByPrimaryKey(new Anagrafico_esercizioBulk(terzoDB.getCd_anag(), CNRUserContext.getEsercizio(userContext)));
        if (tipoConto.equals(Movimento_cogeBulk.TipoRiga.DEBITO.value())) {
            if (Optional.ofNullable(anagEse).flatMap(el -> Optional.ofNullable(el.getCd_voce_debito_ep())).isPresent()) {
                Voce_epHome voceEpHome = (Voce_epHome) getHome(userContext, Voce_epBulk.class);
                voceEpBulk = (Voce_epBulk) voceEpHome.findByPrimaryKey(new Voce_epBulk(anagEse.getCd_voce_debito_ep(), anagEse.getEsercizio_voce_debito_ep()));
            }
        } else {
            if (Optional.ofNullable(anagEse).flatMap(el -> Optional.ofNullable(el.getCd_voce_credito_ep())).isPresent()) {
                Voce_epHome voceEpHome = (Voce_epHome) getHome(userContext, Voce_epBulk.class);
                voceEpBulk = (Voce_epBulk) voceEpHome.findByPrimaryKey(new Voce_epBulk(anagEse.getCd_voce_credito_ep(), anagEse.getEsercizio_voce_credito_ep()));
            }
        }
    }
    return Optional.ofNullable(voceEpBulk).orElseThrow(() -> new ApplicationRuntimeException("Conto " + (tipoConto.equals(Movimento_cogeBulk.TipoRiga.DEBITO.value()) ? "debito" : "credito") + " associato al codice terzo " + terzo.getCd_terzo() + " non individuato."));
}
Also used : Anagrafico_esercizioBulk(it.cnr.contab.anagraf00.core.bulk.Anagrafico_esercizioBulk) TerzoBulk(it.cnr.contab.anagraf00.core.bulk.TerzoBulk) UserContext(it.cnr.jada.UserContext) Liquidazione_ivaVBulk(it.cnr.contab.gestiva00.core.bulk.Liquidazione_ivaVBulk) it.cnr.jada.persistency.sql(it.cnr.jada.persistency.sql) AnticipoBulk(it.cnr.contab.missioni00.docs.bulk.AnticipoBulk) OggettoBulk(it.cnr.jada.bulk.OggettoBulk) java.util(java.util) Stipendi_cofiBulk(it.cnr.contab.pdg00.cdip.bulk.Stipendi_cofiBulk) EsercizioBulk(it.cnr.contab.config00.esercizio.bulk.EsercizioBulk) it.cnr.jada.comp(it.cnr.jada.comp) LoggerFactory(org.slf4j.LoggerFactory) Utility(it.cnr.contab.util.Utility) Anagrafico_esercizioBulk(it.cnr.contab.anagraf00.core.bulk.Anagrafico_esercizioBulk) Ass_anag_voce_epHome(it.cnr.contab.coepcoan00.tabrif.bulk.Ass_anag_voce_epHome) Contributo_ritenutaBulk(it.cnr.contab.compensi00.docs.bulk.Contributo_ritenutaBulk) it.cnr.contab.doccont00.core.bulk(it.cnr.contab.doccont00.core.bulk) TerzoHome(it.cnr.contab.anagraf00.core.bulk.TerzoHome) Configurazione_cnrBulk(it.cnr.contab.config00.bulk.Configurazione_cnrBulk) BigDecimal(java.math.BigDecimal) SQLException(java.sql.SQLException) Ass_anag_voce_epBulk(it.cnr.contab.coepcoan00.tabrif.bulk.Ass_anag_voce_epBulk) Pair(org.springframework.data.util.Pair) Stipendi_cofiHome(it.cnr.contab.pdg00.cdip.bulk.Stipendi_cofiHome) Ass_tipo_cori_voce_epBulk(it.cnr.contab.compensi00.tabrif.bulk.Ass_tipo_cori_voce_epBulk) Anagrafico_esercizioHome(it.cnr.contab.anagraf00.core.bulk.Anagrafico_esercizioHome) it.cnr.contab.config00.sto.bulk(it.cnr.contab.config00.sto.bulk) TipoIVA(it.cnr.contab.util.enumeration.TipoIVA) RoundingMode(java.math.RoundingMode) MissioneBulk(it.cnr.contab.missioni00.docs.bulk.MissioneBulk) CNRUserContext(it.cnr.contab.utenze00.bp.CNRUserContext) PersistencyException(it.cnr.jada.persistency.PersistencyException) Liquidazione_ivaBulk(it.cnr.contab.gestiva00.core.bulk.Liquidazione_ivaBulk) Timestamp(java.sql.Timestamp) it.cnr.contab.docamm00.docs.bulk(it.cnr.contab.docamm00.docs.bulk) Liquidazione_ivaHome(it.cnr.contab.gestiva00.core.bulk.Liquidazione_ivaHome) Ass_tipo_cori_voce_epHome(it.cnr.contab.compensi00.tabrif.bulk.Ass_tipo_cori_voce_epHome) BulkList(it.cnr.jada.bulk.BulkList) it.cnr.contab.config00.pdcep.bulk(it.cnr.contab.config00.pdcep.bulk) Tipo_contributo_ritenutaBulk(it.cnr.contab.compensi00.tabrif.bulk.Tipo_contributo_ritenutaBulk) Collectors(java.util.stream.Collectors) Elemento_voceBulk(it.cnr.contab.config00.pdcfin.bulk.Elemento_voceBulk) it.cnr.contab.coepcoan00.core.bulk(it.cnr.contab.coepcoan00.core.bulk) Serializable(java.io.Serializable) RemoteException(java.rmi.RemoteException) DetailedRuntimeException(it.cnr.jada.DetailedRuntimeException) Contributo_ritenutaHome(it.cnr.contab.compensi00.docs.bulk.Contributo_ritenutaHome) CompensoBulk(it.cnr.contab.compensi00.docs.bulk.CompensoBulk) RimborsoBulk(it.cnr.contab.missioni00.docs.bulk.RimborsoBulk) TerzoBulk(it.cnr.contab.anagraf00.core.bulk.TerzoBulk) Anagrafico_esercizioHome(it.cnr.contab.anagraf00.core.bulk.Anagrafico_esercizioHome) TerzoHome(it.cnr.contab.anagraf00.core.bulk.TerzoHome)

Example 5 with PersistencyException

use of it.cnr.jada.persistency.PersistencyException in project sigla-main by consiglionazionaledellericerche.

the class ScritturaPartitaDoppiaFromDocumentoComponent method caricaScrittura.

protected void caricaScrittura(UserContext userContext, IDocumentoCogeBulk documentoCogeBulk) throws ComponentException {
    try {
        if (Optional.ofNullable(getHome(userContext, Configurazione_cnrBulk.class)).filter(Configurazione_cnrHome.class::isInstance).map(Configurazione_cnrHome.class::cast).orElseThrow(() -> new DetailedRuntimeException("Configurazione Home not found")).isAttivaEconomicaParallela(userContext)) {
            Scrittura_partita_doppiaHome partitaDoppiaHome = Optional.ofNullable(getHome(userContext, Scrittura_partita_doppiaBulk.class)).filter(Scrittura_partita_doppiaHome.class::isInstance).map(Scrittura_partita_doppiaHome.class::cast).orElseThrow(() -> new DetailedRuntimeException("Partita doppia Home not found"));
            final Optional<Scrittura_partita_doppiaBulk> scritturaOpt = partitaDoppiaHome.findByDocumentoAmministrativo(documentoCogeBulk);
            if (scritturaOpt.isPresent()) {
                Scrittura_partita_doppiaBulk scrittura = scritturaOpt.get();
                scrittura.setMovimentiDareColl(new BulkList(((Scrittura_partita_doppiaHome) getHome(userContext, scrittura.getClass())).findMovimentiDareColl(userContext, scrittura)));
                scrittura.setMovimentiAvereColl(new BulkList(((Scrittura_partita_doppiaHome) getHome(userContext, scrittura.getClass())).findMovimentiAvereColl(userContext, scrittura)));
                documentoCogeBulk.setScrittura_partita_doppia(scrittura);
            }
        }
    } catch (PersistencyException | ComponentException e) {
        throw handleException((OggettoBulk) documentoCogeBulk, e);
    }
}
Also used : Scrittura_partita_doppiaHome(it.cnr.contab.coepcoan00.core.bulk.Scrittura_partita_doppiaHome) ComponentException(it.cnr.jada.comp.ComponentException) PersistencyException(it.cnr.jada.persistency.PersistencyException) BulkList(it.cnr.jada.bulk.BulkList) OggettoBulk(it.cnr.jada.bulk.OggettoBulk) Scrittura_partita_doppiaBulk(it.cnr.contab.coepcoan00.core.bulk.Scrittura_partita_doppiaBulk) Configurazione_cnrHome(it.cnr.contab.config00.bulk.Configurazione_cnrHome) Configurazione_cnrBulk(it.cnr.contab.config00.bulk.Configurazione_cnrBulk) DetailedRuntimeException(it.cnr.jada.DetailedRuntimeException)

Aggregations

PersistencyException (it.cnr.jada.persistency.PersistencyException)597 ComponentException (it.cnr.jada.comp.ComponentException)327 ApplicationException (it.cnr.jada.comp.ApplicationException)215 SQLBuilder (it.cnr.jada.persistency.sql.SQLBuilder)190 IntrospectionException (it.cnr.jada.persistency.IntrospectionException)179 BigDecimal (java.math.BigDecimal)124 RemoteException (java.rmi.RemoteException)123 BulkList (it.cnr.jada.bulk.BulkList)116 SQLException (java.sql.SQLException)92 Iterator (java.util.Iterator)89 CNRUserContext (it.cnr.contab.utenze00.bp.CNRUserContext)84 RemoteIterator (it.cnr.jada.util.RemoteIterator)79 EJBException (javax.ejb.EJBException)71 UserContext (it.cnr.jada.UserContext)69 List (java.util.List)69 DetailedRuntimeException (it.cnr.jada.DetailedRuntimeException)63 java.util (java.util)61 OggettoBulk (it.cnr.jada.bulk.OggettoBulk)59 Elemento_voceBulk (it.cnr.contab.config00.pdcfin.bulk.Elemento_voceBulk)56 Unita_organizzativaBulk (it.cnr.contab.config00.sto.bulk.Unita_organizzativaBulk)56