示例#1
0
 public void Initialize()
 {
     i = new Istruttore("Fra", "Mazzu", "fra.maz.1", new DateTime(1996, 4, 1), "*****@*****.**", "3334445556", "fakeIban", "barcaVela", "pomeriggio");
     //c.Aggiungi(new DateTime(2018, 06, 15, 9, 0, 0), new DateTime(2018, 06, 15, 11, 0, 0));  // 15/06 9-11
     //c.Aggiungi(new DateTime(2018, 06, 15, 12, 0, 0), new DateTime(2018, 06, 15, 13, 0, 0)); // 15/06 12-13
     //c.Aggiungi(new DateTime(2018, 06, 16, 9, 0, 0), new DateTime(2018, 06, 16, 11, 0, 0));  // 16/06 9-11
 }
示例#2
0
        public static List <Istruttore> GetListaIstruttori()
        {
            List <Istruttore>  res        = new List <Istruttore>();
            Istruttore         Istruttore = null;
            List <Credenziali> temp       = null;
            ISession           sess       = OpenConnection();

            using (sess.BeginTransaction())
            {
                ICriteria criteriaClienti     = sess.CreateCriteria <Istruttore>();
                ICriteria criteriaCredenziali = sess.CreateCriteria <Credenziali>();


                try
                {
                    //leggo dal database tutti gli username dei clienti
                    temp = (List <Credenziali>)criteriaCredenziali.Add(Expression.Like("Ruolo", "istruttore")).List <Credenziali>();

                    foreach (Credenziali cred in temp)
                    {
                        //per ogni username cerco il Istruttore corrispondente nella tabella utenti
                        Istruttore = criteriaClienti.Add(Expression.Like("Username", cred.Username)).List <Istruttore>()[0];
                        //aggiungo il Istruttore alla lista clienti
                        res.Add(Istruttore);
                    }
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.Message);
                }
            }
            return(res);
        }
示例#3
0
        public bool removeIstruttore(Istruttore i)
        {
            // elimina i collegamenti coi corsi che tiene
            Corso[] corsi_che_tiene = i.Corsi.ToArray();
            foreach (Corso c in corsi_che_tiene)
            {
                c.Istruttori.Remove(i);
                i.Corsi.Remove(c);
            }

            istruttori.Remove(i);

            using (NHibernate.ISession session = HibernateHelper.Open())
                using (NHibernate.ITransaction transaction = session.BeginTransaction())
                    try
                    {
                        foreach (Corso c in corsi_che_tiene)
                        {
                            session.SaveOrUpdate(c);
                        }
                        session.SaveOrUpdate(i);
                        session.Delete(i);

                        transaction.Commit();
                        return(true);
                    }
                    catch (Exception exc)
                    {
                        Log.Instance.WriteLine(Log.LogLevel.Error, "instance::removeIstruttore(" + (i != null ? i.ID.ToString() : "null") + "):" + exc.Message);
                        return(false);
                    }
        }
示例#4
0
 public EntryIstruttore(Istruttore i)
 {
     ID              = i.ID;
     Nome            = i.Nome;
     Cognome         = i.Cognome;
     NumeroCellulare = i.NumeroCellulare;
     NumeroTelefono  = i.NumeroTelefono;
 }
示例#5
0
        private void fetchIstruttore(Istruttore p)
        {
            List <Corso> corsi = p.Corsi.ToList();

            foreach (Corso c in corsi)
            {
                object cid = c.ID;
                //String name = c.Descrizione;
            }
        }
示例#6
0
        public bool save(Istruttore istruttore)
        {
            int idx = istruttori.FindIndex(x => x.ID == istruttore.ID);

            if (idx >= 0)
            {
                istruttori[idx] = istruttore;
            }
            else
            {
                istruttori.Add(istruttore);
            }

            return(DB.saveIstruttore(istruttore));
        }
        public Lezione creaLezione(DateTime inizio, DateTime fine, Cliente c, Istruttore i, int partecipanti, int id)
        {
            Lezione lezione = null;

            try
            {
                lezione = new Lezione(101, i, inizio, fine, partecipanti, c);
                /*operazione di retrieve del costo della lezione*/ double costo = 30;
                lezione.Costo = costo;
                ctrl.ElencoLezioni.Add(lezione); //qui o in GestionePrenotazioniController?
            } catch (Exception e)
            {
                Console.WriteLine(e.StackTrace);
            }
            return(lezione);
        }
示例#8
0
 public static bool deleteIstruttore(Istruttore p)
 {
     using (NHibernate.ISession session = HibernateHelper.Open())
         using (NHibernate.ITransaction transaction = session.BeginTransaction())
             try
             {
                 session.Delete(p);
                 transaction.Commit();
                 return(true);
             }
             catch (Exception exc)
             {
                 Log.Instance.WriteLine(Log.LogLevel.Error, "deleteIstruttore(" + (p != null ? p.ID.ToString() : "null") + "):" + exc.Message);
                 return(false);
             }
 }
