Exemple #1
0
        public static SchedeViewModel GetViewModel(int id, GymDataContest context)
        {
            List <SchedeEsercizi> schede = context.SchedeEsercizi.Where(x => x.IdScheda == id).ToList();
            //genero gli esercizi
            SchedeViewModel viewModel = new SchedeViewModel();

            //viewModel.Id = id;
            viewModel.IdScheda          = id;
            viewModel.NomeScheda        = context.Schede.Where(s => s.Id == id).FirstOrDefault()?.Nome;
            viewModel.DescrizioneScheda = context.Schede.Where(s => s.Id == id).FirstOrDefault()?.DescrizioneScheda;
            List <EsercizioViewModel> esercizi = new List <EsercizioViewModel>();

            foreach (var scheda in schede)
            {
                var esercizio = context.Esercizi.Where(x => x.ID == scheda.IdEsercizio).FirstOrDefault();
                if (esercizio != null)
                {
                    esercizi.Add(new EsercizioViewModel()
                    {
                        ID              = esercizio.ID,
                        Descrizione     = esercizio.Descrizione,
                        IsRiscaldamento = esercizio.IsRiscaldamento,
                        NomeEsercizio   = esercizio.NomeEsercizio,
                        Ripetizioni     = scheda.Ripetizioni
                    });
                }
            }
            viewModel.Esercizi = esercizi;
            return(viewModel);
        }
Exemple #2
0
 public async static void DeleteSchedaAsync(Schede scheda, GymDataContest context)
 {
     context.SchedeEsercizi.RemoveRange(context.SchedeEsercizi.Where(x => x.IdScheda == scheda.Id).ToList());
     context.SchedePersonali.RemoveRange(context.SchedePersonali.Where(x => x.SchedaId == scheda.Id).ToList());
     context.Remove(scheda);
     await context.SaveChangesAsync();
 }
        public static HomeViewModel GetViewModel(GymDataContest context)
        {
            var model               = new HomeViewModel();
            var scadenze            = context.SchedePersonali.Where(s => s.DataFine < DateTime.Now.AddDays(7) && s.DataFine >= DateTime.Now).ToList();
            var abbonamentiScadenza = context.Abbonamenti.Where(a => a.FineAbbonamento < DateTime.Now.AddDays(7) && a.FineAbbonamento >= DateTime.Now).ToList();

            model.ListaScadenze            = SchedePersonaliViewModel.ToViewModel(scadenze, context);
            model.ListaAbbonamentiScadenze = AbbonamentiViewModel.IndexViewModel.ToViewModel(abbonamentiScadenza, context);
            model.ListaUtenti = context.Utenti.OrderByDescending(x => x.Id).Take(10).ToList();

            model.Scadenze = scadenze.Count();
            model.Esercizi = context.Esercizi.Count();
            model.Utenti   = context.Utenti.Count();
            model.Schede   = context.Schede.Count();

            model.Abbonamenti = context.Abbonamenti.Where(a => a.IsActive).Count();
            for (int i = 1; i <= 12; i++)
            {
                model.UtentiChart.Add(context.Utenti.Where(x => x.DataInserimento.Month == i).Count());
                var abbonamenti = context.Abbonamenti.Where(x => x.InizioAbbonamento.Month == i && x.IsActive == true).ToList();
                int nuovi       = 0;
                int rinnovati   = 0;
                int persi       = 0;
                foreach (var abb in abbonamenti)
                {
                    var isRinnovo = context.Abbonamenti.Where(x => x.UtenteId == abb.UtenteId).ToList().Count;
                    if (isRinnovo > 1)
                    {
                        rinnovati++;
                    }
                    else
                    {
                        nuovi++;
                    }
                }

                var abbonamentiPersi = context.Abbonamenti.Where(x => x.FineAbbonamento.Month == i && x.IsActive && x.FineAbbonamento.Month < DateTime.Now.Month).ToList();
                foreach (var abb in abbonamentiPersi)
                {
                    var isperso = context.Abbonamenti.Where(x => x.UtenteId == abb.UtenteId && x.InizioAbbonamento > abb.FineAbbonamento).ToList().Count;
                    if (!(isperso > 0))
                    {
                        persi++;
                    }
                }

                model.AbbonamentiChart.Nuovi.Add(nuovi);
                model.AbbonamentiChart.Rinnovati.Add(rinnovati);
                model.AbbonamentiChart.Persi.Add(persi);
            }



            return(model);
        }
