示例#1
0
 private async Task <List <Corso> > GetModuliOrganizzatore(PersonaFitstic p)
 {
     return(await(from persona in _db.PersonaleFitstic
                  join corso in _db.Corsi on persona.Id equals corso.IdOrganizzatore
                  where persona.Id == p.Id
                  select corso).ToListAsync());
 }
示例#2
0
 private async Task <List <Modulo> > GetModuliTutor(PersonaFitstic p)
 {
     return(await(from persona in _db.PersonaleFitstic
                  join modulo in _db.Moduli on persona.Id equals modulo.IdTutor
                  where persona.Id == p.Id
                  select modulo).ToListAsync());
 }
示例#3
0
        public async Task <bool> ControllaRuoli(PersonaFitstic p)
        {
            List <Modulo> moduliDocente = await GetModuliDocente(p);

            List <Modulo> moduliTutor = await GetModuliTutor(p);

            List <Corso> corsiOrganizzatore = await GetModuliOrganizzatore(p);

            return(!((moduliDocente.Count > 0 && p.Docente == false) || (moduliTutor.Count > 0 && p.Tutor == false) || (corsiOrganizzatore.Count > 0 && p.Organizzatore == false)));
        }
示例#4
0
        public async Task ReimpostaRuoli(PersonaFitstic p)
        {
            List <Modulo> moduliDocente = await GetModuliDocente(p);

            List <Modulo> moduliTutor = await GetModuliTutor(p);

            List <Corso> corsiOrganizzatore = await GetModuliOrganizzatore(p);

            p.Docente       = moduliDocente.Count > 0;
            p.Tutor         = moduliTutor.Count > 0;
            p.Organizzatore = corsiOrganizzatore.Count > 0;
            await _db.SaveChangesAsync();
        }
示例#5
0
        public async Task <bool> SalvaPersona(PersonaFitstic p)
        {
            bool           result = false;
            Amministratore admin  = await _db.Amministratori.FindAsync(p.IdAmministratore);

            if (admin != null)
            {
                p.Password = p.Password.Sha256();
                _db.PersonaleFitstic.Add(p);
                await _db.SaveChangesAsync();

                result = true;
            }
            return(result);
        }
示例#6
0
        public async Task <bool> SalvaCorso(Corso c)
        {
            bool  result = false;
            Citta citta  = await _db.Citta.FindAsync(c.IdCitta);

            PersonaFitstic p = await _db.PersonaleFitstic.FindAsync(c.IdOrganizzatore);

            if (citta != null && p != null)
            {
                _db.Corsi.Add(c);
                await _db.SaveChangesAsync();

                result = true;
            }
            return(result);
        }
示例#7
0
        public async Task <bool> SalvaModulo(Modulo modulo)
        {
            bool           result = false;
            PersonaFitstic d      = await _db.PersonaleFitstic.FindAsync(modulo.IdDocente);

            PersonaFitstic t = await _db.PersonaleFitstic.FindAsync(modulo.IdTutor);

            Corso c = await _db.Corsi.FindAsync(modulo.IdCorso);

            if (d != null && t != null && c != null)
            {
                _db.Moduli.Add(modulo);
                await _db.SaveChangesAsync();

                result = true;
            }
            return(result);
        }
示例#8
0
        public async Task <bool> EliminaPersona(PersonaFitstic p)
        {
            bool   result = false;
            Modulo m1     = await _db.Moduli.FirstOrDefaultAsync(x => x.IdDocente == p.Id);

            Modulo m2 = await _db.Moduli.FirstOrDefaultAsync(x => x.IdTutor == p.Id);

            Corso c = await _db.Corsi.FirstOrDefaultAsync(x => x.IdOrganizzatore == p.Id);

            if (m1 == null && m2 == null && c == null)
            {
                _db.PersonaleFitstic.Remove(p);
                await _db.SaveChangesAsync();

                result = true;
            }
            return(result);
        }
示例#9
0
        public string Ruoli(PersonaFitstic p)
        {
            List <string> ruoli = new List <string>();

            if (p.Docente)
            {
                ruoli.Add("Docente");
            }
            if (p.Tutor)
            {
                ruoli.Add("Tutor");
            }
            if (p.Organizzatore)
            {
                ruoli.Add("Organizzatore");
            }
            return(ruoli.Count > 0 ? string.Join(", ", ruoli) : "Nessun Ruolo");
        }