Пример #1
0
 public void ApriNuovoSettore(ISettore settore)
 {
     if (SettoriAperti.Contains(settore))
     {
         throw new ArgumentException("Settore gia' aperto");
     }
     SettoriAperti.Add(settore);
 }
Пример #2
0
 public void AddAssegnamentiSettore(ISettore settore, Assegnamenti assegnamento)
 {
     if (settore == null || assegnamento == null || !SettoriAperti.Contains(settore))
     {
         throw new ArgumentException("settore == null || assegnamento == null || Settore passato non aperto");
     }
     else
     {
         DisposizionePersonale[settore] = assegnamento;
     }
 }
Пример #3
0
 // Dato un settore, una persona e una mansione, inserisce l'assegnazione nel settore
 public void AddPersonaleSettore(ISettore settore, IPersonale persona, Mansione mansione)
 {
     if (settore == null || persona == null || mansione == null || !SettoriAperti.Contains(settore))
     {
         throw new ArgumentException("settore == null || persona == null || mansione == null || Settore passato non aperto");
     }
     foreach (Assegnamenti assegnamento in DisposizionePersonale.Values.ToList())
     {
         if (assegnamento.GetAssegnamento(persona) != null)
         {
             throw new ArgumentException("La persona è gia' stata assegnata in un altro settore");
         }
     }
     DisposizionePersonale[settore].AddAssegnamento(persona, mansione);
 }
Пример #4
0
 public override bool Equals(object obj)
 {
     if ((obj == null) || !this.GetType().Equals(obj.GetType()))
     {
         return(false);
     }
     else
     {
         Evento e = (Evento)obj;
         if (Nome != e.Nome || DataInizio != e.DataInizio || DataFine != e.DataFine ||
             GradoRischio != e.GradoRischio || SettoriAperti.Count != e.SettoriAperti.Count)
         {
             return(false);
         }
         foreach (ISettore settore in e.SettoriAperti)
         {
             if (!SettoriAperti.Contains(settore))
             {
                 return(false);
             }
         }
         return(true);
     }
 }
Пример #5
0
 public override int GetHashCode()
 {
     return(Nome.GetHashCode() ^ DataInizio.GetHashCode() ^ DataFine.GetHashCode() ^ GradoRischio.GetHashCode() ^
            Durata.GetHashCode() ^ SettoriAperti.GetHashCode() ^ DisposizionePersonale.GetHashCode());
 }