/// <summary>
 /// Constructeur par défaut
 /// </summary>
 public VehiculeCaracteristique()
     : base()
 {
     m_Valeur          = null;
     m_Vehicule        = null;
     m_Caracteristique = null;
 }
Example #2
0
 /// <summary>
 /// Constructeur spécifique
 /// </summary>
 /// <param name="Vehicule">Vehicule ayant cette option disponible</param>
 /// <param name="OptionVehicule">Option disponible par ce véhicule</param>
 public VehiculeOptionVehicule(Vehicule Vehicule, OptionVehicule OptionVehicule)
     : this()
 {
     DefinirId(Id);
     this.Vehicule       = Vehicule;
     this.OptionVehicule = OptionVehicule;
 }
        /// <summary>
        /// Se produit lors du clic sur le bouton d'ajout des informations propres du véhicule
        /// </summary>
        private void buttonAjouter_Click(object sender, EventArgs e)
        {
            errorProvider.Clear();
            ValidationProvider.Clear();
            Vehicule NouveauVehicule = new Vehicule();

            NouveauVehicule.SurErreur       += NouveauVehicule_SurErreur;
            NouveauVehicule.AvantChangement += NouveauVehicule_AvantChangement;
            NouveauVehicule.Modele           = textBoxModele.Text;
            NouveauVehicule.PrixVehicule     = double.Parse(numericUpDownPrix.Value.ToString());
            NouveauVehicule.TempsLivraison   = int.Parse(numericUpDownTempsLivraison.Value.ToString());
            NouveauVehicule.TypeVehicule     = Program.GMBD.EnumererTypeVehicule(null, null, new PDSGBD.MyDB.CodeSql("WHERE type = {0}", (EstMoto) ? "Moto" : "Voiture"), null).FirstOrDefault();
            NouveauVehicule.Disponible       = 1;
            if (listeDeroulanteVehicule1.VehiculeSelectionne != null)
            {
                NouveauVehicule.NomImage = (ImageChangee) ? pictureBox1.Tag.ToString() : listeDeroulanteVehicule1.VehiculeSelectionne.NomImage;
            }
            else
            {
                NouveauVehicule.NomImage = (ImageChangee) ? pictureBox1.Tag.ToString() : null;
            }
            if ((NouveauVehicule.EstValide) && (Program.GMBD.AjouterVehicule(NouveauVehicule)))
            {
                listeDeroulanteVehicule1.Vehicule            = Program.GMBD.EnumererVehicule(null, new PDSGBD.MyDB.CodeSql("JOIN type ON vehicule.fk_id_type = type.id_type"), new PDSGBD.MyDB.CodeSql("WHERE type = {0} AND disponible = 1", (EstVoiture) ? "Voiture" : "Moto"), null);
                listeDeroulanteVehicule1.VehiculeSelectionne = NouveauVehicule;
                if (File.Exists(Environment.GetFolderPath(Environment.SpecialFolder.Desktop).ToString() + "/ImagesVehicule/" + listeDeroulanteVehicule1.VehiculeSelectionne.NomImage + ""))
                {
                    pictureBox1.Image = Image.FromFile(Environment.GetFolderPath(Environment.SpecialFolder.Desktop).ToString() + "/ImagesVehicule/" + listeDeroulanteVehicule1.VehiculeSelectionne.NomImage + "");
                }
                ImageChangee = false;
                ValidationProvider.SetError(buttonAjouter, (EstMoto) ? "Moto correctement sauvegardée" : "Voiture correctement sauvegardée");
            }
        }
Example #4
0
 /// <summary>
 /// Constructeur spécifique
 /// </summary>
 /// <param name="Vehicule">Véhicule ayant ce pack disponible</param>
 /// <param name="PackOptionPackVehicule">Pack disponible pour ce véhicule</param>
 public PopvVehicule(Vehicule Vehicule, PackOptionPackVehicule PackOptionPackVehicule)
     : this()
 {
     DefinirId(Id);
     this.Vehicule = Vehicule;
     this.PackOptionPackVehicule = PackOptionPackVehicule;
 }
 /// <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;
 }
Example #6
0
 /// <summary>
 /// Constructeur par défaut
 /// </summary>
 public ClientVehicule()
     : base()
 {
     m_Immatriculation = "";
     m_NumeroChassis   = null;
     m_VehiculeActif   = -1;
     m_Client          = null;
     m_Vehicule        = null;
 }
