Skip to content

Commit

Permalink
Gestione associazione Obbligazione Scadenzario Voce per le Missioni
Browse files Browse the repository at this point in the history
  • Loading branch information
gifracr committed Jun 20, 2017
1 parent c5451e1 commit 5ad8a02
Show file tree
Hide file tree
Showing 12 changed files with 146 additions and 41 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@
import java.sql.*;

import java.util.*;

import it.cnr.contab.doccont00.core.DatiFinanziariScadenzeDTO;
import it.cnr.contab.doccont00.core.bulk.*;
import it.cnr.jada.UserContext;
import it.cnr.jada.bulk.*;
Expand Down Expand Up @@ -649,9 +651,11 @@ public void setSavePoint(it.cnr.jada.UserContext userContext)
}
public IScadenzaDocumentoContabileBulk sdoppiaScadenzaInAutomatico( UserContext userContext, IScadenzaDocumentoContabileBulk scad, BigDecimal nuovoImporto) throws ComponentException
{
return sdoppiaScadenzaInAutomatico(userContext, scad, nuovoImporto, null, null);
DatiFinanziariScadenzeDTO dati = new DatiFinanziariScadenzeDTO();
dati.setNuovoImportoScadenzaVecchia(nuovoImporto);
return sdoppiaScadenzaInAutomatico(userContext, scad, dati);
}
public IScadenzaDocumentoContabileBulk sdoppiaScadenzaInAutomatico( UserContext userContext, IScadenzaDocumentoContabileBulk scad, BigDecimal nuovoImporto, String nuovaDescrizione, Timestamp nuovaScadenza) throws ComponentException
public IScadenzaDocumentoContabileBulk sdoppiaScadenzaInAutomatico( UserContext userContext, IScadenzaDocumentoContabileBulk scad, DatiFinanziariScadenzeDTO dati) throws ComponentException
{
Obbligazione_scadenzarioBulk scadenza = (Obbligazione_scadenzarioBulk)scad;
try
Expand All @@ -672,7 +676,7 @@ public IScadenzaDocumentoContabileBulk sdoppiaScadenzaInAutomatico( UserContext
}
else
{
return createObbligazioneComponentSession().sdoppiaScadenzaInAutomatico( userContext, scadenza, nuovoImporto, nuovaDescrizione, nuovaScadenza);
return createObbligazioneComponentSession().sdoppiaScadenzaInAutomatico( userContext, scadenza, dati);
}
}
catch ( Exception e )
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@
import it.cnr.contab.config00.sto.bulk.Unita_organizzativa_enteBulk;
import it.cnr.contab.config00.sto.bulk.V_struttura_organizzativaBulk;
import it.cnr.contab.docamm00.docs.bulk.Fattura_passiva_rigaBulk;
import it.cnr.contab.doccont00.core.DatiFinanziariScadenzeDTO;
import it.cnr.contab.doccont00.core.bulk.IDocumentoContabileBulk;
import it.cnr.contab.doccont00.core.bulk.IScadenzaDocumentoContabileBulk;
import it.cnr.contab.doccont00.core.bulk.Linea_attivitaBulk;
Expand Down Expand Up @@ -1799,7 +1800,12 @@ protected void creaDettagliScadenzaPerLineeAttivitaDaPdG(UserContext aUC,Obbliga
{
found = false;
ppsd = (V_pdg_obbligazione_speBulk) lattIterator.next();
if (scadenzario.getNuovaGae() == null || scadenzario.getNuovaGae().equals(ppsd.getCd_linea_attivita())){
if (scadenzario.getDatiFinanziariScadenzeDTO() == null || scadenzario.getDatiFinanziariScadenzeDTO().getCdLineaAttivita() == null ||
scadenzario.getDatiFinanziariScadenzeDTO().getCdCentroResponsabilita() == null ||
scadenzario.getDatiFinanziariScadenzeDTO().getCdVoce() == null ||
(scadenzario.getDatiFinanziariScadenzeDTO().getCdLineaAttivita().equals(ppsd.getCd_linea_attivita()) &&
scadenzario.getDatiFinanziariScadenzeDTO().getCdCentroResponsabilita().equals(ppsd.getCd_centro_responsabilita())&&
scadenzario.getDatiFinanziariScadenzeDTO().getCdVoce().equals(ppsd.getCd_elemento_voce()))){
for ( Iterator i = scadenzario.getObbligazione_scad_voceColl().iterator(); i.hasNext(); )
{
osv = (Obbligazione_scad_voceBulk) i.next();
Expand Down Expand Up @@ -5169,15 +5175,19 @@ public PrimaryKeyHashtable getOldRipartizioneCdrVoceLinea(UserContext userContex
*/
public IScadenzaDocumentoContabileBulk sdoppiaScadenzaInAutomatico( UserContext userContext, IScadenzaDocumentoContabileBulk scad, BigDecimal nuovoImportoScadenzaVecchia) throws ComponentException
{
return sdoppiaScadenzaInAutomatico(userContext, scad, nuovoImportoScadenzaVecchia, null, null
// , null
);
DatiFinanziariScadenzeDTO dati = new DatiFinanziariScadenzeDTO();
dati.setNuovoImportoScadenzaVecchia(nuovoImportoScadenzaVecchia);
return sdoppiaScadenzaInAutomatico(userContext, scad, dati);
}

// public IScadenzaDocumentoContabileBulk sdoppiaScadenzaInAutomatico( UserContext userContext, IScadenzaDocumentoContabileBulk scad, BigDecimal nuovoImportoScadenzaVecchia, String nuovaDescrizione, Timestamp nuovaScadenza, String nuovaGae) throws ComponentException
public IScadenzaDocumentoContabileBulk sdoppiaScadenzaInAutomatico( UserContext userContext, IScadenzaDocumentoContabileBulk scad, BigDecimal nuovoImportoScadenzaVecchia, String nuovaDescrizione, Timestamp nuovaScadenza) throws ComponentException
public IScadenzaDocumentoContabileBulk sdoppiaScadenzaInAutomatico( UserContext userContext, IScadenzaDocumentoContabileBulk scad, DatiFinanziariScadenzeDTO dati) throws ComponentException
{
String nuovaGae = null;
String nuovaGae = dati.getCdLineaAttivita();
String nuovaDescrizione = dati.getNuovaDescrizione();
Timestamp nuovaScadenza = dati.getNuovaScadenza();
String cdr = dati.getCdCentroResponsabilita();
String voce = dati.getCdVoce();
BigDecimal nuovoImportoScadenzaVecchia = dati.getNuovoImportoScadenzaVecchia();
Obbligazione_scadenzarioBulk scadenzaVecchia = (Obbligazione_scadenzarioBulk)scad;
if ( nuovoImportoScadenzaVecchia.compareTo( scad.getIm_scadenza()) == 0 )
throw handleException( new ApplicationException( "Sdoppiamento in automatico non necessario!" ));
Expand Down Expand Up @@ -5210,26 +5220,28 @@ public IScadenzaDocumentoContabileBulk sdoppiaScadenzaInAutomatico( UserContext
Obbligazione_scadenzarioBulk scadenzaNuova = new Obbligazione_scadenzarioBulk();
scadenzaNuova.setDt_scadenza(nuovaScadenza!=null ? nuovaScadenza : scadenzaVecchia.getDt_scadenza());
scadenzaNuova.setDs_scadenza(nuovaDescrizione!=null ? nuovaDescrizione : scadenzaVecchia.getDs_scadenza());
scadenzaNuova.setNuovaGae(nuovaGae);
obbligazione.addToObbligazione_scadenzarioColl(scadenzaNuova);

// Rigenero i relativi dettagli
generaDettagliScadenzaObbligazione(userContext, obbligazione, scadenzaNuova, false);

for (Iterator s = scadenzaVecchia.getObbligazione_scad_voceColl().iterator(); s.hasNext(); ) {
Obbligazione_scad_voceBulk osvOld = (Obbligazione_scad_voceBulk)s.next();
newImportoOsv = nuovoImportoScadenzaVecchia.multiply(osvOld.getIm_voce()).divide(vecchioImportoScadenzaVecchia, 2, BigDecimal.ROUND_HALF_UP);

for (Iterator n = scadenzaNuova.getObbligazione_scad_voceColl().iterator(); n.hasNext(); ) {
Obbligazione_scad_voceBulk osvNew = (Obbligazione_scad_voceBulk)n.next();
if (osvNew.getCd_centro_responsabilita().equals(osvOld.getCd_centro_responsabilita()) &&
osvNew.getCd_linea_attivita().equals(osvOld.getCd_linea_attivita()) &&
osvNew.getCd_voce().equals(osvOld.getCd_voce()))
osvNew.setIm_voce(osvOld.getIm_voce().subtract(newImportoOsv));
}
if (nuovaGae != null && cdr != null){
if (osvOld.getCd_linea_attivita() != null && osvOld.getCd_linea_attivita().equals(nuovaGae) &&
osvOld.getCd_centro_responsabilita() != null && osvOld.getCd_centro_responsabilita().equals(cdr)){
aggiornaImportoScadVoceScadenzaNuova(importoScadenzaNuova, scadenzaNuova, osvOld);
osvOld.setIm_voce(nuovoImportoScadenzaVecchia);
osvOld.setToBeUpdated();
}
} else {
newImportoOsv = nuovoImportoScadenzaVecchia.multiply(osvOld.getIm_voce()).divide(vecchioImportoScadenzaVecchia, 2, BigDecimal.ROUND_HALF_UP);

osvOld.setIm_voce(newImportoOsv);
osvOld.setToBeUpdated();
aggiornaImportoScadVoceScadenzaNuova(newImportoOsv, scadenzaNuova, osvOld);

osvOld.setIm_voce(newImportoOsv);
osvOld.setToBeUpdated();
}
}

//Quadro la sommatoria sulla vecchia scadenza
Expand Down Expand Up @@ -5283,6 +5295,16 @@ public IScadenzaDocumentoContabileBulk sdoppiaScadenzaInAutomatico( UserContext
throw handleException( e );
}
}
private void aggiornaImportoScadVoceScadenzaNuova(BigDecimal newImportoOsv, Obbligazione_scadenzarioBulk scadenzaNuova,
Obbligazione_scad_voceBulk osvOld) {
for (Iterator n = scadenzaNuova.getObbligazione_scad_voceColl().iterator(); n.hasNext(); ) {
Obbligazione_scad_voceBulk osvNew = (Obbligazione_scad_voceBulk)n.next();
if (osvNew.getCd_centro_responsabilita().equals(osvOld.getCd_centro_responsabilita()) &&
osvNew.getCd_linea_attivita().equals(osvOld.getCd_linea_attivita()) &&
osvNew.getCd_voce().equals(osvOld.getCd_voce()))
osvNew.setIm_voce(osvOld.getIm_voce().subtract(newImportoOsv));
}
}
private void aggiornaObbligazioneModificaTemporanea(UserContext userContext,Obbligazione_modificaBulk obbligazioneModTemporanea) throws ComponentException {

try {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
package it.cnr.contab.doccont00.core;

import java.math.BigDecimal;
import java.sql.Timestamp;

public class DatiFinanziariScadenzeDTO {
BigDecimal nuovoImportoScadenzaVecchia;
String nuovaDescrizione;
Timestamp nuovaScadenza;
String cdLineaAttivita;
String cdVoce;
String cdCentroResponsabilita;

public BigDecimal getNuovoImportoScadenzaVecchia() {
return nuovoImportoScadenzaVecchia;
}
public void setNuovoImportoScadenzaVecchia(BigDecimal nuovoImportoScadenzaVecchia) {
this.nuovoImportoScadenzaVecchia = nuovoImportoScadenzaVecchia;
}
public String getNuovaDescrizione() {
return nuovaDescrizione;
}
public void setNuovaDescrizione(String nuovaDescrizione) {
this.nuovaDescrizione = nuovaDescrizione;
}
public Timestamp getNuovaScadenza() {
return nuovaScadenza;
}
public void setNuovaScadenza(Timestamp nuovaScadenza) {
this.nuovaScadenza = nuovaScadenza;
}
public String getCdLineaAttivita() {
return cdLineaAttivita;
}
public void setCdLineaAttivita(String cdLineaAttivita) {
this.cdLineaAttivita = cdLineaAttivita;
}
public String getCdVoce() {
return cdVoce;
}
public void setCdVoce(String cdVoce) {
this.cdVoce = cdVoce;
}
public String getCdCentroResponsabilita() {
return cdCentroResponsabilita;
}
public void setCdCentroResponsabilita(String cdCentroResponsabilita) {
this.cdCentroResponsabilita = cdCentroResponsabilita;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonInclude.Include;

import it.cnr.contab.doccont00.core.DatiFinanziariScadenzeDTO;
import it.cnr.jada.bulk.*;
@JsonInclude(value=Include.NON_NULL)
public class Obbligazione_scadenzarioBulk extends Obbligazione_scadenzarioBase implements Cloneable, IScadenzaDocumentoContabileBulk {
Expand All @@ -17,8 +18,6 @@ public class Obbligazione_scadenzarioBulk extends Obbligazione_scadenzarioBase i

protected Obbligazione_scadenzarioBulk scadenza_iniziale;

protected String nuovaGae;

public static final int STATUS_NOT_CONFIRMED = 0;
public static final int STATUS_CONFIRMED = 1;

Expand All @@ -27,6 +26,7 @@ public class Obbligazione_scadenzarioBulk extends Obbligazione_scadenzarioBase i
private Integer esercizio_mandato;
private java.lang.Long pg_mandato;

private DatiFinanziariScadenzeDTO datiFinanziariScadenzeDTO;
private Integer esercizio_doc_passivo;
private java.lang.Long pg_doc_passivo;
private String cd_tipo_documento_amm;
Expand Down Expand Up @@ -340,10 +340,10 @@ public void validate() throws ValidationException {
for ( Iterator i = obbligazione_scad_voceColl.iterator(); i.hasNext(); )
((Obbligazione_scad_voceBulk) i.next()).validate();
}
public String getNuovaGae() {
return nuovaGae;
public DatiFinanziariScadenzeDTO getDatiFinanziariScadenzeDTO() {
return datiFinanziariScadenzeDTO;
}
public void setNuovaGae(String nuovaGae) {
this.nuovaGae = nuovaGae;
public void setDatiFinanziariScadenzeDTO(DatiFinanziariScadenzeDTO datiFinanziariScadenzeDTO) {
this.datiFinanziariScadenzeDTO = datiFinanziariScadenzeDTO;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@

import javax.ejb.Remote;

import it.cnr.contab.doccont00.core.DatiFinanziariScadenzeDTO;

@Remote
public interface ObbligazioneAbstractComponentSession extends it.cnr.jada.ejb.CRUDComponentSession, it.cnr.contab.doccont00.comp.DocumentoContabileComponentSession {
void aggiornaCogeCoanInDifferita(it.cnr.jada.UserContext param0,it.cnr.contab.doccont00.core.bulk.IDocumentoContabileBulk param1,java.util.Map param2) throws it.cnr.jada.comp.ComponentException,java.rmi.RemoteException;
Expand All @@ -15,6 +17,6 @@ public interface ObbligazioneAbstractComponentSession extends it.cnr.jada.ejb.CR
void rollbackToSavePoint(it.cnr.jada.UserContext param0) throws it.cnr.jada.comp.ComponentException,java.rmi.RemoteException;
void setSavePoint(it.cnr.jada.UserContext param0) throws it.cnr.jada.comp.ComponentException,java.rmi.RemoteException;
it.cnr.contab.doccont00.core.bulk.IScadenzaDocumentoContabileBulk sdoppiaScadenzaInAutomatico(it.cnr.jada.UserContext param0, it.cnr.contab.doccont00.core.bulk.IScadenzaDocumentoContabileBulk param1, java.math.BigDecimal param2) throws it.cnr.jada.comp.ComponentException,java.rmi.RemoteException,it.cnr.jada.persistency.PersistencyException;
it.cnr.contab.doccont00.core.bulk.IScadenzaDocumentoContabileBulk sdoppiaScadenzaInAutomatico(it.cnr.jada.UserContext param0, it.cnr.contab.doccont00.core.bulk.IScadenzaDocumentoContabileBulk param1, java.math.BigDecimal param2, String nuovaDescrizione, Timestamp nuovaScadenza) throws it.cnr.jada.comp.ComponentException,java.rmi.RemoteException,it.cnr.jada.persistency.PersistencyException;
it.cnr.contab.doccont00.core.bulk.IScadenzaDocumentoContabileBulk sdoppiaScadenzaInAutomatico(it.cnr.jada.UserContext param0, it.cnr.contab.doccont00.core.bulk.IScadenzaDocumentoContabileBulk param1, DatiFinanziariScadenzeDTO dati) throws it.cnr.jada.comp.ComponentException,java.rmi.RemoteException,it.cnr.jada.persistency.PersistencyException;

}
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
import javax.ejb.Stateless;

import it.cnr.contab.doccont00.comp.ObbligazioneAbstractComponent;
import it.cnr.contab.doccont00.core.DatiFinanziariScadenzeDTO;
@Stateless(name="CNRDOCCONT00_EJB_ObbligazioneAbstractComponentSession")
public class ObbligazioneAbstractComponentSessionBean extends it.cnr.jada.ejb.CRUDComponentSessionBean implements ObbligazioneAbstractComponentSession{
@PostConstruct
Expand Down Expand Up @@ -152,10 +153,10 @@ public void setSavePoint(it.cnr.jada.UserContext param0) throws it.cnr.jada.comp
}
}

public it.cnr.contab.doccont00.core.bulk.IScadenzaDocumentoContabileBulk sdoppiaScadenzaInAutomatico(it.cnr.jada.UserContext param0, it.cnr.contab.doccont00.core.bulk.IScadenzaDocumentoContabileBulk param1, java.math.BigDecimal param2, String nuovaDescrizione, Timestamp nuovaScadenza) throws it.cnr.jada.comp.ComponentException,javax.ejb.EJBException {
public it.cnr.contab.doccont00.core.bulk.IScadenzaDocumentoContabileBulk sdoppiaScadenzaInAutomatico(it.cnr.jada.UserContext param0, it.cnr.contab.doccont00.core.bulk.IScadenzaDocumentoContabileBulk param1, DatiFinanziariScadenzeDTO dati) throws it.cnr.jada.comp.ComponentException,javax.ejb.EJBException {
pre_component_invocation(param0,componentObj);
try {
it.cnr.contab.doccont00.core.bulk.IScadenzaDocumentoContabileBulk result = ((ObbligazioneAbstractComponent)componentObj).sdoppiaScadenzaInAutomatico(param0,param1,param2, nuovaDescrizione, nuovaScadenza);
it.cnr.contab.doccont00.core.bulk.IScadenzaDocumentoContabileBulk result = ((ObbligazioneAbstractComponent)componentObj).sdoppiaScadenzaInAutomatico(param0,param1,dati);
component_invocation_succes(param0,componentObj);
return result;
} catch(it.cnr.jada.comp.NoRollbackException e) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@

import javax.ejb.Remote;

import it.cnr.contab.doccont00.core.DatiFinanziariScadenzeDTO;

@Remote
public interface ObbligazioneComponentSession extends it.cnr.jada.ejb.CRUDComponentSession, it.cnr.contab.doccont00.comp.DocumentoContabileComponentSession, it.cnr.jada.ejb.PrintComponentSession {
void aggiornaCogeCoanInDifferita(it.cnr.jada.UserContext param0,it.cnr.contab.doccont00.core.bulk.IDocumentoContabileBulk param1,java.util.Map param2) throws it.cnr.jada.comp.ComponentException,java.rmi.RemoteException;
Expand Down Expand Up @@ -34,7 +36,7 @@ public interface ObbligazioneComponentSession extends it.cnr.jada.ejb.CRUDCompon
it.cnr.contab.doccont00.core.bulk.ObbligazioneBulk creaScadenzaResiduale(it.cnr.jada.UserContext param0, it.cnr.contab.doccont00.core.bulk.ObbligazioneBulk param1) throws it.cnr.jada.comp.ComponentException,java.rmi.RemoteException;
it.cnr.contab.doccont00.core.bulk.ObbligazioneBulk validaImputazioneFinanziaria(it.cnr.jada.UserContext param0, it.cnr.contab.doccont00.core.bulk.ObbligazioneBulk param1) throws it.cnr.jada.comp.ComponentException,java.rmi.RemoteException;
it.cnr.contab.doccont00.core.bulk.IScadenzaDocumentoContabileBulk sdoppiaScadenzaInAutomatico(it.cnr.jada.UserContext param0, it.cnr.contab.doccont00.core.bulk.IScadenzaDocumentoContabileBulk param1, java.math.BigDecimal param2) throws it.cnr.jada.comp.ComponentException,java.rmi.RemoteException,it.cnr.jada.persistency.PersistencyException;
it.cnr.contab.doccont00.core.bulk.IScadenzaDocumentoContabileBulk sdoppiaScadenzaInAutomatico(it.cnr.jada.UserContext param0, it.cnr.contab.doccont00.core.bulk.IScadenzaDocumentoContabileBulk param1, java.math.BigDecimal param2, String nuovaDescrizione, Timestamp nuovaScadenza) throws it.cnr.jada.comp.ComponentException,java.rmi.RemoteException,it.cnr.jada.persistency.PersistencyException;
it.cnr.contab.doccont00.core.bulk.IScadenzaDocumentoContabileBulk sdoppiaScadenzaInAutomatico(it.cnr.jada.UserContext param0, it.cnr.contab.doccont00.core.bulk.IScadenzaDocumentoContabileBulk param1, DatiFinanziariScadenzeDTO dati) throws it.cnr.jada.comp.ComponentException,java.rmi.RemoteException,it.cnr.jada.persistency.PersistencyException;
it.cnr.jada.bulk.PrimaryKeyHashtable getOldRipartizioneCdrVoceLinea(it.cnr.jada.UserContext userContext, it.cnr.contab.doccont00.core.bulk.ObbligazioneBulk obbligazione) throws it.cnr.jada.comp.ComponentException,java.rmi.RemoteException;
void validaIncaricoRepertorio(it.cnr.jada.UserContext param0, it.cnr.contab.doccont00.core.bulk.ObbligazioneBulk param1, it.cnr.contab.incarichi00.bulk.Incarichi_repertorioBulk param2, it.cnr.jada.persistency.sql.CompoundFindClause param3) throws it.cnr.jada.comp.ComponentException,java.rmi.RemoteException,it.cnr.jada.persistency.PersistencyException;
List<it.cnr.contab.prevent00.bulk.V_assestatoBulk> listaAssestatoSpese (it.cnr.jada.UserContext param0, it.cnr.contab.doccont00.core.bulk.ObbligazioneBulk param1) throws it.cnr.jada.comp.ComponentException,java.rmi.RemoteException,it.cnr.jada.persistency.PersistencyException;
Expand Down
Loading

0 comments on commit 5ad8a02

Please sign in to comment.