/// <summary> /// Méthode évenementielle d'affichage du frmContrat pour l'ajout d'un nouveau contrat au clic sur btnAjoutContrat /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public void btnAjoutContrat_Click(Object sender, EventArgs e) { ctrlNouvContrat leFormNouvContrat = new ctrlNouvContrat(); if (leFormNouvContrat.Resultat() == DialogResult.OK) { leCollab.AddContrat(leFormNouvContrat.Contrat()); ContratDAOEFStatic.InsereContrat(leFormNouvContrat.Contrat(), DonneesDAO.DbContextAbiDao.CollaborateurSet.Find(leCollab.Matricule)); leForm.grdContrats.DataSource = leCollab.ListerContrats(); } }
/// <summary> /// Action attribuée au bouton valider, définit un dialogresult OK /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnValider_Click(object sender, EventArgs e) { //Appeler les vérifications de champs et si OK, ajouter le collab à la liste et retourner OK if (leForm.VerifChamps()) { if (leForm.Instancie()) { this.leCollab = leForm.getCollab();; leCollab.AddContrat(this.leContrat); //ContratDAOEFStatic.InsereContrat(this.leContrat, DonneesDAO.DbContextAbiDao.CollaborateurSet.Find(this.leCollab.Matricule)); leForm.DialogResult = DialogResult.OK; this.Retour = DialogResult.OK; } } }
/// <summary> /// Méthode évenementielle d'affichage du frmContrat pour l'ajout d'un nouveau contrat au clic sur btnAjoutContrat /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public void btnAjoutContrat_Click(Object sender, EventArgs e) { ctrlNouvContrat leFormNouvContrat = new ctrlNouvContrat(); if (leFormNouvContrat.Resultat() == DialogResult.OK) { //Recherche du collaborateur dans la DB et instanciation Collaborateur collabReceveur = DonneesDAO.DbContextAbiDao.CollaborateurSet.Find(leCollab.Matricule); //Insertion du contrat en DB ContratDAOEFStatic.InsereContrat(leFormNouvContrat.Contrat(), collabReceveur); //Attribution du bon numéro au MContrat leFormNouvContrat.Contrat().NumContrat = ContratDAOEFStatic.getContratActif(collabReceveur).GetNumContrat(); //Insertion du contrat dans dictionnaire leCollab.AddContrat(leFormNouvContrat.Contrat()); //Remise à jour de l'affichage leForm.grdContrats.DataSource = leCollab.ListerContrats(); } }
/// <summary> /// Méthode qui récupère les contrats correspondants au collaborateur choisi en DB pour construire le dictionnaire /// </summary> /// <param name="leCollab">l'instance de MCollaborateur dont on recherche les contrats</param> public static void InstancieContrats(MCollaborateur leCollab) { if (DonneesDAO.DbContextAbiDao == null) { DonneesDAO.DbContextAbiDao = new AbiDaoContainer(); } var query = from b in DonneesDAO.DbContextAbiDao.ContratSet where b.Collaborateur.Matricule == leCollab.Matricule select b; MContrat leContrat; foreach (Contrat contrat in query) { if (contrat is CDD) { leContrat = new MCdd((contrat as CDD).SalaireBrut, contrat.DateDebutContrat, contrat.Qualification, contrat.NumContrat, (contrat as CDD).Motif, (DateTime)(contrat as CDD).DateFinPrevue, contrat.DateFinContrat); leCollab.AddContrat(leContrat); } else if (contrat is CDI) { leContrat = new MCdi((contrat as CDI).SalaireBrut, contrat.NumContrat, contrat.Qualification, contrat.DateDebutContrat, contrat.DateFinContrat); leCollab.AddContrat(leContrat); } else if (contrat is Stage) { leContrat = new MStage((contrat as Stage).Ecole, (contrat as Stage).Mission, (Decimal)(contrat as Stage).Indemnite, (contrat as Stage).Motif, (DateTime)(contrat as Stage).DateFinPrevue, contrat.NumContrat, contrat.Qualification, contrat.DateDebutContrat, contrat.DateFinContrat); leCollab.AddContrat(leContrat); } else { leContrat = new MInterim((contrat as Interim).AgenceInterim, (contrat as Interim).Motif, (DateTime)(contrat as Interim).DateFinPrevue, contrat.NumContrat, contrat.Qualification, contrat.DateDebutContrat, contrat.DateFinContrat); leCollab.AddContrat(leContrat); } } }