Exemple #1
0
 private void buttonTerminer_Click(object sender, EventArgs e)
 {
     if (CalendrierRdv.FactureSelectionnee != null)
     {
         ValidationProvider.Clear();
         errorProvider.Clear();
         if (numericUpDownH.Value < 1)
         {
             errorProvider.SetError(numericUpDownH, "La réparation nécessite au minimum une heure de prestation");
         }
         else
         {
             if (ficheArticleFacture.NombreDeLigne > 0)
             {
                 RendezVousEntretienReparation RdvEntretienReparation = CalendrierRdv.FactureSelectionnee.RendezVous;
                 RdvEntretienReparation.Statut = Program.GMBD.EnumererStatut(null, null, new MyDB.CodeSql("WHERE statut = {0}", string.Format("Terminé")), null).FirstOrDefault();
                 if ((RdvEntretienReparation.EstValide) && (Program.GMBD.ModifierRendezvous(RdvEntretienReparation)))
                 {
                     Facture NouvelleFacture = CalendrierRdv.FactureSelectionnee;
                     NouvelleFacture.HeurePrestation = int.Parse(numericUpDownH.Value.ToString());
                     double PrixTotal = 0;
                     foreach (Reparation Reparation in NouvelleFacture.EnumReparation)
                     {
                         PrixTotal += Reparation.Article.PrixUnite * Reparation.QuantiteArticle;
                     }
                     foreach (FactureEntretien Entretien in NouvelleFacture.EnumFactureEntretien)
                     {
                         PrixTotal += Entretien.Entretien.Prix;
                     }
                     NouvelleFacture.PrixTotal   = PrixTotal;
                     NouvelleFacture.Commentaire = textBoxConseil.Text;
                     if ((NouvelleFacture.EstValide) && (Program.GMBD.ModifierFacture(NouvelleFacture)))
                     {
                         ClearPage();
                         CalendrierRdv.ChargerListViewRdv();
                         ValidationProvider.SetError(buttonTerminer, "Votre facture a été correctement enregsitrée");
                     }
                     else
                     {
                         RdvEntretienReparation.Statut = Program.GMBD.EnumererStatut(null, null, new MyDB.CodeSql("WHERE statut = {0}", string.Format("En attente")), null).FirstOrDefault();
                         if (RdvEntretienReparation.EstValide)
                         {
                             Program.GMBD.ModifierRendezvous(RdvEntretienReparation);
                         }
                         errorProvider.SetError(buttonTerminer, "Votre facture n'a pas été correctement enregistrée");
                     }
                 }
                 else
                 {
                     errorProvider.SetError(buttonTerminer, "Erreur interne, veuillez contacter un administrateur");
                 }
             }
             else
             {
                 errorProvider.SetError(ficheArticleFacture, "Il vous faut au minimum un article");
             }
         }
     }
 }
Exemple #2
0
 /// <summary>
 /// Constructeur spécifique
 /// </summary>
 /// <param name="NumeroFacture">Numéro de la facture</param>
 /// <param name="HeurePrestation">Heure(s) prestée(s) sur le véhicule</param>
 /// <param name="PrixTotal">Prix de l'entretien ou de la réparation</param>
 /// <param name="Informations">Informations encodées par le vendeur</param>
 /// <param name="Commentaire">Commentaire encodé par le mécanicien</param>
 /// <param name="RendezVous">Rendez-vous de cette facture</param>
 public Facture(string NumeroFacture, int HeurePrestation, double PrixTotal, string Informations, string Commentaire, RendezVousEntretienReparation RendezVous)
     : this()
 {
     DefinirId(Id);
     this.NumeroFacture   = NumeroFacture;
     this.HeurePrestation = HeurePrestation;
     this.PrixTotal       = PrixTotal;
     this.Informations    = Informations;
     this.Commentaire     = Commentaire;
     this.RendezVous      = RendezVous;
     m_ReparationCoche    = false;
 }
