private void employée_seleted(object sender, SelectionChangedEventArgs e) { if (employée.SelectedIndex != -1) { membre = empliste.ToArray()[employée.SelectedIndex]; membreComp = compliste.ToArray()[employée.SelectedIndex]; count = 0; } }
//============================================= methode de click =======================================================// private void Attestation_travaille(object sender, RoutedEventArgs e) { SaveFileDialog //ouvre une fentre pour que l'utilisateur choisit l'emplacement de l'attestation op = new SaveFileDialog(); Employee membre = empliste.ToArray()[employé.SelectedIndex]; info_comp membreComp = compliste.ToArray()[employé.SelectedIndex]; op.Title = "Selectionner L'emplacement du fichier"; op.Filter = "fichier word (*.docx)|*.docx"; op.FileName = membre.nom + membre.prenom + "_" + Convert.ToString(today.Date.Day + "_" + today.Date.Month + "_" + today.Date.Year) + "attestation de travail"; // la conversion de DateTime en String DateTime datenaiss = Convert.ToDateTime(membre.Date_de_ness); DateNaissance = Convert.ToString(datenaiss.Date.Day + "/" + datenaiss.Date.Month + "/" + datenaiss.Date.Year); DateTime dateemb = Convert.ToDateTime(membreComp.Date_emb); DateEmbauche = Convert.ToString(dateemb.Date.Day + "/" + dateemb.Date.Month + "/" + dateemb.Date.Year); DateTime datedem = Convert.ToDateTime(membreComp.Date_dem); DateDemission = Convert.ToString(datedem.Date.Day + "/" + datedem.Date.Month + "/" + datedem.Date.Year); String chemin1 = Directory.GetCurrentDirectory(); String chemin2 = Convert.ToString(Directory.GetParent(chemin1)); String chemin3 = Convert.ToString(Directory.GetParent(chemin2)); String chemin4 = Convert.ToString(Directory.GetParent(chemin3)); if (membreComp.statut == "Actif") { if (info != null) { op.ShowDialog(); attestation(" " + info.Raison_so, " " + info.Spécialité, @chemin1, membre.wilaya_naiss, Convert.ToString(info.Numéro_RC), info.identifiant_fi, Today, info.Gérant + " ", " " + membre.nom + " " + membre.prenom, " " + DateNaissance, DateEmbauche + " ", membreComp.poste + " ", op.FileName, chemin1); alert_text.Text = "La génération a bien été faite"; alert.IsOpen = true; droper.IsExpanded = false; droper.IsEnabled = false; } else { alert_text.Text = "il manque les informations de l'entreprise"; alert.IsOpen = true; } } else { alert_text.Text = "Vous ne pouvez pas générer une attestation de travail pour un(e) employé(e) désactivé(e) ou retraité(e)"; alert.IsOpen = true; } }
private void notification() { //listes qui contiendront les résultats de la recherche dans la table Employee et info_comp avec des doublons List <Employee> infoA = new List <Employee>(); List <info_comp> infoB = new List <info_comp>(); int i = 0; // le textblock qui contiendra le nom prenom et le poste des personnes à évaluer DateTime today = DateTime.Today; // permet de contenir la date actuelle // permet de récuperer de la table objectif le matricule de toutes les personnes à évaluer IQueryable <objectif> list = from recup in BD.objectif where (recup.eva == 0) && (recup.fin < today) select recup; foreach (var obj in list) { //permet de recuperer de la table Employee l'enregistrement de l'employé ayant un id = matricule IQueryable <Employee> lista = from recupa in BD.Employee where recupa.matricule == obj.matricule select recupa; //permet de recuperer de la table info_comp l'enregistrement de l'employé ayant un id = matricule IQueryable <info_comp> listb = from recupb in BD.info_comp where recupb.matricule == obj.matricule select recupb; infoA.Add(lista.First()); infoB.Add(listb.First()); } // listes qui contients les enregistrements de Employee et info_comp SANS DOUBLONS IEnumerable <Employee> SansDoublonsA = infoA.Distinct(); IEnumerable <info_comp> SansDoublonsB = infoB.Distinct(); info_comp[] L = new info_comp[1000]; int top = 20; L = SansDoublonsB.ToArray(); // convertir SansDoublonsB en tableau if (infoA.Count == 0 && infoB.Count == 0) { TextBlock textBlock = new TextBlock(); textBlock.Height = 200; textBlock.Width = 300; Thickness m = textBlock.Margin; m.Top = 50; m.Left = 20; m.Bottom = 0; m.Right = 0; textBlock.Text = "Aucun entretien d'évaluation à prévoir"; textBlock.Visibility = Visibility.Visible; stackpanel.Children.Add(textBlock); } else { TextBlock textBlock1 = new TextBlock(); textBlock1.Height = 30; textBlock1.Width = 300; //Thickness m = textBlock1.Margin; //m.Top = 20; //m.Left = 20; //m.Bottom = 0; //m.Right = 0; textBlock1.Text = "Il est temps de faire passer un entretien d'évaluation à : "; textBlock1.Visibility = Visibility.Visible; stackpanel.Children.Add(textBlock1); foreach (var info in SansDoublonsA) { TextBlock textBlock2 = new TextBlock(); textBlock1.Height = 30; textBlock1.Width = 400; //Thickness M= textBlock1.Margin; //M.Top = top*(i+1); //M.Left = 20; //M.Bottom = 0; //M.Right = 0; textBlock2.Text = textBlock2.Text + info.nom + " " + info.prenom + " poste : " + L[i].poste; textBlock2.Visibility = Visibility.Visible; stackpanel.Children.Add(textBlock2); i++; } } }
/**==============================Valider : Permet d'ajouter un employé à la base de données===================**/ private void Valider(object sender, RoutedEventArgs e) { info_comp comp = compliste.ToArray()[choixemployée.SelectedIndex]; Employee membre = empliste.ToArray()[choixemployée.SelectedIndex]; DateTime date1 = new DateTime(); if (Date_naissance.SelectedDate != null) { date1 = DateTime.ParseExact(Date_naissance.Text, "d", null); } DateTime date2 = new DateTime(); if (Date_embauche.SelectedDate != null) { date2 = DateTime.ParseExact(Date_embauche.Text, "d", null); } DateTime date3 = new DateTime(); if (Date_demission.SelectedDate != null) { date3 = DateTime.ParseExact(Date_demission.Text, "d", null); } if (Nom.Text != "" && Prenom.Text != "" && Adresse.Text != "" && Telephone.Text != "" && Email.Text != "" && Coordonnes_bancaires.Text != "" && Date_naissance.Text != "" && Poste_occupee.Text != "" && Responsable_hiearchique.Text != "" && Salaire.Text != "" && Projet.Text != "" && Situationfamiliale.Text != "" && Statut.Text != "" && Date_embauche.Text != "" && validerdatenaissance(date1) && validerdateembauche(date2) && validerdatedemission(date3)) { int val1 = Convert.ToInt32(Telephone.Text.Trim()); Decimal val2 = Convert.ToDecimal(Salaire.Text); membre.nom = Nom.Text; membre.prenom = Prenom.Text; membre.Adresse = Adresse.Text; membre.Num_tel = val1; membre.Adr_mail = Email.Text; membre.Cor_bnc = Coordonnes_bancaires.Text; membre.Date_de_ness = date1; comp.poste = Poste_occupee.Text; comp.respo = Responsable_hiearchique.Text; comp.salaire = val2; comp.Date_emb = date2; comp.sex = sex.Text; comp.projet = Projet.Text; comp.NIS = numero_immatriculation_sociale.Text; comp.situ_fam = Situationfamiliale.Text; comp.statut = Statut.Text; if (nbr_conge_restants.Text != "") { int val3 = Convert.ToInt32(nbr_conge_restants.Text.Trim()); comp.Nbj_r_c = val3; } comp.comment = Commentaire.Text; if (Date_demission.Text != "") { comp.Date_dem = date3; } if (Salaire.Text != ancien_salaire && Salaire.Text != "") { Salaire sal = new Salaire(); sal.matricule = membre.matricule; sal.ancien_ = (long)Convert.ToUInt64(ancien_salaire); sal.nouveau = (long)Convert.ToUInt64(Salaire.Text); sal.date_modif = DateTime.Today; db.Salaire.InsertOnSubmit(sal); } db.SubmitChanges(); alert_text.Text = "information bien modifier"; alert.IsOpen = true; } else { if (validerdatenaissance(date1) == false) { alert_text.Text = "Verifiez date de naissance"; } else { alert_text.Text = "fiche incomplète"; } alert.IsOpen = true; } }
private void Titre_congé(object sender, RoutedEventArgs e) { SaveFileDialog //ouvre une fentre pour que l'utilisateur choisit l'emplacement de l'attestation op = new SaveFileDialog(); Employee membre = empliste.ToArray()[employé.SelectedIndex]; info_comp membreComp = compliste.ToArray()[employé.SelectedIndex]; op.Title = "Selectionner L'emplacement du fichier"; op.Filter = "fichier word (*.docx)|*.docx"; op.FileName = membre.nom + membre.prenom + "_" + Convert.ToString(today.Date.Day + "_" + today.Date.Month + "_" + today.Date.Year) + "Titre de congé"; // la conversion de DateTime en String DateTime datenaiss = Convert.ToDateTime(membre.Date_de_ness); DateNaissance = Convert.ToString(datenaiss.Date.Day + "/" + datenaiss.Date.Month + "/" + datenaiss.Date.Year); DateTime dateemb = Convert.ToDateTime(membreComp.Date_emb); DateEmbauche = Convert.ToString(dateemb.Date.Day + "/" + dateemb.Date.Month + "/" + dateemb.Date.Year); DateTime datedem = Convert.ToDateTime(membreComp.Date_dem); DateDemission = Convert.ToString(datedem.Date.Day + "/" + datedem.Date.Month + "/" + datedem.Date.Year); String chemin1 = Directory.GetCurrentDirectory(); String chemin2 = Convert.ToString(Directory.GetParent(chemin1)); String chemin3 = Convert.ToString(Directory.GetParent(chemin2)); String chemin4 = Convert.ToString(Directory.GetParent(chemin3)); IQueryable <congé2> list = from recup in db.congé2 where recup.matricule == empliste.ToArray()[employé.SelectedIndex].matricule select recup; if (list.Count() == 0) { alert_text.Text = "Il n'y a aucun congé attribué à cet(te) employé(e)"; alert.IsOpen = true; } else if (membreComp.statut != "Actif") { alert_text.Text = "Vous ne pouvez pas générer un titre de congé à un(e) employée désactivé(e) ou retraité(e)"; alert.IsOpen = true; } else { congé2 C = new Authentification.congé2(); foreach (var info in list) { C = info; } if (info != null) { DateTime Debut = Convert.ToDateTime(C.debut); string debut = Convert.ToString(Debut.Date.Day + "/" + Debut.Date.Month + "/" + Debut.Date.Year); DateTime Fin = Convert.ToDateTime(C.fin); string fin = Convert.ToString(Fin.Date.Day + "/" + Fin.Date.Month + "/" + Fin.Date.Year); op.ShowDialog(); titreCongé(info.Raison_so, info.Spécialité, membre.wilaya_naiss, Convert.ToString(info.Numéro_RC), info.identifiant_fi, Today, info.Gérant, membre.nom + " " + membre.prenom, membreComp.poste, debut, fin, op.FileName, chemin1); alert_text.Text = "La génération a bien été faite"; alert.IsOpen = true; droper.IsExpanded = false; droper.IsEnabled = false; } else { alert_text.Text = "il manque les informations de l'entreprise"; alert.IsOpen = true; } } }