Пример #1
0
        private async Task GetNew(int idSocio)
        {
            var socio = await _context.Soci
                        .Include(x => x.DatiAuto)
                        .FirstOrDefaultAsync(x => x.ID == idSocio);

            var anagrafica = await _context.GetAnagrafica();

            string sede = anagrafica?.Citta;

            if (string.IsNullOrEmpty(sede))
            {
                sede = "sede";
            }

            if (socio == null || socio.DatiAutoID == null)
            {
                throw new KeyNotFoundException($"Rimborso con chiave {idSocio} non trovato.");
            }

            DatiCalcolo = new CalcoloRimborsoVM()
            {
                SocioID               = socio.ID,
                Cognome               = socio.Cognome,
                Nome                  = socio.Nome,
                Carburante            = socio.DatiAuto.Carburante,
                DescrizioneMacchina   = socio.DescrizioneMacchina,
                Distanza              = 0,
                DescrizioneItinerario = $"{socio.Citta} - {sede} e ritorno",
                InfoAutoID            = socio.DatiAutoID.Value,
                RimborsoKm            = socio.DatiAuto.RimborsoKm,
                TargaMacchina         = socio.TargaMacchina,
                TipoAuto              = socio.DatiAuto.TipoAuto,
                //ListaProve = new List<DateTime> { DateTime.Now.Date },
                DataUscita = DateTime.Now.Date,
                IsAR       = true
            };
            DatiCalcolo.Descrizione = DatiCalcolo.GeneraDescrizione();
        }
Пример #2
0
        protected async Task GetExisting(int idRimborso, FilarmonicaContext context)
        {
            var rimborso = await context.Rimborsi
                           .Include(x => x.Socio)
                           .SingleOrDefaultAsync(x => x.ID == idRimborso);

            if (rimborso == null)
            {
                throw new KeyNotFoundException($"Rimborso con chiave {idRimborso} non trovato.");
            }
            rimborso.DatiDaSerializzare = JsonSerializer.Deserialize <Data.DbModels.DatiCalcoloDaSerializzare>(rimborso.DatiRimborsoSerializzati);

            DatiCalcolo = new CalcoloRimborsoVM()
            {
                IdRimborso            = rimborso.ID,
                SocioID               = rimborso.SocioID,
                Cognome               = rimborso.Socio.Cognome,
                Nome                  = rimborso.Socio.Nome,
                Carburante            = rimborso.DatiDaSerializzare.Carburante,
                DescrizioneMacchina   = rimborso.DatiDaSerializzare.DescrizioneMacchina,
                Distanza              = rimborso.DatiDaSerializzare.Distanza,
                DescrizioneItinerario = rimborso.DatiDaSerializzare.DescrizioneItinerario,
                InfoAutoID            = rimborso.DatiDaSerializzare.InfoAutoID,
                RimborsoKm            = rimborso.DatiDaSerializzare.RimborsoKm,
                TargaMacchina         = rimborso.DatiDaSerializzare.TargaMacchina,
                TipoAuto              = rimborso.DatiDaSerializzare.TipoAuto,
                Descrizione           = rimborso.Descrizione,
                TotaleReale           = rimborso.DatiDaSerializzare.TotaleReale,
                TotaleDovuto          = rimborso.DatiDaSerializzare.TotaleDovuto,
                DataCreazione         = rimborso.DataCreazione,
                DataUltimaModifica    = rimborso.DataUltimaModifica,
                IsAR                  = rimborso.DatiDaSerializzare.IsAR,
                DataUscita            = rimborso.DataEvento
            };

            DatiCalcolo.AltriCostiAltro = new CalcoloRimborsoAltriCostiVM
            {
                Costo       = rimborso.DatiDaSerializzare.AltriCostiAltro?.Costo ?? 0,
                NumRicevute = rimborso.DatiDaSerializzare.AltriCostiAltro?.NumRicevute ?? 0,
                Descrizione = rimborso.DatiDaSerializzare.AltriCostiAltro?.Descrizione ?? DatiCalcolo.AltriCostiAltro.Descrizione, //prende il default
            };
            DatiCalcolo.AltriCostiAutostrada = new CalcoloRimborsoAltriCostiVM
            {
                Costo       = rimborso.DatiDaSerializzare.AltriCostiAutostrada?.Costo ?? 0,
                NumRicevute = rimborso.DatiDaSerializzare.AltriCostiAutostrada?.NumRicevute ?? 0,
                Descrizione = rimborso.DatiDaSerializzare.AltriCostiAutostrada?.Descrizione ?? DatiCalcolo.AltriCostiAutostrada.Descrizione, //prende il default
            };
            DatiCalcolo.AltriCostiTreno = new CalcoloRimborsoAltriCostiVM
            {
                Costo       = rimborso.DatiDaSerializzare.AltriCostiTreno?.Costo ?? 0,
                NumRicevute = rimborso.DatiDaSerializzare.AltriCostiTreno?.NumRicevute ?? 0,
                Descrizione = rimborso.DatiDaSerializzare.AltriCostiTreno?.Descrizione ?? DatiCalcolo.AltriCostiTreno.Descrizione, //prende il default
            };
            DatiCalcolo.AltriCostiVitto = new CalcoloRimborsoAltriCostiVM
            {
                Costo       = rimborso.DatiDaSerializzare.AltriCostiVitto?.Costo ?? 0,
                NumRicevute = rimborso.DatiDaSerializzare.AltriCostiVitto?.NumRicevute ?? 0,
                Descrizione = rimborso.DatiDaSerializzare.AltriCostiVitto?.Descrizione ?? DatiCalcolo.AltriCostiTreno.Descrizione, //prende il default
            };
            DatiCalcolo.AltriCostiMezziPubblici = new CalcoloRimborsoAltriCostiVM
            {
                Costo       = rimborso.DatiDaSerializzare.AltriCostiMezziPubblici?.Costo ?? 0,
                NumRicevute = rimborso.DatiDaSerializzare.AltriCostiMezziPubblici?.NumRicevute ?? 0,
                Descrizione = rimborso.DatiDaSerializzare.AltriCostiMezziPubblici?.Descrizione ?? DatiCalcolo.AltriCostiTreno.Descrizione, //prende il default
            };
            DatiCalcolo.AltriCostiParcheggi = new CalcoloRimborsoAltriCostiVM
            {
                Costo       = rimborso.DatiDaSerializzare.AltriCostiParcheggi?.Costo ?? 0,
                NumRicevute = rimborso.DatiDaSerializzare.AltriCostiParcheggi?.NumRicevute ?? 0,
                Descrizione = rimborso.DatiDaSerializzare.AltriCostiParcheggi?.Descrizione ?? DatiCalcolo.AltriCostiTreno.Descrizione, //prende il default
            };
            DatiCalcolo.AltriCostiHotel = new CalcoloRimborsoAltriCostiVM
            {
                Costo       = rimborso.DatiDaSerializzare.AltriCostiHotel?.Costo ?? 0,
                NumRicevute = rimborso.DatiDaSerializzare.AltriCostiHotel?.NumRicevute ?? 0,
                Descrizione = rimborso.DatiDaSerializzare.AltriCostiHotel?.Descrizione ?? DatiCalcolo.AltriCostiTreno.Descrizione, //prende il default
            };
        }