Exemple #3
0
 /// <summary>
 /// Constructeur par défaut
 /// </summary>
 public Facture()
     : base()
 {
     m_HeurePrestation  = -1;
     m_PrixTotal        = -1.0;
     m_Informations     = null;
     m_Commentaire      = null;
     m_RendezVous       = null;
     m_FactureEntretien = null;
     m_Reparation       = null;
     m_ReparationCoche  = false;
     m_NumeroFacture    = null;
 }
        /// <summary>
        /// Méthode permettant de réagir sur l'erreur d'une édition de la partie "dates" d'un rendez-vous
        /// </summary>
        private void RendezVousEnEdition_SurErreur(RendezVousEntretienReparation Entite, RendezVousEntretienReparation.Champs Champ, string MessageErreur)
        {
            switch (Champ)
            {
            case RendezVousEntretienReparation.Champs.DateDebut:
                errorProvider.SetError(textBoxInfoReparation, MessageErreur);
                break;

            case RendezVousEntretienReparation.Champs.DateFin:
                errorProvider.SetError(textBoxInfoReparation, MessageErreur);
                break;
            }
        }
 private void buttonAnnulationRendezvous_Click(object sender, EventArgs e)
 {
     if (CalendrierRdv.FactureSelectionnee != null)
     {
         RendezVousEntretienReparation RdvEnEdition = CalendrierRdv.FactureSelectionnee.RendezVous;
         RdvEnEdition.Statut = Program.GMBD.EnumererStatut(null, null, new MyDB.CodeSql("WHERE statut = \"Annuler\""), null).FirstOrDefault();
         if (Program.GMBD.ModifierRendezvous(RdvEnEdition))
         {
             ValidationProvider.SetError(buttonAnnulationRendezvous, "Le rendez-vous a été annulé");
             CalendrierRdv.ChargerListViewRdv();
             ClearFormulaire();
         }
     }
 }
Exemple #6
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 Facture(PDSGBD.MyDB Connexion, PDSGBD.MyDB.IEnregistrement Enregistrement)
     : this()
 {
     base.Connexion = Connexion;
     if (Enregistrement != null)
     {
         DefinirId(Enregistrement.ValeurChampComplet <int>(NomDeLaTablePrincipale, "id_facture"));
         this.NumeroFacture   = Enregistrement.ValeurChampComplet <string>(NomDeLaTablePrincipale, "numero_facture");
         this.HeurePrestation = Enregistrement.ValeurChampComplet <int>(NomDeLaTablePrincipale, "heure_prestation");
         this.PrixTotal       = Enregistrement.ValeurChampComplet <double>(NomDeLaTablePrincipale, "prix_total");
         this.Informations    = Enregistrement.ValeurChampComplet <string>(NomDeLaTablePrincipale, "informations");
         this.Commentaire     = Enregistrement.ValeurChampComplet <string>(NomDeLaTablePrincipale, "commentaire");
         this.RendezVous      = new RendezVousEntretienReparation(Connexion, Enregistrement);
     }
 }
 private void buttonReactiveRdv_Click(object sender, EventArgs e)
 {
     if (CalendrierRdv.FactureSelectionnee != null)
     {
         if (CalendrierRdv.FactureSelectionnee.RendezVous.DateDebut > DateTime.Now)
         {
             RendezVousEntretienReparation RdvEnEdition = CalendrierRdv.FactureSelectionnee.RendezVous;
             RdvEnEdition.Statut = Program.GMBD.EnumererStatut(null, null, new MyDB.CodeSql("WHERE statut = {0}", "En attente"), null).FirstOrDefault();
             if (Program.GMBD.ModifierRendezvous(RdvEnEdition))
             {
                 ValidationProvider.SetError(buttonReactiveRdv, "Le rendez-vous a été remis en attente");
                 CalendrierRdv.ChargerListViewRdv();
                 ClearFormulaire();
             }
         }
     }
 }