// Gestion du boutton supprimer private void buttonSupprimer_Click(object sender, EventArgs e) { if (comboBoxNomProjet.SelectedIndex >= 0) { string message = "Etes-vous sûr de vouloir supprimer"; string caption = "Suppression d'un projet"; var result = MessageBox.Show(message, caption, MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.Yes) { ProjetForfait projet = new ProjetForfait(); projet.CodeProjet = ((ProjetForfait)comboBoxNomProjet.SelectedItem).CodeProjet; if (DaoProjet.DelProjet(projet) == true) { projetForfaitBindingSource.Remove(comboBoxNomProjet.SelectedItem); projetForfaitBindingSource.ResetBindings(true); } else { MessageBox.Show("Le projet n'a pas pu etre supprimé"); } } } comboBoxNomProjet.SelectedItem = null; groupBoxProjet.Visible = false; groupBoxForfait.Visible = false; }
// Parametrage BDD avec la methode GetallProject public static List <ProjetForfait> GetAllProject() { using (SqlConnection sqlConnect = GetConnection()) { using (SqlCommand sqlCde = new SqlCommand()) { sqlCde.Connection = sqlConnect; string strsql = "GetAllProjetForfaits"; try { sqlCde.CommandType = CommandType.StoredProcedure; sqlCde.CommandText = strsql; SqlDataReader sqlRdr = sqlCde.ExecuteReader(); Projets = new List <ProjetForfait>(); while (sqlRdr.Read()) { ProjetForfait projet = new ProjetForfait() { CodeProjet = sqlRdr.GetInt32(0), NomProjet = sqlRdr.GetString(1), DDebut = sqlRdr.GetDateTime(2), DFin = sqlRdr.GetDateTime(3), Contact = sqlRdr[4].ToString(), MailContact = sqlRdr[5].ToString(), LeClient = new Client() { CodeClient = sqlRdr.GetInt32(6) }, MontantContrat = sqlRdr.GetDecimal(7), ChefDeProjet = new Collaborateur() { CodeColl = sqlRdr.GetInt32(9) }, PenaliteOuiNon = sqlRdr.GetSqlBoolean(8) == true ? Penalite.Oui : Penalite.Non }; Projets.Add(projet); } sqlRdr.Close(); return(Projets); } catch (Exception ex) { throw new DAOException(ex.Message); } } } }
//Ajouter un projet dans la BDD public static bool AddProjet(ProjetForfait pr, out int idProjet) { using (SqlConnection sqlConnect = GetConnection()) { using (SqlCommand sqlCde = new SqlCommand()) { sqlCde.Connection = sqlConnect; string strsql = "AddProjet"; try { sqlCde.CommandType = CommandType.StoredProcedure; sqlCde.CommandText = strsql; // Ajout des paramètres sqlCde.Parameters.Add(new SqlParameter("@idColl", SqlDbType.Int)).Value = pr.ChefDeProjet.CodeColl; sqlCde.Parameters.Add(new SqlParameter("@IdClient", SqlDbType.Int)).Value = pr.LeClient.CodeClient; sqlCde.Parameters.Add(new SqlParameter("@IdQualif", SqlDbType.TinyInt)).Value = null; sqlCde.Parameters.Add(new SqlParameter("@idtypep", SqlDbType.TinyInt)).Value = 1; sqlCde.Parameters.Add(new SqlParameter("@nomprojet", SqlDbType.VarChar)).Value = pr.NomProjet; sqlCde.Parameters.Add(new SqlParameter("@ddebut", SqlDbType.Date)).Value = pr.DDebut; sqlCde.Parameters.Add(new SqlParameter("@dfin", SqlDbType.Date)).Value = pr.DFin; sqlCde.Parameters.Add(new SqlParameter("@contactclient", SqlDbType.VarChar)).Value = pr.Contact; sqlCde.Parameters.Add(new SqlParameter("@mailcontact", SqlDbType.VarChar)).Value = pr.MailContact; sqlCde.Parameters.Add(new SqlParameter("@tarifjournalier", SqlDbType.Money)).Value = null; sqlCde.Parameters.Add(new SqlParameter("@mtcontrat", SqlDbType.Money)).Value = pr.MontantContrat; sqlCde.Parameters.Add(new SqlParameter("@penaliteOuiNon", SqlDbType.Bit)).Value = pr.PenaliteOuiNon; sqlCde.Parameters.Add(new SqlParameter("@idProjet", SqlDbType.Int)).Direction = ParameterDirection.Output; // Execution de la commande et recup parametre de sortie int n = sqlCde.ExecuteNonQuery(); if (n == 1) { MessageBox.Show("Mise a jour éffectuée"); } idProjet = (int)sqlCde.Parameters["@idProjet"].Value; return(true); } catch (Exception ex) { throw new DAOException(ex.Message); } } } }
//Modifier un projet dans la BB public static bool UpdProjet(ProjetForfait pr) { using (SqlConnection sqlConnect = GetConnection()) { using (SqlCommand sqlCde = new SqlCommand()) { sqlCde.Connection = sqlConnect; string strsql = "updProjet"; try { sqlCde.CommandType = CommandType.StoredProcedure; sqlCde.CommandText = strsql; sqlCde.Parameters.Add(new SqlParameter("@idp", SqlDbType.Int)).Value = pr.CodeProjet; sqlCde.Parameters.Add(new SqlParameter("@vColl", SqlDbType.Int)).Value = pr.ChefDeProjet.CodeColl; sqlCde.Parameters.Add(new SqlParameter("@vClient", SqlDbType.Int)).Value = pr.LeClient.CodeClient; sqlCde.Parameters.Add(new SqlParameter("@vQualif", SqlDbType.TinyInt)).Value = null; sqlCde.Parameters.Add(new SqlParameter("@vtypep", SqlDbType.TinyInt)).Value = 1; sqlCde.Parameters.Add(new SqlParameter("@vnomprojet", SqlDbType.VarChar)).Value = pr.NomProjet; sqlCde.Parameters.Add(new SqlParameter("@vdatedebut", SqlDbType.Date)).Value = pr.DDebut; sqlCde.Parameters.Add(new SqlParameter("@vdatefin", SqlDbType.Date)).Value = pr.DFin; sqlCde.Parameters.Add(new SqlParameter("@vcontactclient", SqlDbType.VarChar)).Value = pr.Contact; sqlCde.Parameters.Add(new SqlParameter("@vmailcontact", SqlDbType.VarChar)).Value = pr.MailContact; sqlCde.Parameters.Add(new SqlParameter("@vtarifjournalier", SqlDbType.Money)).Value = null; sqlCde.Parameters.Add(new SqlParameter("@vmtcontrat", SqlDbType.Money)).Value = pr.MontantContrat; sqlCde.Parameters.Add(new SqlParameter("@vpenaliteOuiNon", SqlDbType.Bit)).Value = pr.PenaliteOuiNon; //Execution de la commande int n = sqlCde.ExecuteNonQuery(); if (n == 1) { MessageBox.Show("Mise a jour éffectuée"); } return(true); } catch (Exception ex) { throw new DAOException(ex.Message); } } } }
// Gestion de la combobox Nom projet private void comboBoxNomProjet_SelectedIndexChanged(object sender, EventArgs e) { ProjetForfait projet = (ProjetForfait)comboBoxNomProjet.SelectedItem; if (comboBoxNomProjet.SelectedItem != null) { groupBoxProjet.Visible = true; groupBoxForfait.Visible = true; ChangerEnabledTrueOrFalse(false); buttonModifier.Enabled = true; buttonSupprimer.Enabled = true; buttonCreer.Enabled = false; buttonValider.Enabled = false; if (projet.PenaliteOuiNon == Penalite.Oui) { radioButtonOui.Checked = true; } else { radioButtonNon.Checked = true; } } }
private void InitPrevisionDataBinding() { projSelect = ((ProjetForfait)comboBoxProjets.SelectedItem); projSelect.prevision = DaoProjet.GetAllPrevisions(projSelect.CodeProjet); previsionBindingSource.DataSource = projSelect.prevision; }
private void btnValider_Click(object sender, EventArgs e) { DateTime datedebut; DateTime datefin; if (txtboxNomProjet.Text == string.Empty) { MessageBox.Show("Nom de projet obligatoire", "Information manquante", MessageBoxButtons.OK, MessageBoxIcon.Information); txtboxNomProjet.Focus(); } else if (!msktxtboxDateDebut.MaskCompleted) { MessageBox.Show("Date de début obligatoire", "Information manquante", MessageBoxButtons.OK, MessageBoxIcon.Information); msktxtboxDateDebut.Focus(); } else if (!msktxtboxDateFin.MaskCompleted) { MessageBox.Show("Date de fin obligatoire", "Information manquante", MessageBoxButtons.OK, MessageBoxIcon.Information); msktxtboxDateFin.Focus(); } else if (txtboxMontantContrat.Text == string.Empty) { MessageBox.Show("Montant obligatoire", "Information manquante", MessageBoxButtons.OK, MessageBoxIcon.Information); txtboxMontantContrat.Focus(); } else { datedebut = Convert.ToDateTime(msktxtboxDateDebut.Text); datefin = Convert.ToDateTime(msktxtboxDateFin.Text); if (datefin < datedebut) { errorProviderObligatoire.SetError(msktxtboxDateFin, "Date de fin de projet < date de debut de projet"); } else { Random rdom = new Random(); string nom = txtboxNomProjet.Text; Client clt = (Client)comboBoxClient.SelectedItem; decimal montant = Convert.ToDecimal (txtboxMontantContrat.Text); Collaborateur colla = (Collaborateur)comboBoxResponsable.SelectedItem; ProjetForfait proj = new ProjetForfait(0, nom, datedebut, datefin, clt, msktxtboxContact.Text, txtboxMailContact.Text, montant, radbutPenalOui.Checked, colla); if (butCreerClick) { int codProj; if (!DaoProjet.AddProjet(proj,out codProj)) { MessageBox.Show("Nom de projet déjâ présent"); } else { //Affiche le projet forfait créer MessageBox.Show(proj.ToString()); projetForfaitBindingSource.Add(proj); BoxEnable(false); comboBoxProjets.Enabled = true; //projetForfaitBindingSource.ResetBindings(true); InitDataBindingsBox(false); } proj.CodeProjet = codProj; projetForfaitBindingSource.Add(proj); butCreerClick = false; btnSupprimer.Enabled = true; } else if (butModifierClick) { proj.CodeProjet = projModif.CodeProjet; if (DaoProjet.UpdProjet(proj)) { projetForfaitBindingSource.RemoveAt(indexModif); projetForfaitBindingSource.Add(proj); //projetForfaitBindingSource.ResetCurrentItem(); MessageBox.Show("Projet modifier"); } else { MessageBox.Show("Projet non modifier"); } BoxEnable(false); butModifierClick = false; comboBoxProjets.Enabled = true; projetForfaitBindingSource.ResetBindings(true); InitDataBindingsBox(false); btnModifier.Enabled = true; } } } }
private void btnModifier_Click(object sender, EventArgs e) { projModif = (ProjetForfait)comboBoxProjets.SelectedItem; indexModif = comboBoxProjets.SelectedIndex; InitDataBindingsBox(true); txtboxNomProjet.Text = projModif.NomProjet; msktxtboxDateDebut.Text = Convert.ToString(projModif.DDebut); msktxtboxDateFin.Text = Convert.ToString(projModif.DFin); comboBoxClient.SelectedItem = projModif; msktxtboxContact.Text = projModif.Contact; txtboxMailContact.Text = projModif.MailContact; comboBoxResponsable.SelectedItem = projModif.ChefDeProjet; txtboxMontantContrat.Text = Convert.ToString(projModif.MontantContrat); if (projModif.PenaliteOuiNon==Penalite.Oui) { radbutPenalOui.Checked = true; radbutPenalNon.Checked = false; } else { radbutPenalOui.Checked = false; radbutPenalNon.Checked = true; } BoxEnable(true); comboBoxProjets.Enabled = false; btnSupprimer.Enabled = false; txtboxNomProjet.Focus(); btnModifier.Enabled = false; butModifierClick = true; }
// On gère l'evenement du click sur valider private void buttonValider_Click(object sender, EventArgs e) { int CodeProjet = 0; if (comboBoxResponsable.SelectedItem != null && comboBoxClient != null && nomIsOk == true && dateIsOk == true && montantIsOk == true) { ProjetForfait projet = new ProjetForfait(CodeProjet, textBoxNomProjet.Text, dateDebut, dateFin, (Client)comboBoxClient.SelectedItem, textBoxContact.Text, textBoxMailContact.Text, Convert.ToDecimal(textBoxMontantContrat.Text), radioButtonOui.Checked, (Collaborateur)comboBoxResponsable.SelectedItem); if (clickCreer == true) { if (DaoProjet.AddProjet(projet, out CodeProjet) == true) { projet.CodeProjet = CodeProjet; projetForfaitBindingSource.Add(projet); } else { MessageBox.Show("Le projet n'a pas été ajouté"); } projetForfaitBindingSource.ResumeBinding(); const string caption = "Projet enregistré"; string message = "Projet" + projet.ToString() + "\n" + "Client" + comboBoxClient.SelectedItem.ToString() + "\n" + textBoxContact.Text + "," + textBoxMailContact.Text + "\n" + "[" + textBoxMontantContrat.Text + "," + "Collaborateur" + comboBoxResponsable.SelectedItem.ToString(); MessageBox.Show(message, caption, MessageBoxButtons.OK); comboBoxNomProjet.Enabled = true; comboBoxNomProjet.SelectedItem = null; ChangerEnabledTrueOrFalse(false); groupBoxForfait.Visible = false; groupBoxProjet.Visible = false; } if (clickModif == true) { Verif(); string message = "Veuillez confirmer la modification"; string caption = "Validation de la modification"; var result = MessageBox.Show(message, caption, MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.Yes) { projet.CodeProjet = ((ProjetForfait)comboBoxNomProjet.SelectedItem).CodeProjet; if (DaoProjet.UpdProjet(projet) == true) { projetForfaitBindingSource.ResumeBinding(); } else { MessageBox.Show("La mise a jour n'a pas été effectuée"); } const string caption2 = "Projet modifié"; string message2 = "Projet" + projet.ToString() + "\n" + "Client" + comboBoxClient.SelectedItem.ToString() + "\n" + textBoxContact.Text + "," + textBoxMailContact.Text + "\n" + "[" + textBoxMontantContrat.Text + "," + "Collaborateur" + comboBoxResponsable.SelectedItem.ToString(); MessageBox.Show(message2, caption2, MessageBoxButtons.OK); comboBoxNomProjet.Enabled = true; projetForfaitBindingSource.ResumeBinding(); comboBoxNomProjet.SelectedItem = null; ChangerEnabledTrueOrFalse(false); groupBoxForfait.Visible = false; groupBoxProjet.Visible = false; } } } else { if (nomIsOk == false) { errorProviderNomProjet.SetError(textBoxNomProjet, "Le nom est obligatoire pour créer un projet"); } else if (dateIsOk == false) { errorProviderDateDebut.SetError(maskedTextBoxDateDebut, "La saisie des dates est obligatoire"); errorProviderDateFin.SetError(maskedTextBoxDateFin, "La saisie des dates est obligatoire"); } else if (montantIsOk == false) { errorProviderMontant.SetError(textBoxMontantContrat, "Le montant du contrat est obligatoire pour créer un projet"); } else if (comboBoxClient.SelectedItem == null) { MessageBox.Show("Veuillez selectionner un client"); } else if (comboBoxResponsable.SelectedItem == null) { MessageBox.Show("Veuillez selectionneur un collaborateur"); } } }