/// <summary> /// Fonction pour ajouter les priorités /// </summary> /// <param name="constructeurDefault">bool pour savoir le construteur utiliser</param> /// <param name="tache">VOTache</param> public void AjouterPriorite(bool constructeurDefault, VOTache tache) { for (int i = 1; i <= 5; i++) { PrioriteViewModel priorite = new PrioriteViewModel(); priorite.Texte = i.ToString(); switch (i) { case 1: priorite.Couleur = Brushes.Green; break; case 2: priorite.Couleur = Brushes.Blue; break; case 3: priorite.Couleur = Brushes.Yellow; break; case 4: priorite.Couleur = Brushes.Orange; break; case 5: priorite.Couleur = Brushes.Red; break; } listePriorite.Add(priorite); if (constructeurDefault == true) { if (tache.PrioriteDeLaTache == priorite.Texte) { this.prioriteSelect = priorite; } } } }
/// <summary> /// Méthode permettant d'ajouter une tache /// </summary> /// <param name="nouvelleToDoList">Projet auquel on ajoute une tâche</param> /// <param name="nouvelleTache">tâche à ajouter</param> public void AjouterTache(VOProjet nouvelleToDoList, VOTache nouvelleTache) { // nouvelleToDoList.ListeDesTaches.Add(nouvelleTache); }
/// <summary> /// Constructeur qui prend une VOTache en paramètre /// </summary> /// <param name="tache">VOTache</param> public TacheViewModel(VOTache tache) { this.prioriteSelect = new PrioriteViewModel(); this.Titre = tache.Titre; this.Identifiant = tache.Identifiant; this.DateLimite = tache.DateLimite; this.Estimation = tache.Estimation; this.PersonneProjet = new ObservableCollection<PersonneViewModel>(); this.ListeCategoriesTache = tache.ListeCategoriesTache; this.CategoriesProjet = new ObservableCollection<CategorieViewModel>(); this.ListePersonnesXml = new ObservableCollection<string>(); this.listePriorite = new ObservableCollection<PrioriteViewModel>(); this.Constructeur = true; this.AjouterPriorite(this.Constructeur, tache); }
/// <summary> /// fonction qui permet d'enregistrer les tâches /// </summary> /// <param name="taches">Liste des taches du projet ouvert</param> private void EnregistrerTache(ObservableCollection<VOTache> taches) { taches.Clear(); // On affecte à chaque tache du projetCourant les taches du ViewModel foreach (var tache in listeTachesViewModel) { VOTache tacheVO = new VOTache(); tacheVO.Identifiant = tache.Identifiant; tacheVO.PrioriteDeLaTache = tache.PrioriteSelect.Texte; tacheVO.Titre = tache.Titre; tacheVO.ListeCategoriesTache = tache.ListeCategoriesTache; taches.Add(tacheVO); } Menu.ProjetOuvert.Personnes.Clear(); foreach (var personne in Menu.Personnes) { if (personne.Nom != null) { VOPersonne personneVO = new VOPersonne(); personneVO.Nom = personne.Nom; Menu.ProjetOuvert.Personnes.Add(personneVO); } } Menu.ProjetOuvert.Categories.Clear(); foreach (var categorie in Menu.ListeCategoriesMenuVM) { VOCategorie cat = new VOCategorie() { Nom = categorie.NomCategorie }; Menu.ProjetOuvert.Categories.Add(cat); } // Nettoyage de la liste des VOCategories pour chaque taches foreach (var tacheVO in Menu.ProjetOuvert.ListeDesTaches) { tacheVO.ListeCategoriesTache.Clear(); } // Reconstruction des categories validées par taches foreach (var tache in this.listeTachesViewModel) { foreach (var categorie in tache.CategoriesProjet) { if (categorie.Check) { foreach (var tacheVO in Menu.ProjetOuvert.ListeDesTaches) { if (tacheVO.Titre==tache.Titre) { tacheVO.ListeCategoriesTache.Add(categorie.Nom); } } } } } foreach (var personnes in taches) { personnes.ListePersonnesXml = new ObservableCollection<string>(); foreach (var personneTache in listeTachesViewModel) { if (personnes.Titre == personneTache.Titre) { if (personneTache.ListePersonnesXml == null || personneTache.ListePersonnesXml.Count == 0) { personneTache.ListePersonnesXml = new ObservableCollection<string>(); } else { personnes.ListePersonnesXml = personneTache.ListePersonnesXml; } } } } }