private void AddToList(Ingresso ingresso, int qta, DateTime dateTime, EnumTipologiaEconomica enumTipologiaEconomica, RigaVenditaVariante riga) { DatiReport06 target = null; foreach (DatiReport06 dato in _List) { if (dato.Museo == ingresso.Descrizione) { target = dato; } } if (target == null) { target = new DatiReport06(); target.Museo = ingresso.Descrizione; target.Tipo = ingresso.DescrizioneTipo; target.Ordine = ingresso.OrdineReport01; target.Tipologia = ingresso.Tipologia; _List.Add(target); } if (riga == null) { target.CalcolaTotale(); return; } // filtro in base alle giornate di apertura //if (ingresso.IsAttrib(EventoParticolare.STR_INGRESSI_VERIFICA_VALIDITA) && !_Aperture.Valido(ingresso.Oid, riga.Vendita.DataContabile)) // return; if (ingresso.IsAttrib(EventoParticolare.STR_INGRESSI_NO_VENDITA_DA_ALTRI) && riga.Vendita.Struttura != ingresso.Struttura) { return; } if (riga.Vendita.Struttura != ingresso.Struttura && riga.Vendita.DataContabile.Year <= 2011 && riga.Vendita.DataContabile.Month < 6) { return; } if (ingresso.IsAttrib(EventoParticolare.STR_INGRESSI_MOD_TERREMOTO_1) && (riga.Vendita.DataContabile > EventoParticolare.EQDataEvento && riga.Vendita.DataContabile.Year < 2015 && !_Aperture.Valido(ingresso.Oid, riga.Vendita.DataContabile))) { return; } if (riga.Variante.TipologiaTre == EnumTipologiaTre.CardMyFE && riga.Variante.TipologiaDue == EnumTipologiaDue.Ridotto && riga.Variante.PrezzoAttuale.PrezzoRidotto == null) { return; } if (riga.Variante.TipologiaTre == EnumTipologiaTre.CardMyFE && riga.Variante.TipologiaDue == EnumTipologiaDue.Ridotto) { return; } int mese = dateTime.Month; int anno = dateTime.Year; if (anno == _AnnoInCorso) { switch (mese) { case 1: target.Gennaio += qta; break; case 2: target.Febbraio += qta; break; case 3: target.Marzo += qta; break; case 4: target.Aprile += qta; break; case 5: target.Maggio += qta; break; case 6: target.Giugno += qta; break; case 7: target.Luglio += qta; break; case 8: target.Agosto += qta; break; case 9: target.Settembre += qta; break; case 10: target.Ottobre += qta; break; case 11: target.Novembre += qta; break; case 12: target.Dicembre += qta; break; default: throw new Exception("Mese non previsto"); } } else if (anno == _AnnoInCorso - 1) { target.AnnoMeno1 += qta; } else if (anno == _AnnoInCorso - 2) { target.AnnoMeno2 += qta; } else { throw new Exception("Anno non valido"); } target.CalcolaTotale(); }
private void AddCardToList(Entrata entrata) { DatiReport06 target = null; foreach (DatiReport06 datiReport06 in _List) { if (datiReport06.Museo == entrata.RigaStampaIngresso.Ingresso.Descrizione) { target = datiReport06; } } if (target == null) { target = new DatiReport06(); target.Museo = entrata.RigaStampaIngresso.Ingresso.Descrizione; target.Tipo = entrata.RigaStampaIngresso.Ingresso.DescrizioneTipo; target.Ordine = entrata.RigaStampaIngresso.Ingresso.OrdineReport01; target.Tipologia = entrata.RigaStampaIngresso.Ingresso.Tipologia; _List.Add(target); } int qta = entrata.RigaStampaIngresso.TotaleIngressi; int mese = entrata.DataOraEntrata.Month; int anno = entrata.DataOraEntrata.Year; if (anno == _AnnoInCorso) { switch (mese) { case 1: target.Gennaio += qta; break; case 2: target.Febbraio += qta; break; case 3: target.Marzo += qta; break; case 4: target.Aprile += qta; break; case 5: target.Maggio += qta; break; case 6: target.Giugno += qta; break; case 7: target.Luglio += qta; break; case 8: target.Agosto += qta; break; case 9: target.Settembre += qta; break; case 10: target.Ottobre += qta; break; case 11: target.Novembre += qta; break; case 12: target.Dicembre += qta; break; default: throw new Exception("Mese non previsto"); } } else if (anno == _AnnoInCorso - 1) { target.AnnoMeno1 += qta; } else if (anno == _AnnoInCorso - 2) { target.AnnoMeno2 += qta; } else { throw new Exception("Anno non valido"); } target.CalcolaTotale(); }