示例#9
0
 public static void InsertIstruttore(Istruttore i)
 {
     try
     {
         ISession sess = OpenConnection();
         using (sess.BeginTransaction())
         {
             //Istruttore i = new Istruttore("Francesco", "Mazzucchelli", "francesco.mazzu.1", new DateTime(1996, 5, 4), "*****@*****.**", "3344456789", "QWERT45", "vela", "pomeriggio");
             sess.Persist(i);
             sess.Transaction.Commit();
         }
     }
     catch (Exception e)
     {
         Console.WriteLine(e.Message);
     }
 }
示例#10
0
        // remove istruttore
        private void button19_Click(object sender, EventArgs e)
        {
            int        selected_row = gridIstruttori.SelectedRows[0].Index;
            Istruttore i            = DB.instance.getIstruttore((Guid)gridIstruttori.Rows[selected_row].Cells[0].Value);

            if (i.Corsi.Count > 0)
            {
                MessageBox.Show("Impossibile rimuovere: l'istruttore ha dei corsi associati", "Errore", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            DialogResult dialogResult = MessageBox.Show("Sei sicuro di voler eliminare l'istruttore " + i.Nome + " " + i.Cognome + "?", "Sei sicuro?", MessageBoxButtons.YesNo);

            if (dialogResult == DialogResult.Yes)
            {
                DB.instance.removeIstruttore(i);
                RefreshIstruttori();
            }
        }
示例#11
0
        public static Istruttore GetIstruttoreById(String username)
        {
            Istruttore res  = null;
            ISession   sess = OpenConnection();

            using (sess.BeginTransaction())
            {
                ICriteria criteria = sess.CreateCriteria <Istruttore>();
                criteria.Add(Expression.Like("Username", username));
                try
                {
                    res = criteria.List <Istruttore>()[0];
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.Message);
                }
            }
            return(res);
        }
示例#12
0
        private void buttonDelIstruttore_Click(object sender, EventArgs e)
        {
            object id = null;

            try { id = dataGridViewIstruttori.Rows[dataGridViewIstruttori.SelectedCells[0].RowIndex].Cells[0].Value; }
            catch { }

            if (id == null)
            {
                return;
            }

            Istruttore istr = DB.instance.getIstruttore((Guid)id);

            istr.Corsi.Remove(corso);
            corso.Istruttori.Remove(istr);

            DB.instance.save(corso);
            DB.instance.save(istr);

            RefreshIstruttori();
        }
示例#13
0
        // GET: PrenotazioneLezione
        //public ActionResult Index()
        //{
        //    return View();
        //}


        public string CreaLezione(string username, DateTime inizio, DateTime fine, string istr, int persone, string attivita)
        {
            string  result  = "";
            Lezione lezione = null;

            try
            {
                Istruttore istruttore = null;
                Cliente    c          = null;
                foreach (Istruttore i2 in gpc.ElencoIstruttori)
                {
                    if (i2.Nome == istr &&
                        i2.IsLibero(inizio, fine) &&
                        i2.Attivita == attivita)
                    {
                        istruttore = i2; break;
                    }
                }
                foreach (Cliente c2 in gpc.ElencoClienti)
                {
                    if (c2.Username == username)
                    {
                        c = c2; break;
                    }
                }
                lezione = new Lezione(gpc.NewId(), istruttore, inizio, fine, persone, c);
                /*operazione di retrieve del costo della lezione*/ double costo = 30;
                lezione.Costo = 100;
                gpc.ElencoLezioni.Add(lezione); //MOCK (no DB)
                result = "La tua prenotazione è stata completata!";
            } catch (Exception e)
            {
                Console.WriteLine(e);
                result = "Si è verificato un errore, la tua prenotazione non è andata a buon fine.\n" +
                         "Controlla di non aver richiesto un istruttore non disponibile.";
            }
            return(result);
        }
示例#14
0
        public void setNewIstruttore(object selectedIstruttore)
        {
            if (corso == null)
            {
                return;
            }

            Istruttore istr = DB.instance.getIstruttore((Guid)selectedIstruttore);

            if (!istr.Corsi.Contains(corso))
            {
                istr.Corsi.Add(corso);
            }

            if (!corso.Istruttori.Contains(istr))
            {
                corso.Istruttori.Add(istr);
            }

            DB.instance.save(corso);
            DB.instance.save(istr);

            RefreshIstruttori();
        }
示例#15
0
 public void Initialize()
 {
     cli  = new Cliente("Mich", "Camp", "mic.cam.7", new DateTime(1996, 8, 8), "*****@*****.**", "3334567778");
     istr = new Istruttore("Fra", "Mazzu", "fra.maz.1", new DateTime(1996, 4, 1), "*****@*****.**", "3334445556", "fakeIban", "barcaVela", "mattina");
 }
示例#16
0
 public void OpenIstruttore(Istruttore i)
 {
     ViewIstruttore.Show(this, i);
 }