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 AddToList(Ingresso ingresso, int qta, DateTime dateTime, EnumTipologiaEconomica enumTipologiaEconomica, RigaVenditaVariante riga) { DatiReport03b target = null; foreach (DatiReport03b datiReport03b in _List) { if (datiReport03b.Museo == ingresso.Descrizione) { target = datiReport03b; } } if (target == null) { target = new DatiReport03b(); 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; } if (enumTipologiaEconomica == EnumTipologiaEconomica.Pagante) { switch (dateTime.Month) { case 1: target.M01Pag += qta; break; case 2: target.M02Pag += qta; break; case 3: target.M03Pag += qta; break; case 4: target.M04Pag += qta; break; case 5: target.M05Pag += qta; break; case 6: target.M06Pag += qta; break; case 7: target.M07Pag += qta; break; case 8: target.M08Pag += qta; break; case 9: target.M09Pag += qta; break; case 10: target.M10Pag += qta; break; case 11: target.M11Pag += qta; break; case 12: target.M12Pag += qta; break; default: throw new Exception("Mese non previsto"); } } else if (enumTipologiaEconomica == EnumTipologiaEconomica.Gratuito) { switch (dateTime.Month) { case 1: target.M01NPag += qta; break; case 2: target.M02NPag += qta; break; case 3: target.M03NPag += qta; break; case 4: target.M04NPag += qta; break; case 5: target.M05NPag += qta; break; case 6: target.M06NPag += qta; break; case 7: target.M07NPag += qta; break; case 8: target.M08NPag += qta; break; case 9: target.M09NPag += qta; break; case 10: target.M10NPag += qta; break; case 11: target.M11NPag += qta; break; case 12: target.M12NPag += qta; break; default: throw new Exception("Mese non previsto"); } } else { throw new Exception("EnumTipologiaEconomica non previsto: " + enumTipologiaEconomica); } target.CalcolaTotale(); }
private void AddToList(Ingresso ingresso, int qta, DateTime dateTime, EnumTipologiaEconomica enumTipologiaEconomica, RigaVenditaVariante riga) { DatiReport04 target = null; foreach (DatiReport04 dato in _List) { if (dato.Museo == ingresso.Descrizione) { target = dato; } } if (target == null) { target = new DatiReport04(); target.Museo = ingresso.Descrizione; target.Tipo = ingresso.DescrizioneTipo; target.Ordine = ingresso.OrdineReport01; _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; } if (dateTime.Year == _AnnoInCorso) { target.VisAnno1 += qta; } else if (dateTime.Year == _AnnoInCorso - 1) { target.VisAnno2 += qta; } else if (dateTime.Year == _AnnoInCorso - 2) { target.VisAnno3 += qta; } else if (dateTime.Year == _AnnoInCorso - 3) { target.VisAnno4 += qta; } else if (dateTime.Year == _AnnoInCorso - 4) { target.VisAnno5 += qta; } target.CalcolaTotale(); }