Example #7
0
 /// <summary>
 /// Constructeur spécifique
 /// </summary>
 /// <param name="Immatriculation">Immatriculation du véhicule</param>
 /// <param name="NumeroChassis">Numéro de châssis du véhicule</param>
 /// <param name="VehiculeActif">Permet de savoir si ce véhicule appartient toujours à ce client</param>
 /// <param name="Client">Client à qui appartient le véhicule</param>
 /// <param name="Vehicule">Modèle du véhicule</param>
 public ClientVehicule(string Immatriculation, string NumeroChassis, int VehiculeActif, Client Client, Vehicule Vehicule)
     : this()
 {
     DefinirId(Id);
     this.Immatriculation = Immatriculation;
     this.NumeroChassis   = NumeroChassis;
     this.VehiculeActif   = VehiculeActif;
     this.Client          = Client;
     this.Vehicule        = Vehicule;
 }
Example #8
0
 /// <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 ClientVehicule(PDSGBD.MyDB Connexion, PDSGBD.MyDB.IEnregistrement Enregistrement)
     : this()
 {
     DefinirId(Enregistrement.ValeurChampComplet <int>(NomDeLaTablePrincipale, "id_client_vehicule"));
     this.Immatriculation = Enregistrement.ValeurChampComplet <string>(NomDeLaTablePrincipale, "immatriculation");
     this.NumeroChassis   = Enregistrement.ValeurChampComplet <string>(NomDeLaTablePrincipale, "numero_chassis");
     this.VehiculeActif   = Enregistrement.ValeurChampComplet <int>(NomDeLaTablePrincipale, "vehicule_actif");
     this.Client          = new Client(Connexion, Enregistrement);
     this.Vehicule        = new Vehicule(Connexion, Enregistrement);
 }
 private void buttonSupprimer_Click(object sender, EventArgs e)
 {
     errorProvider.Clear();
     ValidationProvider.Clear();
     if (listeDeroulanteVehicule1.VehiculeSelectionne != null)
     {
         Vehicule VehiculeReference = Program.GMBD.EnumererVehicule(null, new PDSGBD.MyDB.CodeSql("JOIN type ON vehicule.fk_id_type = type.id_type")
                                                                    , new PDSGBD.MyDB.CodeSql(@"WHERE (vehicule.id_vehicule IN(SELECT client_vehicule.fk_id_vehicule FROM client_vehicule WHERE fk_id_vehicule = {0})
                                                                                                    OR vehicule.id_vehicule IN(SELECT vehicule_vente.fk_id_vehicule FROM vehicule_vente WHERE fk_id_vehicule = {0})) AND id_vehicule = {0}", listeDeroulanteVehicule1.VehiculeSelectionne.Id), null).FirstOrDefault();
         // Si le véhicule est référencé au moins une fois dans les tables désignées au dessus on ne supprime que fictivement
         if (VehiculeReference != null)
         {
             VehiculeReference.Disponible = 0;
             if ((VehiculeReference.EstValide) && (Program.GMBD.ModifierVehicule(VehiculeReference)))
             {
                 ValidationProvider.SetError(buttonSupprimer, "Ce véhicule a été correctement supprimé");
                 textBoxModele.Text                = "";
                 numericUpDownPrix.Value           = 0;
                 numericUpDownTempsLivraison.Value = 1;
                 pictureBox1.Image = null;
                 listeDeroulanteVehicule1.VehiculeSelectionne = null;
                 listeDeroulanteVehicule1.Vehicule            = Program.GMBD.EnumererVehicule(null, new PDSGBD.MyDB.CodeSql("JOIN type ON vehicule.fk_id_type = type.id_type"), new PDSGBD.MyDB.CodeSql("WHERE disponible = 1 AND type = {0}", (EstMoto) ? "Moto" : "Voiture"), null);
                 ficheTechnique1.Caracteristique = null;
                 panelAjouterCaract.BringToFront();
                 buttonAjouter.Enabled       = true;
                 buttonModifier.Enabled      = false;
                 buttonSupprimer.Enabled     = false;
                 buttonAnnulerModele.Enabled = true;
             }
         }
         // Sinon aucun problème pour une suppression en cascade des packs, options et caractéristiques
         else
         {
             if (Program.GMBD.SupprimerVehicule(listeDeroulanteVehicule1.VehiculeSelectionne))
             {
                 ValidationProvider.SetError(buttonSupprimer, "Ce véhicule a été correctement supprimé");
                 textBoxModele.Text                = "";
                 numericUpDownPrix.Value           = 0;
                 numericUpDownTempsLivraison.Value = 1;
                 pictureBox1.Image = null;
                 listeDeroulanteVehicule1.VehiculeSelectionne = null;
                 listeDeroulanteVehicule1.Vehicule            = Program.GMBD.EnumererVehicule(null, new PDSGBD.MyDB.CodeSql("JOIN type ON vehicule.fk_id_type = type.id_type"), new PDSGBD.MyDB.CodeSql("WHERE disponible = 1 AND type = {0}", (EstMoto) ? "Moto" : "Voiture"), null);
                 ficheTechnique1.Caracteristique = null;
                 panelAjouterCaract.BringToFront();
                 buttonAjouter.Enabled       = true;
                 buttonModifier.Enabled      = false;
                 buttonSupprimer.Enabled     = false;
                 buttonAnnulerModele.Enabled = true;
             }
         }
     }
 }
        /// <summary>
        /// Se produit lors d'un changement de sélection dans la liste déroulante
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void ListeDeroulanteVehicule_SurChangementSelection(object sender, EventArgs e)
        {
            if (listeDeroulanteVehicule1.VehiculeSelectionne != null)
            {
                errorProvider.Clear();
                ValidationProvider.Clear();
                // Permet de charger l'outils comprenant l'interface de liaison entre les packs et le véhicule choisi
                lierPack.Vehicule = listeDeroulanteVehicule1.VehiculeSelectionne;
                lierPack.ChargerPanelPack();

                // Permet de charger l'outils comprenant l'interface de liaison entre les options et le véhicule choisi
                lierOptions.Vehicule = listeDeroulanteVehicule1.VehiculeSelectionne;
                lierOptions.ChargerPanelOptions();

                Vehicule VehiculeReference = Program.GMBD.EnumererVehicule(null, new PDSGBD.MyDB.CodeSql("JOIN type ON vehicule.fk_id_type = type.id_type")
                                                                           , new PDSGBD.MyDB.CodeSql(@"WHERE (vehicule.id_vehicule IN(SELECT client_vehicule.fk_id_vehicule FROM client_vehicule WHERE fk_id_vehicule = {0})
                                                                                                           OR vehicule.id_vehicule IN(SELECT vehicule_vente.fk_id_vehicule FROM vehicule_vente WHERE fk_id_vehicule = {0})) AND id_vehicule = {0}", listeDeroulanteVehicule1.VehiculeSelectionne.Id), null).FirstOrDefault();

                if (VehiculeReference == null)
                {
                    buttonModifier.Enabled = true;
                    panelLier.Enabled      = true;
                }
                else
                {
                    buttonModifier.Enabled = false;
                    panelLier.Enabled      = false;
                }
                buttonLierOptions.Enabled         = true;
                buttonAjouter.Enabled             = false;
                buttonSupprimer.Enabled           = true;
                buttonLierPack.Enabled            = true;
                lierPack.Enabled                  = true;
                buttonPanelLierCaract.Enabled     = true;
                ficheTechnique1.Caracteristique   = listeDeroulanteVehicule1.VehiculeSelectionne.EnumVehiculeCaracteristique;
                textBoxModele.Text                = listeDeroulanteVehicule1.VehiculeSelectionne.Modele;
                numericUpDownPrix.Value           = decimal.Parse(listeDeroulanteVehicule1.VehiculeSelectionne.PrixVehicule.ToString());
                numericUpDownTempsLivraison.Value = decimal.Parse(listeDeroulanteVehicule1.VehiculeSelectionne.TempsLivraison.ToString());
                if (File.Exists(Environment.GetFolderPath(Environment.SpecialFolder.Desktop).ToString() + "/ImagesVehicule/" + listeDeroulanteVehicule1.VehiculeSelectionne.NomImage + ""))
                {
                    pictureBox1.Image = Image.FromFile(Environment.GetFolderPath(Environment.SpecialFolder.Desktop).ToString() + "/ImagesVehicule/" + listeDeroulanteVehicule1.VehiculeSelectionne.NomImage + "");
                }
            }
            else if (listeDeroulanteVehicule1.VehiculeSelectionne == null)
            {
                buttonLierOptions.Enabled     = false;
                buttonPanelLierCaract.Enabled = false;
                panelLier.Enabled             = false;
                buttonLierPack.Enabled        = false;
                lierPack.Enabled = false;
            }
        }
 /// <summary>
 /// Constructeur spécifique
 /// </summary>
 /// <param name="AnneeConstruction">L'année de construction du véhicule</param>
 /// <param name="DateArrivee">La date d'arrivée du véhicule en concession</param>
 /// <param name="DateCommande">La date de commande du véhicule</param>
 /// <param name="DateMiseEnCirculation">La date de mise en circulation du véhicule</param>
 /// <param name="Kilometrage">Le kilomètrage du véhicule</param>
 /// <param name="NumeroChassis">Le numéro de châssis du véhicule</param>
 /// <param name="PrixTotal">Prix total du véhicule</param>
 /// <param name="StatutLivraison">Le statut de livraison du véhicule</param>
 /// <param name="Vehicule">Le modèle du véhicule</param>
 public VehiculeVente(int AnneeConstruction, DateTime DateArrivee, DateTime DateCommande, DateTime DateMiseEnCirculation, int Kilometrage, string NumeroChassis, double PrixTotal, Statut StatutLivraison, Vehicule Vehicule)
     : this()
 {
     DefinirId(Id);
     this.AnneeConstruction     = AnneeConstruction;
     this.DateArrivee           = DateArrivee;
     this.DateCommande          = DateCommande;
     this.DateMiseEnCirculation = DateMiseEnCirculation;
     this.Kilometrage           = Kilometrage;
     this.NumeroChassis         = NumeroChassis;
     this.PrixTotal             = PrixTotal;
     this.StatutLivraison       = StatutLivraison;
     this.Vehicule = Vehicule;
 }
 /// <summary>
 /// Se produit avant la modification en base de données
 /// </summary>
 private void VehiculeAModifier_AvantChangement(Vehicule Entite, Vehicule.Champs Champ, object ValeurActuelle, object NouvelleValeur, AccumulateurErreur AccumulateurErreur)
 {
     switch (Champ)
     {
     case Vehicule.Champs.Modele:
         Vehicule ModeleExiste = Program.GMBD.EnumererVehicule(null, new PDSGBD.MyDB.CodeSql("JOIN type_vehicule ON vehicule.fk_id_type = type.id_type"), new PDSGBD.MyDB.CodeSql("WHERE modele = {0} AND id_vehicule != {1} AND type = {2} AND disponible = 1", NouvelleValeur, Entite.Id, (EstMoto) ? "Moto" : "Voiture"), null).FirstOrDefault();
         if (ModeleExiste != null)
         {
             ValidationProvider.Clear();
             AccumulateurErreur.NotifierErreur("Ce modèle existe déjà");
         }
         break;
     }
 }
 /// <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 VehiculeVente(PDSGBD.MyDB Connexion, PDSGBD.MyDB.IEnregistrement Enregistrement)
     : this()
 {
     DefinirId(Enregistrement.ValeurChampComplet <int>(NomDeLaTablePrincipale, "id_vehicule_vente"));
     this.AnneeConstruction     = Enregistrement.ValeurChampComplet <int>(NomDeLaTablePrincipale, "annee_construction");
     this.DateArrivee           = Enregistrement.ValeurChampComplet <DateTime>(NomDeLaTablePrincipale, "date_arrivee");
     this.DateCommande          = Enregistrement.ValeurChampComplet <DateTime>(NomDeLaTablePrincipale, "date_commande");
     this.DateMiseEnCirculation = Enregistrement.ValeurChampComplet <DateTime>(NomDeLaTablePrincipale, "date_mise_en_circulation");
     this.Kilometrage           = Enregistrement.ValeurChampComplet <int>(NomDeLaTablePrincipale, "kilometrage");
     this.NumeroChassis         = Enregistrement.ValeurChampComplet <string>(NomDeLaTablePrincipale, "numero_chassis");
     this.PrixTotal             = Enregistrement.ValeurChampComplet <double>(NomDeLaTablePrincipale, "prix_total");
     this.StatutLivraison       = new Statut(Connexion, Enregistrement);
     this.Vehicule = new Vehicule(Connexion, Enregistrement);
 }
 /// <summary>
 /// Se produit avant le changement dans la base de données
 /// </summary>
 private void NouveauVehicule_AvantChangement(Vehicule Entite, Vehicule.Champs Champ, object ValeurActuelle, object NouvelleValeur, AccumulateurErreur AccumulateurErreur)
 {
     switch (Champ)
     {
     case Vehicule.Champs.Modele:
         Vehicule ModeleExiste = Program.GMBD.EnumererVehicule(null, null, new PDSGBD.MyDB.CodeSql("WHERE modele = {0} AND disponible = 1", NouvelleValeur)
                                                               , null).FirstOrDefault();
         if (ModeleExiste != null)
         {
             AccumulateurErreur.NotifierErreur("Ce nom de modèle existe déjà");
         }
         break;
     }
 }
 /// <summary>
 /// Constructeur par défaut
 /// </summary>
 public VehiculeVente()
     : base()
 {
     m_AnneeConstruction     = -1;
     m_DateArrivee           = DateTime.MaxValue;
     m_DateMiseEnCirculation = DateTime.MaxValue;
     m_DateCommande          = DateTime.MaxValue;
     m_Kilometrage           = -1;
     m_PrixTotal             = -1.0;
     m_NumeroChassis         = null;
     m_StatutLivraison       = null;
     m_Vehicule            = null;
     m_ChoixOptionVehicule = null;
     m_ChoixPackVehicule   = null;
     m_FactureVente        = null;
 }
        /// <summary>
        /// Indique sur quel UserControl mettre le message d'erreur pour chacune des valeurs modifiables
        /// </summary>
        private void NouveauVehicule_SurErreur(Vehicule Entite, Vehicule.Champs Champ, string MessageErreur)
        {
            switch (Champ)
            {
            case Vehicule.Champs.Modele:
                errorProvider.SetError(textBoxModele, MessageErreur);
                break;

            case Vehicule.Champs.PrixVehicule:
                errorProvider.SetError(numericUpDownTempsLivraison, MessageErreur);
                break;

            case Vehicule.Champs.NomImage:
                errorProvider.SetError(buttonAjouterImage, MessageErreur);
                break;

            case Vehicule.Champs.TempsLivraison:
                errorProvider.SetError(numericUpDownTempsLivraison, MessageErreur);
                break;

            default:
                break;
            }
        }
 /// <summary>
 /// Se produit lors du clic sur le bouton de modification des données du véhicule
 /// </summary>
 private void buttonModifier_Click(object sender, EventArgs e)
 {
     errorProvider.Clear();
     ValidationProvider.Clear();
     if (listeDeroulanteVehicule1.VehiculeSelectionne != null)
     {
         Vehicule VehiculeAModifier = listeDeroulanteVehicule1.VehiculeSelectionne;
         VehiculeAModifier.SurErreur       += NouveauVehicule_SurErreur;
         VehiculeAModifier.AvantChangement += VehiculeAModifier_AvantChangement;;
         VehiculeAModifier.Modele           = textBoxModele.Text;
         VehiculeAModifier.PrixVehicule     = double.Parse(numericUpDownPrix.Value.ToString());
         VehiculeAModifier.TempsLivraison   = int.Parse(numericUpDownTempsLivraison.Value.ToString());
         VehiculeAModifier.Disponible       = listeDeroulanteVehicule1.VehiculeSelectionne.Disponible;
         VehiculeAModifier.NomImage         = (ImageChangee) ? openFileDialog1.SafeFileName : listeDeroulanteVehicule1.VehiculeSelectionne.NomImage;
         VehiculeAModifier.TypeVehicule     = Program.GMBD.EnumererTypeVehicule(null, null, new PDSGBD.MyDB.CodeSql("WHERE type = {0}", (EstMoto) ? "Moto" : "Voiture"), null).FirstOrDefault();
         if ((VehiculeAModifier.EstValide) && (Program.GMBD.ModifierVehicule(VehiculeAModifier)))
         {
             ValidationProvider.SetError(buttonModifier, "Modification correctement effectuée");
             listeDeroulanteVehicule1.Vehicule            = Program.GMBD.EnumererVehicule(null, new PDSGBD.MyDB.CodeSql("JOIN type ON vehicule.fk_id_type = type.id_type"), new PDSGBD.MyDB.CodeSql("WHERE disponible = 1 AND type = {0}", (EstMoto) ? "Moto" : "Voiture"), null);
             listeDeroulanteVehicule1.VehiculeSelectionne = VehiculeAModifier;
             ImageChangee = false;
         }
     }
 }
Example #18
0
 /// <summary>
 /// Constructeur par défaut
 /// </summary>
 public VehiculeOptionVehicule()
     : base()
 {
     m_Vehicule       = null;
     m_OptionVehicule = null;
 }
Example #19
0
 /// <summary>
 /// Constructeur par défaut
 /// </summary>
 public PopvVehicule()
     : base()
 {
     m_Vehicule = null;
     m_PackOptionPackVehicule = null;
 }
Example #20
0
 public Element(Vehicule Vehicule)
 {
     this.Vehicule = Vehicule;
 }