Exemple #4
0
        private void createDb()
        {
            DbContextOptionsBuilder <GymDataContest> options = new DbContextOptionsBuilder <GymDataContest>();

            options = options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection"));
            using (var context = new GymDataContest(options.Options))
            {
                context.Database.EnsureCreated();
                //context.Database.Migrate();
            }
        }
            public static IndexViewModel ToViewModel(Abbonamenti abbonamento, GymDataContest context)
            {
                var            utente = context.Utenti.Where(x => x.Id == abbonamento.UtenteId).FirstOrDefault();
                IndexViewModel model  = new IndexViewModel
                {
                    Id          = abbonamento.Id,
                    Abbonamenti = context.TipiAbbonamenti.Where(x => x.Id == abbonamento.TipoAbbonamentoId).FirstOrDefault().Descrizione,
                    Utente      = utente.Nome + " " + utente.Cognome,
                    Rinnovo     = abbonamento.IsRinnovo,
                    DataInizio  = abbonamento.InizioAbbonamento,
                    DataFine    = abbonamento.FineAbbonamento,
                    Attivo      = abbonamento.IsActive
                };

                return(model);
            }
Exemple #6
0
        internal static List <IndexViewModel> GetIndexViewModel(GymDataContest context)
        {
            var model = new List <IndexViewModel>();

            foreach (var schedaprs in context.SchedePersonali.ToList())
            {
                var temp = new IndexViewModel();
                temp.Id = schedaprs.Id;
                var utente = context.Utenti.Find(schedaprs.UtenteId);
                var scheda = context.Schede.Find(schedaprs.SchedaId).Nome;
                temp.Utente     = string.Format("{0} {1}", utente.Nome, utente.Cognome);
                temp.Scheda     = scheda;
                temp.IsActive   = schedaprs.IsAttiva;
                temp.DataInizio = schedaprs.DataInizio;
                temp.DataFine   = schedaprs.DataFine;
                model.Add(temp);
            }
            return(model);
        }
Exemple #7
0
        public async void Update(GymDataContest context)
        {
            var scheda = await context.SchedePersonali.FindAsync(Id);

            scheda.DataFine   = DataFine;
            scheda.DataInizio = DataInizio;
            scheda.IsAttiva   = IsActive;
            if (IsActive)
            {
                var schedaPers = context.SchedePersonali.Where(x => x.IsAttiva == true && x.UtenteId == scheda.UtenteId && scheda.SchedaId == x.SchedaId).FirstOrDefault();
                if (schedaPers != null)
                {
                    schedaPers.IsAttiva = false;
                    context.Update(schedaPers);
                    context.SaveChanges();
                }
            }
            context.Update(scheda);
            await context.SaveChangesAsync();
        }
Exemple #8
0
        public static int CreationSchedeViewModel(int id, GymDataContest context)
        {
            Schede scheda   = context.Schede.Where(x => x.Id == id).FirstOrDefault();
            var    schedaEs = context.SchedeEsercizi.Where(x => x.IdScheda == scheda.Id);

            if (schedaEs.Count() > 0)
            {
                context.SchedeEsercizi.RemoveRange(schedaEs);
            }
            SchedeEsercizi newScheda = new SchedeEsercizi()
            {
                IdEsercizio = 0,
                IdScheda    = scheda.Id
            };

            context.SchedeEsercizi.Add(newScheda);
            context.SaveChanges();
            var result = context.SchedeEsercizi.ToList().Last().Id;

            return(result);
        }
