예제 #1
0
        public override ArticlePhilatélique SQLLireArticle(OleDbConnection m_bd, int p_numero)
        {
            ArticlePhilatélique Article = null;

            try
            {
                using (BdReader bdr = new BdReader(m_bd,
                                                   "SELECT numero, motif, date_parution, prix_payé, " +
                                                   "valeur_timbre, obliteration, taille_forme " +
                                                   "FROM Articles " +
                                                   "WHERE numero=?", p_numero))
                {
                    if (!bdr.Read() && !bdr.IsDBNull(1) && !bdr.IsDBNull(4) && !bdr.IsDBNull(5) &&
                        !bdr.IsDBNull(6))
                    {
                        return(null);
                    }

                    Article = new TimbreSeul(
                        bdr.GetInt32(0), bdr.GetString(1), bdr.GetDateTime(2), bdr.GetDoubleOuNull(3),
                        bdr.GetDouble(4), (Oblitération)bdr.GetInt32(5), bdr.GetString(6));
                }
            }
            catch { }
            return(Article);
        }
예제 #2
0
        public override bool FinirValidation(string p_motif, string p_tailleEtForme, DateTime?p_parution, double?p_prixPayé)
        {
            double       valeurTimbre = DoubleAvecMinimum(textBoxValeurTimbre, 0.01, "Valeur du timbre");
            Oblitération oblitération = checkBoxOblitéré.Checked ? Oblitération.Normale : Oblitération.Aucune;

            Article = new TimbreSeul(
                (Article != null) ? Article.Numéro : Document.Instance.NuméroNouvelArticle(),
                p_motif, p_tailleEtForme, p_parution, valeurTimbre, oblitération, p_prixPayé);
            return(true);
        }
예제 #3
0
        /// <summary>
        /// Fonction utilitaire pour tester plus rapidement la manipulation de timbre.
        /// </summary>
        private void DataSeed()
        {
            ArticlePhilatélique article1 = new TimbreSeul(3, "Fleurie", "Large", DateTime.Now, 5.99, Oblitération.Aucune, 15.99);
            ArticlePhilatélique article2 = new BlocDeCoin(4, "Paysage", "Large", DateTime.Now, Coin.InférieurDroit, 11.25, 12, 35.25);
            ArticlePhilatélique article3 = new TimbreSeul(5, "Monument", "Large", DateTime.Now, 2.99, Oblitération.Normale, 7.99);
            ArticlePhilatélique article4 = new BlocDeCoin(6, "Paysage", "Large", DateTime.Now, Coin.SupérieurDroit, 7.88, 9, 49.99);

            m_articles.Push(article1);
            m_articles.Push(article2);
            m_articles.Push(article3);
            m_articles.Push(article4);
        }
예제 #4
0
        public DlgSaisieTimbreSeul(TypeDeSaisie p_opération, TimbreSeul p_timbre)
            : base(p_opération, p_timbre)
        {
            InitializeComponent();
            CorrecteurDécimal.Corriger(textBoxValeurTimbre);

            InitialiserTitre(p_opération);

            if (p_timbre != null)
            {
                textBoxValeurTimbre.Text = $"{p_timbre.ValeurTimbre:F2}";
                checkBoxOblitéré.Checked = p_timbre.Oblitération == Oblitération.Normale;
            }
        }
예제 #5
0
        public DlgSaisieTimbreSeul(TypeDeSaisie p_opération, TimbreSeul p_timbre)
            : base(p_opération, p_timbre)
        {
            InitializeComponent();
            CorrecteurDécimal.Corriger(textBoxValeurTimbre);

            switch (p_opération)
            {
            case TypeDeSaisie.Ajout: Text = "Ajout d'un timbre seul"; break;

            case TypeDeSaisie.Modification: Text = "Modification d'un timbre seul"; break;

            case TypeDeSaisie.Autre: Debug.Assert(false, "Opération non implémentée"); break;
            }

            if (p_timbre != null)
            {
                textBoxValeurTimbre.Text = $"{p_timbre.ValeurTimbre:F2}";
                checkBoxOblitéré.Checked = p_timbre.Oblitération == Oblitération.Normale;
            }
        }
예제 #6
0
        public override bool SQLEcrireArticle(OleDbConnection m_bd, ArticlePhilatélique p_article)
        {
            TimbreSeul Article = p_article as TimbreSeul;

            try
            {
                BdNonQuery insert = new BdNonQuery(m_bd,
                                                   "INSERT INTO Articles(type, numero, motif, date_parution, prix_payé, " +
                                                   "valeur_timbre, obliteration, taille_forme) " +
                                                   "VALUES(?,?,?,?,? ,?,?,?)",
                                                   Article.GetType().ToString(), Article.Numéro, Article.Motif, Article.Parution.Value.Date, Article.PrixPayé,
                                                   Article.ValeurTimbre, (int)Article.Oblitération, Article.TailleEtForme);

                insert.ExecuteNonQuery();
            }
            catch (Exception e) {
                MB.AvertirCritique("Une erreur s'est produite lors de l'insertion d'un nouvel article dans la base de donnée. \n\n" +
                                   "{0}\n\n", e.Message);
                return(false);
            }
            return(true);
        }
예제 #7
0
 public CommandeModificationTS(TimbreSeul p_article)
     : base(p_article)
 {
 }