示例#1
0
        protected void FillDTORendicontoItemList(IList items, Rendiconto rendiconto, int livello)
        {
            //inserisco il dato relativo al nodo corrente
            DTORendicontoItem i = new DTORendicontoItem();

            if (string.IsNullOrEmpty(_id))
            {
                i.IdNodo = "Bilancio";
            }
            else
            {
                i.IdNodo = _id;
            }
            if (string.IsNullOrEmpty(_parentId))
            {
                if (!string.IsNullOrEmpty(_id))
                {
                    i.IdNodoPadre = "Bilancio";
                }
                else
                {
                    i.IdNodoPadre = "";
                }
            }
            else
            {
                i.IdNodoPadre = _parentId;
            }
            i.DescrizioneNodo = _description;
            i.ImportoBilancio = GetTotal;
            //i.SaldoIninziale = _saldoIniziale;
            i.Livello = livello;
            i.IsLeaf  = this.IsLeaf;
            //se sono nella root (nodo bialncio senza id)
            if (_id == "")
            {
                i.ImportoPreventivo = 0;
            }
            else
            {
                AbstractBilancio b = rendiconto.Preventivo.FindNodeById(_id);
                if (b != null)
                {
                    i.ImportoPreventivo = b.GetTotal;
                }
            }
            //aggiungo alla lista
            items.Add(i);

            //inserisco il dato relativo ai nodi figli se
            //non sono su una foglia
            if (!IsLeaf)
            {
                int lev = livello + 1;
                foreach (AbstractBilancio item in _sublist)
                {
                    item.FillDTORendicontoItemList(items, rendiconto, lev);
                }
            }
        }
示例#2
0
        protected DTORendicontoItem CreateItemForSaldiIniziali(string contoId, double saldoIniziale)
        {
            DTORendicontoItem i = new DTORendicontoItem();

            i.IdNodo = contoId + "si";

            i.DescrizioneNodo = "";
            i.ImportoBilancio = saldoIniziale;

            i.Livello = 0;
            i.IsLeaf  = true;
            //se sono nella root (nodo bialncio senza id)

            i.ImportoPreventivo = 0;

            return(i);
        }
示例#3
0
        public IList CreateDtoItemsListAtDate(Rendiconto rendiconto, bool registerSaldiInizialiBanca, DateTime date)
        {
            IList items = new ArrayList();


            FillDTORendicontoItemListAtDate(items, rendiconto, 0, date);


            //recupero dagli items i saldi iniziali delle banche
            //tramite i relativi id
            Conto banca1 = (Conto)rendiconto.Bilancio.FindNodeById("A.D.2.a");
            Conto banca2 = (Conto)rendiconto.Bilancio.FindNodeById("A.D.2.b");
            Conto banca3 = (Conto)rendiconto.Bilancio.FindNodeById("A.D.2.c");
            Conto banca4 = (Conto)rendiconto.Bilancio.FindNodeById("A.D.2.d");
            Conto banca5 = (Conto)rendiconto.Bilancio.FindNodeById("A.D.2.e");
            Conto banca6 = (Conto)rendiconto.Bilancio.FindNodeById("A.D.2.f");
            Conto cassa  = (Conto)rendiconto.Bilancio.FindNodeById("A.D.1");

            DTORendicontoItem i1 = CreateItemForSaldiIniziali(banca1.Id, banca1.SaldoIniziale);
            DTORendicontoItem i2 = CreateItemForSaldiIniziali(banca2.Id, banca2.SaldoIniziale);
            DTORendicontoItem i3 = CreateItemForSaldiIniziali(banca3.Id, banca3.SaldoIniziale);
            DTORendicontoItem i4 = CreateItemForSaldiIniziali(banca4.Id, banca4.SaldoIniziale);
            DTORendicontoItem i5 = CreateItemForSaldiIniziali(banca5.Id, banca5.SaldoIniziale);
            DTORendicontoItem i6 = CreateItemForSaldiIniziali(banca6.Id, banca6.SaldoIniziale);

            DTORendicontoItem cas = CreateItemForSaldiIniziali(cassa.Id, cassa.SaldoIniziale);

            items.Add(i1);
            items.Add(i2);
            items.Add(i3);
            items.Add(i4);
            items.Add(i5);
            items.Add(i6);
            items.Add(cas);

            return(items);
        }