Exemple #9
0
        public async static Task <IndexViewModel> GetIndexViewModel(int id, GymDataContest context)
        {
            var model           = new IndexViewModel();
            var schedePersonali = await context.SchedePersonali.FindAsync(id);

            model.Id         = id;
            model.DataFine   = schedePersonali.DataFine;
            model.DataInizio = schedePersonali.DataInizio;
            var utente = context.Utenti.Find(schedePersonali.UtenteId);

            model.Utente = string.Format("{0} {1}", utente.Nome, utente.Cognome);
            var scheda = context.Schede.Find(schedePersonali.SchedaId).Nome;

            model.Scheda   = scheda;
            model.IsActive = schedePersonali.IsAttiva;
            //model.Utenti = context.Utenti.ToList();
            //model.Schede = context.Schede.ToList();
            model.DataInizio = schedePersonali.DataInizio;
            model.DataFine   = schedePersonali.DataFine;
            return(model);
        }
Exemple #10
0
        public SchedePersonali toModel(GymDataContest context)
        {
            var result = new SchedePersonali();

            result.Id         = 0;
            result.SchedaId   = SchedaId;
            result.UtenteId   = UtenteId;
            result.IsAttiva   = Isactive;
            result.DataInizio = DataInizio;
            result.DataFine   = DataFine;
            if (Isactive)
            {
                var schedaPers = context.SchedePersonali.Where(x => x.IsAttiva == true && x.UtenteId == UtenteId && SchedaId == x.SchedaId).FirstOrDefault();
                if (schedaPers != null)
                {
                    schedaPers.IsAttiva = false;
                    context.Update(schedaPers);
                    context.SaveChanges();
                }
            }
            return(result);
        }
Exemple #11
0
        public static void UpdateModel(SchedeViewModel schedeEsercizi, GymDataContest context)
        {
            int schedaId = schedeEsercizi.IdScheda;

            context.SchedeEsercizi.RemoveRange(context.SchedeEsercizi.Where(x => x.IdScheda == schedaId).ToList());
            foreach (var esercizio in schedeEsercizi.Esercizi)
            {
                if (esercizio.ID != 0)
                {
                    context.Add(new SchedeEsercizi()
                    {
                        IdEsercizio = esercizio.ID,
                        IdScheda    = schedaId,
                        Ripetizioni = esercizio.Ripetizioni
                    });
                }
            }
            var scheda = context.Schede.Find(schedaId);

            scheda.DescrizioneScheda = schedeEsercizi.DescrizioneScheda;
            scheda.Nome = schedeEsercizi.NomeScheda;
            context.Update(scheda);
            context.SaveChanges();
        }
            public static List <IndexViewModel> ToViewModel(List <Abbonamenti> abbonamenti, GymDataContest context)
            {
                List <IndexViewModel> model = new List <IndexViewModel>();

                foreach (var abbonamento in abbonamenti)
                {
                    model.Add(ToViewModel(abbonamento, context));
                }
                return(model);
            }
Exemple #13
0
 public HomeController(GymDataContest context, ILogger <HomeController> logger)
 {
     _context = context;
     _logger  = logger;
 }
 public EserciziController(GymDataContest context)
 {
     _context = context;
 }
Exemple #15
0
 public SchedePersonaliController(GymDataContest context)
 {
     _context = context;
 }
 public AbbonamentiController(GymDataContest context)
 {
     _context = context;
 }
Exemple #17
0
 public UtentiController(GymDataContest context)
 {
     _context = context;
 }
Exemple #18
0
 public AccountController(GymDataContest gymDataContest, UserManager <IdentityUser> userManager, SignInManager <IdentityUser> signInManager)
 {
     this.gymDataContest = gymDataContest;
     this.userManager    = userManager;
     this.signInManager  = signInManager;
 }
Exemple #19
0
        public static List <IndexViewModel> ToViewModel(List <SchedePersonali> schede, GymDataContest context)
        {
            var schedeViewModel = new List <IndexViewModel>();

            foreach (var scheda in schede)
            {
                schedeViewModel.Add(new IndexViewModel
                {
                    Id         = scheda.Id,
                    Scheda     = context.Schede.Where(x => x.Id == scheda.SchedaId).FirstOrDefault().Nome,
                    Utente     = context.Utenti.Where(x => x.Id == scheda.UtenteId).FirstOrDefault().Nome,
                    DataInizio = scheda.DataInizio,
                    DataFine   = scheda.DataFine
                });
            }
            return(schedeViewModel);
        }