it.cnr.contab.inventario00.docs.bulk.Inventario_beniBulk Maven / Gradle / Ivy
/*
* Copyright (C) 2019 Consiglio Nazionale delle Ricerche
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see .
*/
package it.cnr.contab.inventario00.docs.bulk;
import java.util.*;
import it.cnr.contab.docamm00.tabrif.bulk.Categoria_gruppo_inventBulk;
import it.cnr.contab.inventario00.tabrif.bulk.*;
import it.cnr.jada.bulk.*;
public class Inventario_beniBulk extends Inventario_beniBase {
// private Buono_carico_scaricoBulk buono_cs;
private Condizione_beneBulk condizioneBene;
private Tipo_ammortamentoBulk tipo_ammortamento;
private java.util.Collection ti_ammortamenti;
private Categoria_gruppo_inventBulk categoria_Bene;
private Ubicazione_beneBulk ubicazione;
private boolean pubblicazione;
private Integer num_buono;
private Boolean da_fattura;
private Boolean ha_dettagli;
// VALORE_UNITARIO
private java.math.BigDecimal valore_unitario;
// VARIAZIONE_MENO_INIZIALE: è il valore di variazione meno preso dalla vista V_INVENTARIO_BENI_APG
private java.math.BigDecimal variazione_meno_iniziale;
// VARIAZIONE_PIU_INIZIALE: è il valore di variazione piu preso dalla vista V_INVENTARIO_BENI_APG
private java.math.BigDecimal variazione_piu_iniziale;
/* FL_VISIBILE: è il flag che indica se il bene deve essere mostrato oppure no.
* Viene utilizzato anche per quei beni accessori scaricati in seguito allo scarico di
* un bene padre, e sui quali non è possibile fare operazioni.
*/
private String fl_visibile;
// VALORE_ALIENAZIONE_APG: è il valore di valore alienazione preso dalla vista V_INVENTARIO_BENI_APG
private java.math.BigDecimal valore_alienazione_apg;
/* Bene di riferimento nel caso di un BENE ACCESSORIO */
private Inventario_beniBulk bene_principale;
/* COLLECTION DI UTIIZZATORIVBULK */
private SimpleBulkList v_utilizzatoriColl = new SimpleBulkList();
private SimpleBulkList utilizzatori = new SimpleBulkList();
private SimpleBulkList buoni_dettColl = new SimpleBulkList();
private it.cnr.contab.config00.sto.bulk.CdrBulk cdr_utilizzatore;
private it.cnr.contab.anagraf00.core.bulk.TerzoBulk assegnatario;
private Collection condizioni;
private Boolean contab;
//private java.lang.String ti_istituzionale_commerciale;
public final static java.util.Dictionary ISTITUZIONALE_COMMERCIALE;
public final static String ISTITUZIONALE = "I";
public final static String COMMERCIALE = "C";
public final static String ISTOTALMENTESCARICATO = "Y";
public final static String ISNOTTOTALMENTESCARICATO = "N";
static {
ISTITUZIONALE_COMMERCIALE = new it.cnr.jada.util.OrderedHashtable();
ISTITUZIONALE_COMMERCIALE.put(ISTITUZIONALE,"Istituzionale");
ISTITUZIONALE_COMMERCIALE.put(COMMERCIALE,"Commerciale");
};
private Id_inventarioBulk inventario;
protected final static java.text.Format FORMAT = new java.text.DecimalFormat("000");;
private java.math.BigDecimal valoreBene;
private it.cnr.jada.bulk.SimpleBulkList accessori = new SimpleBulkList();
/* Nuovo bene padre: utilizzato nel trasferimento intra UO, per indicare l'assegnazione di
un bene accessorio ad un nuovo bene principale
*/
private Inventario_beniBulk nuovo_bene_padre;
private Categoria_gruppo_inventBulk nuova_categoria;
// Flag che indica, durante un trasferimento intra UO, che un bene accessorio diventa bene principale.
private Boolean fl_trasf_come_principale;
public Inventario_beniBulk() {
super();
}
public Inventario_beniBulk(java.lang.Long nr_inventario,java.lang.Long pg_inventario,java.lang.Long progressivo) {
super(nr_inventario,pg_inventario,progressivo);
setInventario(new it.cnr.contab.inventario00.tabrif.bulk.Id_inventarioBulk(pg_inventario));
}
public int addToV_utilizzatoriColl (Utilizzatore_CdrVBulk nuovoVUtilizzatore)
{
v_utilizzatoriColl.add(nuovoVUtilizzatore);
nuovoVUtilizzatore.setBene(this);
if (nuovoVUtilizzatore.getCdr()==null)
nuovoVUtilizzatore.setCdr(new it.cnr.contab.config00.sto.bulk.CdrBulk());
return v_utilizzatoriColl.size()-1;
}
/**
* Insert the method's description here.
* Creation date: (10/01/2002 16.42.31)
* @return it.cnr.jada.bulk.BulkList
*/
public it.cnr.jada.bulk.SimpleBulkList getAccessori() {
return accessori;
}
/**
* Insert the method's description here.
* Creation date: (11/26/2001 5:00:26 PM)
* @return it.cnr.contab.anagraf00.core.bulk.TerzoBulk
*/
public it.cnr.contab.anagraf00.core.bulk.TerzoBulk getAssegnatario() {
return assegnatario;
}
/**
* Insert the method's description here.
* Creation date: (11/28/2001 2:27:09 PM)
* @return it.cnr.contab.inventario00.docs.bulk.Inventario_beniBulk
*/
public Inventario_beniBulk getBene_principale() {
return bene_principale;
}
public BulkCollection[] getBulkLists() {
return new it.cnr.jada.bulk.BulkCollection[] {
/*v_utilizzatoriColl,*/
utilizzatori
};
}
public Integer getnum_buono() {
return num_buono;
}
/**
* Insert the method's description here.
* Creation date: (11/20/2001 3:32:48 PM)
* @return it.cnr.contab.docamm00.tabrif.bulk.Categoria_beneBulk
*/
public Categoria_gruppo_inventBulk getCategoria_Bene() {
return categoria_Bene;
}
public java.lang.Integer getCd_assegnatario() {
it.cnr.contab.anagraf00.core.bulk.TerzoBulk assegnatario = this.getAssegnatario();
if (assegnatario == null)
return null;
return assegnatario.getCd_terzo();
}
public java.lang.String getCd_categoria_bene() {
Categoria_gruppo_inventBulk categoria_Bene = this.getCategoria_Bene();
if (categoria_Bene == null)
return null;
return categoria_Bene.getCd_categoria_gruppo();
}
public java.lang.String getCd_categoria_gruppo() {
it.cnr.contab.docamm00.tabrif.bulk.Categoria_gruppo_inventBulk categoria_Bene = this.getCategoria_Bene();
if (categoria_Bene == null)
return null;
return categoria_Bene.getCd_categoria_gruppo();
}
public java.lang.String getCd_cds() {
it.cnr.contab.inventario00.tabrif.bulk.Ubicazione_beneBulk ubicazione = this.getUbicazione();
if (ubicazione == null)
return null;
return ubicazione.getCd_cds();
}
public java.lang.String getCd_condizione_bene() {
it.cnr.contab.inventario00.tabrif.bulk.Condizione_beneBulk condizioneBene = this.getCondizioneBene();
if (condizioneBene == null)
return null;
return condizioneBene.getCd_condizione_bene();
}
public java.lang.String getCd_ubicazione() {
it.cnr.contab.inventario00.tabrif.bulk.Ubicazione_beneBulk ubicazione = this.getUbicazione();
if (ubicazione == null)
return null;
return ubicazione.getCd_ubicazione();
}
public java.lang.String getCd_unita_organizzativa() {
it.cnr.contab.inventario00.tabrif.bulk.Ubicazione_beneBulk ubicazione = this.getUbicazione();
if (ubicazione == null)
return null;
return ubicazione.getCd_unita_organizzativa();
}
/**
* Insert the method's description here.
* Creation date: (11/20/2001 3:32:48 PM)
* @return it.cnr.contab.docamm00.tabrif.bulk.Condizione_beneBulk
*/
public String getCdCondizione_Bene() {
return condizioneBene.getCd_condizione_bene();
}
/**
* Insert the method's description here.
* Creation date: (11/28/2001 3:31:48 PM)
* @return it.cnr.contab.config00.sto.bulk.CdrBulk
*/
public it.cnr.contab.config00.sto.bulk.CdrBulk getCdr_utilizzatore() {
return cdr_utilizzatore;
}
/**
* Insert the method's description here.
* Creation date: (11/20/2001 3:32:48 PM)
* @return it.cnr.contab.docamm00.tabrif.bulk.Condizione_beneBulk
*/
public Condizione_beneBulk getCondizioneBene() {
return condizioneBene;
}
/**
* Insert the method's description here.
* Creation date: (11/20/2001 3:32:48 PM)
* @return java.util.Collection
*/
public Collection getCondizioni() {
return condizioni;
}
/**
* Insert the method's description here.
* Creation date: (11/20/2001 3:32:48 PM)
* @return it.cnr.contab.docamm00.tabrif.bulk.Condizione_beneBulk
*/
public String getDsCondizione_Bene() {
return condizioneBene.getDs_condizione_bene();
}
/**
* Insert the method's description here.
* Creation date: (04/08/2004 10.00.35)
* @return java.lang.Boolean
*/
public java.lang.Boolean getFl_trasf_come_principale() {
return fl_trasf_come_principale;
}
/**
* Insert the method's description here.
* Creation date: (09/07/2002 15.26.09)
* @return java.lang.String
*/
public java.lang.String getFl_visibile() {
return fl_visibile;
}
/**
* Insert the method's description here.
* Creation date: (27/12/2001 15.41.33)
* @return it.cnr.contab.inventario00.tabrif.bulk.Id_inventarioBulk
*/
public Id_inventarioBulk getInventario() {
return inventario;
}
/**
* Insert the method's description here.
* Creation date: (07/01/2002 15.22.46)
* @return java.lang.String
*/
public java.lang.String getNumeroBeneCompleto() {
if (getNr_inventario()!=null && getProgressivo()!=null)
return getNr_inventario().toString() + "-" + FORMAT.format(getProgressivo());
return "";
}
/**
* Insert the method's description here.
* Creation date: (04/08/2004 10.00.35)
* @return it.cnr.contab.inventario00.docs.bulk.Inventario_beniBulk
*/
public Inventario_beniBulk getNuovo_bene_padre() {
return nuovo_bene_padre;
}
public java.lang.Long getPg_inventario() {
it.cnr.contab.inventario00.tabrif.bulk.Id_inventarioBulk inventario = this.getInventario();
if (inventario == null)
return null;
return inventario.getPg_inventario();
}
/**
* Insert the method's description here.
* Creation date: (21/05/2002 15.13.26)
* @return java.util.Collection
*/
public java.util.Collection getTi_ammortamenti() {
return ti_ammortamenti;
}
/**
* Restituisce il Dictionary per la gestione
* dei tipi istituzionale/commerciale
*
* @return java.util.Dictionary
*/
public Dictionary getTi_istituzionale_commercialeKeys() {
return ISTITUZIONALE_COMMERCIALE;
}
/**
* Insert the method's description here.
* Creation date: (21/05/2002 15.13.26)
* @return it.cnr.contab.inventario00.tabrif.bulk.Tipo_ammortamentoBulk
*/
public it.cnr.contab.inventario00.tabrif.bulk.Tipo_ammortamentoBulk getTipo_ammortamento() {
return tipo_ammortamento;
}
/**
* Insert the method's description here.
* Creation date: (11/26/2001 3:50:25 PM)
* @return it.cnr.contab.inventario00.tabrif.bulk.Ubicazione_beneBulk
*/
public it.cnr.contab.inventario00.tabrif.bulk.Ubicazione_beneBulk getUbicazione() {
return ubicazione;
}
/**
* Insert the method's description here.
* Creation date: (06/03/2002 18.20.55)
* @return it.cnr.jada.bulk.SimpleBulkList
*/
public it.cnr.jada.bulk.SimpleBulkList getUtilizzatori() {
return utilizzatori;
}
/**
* Insert the method's description here.
* Creation date: (11/20/2001 11.07.07)
* @return it.cnr.jada.bulk.SimpleBulkList
*/
public it.cnr.jada.bulk.SimpleBulkList getV_utilizzatoriColl() {
return v_utilizzatoriColl;
}
/**
* Insert the method's description here.
* Creation date: (17/04/2002 17.00.13)
* @return java.math.BigDecimal
*/
public java.math.BigDecimal getValore_alienazione_apg() {
return valore_alienazione_apg;
}
/**
* Insert the method's description here.
* Creation date: (08/04/2002 15.13.42)
* @return java.math.BigDecimal
*/
public java.math.BigDecimal getValore_unitario() {
return valore_unitario;
}
/**
* Insert the method's description here.
* Creation date: (10/01/2002 12.06.58)
* @return java.lang.Float
*/
public java.math.BigDecimal getValoreBene() {
java.math.BigDecimal val1 = new java.math.BigDecimal(0);
java.math.BigDecimal val2 = new java.math.BigDecimal(0);
if (getValore_iniziale()!=null){
// Aggiunge le variaioni_piu iniziali
if (getVariazione_piu_iniziale()!=null){
val1 = getVariazione_piu_iniziale().abs();
} else if (getVariazione_piu() != null){
val1 = getVariazione_piu().abs();
}
// Aggiunge le variazioni_meno iniziali
if (getVariazione_meno_iniziale()!=null){
val2 = getVariazione_meno_iniziale().abs().negate();
} else {
if (getVariazione_meno()!=null)
val2 = getVariazione_meno().abs().negate();
}
return getValore_iniziale().add(val1).add(val2);
}
else
return (new java.math.BigDecimal("0"));
}
/**
* Insert the method's description here.
* Creation date: (10/01/2002 12.06.58)
* @return java.lang.Float
*/
public java.math.BigDecimal getValoreBene(boolean include_accessori) {
java.math.BigDecimal val1 = new java.math.BigDecimal(0);
java.math.BigDecimal val2 = new java.math.BigDecimal(0);
java.math.BigDecimal valore_bene = new java.math.BigDecimal(0);
java.math.BigDecimal valore_accessori = new java.math.BigDecimal(0);
if (getValore_iniziale()!=null){
if (getVariazione_piu()!=null)
val1 = getVariazione_piu().abs();
if (getVariazione_meno()!=null)
val2 = getVariazione_meno().abs().negate();
valore_bene = getValore_iniziale().add(val1).add(val2);
if (include_accessori){
SimpleBulkList accessori = getAccessori();
for(Iterator i = accessori.iterator(); i.hasNext();){
Inventario_beniBulk accessorio = (Inventario_beniBulk)i.next();
valore_accessori = valore_accessori.add(accessorio.getValoreBene());
}
valore_bene = valore_bene.add(valore_accessori);
}
}
return valore_bene;
}
/**
* Insert the method's description here.
* Creation date: (15/01/2002 16.03.23)
* @return java.math.BigDecimal
*/
public java.math.BigDecimal getVariazione_meno() {
if (super.getVariazione_meno()==null)
return new java.math.BigDecimal(0);
return super.getVariazione_meno();
}
/**
* Insert the method's description here.
* Creation date: (12/04/2002 12.10.54)
* @return java.math.BigDecimal
*/
public java.math.BigDecimal getVariazione_meno_iniziale() {
return variazione_meno_iniziale;
}
/**
* Insert the method's description here.
* Creation date: (15/01/2002 16.05.23)
* @return java.math.BigDecimal
*/
public java.math.BigDecimal getVariazione_piu() {
if (super.getVariazione_piu()==null)
return new java.math.BigDecimal(0);
return super.getVariazione_piu();
}
/**
* Insert the method's description here.
* Creation date: (28/06/2004 16.48.45)
* @return java.math.BigDecimal
*/
public java.math.BigDecimal getVariazione_piu_iniziale() {
return variazione_piu_iniziale;
}
/**
* Insert the method's description here.
* Creation date: (11/22/2001 3:56:54 PM)
* @return java.lang.String
*/
public boolean hasUtilizzatori() {
return v_utilizzatoriColl.size()>0;
}
public OggettoBulk initializeForFreeSearch(it.cnr.jada.util.action.CRUDBP bp,it.cnr.jada.action.ActionContext context) {
return initializeForSearch(bp,context);
}
/**
* Inizializza il ricevente per la visualizzazione in un FormController
* in stato INSERT.
* Questo metodo viene invocato automaticamente da un
* it.cnr.jada.util.action.CRUDBP quando viene inizializzato
* per l'inserimento di un OggettoBulk.
*/
public OggettoBulk initializeForInsert(it.cnr.jada.util.action.CRUDBP bp,it.cnr.jada.action.ActionContext context) {
condizioneBene = new Condizione_beneBulk();
setTi_commerciale_istituzionale(ISTITUZIONALE);
return this;
}
/**
* Restituisce true se il bene è un Bene Accessorio
*
* @return boolean
*/
public boolean isBeneAccessorio() {
if (getProgressivo() != null && getProgressivo().compareTo(new Long (0))!=0)
return true;
return false;
}
/**
* Restituisce true se il bene ha le caratteristiche per essere cancellato
*
* @return boolean
*/
public boolean isCancellabile() {
java.math.BigDecimal zero = new java.math.BigDecimal(0);
java.math.BigDecimal val_alienazione = (getValore_alienazione()!=null?getValore_alienazione():zero);
java.math.BigDecimal val_ammortizzato = (getValore_ammortizzato()!=null?getValore_ammortizzato():zero);
return (//(!isBeneAccessorio()) &&
//(!getFl_totalmente_scaricato().booleanValue()) &&
//(!getFl_migrato().booleanValue()) &&
(val_alienazione.compareTo(zero)==0) //&&
//(val_ammortizzato.compareTo(zero)==0)
);
}
/**
* Restituisce true se il bene è Istituzionale
*
* @return boolean
*/
public boolean isIstituzionale() {
return ISTITUZIONALE.equals(getTi_commerciale_istituzionale());
}
/**
* Restituisce true se il bene deriva da una operazione di migrazione,
* (FL_MIGRATO=='Y')
*
* @return boolean
*/
public boolean isMigrato() {
if (getFl_migrato() != null)
return getFl_migrato().booleanValue();
return false;
}
/**
* Insert the method's description here.
* Creation date: (04/09/2002 8.31.30)
* @return boolean
*/
public boolean isPubblicazione() {
return pubblicazione;
}
/**
* Insert the method's description here.
* Creation date: (10/02/2002 10:33:00 AM)
* @return java.lang.String
*/
public boolean isROassegnatarioBene() {
return getAssegnatario() != null &&
getAssegnatario().getCrudStatus() != OggettoBulk.UNDEFINED;
}
public boolean isROtarga(){
if ((getCategoria_Bene() != null)&& getCategoria_Bene().getFl_gestione_targa()!=null )
return !getCategoria_Bene().getFl_gestione_targa().booleanValue();
else if (getCrudStatus()== OggettoBulk.UNDEFINED)
return false;
return true;
}
public boolean isROseriale(){
if ((getCategoria_Bene() != null)&& getCategoria_Bene().getFl_gestione_seriale()!=null )
if(getCategoria_Bene().getFl_gestione_seriale() && getSeriale()!=null)
return true;
else
return !getCategoria_Bene().getFl_gestione_seriale().booleanValue();
else if (getCrudStatus()== OggettoBulk.UNDEFINED)
return false;
return true;
}
/**
* Insert the method's description here.
* Creation date: (10/02/2002 10:33:00 AM)
* @return java.lang.String
*/
public boolean isROcategoriaBene() {
java.math.BigDecimal zero = new java.math.BigDecimal(0);
java.math.BigDecimal val_alienazione = (getValore_alienazione()!=null?getValore_alienazione():zero);
java.math.BigDecimal val_ammortizzato = (getValore_ammortizzato()!=null?getValore_ammortizzato():zero);
if((this.getDa_fattura()!=null && this.getDa_fattura().booleanValue())||(this.isContab()!=null && this.isContab().booleanValue())||
(this.isMigrato())||(this.isBeneAccessorio())){
return true;
}else
return (!(
(val_alienazione.compareTo(zero)==0) &&
(val_ammortizzato.compareTo(zero)==0)
) &&
getCategoria_Bene()!=null &&
getCategoria_Bene().getCrudStatus() != OggettoBulk.UNDEFINED);
}
/**
* Insert the method's description here.
* Creation date: (10/02/2002 10:33:00 AM)
* @return java.lang.String
*/
public boolean isROnuovoBenePadre() {
return getNuovo_bene_padre() != null &&
getNuovo_bene_padre().getCrudStatus() != OggettoBulk.UNDEFINED;
}
/**
* Insert the method's description here.
* Creation date: (10/02/2002 10:33:00 AM)
* @return java.lang.String
*/
public boolean isROubicazioneBene() {
return getUbicazione() != null &&
getUbicazione().getCrudStatus() != OggettoBulk.UNDEFINED;
}
/**
* Restituisce true se il bene ha il FL_TOTALMENTE_SCARICATO settato a TRUE
*
* @return boolean
*/
public boolean isTotalmenteScaricato() {
if (getFl_totalmente_scaricato() != null)
return getFl_totalmente_scaricato().booleanValue();
return false;
}
public Utilizzatore_CdrVBulk removeFromV_utilizzatoriColl( int indiceDiLinea ) {
Utilizzatore_CdrVBulk element = (Utilizzatore_CdrVBulk)v_utilizzatoriColl.get(indiceDiLinea);
return (Utilizzatore_CdrVBulk)v_utilizzatoriColl.remove(indiceDiLinea);
// return null;
}
/**
* Insert the method's description here.
* Creation date: (15/01/2002 13.16.57)
* @param val java.math.BigDecimal
*/
public void scaricaImporto(java.math.BigDecimal val) {
setVariazione_meno(getVariazione_meno().add(val));
}
/**
* Insert the method's description here.
* Creation date: (10/01/2002 16.42.31)
* @param newAccessori it.cnr.jada.bulk.BulkList
*/
public void setAccessori(it.cnr.jada.bulk.SimpleBulkList newAccessori) {
accessori = newAccessori;
for (int i = 0;i © 2015 - 2025 Weber Informatics LLC | Privacy Policy