public SortableBindingList <ScrittureDTO> SearchScrittureBilancio(string idConto, ScrittureSearchCriteria criteria) { if (_bilancio == null) { return(null); } AbstractBilancio b; if (string.IsNullOrEmpty(idConto)) { b = _bilancio; } else { b = _bilancio.FindNodeById(idConto); } if (b == null) { throw new InvalidOperationException("Richiesta scritture per un elemento sconosciuto"); } IList list = b.SearchScritture(criteria); return(ScrittureConverter.ConvertScritture(list)); }
public SortableBindingList <ScrittureDTO> ScrittureContoBilancio(string idConto) { if (_bilancio == null) { return(null); } AbstractBilancio b = _bilancio.FindNodeById(idConto) as Conto; if (b == null) { throw new InvalidOperationException("Richiesta scritture per un elemento di bilancio diverso da un conto"); } return(ScrittureConverter.ConvertScritture(b.SubList)); }
public IList <ScrittureDTO> SearchScrittureGiornale(ScrittureSearchCriteria criteria) { if (_bilancio == null) { return(null); } IList list = _bilancio.SearchScritture(criteria); List <ScrittureDTO> l1 = new List <ScrittureDTO>(); foreach (ScrittureDTO item in ScrittureConverter.ConvertScritture(list)) { l1.Add(item); } l1.Sort(ScrittureDTO.CompareByDate); return(l1); }
public IList SearchScritturePrimaNota(ScrittureSearchCriteria criteria) { if (_bilancio == null) { return(null); } IList list = _bilancio.SearchScritture(criteria); List <ScritturaPrimaNotaDTO> l1 = new List <ScritturaPrimaNotaDTO>(); foreach (ScritturaPrimaNotaDTO item in ScrittureConverter.ConvertScrittureToPrimaNota(list)) { l1.Add(item); } l1.Sort(ScritturaPrimaNotaDTO.CompareByDate); //anche se è brutto a vedersi riporto tutto ad un arraylist return(new ArrayList(l1)); }
internal ScrittureDTO GetScritturaContropartita(ScrittureDTO _current) { //if (_current.TipoOperazione == "Contropartita") //{ //BilancioFenealgest.DomainLayer.Conto.TipoConto c = Conto.CalculateTipoConto(_current.ParentId); ////se la contropartita è nulla vuol dire che ho passato l'intero bilancio ////***************************** ////definisco l'id della classificazione dove ricercare il conto //string idClassificazione = ""; //if (c == BilancioFenealgest.DomainLayer.Conto.TipoConto.Entrate) // //dovro' cercare la scrittura di contropartita nelle spese // idClassificazione = "S"; //else // //dovro' cercare la scrittura di contropartita nelle entrate // idClassificazione = "E"; ////rimuovo la scrittura previa ricerca //Classificazione clas = _bilancio.FindNodeById(idClassificazione) as Classificazione; Conto conto = _bilancio.FindNodeById(_current.IdContropartita) as Conto; //cerco la scritttura Scrittura s1 = conto.FindNodeById(_current.Id) as Scrittura; if (s1 == null) { throw new Exception("Scrittura di partita doppia non trovata"); } return(ScrittureConverter.ConvertToScritturaDTO(s1)); //} //else //{ // Conto c; // switch (_current.TipoOperazione) // { // case "Cassa": // c = _bilancio.CassaFinale; // break; // case "Banca2": // c = _bilancio.Banca2Finale; // break; // case "Banca1": // c = _bilancio.Banca1Finale; // break; // case "Banca3": // c = _bilancio.Banca3Finale; // break; // case "Accantonamento": // c = _bilancio.AccantonamentoFinale; // break; // default: // throw new ArgumentException("Tipo operazione sconosciuta!"); // } // Scrittura s1 = c.FindNodeById(_current.Id) as Scrittura; // if (s1 == null) // throw new Exception("Scrittura di partita doppia non trovata"); // return ScrittureConverter.ConvertToScritturaDTO(s1); //} }