private void RajouterNouvelleSpecificite(int NumeroDuCamp) { Condi_Camp NouvelleSpecificite = new Condi_Camp(); NouvelleSpecificite.SurErreur += Specificite_SurErreur; NouvelleSpecificite.AvantChangement += Specificite_AvantChangement; NouvelleSpecificite.Unity = listeDeroulanteUnity1.UnitySelectionnee; NouvelleSpecificite.Scenario_Camp = Program.GMBD.EnumererScenarioCamp(null, new MyDB.CodeSql(@"JOIN scenario ON scenario.sc_id = scenario_camp.sca_fk_scenario_id JOIN camp ON camp.ca_id = scenario_camp.sca_fk_camp_id "), new MyDB.CodeSql("WHERE scenario.sc_id = {0} AND camp.ca_id = {1}", Scenario.Scenario.Id, NumeroDuCamp), null).FirstOrDefault(); NouvelleSpecificite.Min = Convert.ToInt32(numericUpDownObligatoire.Value); NouvelleSpecificite.Max = Convert.ToInt32(numericUpDown2.Value); Condi_Camp SpecificiteExiste = Program.GMBD.EnumererCondiCamp(null, null, new MyDB.CodeSql("WHERE cc_fk_scenario_camp_id = {0} AND cc_fk_unity_id = {1}", NouvelleSpecificite.Scenario_Camp.Id, NouvelleSpecificite.Unity.Id), null).FirstOrDefault(); if (SpecificiteExiste == null) { if (NouvelleSpecificite.EstValide && Program.GMBD.AjouterSpecificite(NouvelleSpecificite)) { ChargerSpecificite(NumeroDuCamp); ValidationProvider.SetError(ficheSpecifiteScenario1, "Spécificité correctement rajoutée"); } } else { errorProvider1.SetError(listeDeroulanteUnity1, "Cette spécificté existe déjà pour ce camp"); } }
public bool SupprimerSpecificite(Condi_Camp SpecificiteCondiCamp) { if (!m_BD.EstConnecte) { Initialiser(); } SpecificiteCondiCamp.SupprimerEnCascade(m_BD); return(true); }
private void Specificite_AvantChangement(Condi_Camp Specificite, Condi_Camp.Champ Champ, object ValeurActuelle, object NouvelleValeur, AccumulateurErreur AccumulateurErreur) { switch (Champ) { case Condi_Camp.Champ.Unity: { Condi_Camp SpecificiteExiste = Program.GMBD.EnumererCondiCamp(null, null, new MyDB.CodeSql("WHERE cc_fk_scenario_camp_id = {0} AND cc_fk_unity_id = {1}", Scenario.Id, listeDeroulanteUnity1.UnitySelectionnee.Id), null).FirstOrDefault(); if (SpecificiteExiste != null) { ValidationProvider.Clear(); AccumulateurErreur.NotifierErreur("Cette spécificité existe déjà, veuillez en choisir une autre ou modifier l'existante !"); } break; } } }
private void Specificite_SurErreur(Condi_Camp Entite, Condi_Camp.Champ Champ, string MessageErreur) { switch (Champ) { case Condi_Camp.Champ.Min: errorProvider1.SetError(numericUpDownObligatoire, MessageErreur); break; case Condi_Camp.Champ.Max: errorProvider1.SetError(numericUpDown2, MessageErreur); break; case Condi_Camp.Champ.Unity: errorProvider1.SetError(listeDeroulanteUnity1, MessageErreur); break; } buttonAjouter.Enabled = false; }
public IEnumerable <Condi_Camp> EnumererCondiCamp(MyDB.CodeSql ValeurSouhaitee, MyDB.CodeSql ClauseJoin, MyDB.CodeSql ClauseWhere, MyDB.CodeSql ClauseOrderBy) { if (ClauseWhere == null) { ClauseWhere = MyDB.CodeSql.Vide; } if (ClauseOrderBy == null) { ClauseOrderBy = MyDB.CodeSql.Vide; } if (ClauseJoin == null) { ClauseJoin = MyDB.CodeSql.Vide; } if (ValeurSouhaitee == null) { ValeurSouhaitee = new MyDB.CodeSql("*"); } return(Condi_Camp.Enumerer(m_BD, m_BD.Enumerer("SELECT {0} FROM {1} {2} {3} {4}", ValeurSouhaitee, c_NomTable_CondiCamp, ClauseJoin, ClauseWhere, ClauseOrderBy))); }
private IEnumerable <Condi_Camp> EnumererCondiCamp() { return(Condi_Camp.Enumerer(Connexion, Connexion.Enumerer(@"SELECT * FROM condi_camp JOIN scenario_camp ON condi_camp.cc_fk_scenario_camp_id = scenario_camp.sca_id WHERE cc_fk_scenario_camp_id = {0} AND scenario_camp.sca_fk_camp_id = {1}", Scenario.Id, Camp.Id))); }
/// <summary> /// Met à jour la listview des sous Features et y insére les elements /// </summary> /// <typeparam name="T"></typeparam> /// <param name="Entites"></param> /// <returns></returns> private bool MettreAJourListe <T>(IEnumerable <T> Entites) where T : class, IEntiteMySQL { bool EstSpecifiteScenario = typeof(T).Equals(typeof(Condi_Camp)); if (!EstSpecifiteScenario) { return(false); } listViewSpecificite.Items.Clear(); if (Entites == null) { return(false); } if (EstSpecifiteScenario && (listViewSpecificite.Columns.Count != 2)) { listViewSpecificite.Columns.Clear(); listViewSpecificite.Columns.Add(new ColumnHeader() { Name = "NomUnity", Text = "Nom de l'unité", TextAlign = HorizontalAlignment.Center, }); listViewSpecificite.Columns.Add(new ColumnHeader() { Name = "Min", Text = "Min", TextAlign = HorizontalAlignment.Center, }); listViewSpecificite.Columns.Add(new ColumnHeader() { Name = "Max", Text = "Max supplémentaires", TextAlign = HorizontalAlignment.Center, }); } foreach (T Entite in Entites) { Condi_Camp SpecificiteScenario = Entite as Condi_Camp; if (EstSpecifiteScenario) { ListViewItem NouvelElement = new ListViewItem() { Tag = Entite, Text = SpecificiteScenario.Unity.Name, }; NouvelElement.SubItems.Add(SpecificiteScenario.Min.ToString()); NouvelElement.SubItems.Add(SpecificiteScenario.Max.ToString()); listViewSpecificite.Items.Add(NouvelElement); } } listViewSpecificite.Visible = false; foreach (ColumnHeader Colonne in listViewSpecificite.Columns) { Colonne.AutoResize(ColumnHeaderAutoResizeStyle.HeaderSize); } listViewSpecificite.Visible = true; listViewCaractere_SelectedIndexChanged(listViewSpecificite, EventArgs.Empty); return(true); }
public bool AjouterSpecificite(Condi_Camp NouvelleSpecificite) { return(NouvelleSpecificite.Enregistrer(m_BD, NouvelleSpecificite, null, false)); }
private void buttonSupprimer_Click(object sender, EventArgs e) { PopUpConfirmation FormConfirmation = new PopUpConfirmation(); Army ScenarioLie = Program.GMBD.EnumererArmy(null, null, new MyDB.CodeSql("WHERE ar_fk_scenario_camp_id = {0}", listeDeroulanteScenario1.ScenarioSelectionnee.Id), null).FirstOrDefault(); if (ScenarioLie == null) { FormConfirmation.LabelDuTexte = "Êtes vous certain de vouloir supprimer cet enregistrement ?"; FormConfirmation.ShowDialog(); // S'il accepte if (FormConfirmation.Confirmation) { Condi_Camp Camp1 = null; Condi_Camp Camp2 = null; if (m_ScenarioCampUn != null) { Camp1 = Program.GMBD.EnumererCondiCamp(null, new MyDB.CodeSql("JOIN scenario_camp ON cc_fk_scenario_camp_id = sca_id"), new MyDB.CodeSql("WHERE sca_fk_camp_id = {0} AND sca_id = {1}", m_ScenarioCampUn.Camp.Id, m_ScenarioCampUn.Id), null).FirstOrDefault(); if (Camp1 != null) { Program.GMBD.SupprimerSpecificite(Camp1); } } if (m_ScenarioSecondCamp != null) { Camp2 = Program.GMBD.EnumererCondiCamp(null, new MyDB.CodeSql("JOIN scenario_camp ON cc_fk_scenario_camp_id = sca_id"), new MyDB.CodeSql("WHERE sca_fk_camp_id = {0} AND sca_id = {1}", m_ScenarioSecondCamp.Camp.Id, m_ScenarioSecondCamp.Id), null).FirstOrDefault(); if (Camp2 != null) { Program.GMBD.SupprimerSpecificite(Camp2); } } if ((listeDeroulanteScenario1.ScenarioSelectionnee != null) && Program.GMBD.SupprimerScenarioCamp(m_ScenarioCampUn)) { if (m_ScenarioSecondCamp != null) { Program.GMBD.SupprimerScenarioCamp(m_ScenarioSecondCamp); } Program.GMBD.SupprimerScenario(m_ScenarioCampUn.Scenario); listeDeroulanteScenario1.Scenario = Program.GMBD.EnumererScenario(null, null, null, null); buttonAjouter.Enabled = true; buttonAnnuler.Enabled = false; buttonSupprimer.Enabled = false; ficheScenarioCamp1.Enabled = false; ficheScenarioCamp2.Enabled = false; errorProviderValidation.SetError(textBox1, "Suppression correctement effectuée"); textBox1.Text = ""; listeDeroulanteScenario1.ClearText(); ficheScenarioCamp1.ClearFiche(); ficheScenarioCamp2.ClearFiche(); } } // S'il refuse else if (FormConfirmation.Annulation) { // ne rien faire } } else { errorProvider.SetError(textBox1, "Ce scénario est utilisée par armée, veuillez la supprimer avant de supprimer ce scénario"); } }