/// <summary> /// Constructeur spécifique /// </summary> /// <param name="Connexion">Connexion au serveur MySQL</param> /// <param name="Enregistrement">Enregistrement d'où extraire les valeurs de champs</param> public VehiculeCaracteristique(PDSGBD.MyDB Connexion, PDSGBD.MyDB.IEnregistrement Enregistrement) : this() { DefinirId(Enregistrement.ValeurChampComplet <int>(NomDeLaTablePrincipale, "id_vehicule_caracteristique")); this.Valeur = Enregistrement.ValeurChampComplet <string>(NomDeLaTablePrincipale, "valeur"); this.Caracteristique = new Caracteristique(Connexion, Enregistrement); }
/// <summary> /// Constructeur par défaut /// </summary> public VehiculeCaracteristique() : base() { m_Valeur = null; m_Vehicule = null; m_Caracteristique = null; }
/// <summary> /// Constructeur spécifique /// </summary> /// <param name="Valeur">Valeur de cette caractéristique</param> /// <param name="Vehicule">Véhicule lié à cette caractéristique</param> /// <param name="Caracteristique">Caractéritique correspondant à cet enregistrement</param> public VehiculeCaracteristique(int Quantite, Vehicule Vehicule, Caracteristique Caracteristique) : this() { DefinirId(Id); this.Vehicule = Vehicule; this.Caracteristique = Caracteristique; }
private void listeDeroulanteCaracteristiqueAjouter_SurChangementSelection(object sender, EventArgs e) { if (listeDeroulanteCaracteristiqueAjouter.CaracteristiqueSelectionne != null) { // Si la caractéristique est déjà référencée sur une facture, sa modification n'est plus possible Caracteristique CaracteristiqueExistante = Program.GMBD.EnumererCaracteristique(null, new PDSGBD.MyDB.CodeSql(@"JOIN type ON caracteristique.fk_id_type = type.id_type JOIN vehicule_caracteristique ON vehicule_caracteristique.fk_id_caracteristique = caracteristique.id_caracteristique JOIN vehicule ON vehicule_caracteristique.fk_id_vehicule = vehicule.id_vehicule") , new PDSGBD.MyDB.CodeSql(@"WHERE ((vehicule.id_vehicule IN(SELECT client_vehicule.fk_id_vehicule FROM client_vehicule)) OR (vehicule.id_vehicule IN(SELECT vehicule_vente.fk_id_vehicule FROM vehicule_vente))) AND id_caracteristique = {0}", listeDeroulanteCaracteristiqueAjouter.CaracteristiqueSelectionne.Id), null).FirstOrDefault(); if (CaracteristiqueExistante != null) { buttonAjouterCaract.Enabled = false; buttonModifierCaract.Enabled = false; buttonSupprimerCaract.Enabled = true; } else { buttonAjouterCaract.Enabled = false; buttonModifierCaract.Enabled = true; buttonSupprimerCaract.Enabled = true; } textBoxNomCaract.Text = listeDeroulanteCaracteristiqueAjouter.CaracteristiqueSelectionne.NomCaracteristique; listeDeroulanteTypeVehicule1.TypeVehiculeSelectionne = listeDeroulanteCaracteristiqueAjouter.CaracteristiqueSelectionne.TypeVehicule; } }
private void buttonSupprimerCaract_Click(object sender, EventArgs e) { errorProvider.Clear(); ValidationProvider.Clear(); if (listeDeroulanteCaracteristiqueAjouter.CaracteristiqueSelectionne != null) { VehiculeCaracteristique VehiculeCaractUtilise = Program.GMBD.EnumererVehiculeCaracteristique(null, null, new PDSGBD.MyDB.CodeSql("WHERE fk_id_caracteristique = {0}", listeDeroulanteCaracteristiqueAjouter.CaracteristiqueSelectionne.Id), null).FirstOrDefault(); if (VehiculeCaractUtilise == null) { if (Program.GMBD.SupprimerCaracteristique(listeDeroulanteCaracteristiqueAjouter.CaracteristiqueSelectionne)) { ClearCaract(); errorProvider.Clear(); ValidationProvider.Clear(); ValidationProvider.SetError(buttonSupprimerCaract, "La caractéristique a bien été supprimée"); RefreshNouvelleCaract(); RefreshListeCaract(); } } else { errorProvider.Clear(); ValidationProvider.Clear(); Caracteristique CaracteristiqueASupprimer = listeDeroulanteCaracteristiqueAjouter.CaracteristiqueSelectionne; CaracteristiqueASupprimer.Disponible = 0; if ((CaracteristiqueASupprimer.EstValide) && (Program.GMBD.ModifierCaracteristique(CaracteristiqueASupprimer))) { ValidationProvider.SetError(buttonSupprimerCaract, "La caractéristique a bien été supprimée"); RefreshNouvelleCaract(); RefreshListeCaract(); } } } }
private void NouvelleCaracteristique_SurErreur(Caracteristique Entite, Caracteristique.Champs Champ, string MessageErreur) { switch (Champ) { case Caracteristique.Champs.Caracteristique: errorProvider.SetError(textBoxNomCaract, MessageErreur); break; case Caracteristique.Champs.Type: errorProvider.SetError(listeDeroulanteTypeVehicule1, MessageErreur); break; } }
private void NouvelleCaracteristique_AvantChangement(Caracteristique Entite, Caracteristique.Champs Champ, object ValeurActuelle, object NouvelleValeur, AccumulateurErreur AccumulateurErreur) { switch (Champ) { case Caracteristique.Champs.Type: if (listeDeroulanteTypeVehicule1.TypeVehiculeSelectionne == null) { ValidationProvider.Clear(); AccumulateurErreur.NotifierErreur("Veuillez choisir un type pour la caractéristique"); } break; } }
private void buttonModifierCaract_Click(object sender, EventArgs e) { errorProvider.Clear(); ValidationProvider.Clear(); if (listeDeroulanteCaracteristiqueAjouter.CaracteristiqueSelectionne != null) { VehiculeCaracteristique CaracteristiqueReferencee = Program.GMBD.EnumererVehiculeCaracteristique(null, null, new PDSGBD.MyDB.CodeSql("WHERE fk_id_caracteristique = {0}", listeDeroulanteCaracteristiqueAjouter.CaracteristiqueSelectionne.Id), null).FirstOrDefault(); Caracteristique CaracteristiqueExiste = Program.GMBD.EnumererCaracteristique(null, new PDSGBD.MyDB.CodeSql("JOIN type ON caracteristique.fk_id_type = type.id_type"), new PDSGBD.MyDB.CodeSql("WHERE caracteristique = {0} AND type = {1} AND id_caracteristique != {2}", textBoxNomCaract.Text.Trim(), listeDeroulanteTypeVehicule1.TypeVehiculeSelectionne.NomDuType, listeDeroulanteCaracteristiqueAjouter.CaracteristiqueSelectionne.Id), null).FirstOrDefault(); if ((CaracteristiqueExiste != null) && (CaracteristiqueExiste.Disponible == 1)) { errorProvider.SetError(buttonModifierCaract, "Cette caractéristique existe déjà"); listeDeroulanteCaracteristique1.CaracteristiqueSelectionne = CaracteristiqueExiste; } else if ((CaracteristiqueExiste != null) && (CaracteristiqueExiste.Disponible == 0) && (CaracteristiqueReferencee == null)) { CaracteristiqueExiste.SurErreur += NouvelleCaracteristique_SurErreur; CaracteristiqueExiste.Disponible = 1; if ((CaracteristiqueExiste.EstValide) && (Program.GMBD.ModifierCaracteristique(CaracteristiqueExiste))) { ValidationProvider.SetError(buttonModifier, "La caractéristique a bien été modifiée"); RefreshListeCaract(); listeDeroulanteCaracteristique1.CaracteristiqueSelectionne = CaracteristiqueExiste; } } else { Caracteristique CaracteristiqueAModifier = listeDeroulanteCaracteristiqueAjouter.CaracteristiqueSelectionne; CaracteristiqueAModifier.SurErreur += NouvelleCaracteristique_SurErreur; CaracteristiqueAModifier.NomCaracteristique = textBoxNomCaract.Text; CaracteristiqueAModifier.TypeVehicule = listeDeroulanteTypeVehicule1.TypeVehiculeSelectionne; if ((CaracteristiqueAModifier.EstValide) && (Program.GMBD.ModifierCaracteristique(CaracteristiqueAModifier))) { errorProvider.Clear(); ValidationProvider.SetError(buttonModifierCaract, "Caractéristique correctement modifiée"); textBoxNomCaract.Text = ""; listeDeroulanteTypeVehicule1.TypeVehiculeSelectionne = null; RefreshFicheTechnique(); RefreshListeCaract(); listeDeroulanteCaracteristiqueAjouter.CaracteristiqueSelectionne = CaracteristiqueAModifier; } } } }
public Element(Caracteristique Caracteristique) { this.Caracteristique = Caracteristique; }
/// <summary> /// Se produit lors du clic sur le bouton d'ajout d'une caractéristique /// </summary> private void buttonAjouterCaract_Click(object sender, EventArgs e) { errorProvider.Clear(); ValidationProvider.Clear(); Caracteristique CaracteristiqueExiste = Program.GMBD.EnumererCaracteristique(null, new PDSGBD.MyDB.CodeSql("JOIN type ON caracteristique.fk_id_type = type.id_type"), new PDSGBD.MyDB.CodeSql("WHERE caracteristique = {0}", textBoxNomCaract.Text.Trim()), null).FirstOrDefault(); if ((CaracteristiqueExiste != null) && (CaracteristiqueExiste.Disponible == 1) && ((CaracteristiqueExiste.TypeVehicule.NomDuType == listeDeroulanteTypeVehicule1.TypeVehiculeSelectionne.NomDuType))) { errorProvider.SetError(buttonAjouterCaract, "Cette caractéristique existe déjà"); } else if ((CaracteristiqueExiste != null) && (CaracteristiqueExiste.TypeVehicule.NomDuType == ((EstVoiture) ? "Voiture" : "Moto"))) { // Permet de vérifier si l'utilisateur souhaite modifié l'enregistrement existant sous l'autre type de véhicule en générique afin de garder 1 seul enregsitrement pour les 2 véhicules if (IndicateurDAjout == 0) { errorProvider.SetError(buttonAjouterCaract, "Cette option existe pour les voitures. Pour la passer en générique, veuillez recliquer une deuxième fois sur ajouter. Sinon, cliquez sur annuler"); IndicateurDAjout++; } else if (IndicateurDAjout == 1) { CaracteristiqueExiste.TypeVehicule = Program.GMBD.EnumererTypeVehicule(null, null, new PDSGBD.MyDB.CodeSql("WHERE type = \"Générique\""), null).FirstOrDefault(); if (CaracteristiqueExiste.Disponible == 0) { CaracteristiqueExiste.Disponible = 1; } if (CaracteristiqueExiste.EstValide && Program.GMBD.ModifierCaracteristique(CaracteristiqueExiste)) { RefreshListeCaract(); listeDeroulanteCaracteristiqueAjouter.CaracteristiqueSelectionne = CaracteristiqueExiste; ValidationProvider.SetError(buttonAjouterCaract, "L'option a bien été modifiée et son type est passé à générique"); } IndicateurDAjout = 0; } } else if ((CaracteristiqueExiste != null) && (CaracteristiqueExiste.Disponible == 0) && (listeDeroulanteTypeVehicule1.TypeVehiculeSelectionne.NomDuType == CaracteristiqueExiste.TypeVehicule.NomDuType)) { CaracteristiqueExiste.Disponible = 1; if ((CaracteristiqueExiste.EstValide) && (Program.GMBD.ModifierCaracteristique(CaracteristiqueExiste))) { RefreshListeCaract(); ValidationProvider.SetError(buttonAjouterCaract, "La caractéristique a bien été ajoutée"); listeDeroulanteCaracteristiqueAjouter.CaracteristiqueSelectionne = CaracteristiqueExiste; } } else if ((CaracteristiqueExiste != null) && (CaracteristiqueExiste.Disponible == 0) && (listeDeroulanteTypeVehicule1.TypeVehiculeSelectionne.NomDuType != CaracteristiqueExiste.TypeVehicule.NomDuType)) { VehiculeCaracteristique CaracteristiqueReferencee = Program.GMBD.EnumererVehiculeCaracteristique(null, null, new PDSGBD.MyDB.CodeSql("WHERE fk_id_caracteristique = {0}", listeDeroulanteCaracteristiqueAjouter.CaracteristiqueSelectionne.Id), null).FirstOrDefault(); if (CaracteristiqueReferencee != null) { CaracteristiqueExiste.Disponible = 1; CaracteristiqueExiste.TypeVehicule = listeDeroulanteTypeVehicule1.TypeVehiculeSelectionne; if ((CaracteristiqueExiste.EstValide) && (Program.GMBD.ModifierCaracteristique(CaracteristiqueExiste))) { RefreshListeCaract(); ClearCaract(); ValidationProvider.SetError(buttonAjouterCaract, "La caractéristique a bien été ajoutée"); listeDeroulanteCaracteristiqueAjouter.CaracteristiqueSelectionne = CaracteristiqueExiste; } } else { CaracteristiqueExiste.TypeVehicule = listeDeroulanteTypeVehicule1.TypeVehiculeSelectionne; if ((CaracteristiqueExiste.EstValide) && (Program.GMBD.ModifierCaracteristique(CaracteristiqueExiste))) { RefreshListeCaract(); ClearCaract(); ValidationProvider.SetError(buttonAjouterCaract, "La caractéristique a bien été ajoutée"); listeDeroulanteCaracteristiqueAjouter.CaracteristiqueSelectionne = CaracteristiqueExiste; } } } else { Caracteristique NouvelleCaracteristique = new Caracteristique(); NouvelleCaracteristique.SurErreur += NouvelleCaracteristique_SurErreur; NouvelleCaracteristique.NomCaracteristique = textBoxNomCaract.Text; NouvelleCaracteristique.TypeVehicule = listeDeroulanteTypeVehicule1.TypeVehiculeSelectionne; NouvelleCaracteristique.Disponible = 1; if ((NouvelleCaracteristique.EstValide) && (Program.GMBD.AjouterCaracteristique(NouvelleCaracteristique))) { RefreshListeCaract(); ValidationProvider.SetError(buttonAjouterCaract, "La caractéristique a bien été ajoutée"); listeDeroulanteCaracteristiqueAjouter.CaracteristiqueSelectionne = NouvelleCaracteristique; } } }