//constructeur par défault public ActionViewModel(Models.Action action) { _action = action; _action.statut = false; _context = new Models.pyrenactionEntities(); loadFields(); }
public Questionnaire(int idAction) { InitializeComponent(); actAssoc = idAction; using (Models.pyrenactionEntities context = new Models.pyrenactionEntities()) { //On récupère le questionnaire associé à l'action Models.Action action = (from A in context.Actions where A.id == idAction select A).FirstOrDefault(); if (action != null) { _questionnaireController = new QuestionnaireViewModel(action.Questionnaire); this.DataContext = _questionnaireController; var query = from Q in context.Questions where Q.id_Questionnaire == action.Questionnaire.id select Q; List <Models.Question> listeQuestions = query.ToList(); //Questions textBlock1.Text = listeQuestions[0].intitule; textBlock2.Text = listeQuestions[1].intitule; textBlock3.Text = listeQuestions[2].intitule; textBlock4.Text = listeQuestions[3].intitule; textBlock5.Text = listeQuestions[4].intitule; //Réponses inputQ1.IsChecked = listeQuestions[0].reponse; inputQ2.IsChecked = listeQuestions[1].reponse; inputQ3.IsChecked = listeQuestions[2].reponse; inputQ4.IsChecked = listeQuestions[3].reponse; inputQ5.IsChecked = listeQuestions[4].reponse; } } }
public QuestionnaireViewModel(Models.Questionnaire questionnaire) { _questionnaire = questionnaire; _context = new Models.pyrenactionEntities(); checkedFalse = false; }
public ListeQuestionnaireViewModel() { _context = new Models.pyrenactionEntities(); _listeActions = new List <Models.Action>(); var query = from U in _context.Actions select U; _listeActions = query.ToList(); }
//constructeur pour pour modifier une action existante. id récupéré depuis le tableaude bord. public ActionViewModel(int id) { _context = new Models.pyrenactionEntities(); var query = from U in _context.Actions select U; List <Models.Action> listeActions = query.ToList(); bool find = false; foreach (Models.Action act in listeActions) { if (act.id == id) { _action = act; find = true; } } if (find == false) { _action = new Models.Action(); } loadFields(); }
public ucTabBord() { InitializeComponent(); using (Models.pyrenactionEntities context = new Models.pyrenactionEntities()) { var query = from U in context.Actions select U; List <Models.Action> listeActions = query.ToList(); List <ligneTab> listeLigne = new List <ligneTab>(); foreach (Models.Action lAction in listeActions) { // Nom du site var site = context.Sites.Find(lAction.id_Site); String nom_Site = site.nom; // Niveau d'importance var importance = context.Importances.Find(lAction.id_Importance); String type_Importance = importance.nom; // Famille var famille = context.Familles.Find(lAction.id_Famille); String type_Famille = famille.nom; // Questionnaire var questionnaire = context.Questionnaires.Find(lAction.id_Questionnaire); String _questionnaire = ""; try { _questionnaire = questionnaire.nom; } catch (System.NullReferenceException) { _questionnaire = "N/A"; }; // Présence d'une tache rattachée var id1 = context.Actions.Find(lAction.id_1); String presence_id1 = ""; try { presence_id1 = id1.description; } catch (System.NullReferenceException) { presence_id1 = "N/A"; }; // Utilisateur 1 : Responsable var utilisateur1 = context.Utilisateurs.Find(lAction.id_Utilisateur); String responsable = utilisateur1.nom; // Utilisateur 2 : Exécutant var utilisateur2 = context.Utilisateurs.Find(lAction.id_Utilisateur_2); String executant = ""; try // Si présence d'un Utilisateur 2, on recherche son nom { executant = utilisateur2.nom; } catch (System.NullReferenceException) //Sinon on le met en "N/A" { executant = "N/A"; }; // Date de création de la tache var date_Action = lAction.date_a; // Date de deadline var delais = lAction.delais; // Description de la tâche String description = lAction.description; // Source de la création de la tâche String source = lAction.source; // Analyse de la tache String analyse = lAction.analyse; // Statut de la tâche (vrai/faux -> terminée/en cours) var statut = lAction.statut; // ID de l'action int id_Action = lAction.id; // Création de la ligne du tableau (visuellement parlant) ligneTab maLigne = new ligneTab(); maLigne.id = id_Action; // Affichage de la date de création au format français "jj/mm/aaaa" ou "N/A" si pas de date if (date_Action != null) { maLigne.date1 = ((DateTime)date_Action).ToShortDateString().ToString(System.Globalization.CultureInfo.CreateSpecificCulture("fr-FR")); } else { maLigne.date1 = "N/A"; } // Affichage de la date dead-line au format français "jj/mm/aaaa" ou "N/A" si pas de date if (delais != null) { maLigne.date2 = ((DateTime)delais).ToShortDateString().ToString(System.Globalization.CultureInfo.CreateSpecificCulture("fr-FR")); } else { maLigne.date2 = "N/A"; } maLigne.source = source; maLigne.analyse = analyse; maLigne.description = description; // Formatage du statut : true/false -> terminée/en cours if (statut != null) { maLigne.statut = ((Boolean)statut ? "Terminée" : "En cours"); } else { maLigne.statut = ""; } maLigne.importance = type_Importance; maLigne.famille = type_Famille; maLigne.site = nom_Site; maLigne.questionnaire = _questionnaire; maLigne.parente = presence_id1; maLigne.utilisateur1 = responsable; maLigne.utilisateur2 = executant; maLigne.pourcentage = 0; // Liste de tâches rattachées ObservableCollection <Models.Tache> theListe = new ObservableCollection <Models.Tache>(); int nbTaches = lAction.Taches.Count; int nbTachesFinies = 0; foreach (Models.Tache _tch in lAction.Taches) { if (_tch.statut == true) // Incrément du nb de taches soldées { nbTachesFinies++; } } // Calcul du pourcentage d'avancement de la tache if (nbTachesFinies > 0 && nbTaches > 0) { maLigne.pourcentage = (nbTachesFinies * 100) / nbTaches; } else { maLigne.pourcentage = 0; } foreach (Models.Tache _tch in lAction.Taches) // Ajout des tâches dans la liste destinée à remplir le tableau { theListe.Add(_tch); } maLigne.taches = theListe; ObservableCollection <Models.Lien> theListeLien = new ObservableCollection <Models.Lien>(); // Liste des liens rattachés à l'action foreach (Models.Lien _tch in lAction.Liens) { theListeLien.Add(_tch); } maLigne.liens = theListeLien; listeLigne.Add(maLigne); } myDashboard.ItemsSource = listeLigne; // Remplissage du tableau via binding de listeLigne } }