/// <summary> /// Constructeur qui prend une VOPersonne en paramètre /// </summary> /// <param name="personne">VOPersonne</param> public PersonneViewModel(VOPersonne personne) { this.Nom = personne.Nom; this.Affecte = personne.Affecte; }
/// <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; } } } } }