Example #1
0
        public ArticleButton(Article article)
        {            
            this.article = article;

            ArticleButtonDesign design = null;
            string designdef = DatabaseHandler.GetArticleButtonDesignXml(article);
            if (designdef == "")
                design = ArticleButtonDesign.GetDefaultDesign();
            else
            {
                design = new ArticleButtonDesign();
                XmlReader reader = XmlReader.Create(new System.IO.StringReader(designdef));
                design.ReadXml(reader);
            }
            this.buttonDesign = design;

            this.Width = 186;
            this.Height = 50;
            this.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
            this.Location = GetLocation();            

            InitializeControls();

            if (!article.IsVisible) this.Visible = false;
        }
Example #2
0
        public Cancellation(int cancellationId, User user, Article article, int count, DateTime created)
        {
            this.cancellationId = cancellationId;
            this.user = user;
            this.article = article;
            this.count = count;
            this.created = created;

            this.sum = article.Price * count;
        }
Example #3
0
File: Cart.cs Project: fhoner/Kasse
 public ArticleCount this[Article article]
 {
     get
     {
         int counter = 0;
         foreach (ArticleCount ac in container)
         {
             if (article.ArticleID == ac.Article.ArticleID)
                 return ac;
             counter++;
         }
         throw new Exception("Artikel ist nicht enthalten");
     }
 }
Example #4
0
File: Cart.cs Project: fhoner/Kasse
 public CartChangedEventArgs(Article article, Reason action)
 {
     this.Article = article;
     this.Action = action;
 }
Example #5
0
File: Cart.cs Project: fhoner/Kasse
        public void Decrement(Article article)
        {
            foreach (ArticleCount a in container)
            {
                if (a.Article.ArticleID == article.ArticleID)
                {
                    a.Count--;
                    OnCartChanged(this, new CartChangedEventArgs(article, CartChangedEventArgs.Reason.Decrement));
                    return;
                }
            }

            // article was not in container
            Add(article, -1);
        }
Example #6
0
File: Cart.cs Project: fhoner/Kasse
 public bool Remove(Article article)
 {
     foreach (ArticleCount a in container)
         if (a.Article.ArticleID == article.ArticleID)
         {
             container.Remove(a);
             OnCartChanged(this, new CartChangedEventArgs(article, CartChangedEventArgs.Reason.Remove));
             return true;
         }
     return false;
 }
Example #7
0
File: Cart.cs Project: fhoner/Kasse
        public bool Contains(Article article)
        {
            foreach (ArticleCount a in container)
                if (a.Article.ArticleID == article.ArticleID)
                {
                    return true;
                }

            return false;
        }
Example #8
0
 public ArticleCount(Article article, int count)
 {
     this.Article = article;
     this.Count = count;
 }
Example #9
0
        private static ObservableCollection<Article> GetArticles(int profileID, bool includeDeleted = false)
        {
            ObservableCollection<Article> articles = new ObservableCollection<Article>();

            try
            {
                SqlConnection connection = new SqlConnection(ConnectionString);
                SqlCommand cmd = new SqlCommand("SELECT * FROM Article WHERE ProfileID = " + profileID + (includeDeleted ? "" : " AND IsDeleted = 'False'"), connection);
                connection.Open();
                SqlDataReader reader = cmd.ExecuteReader();
                while (reader.Read())
                {
                    Article tmp = new Article();
                    tmp.ArticleID = Convert.ToInt32(reader["ArticleID"]);
                    tmp.ProfileID = Convert.ToInt32(reader["ProfileID"]);
                    tmp.Name = reader["Name"].ToString();
                    tmp.Price = Convert.ToDouble(reader["Price"]);
                    tmp.DoPrint = Convert.ToBoolean(reader["DoPrint"]);
                    tmp.IsEnabled = Convert.ToBoolean(reader["IsEnabled"]);
                    tmp.IsVisible = Convert.ToBoolean(reader["IsVisible"]);
                    tmp.Deposit = GetDeposit(GetArticleDepositID(tmp.ArticleID));
                    tmp.Created = Convert.ToDateTime(reader["Created"]);
                    tmp.Position = Convert.ToInt32(reader["Position"]);
                    articles.Add(tmp);
                }
                connection.Close();
            }
            catch (Exception ex)
            {
                LogWriter.Write(ex, LOGFILE_NAME);
                string errmsg = "Fehler beim Abrufen der Artikel.\n\n";
                errmsg += "DatabaseHandler.GetArticles(profileID): " + ex.Message;
                throw new Exception(errmsg);
            }

            return articles;
        }
Example #10
0
 public DepositButton(Article article)
     : base(article)
 {
     instanceCounter++;
 }
Example #11
0
 public CancellationTemplate(User user, Article article, int count)
 {
     this.User = user;
     this.Article = article;
     this.Count = count;
 }
Example #12
0
        public static string GetArticleButtonDesignXml(Article article)
        {
            string definition = "";

            try
            {
                SqlConnection connection = new SqlConnection(ConnectionString);
                SqlCommand cmd = new SqlCommand("SELECT Definition FROM ButtonDesign WHERE ArticleID = " + article.ArticleID, connection);
                connection.Open();
                SqlDataReader reader = cmd.ExecuteReader();
                while (reader.Read())
                {
                    definition = reader["Definition"].ToString();
                }
                connection.Close();
            }
            catch (Exception ex)
            {
                LogWriter.Write(ex, LOGFILE_NAME);
                string errmsg = "Fehler beim Abrufen des Buttondesigns des Artikels '" + article.Name + "'.\n\n";
                errmsg += "DatabaseHandler.GetArticleButtonDesignXml(article): " + ex.Message;
                throw new Exception(errmsg);
            }

            return definition;
        }
Example #13
0
        public static void SaveArticle(Article article)
        {
            try
            {
                string query = "UPDATE [Article] SET ";
                query += "Name = '" + article.Name + "',";
                query += "Price = " + article.Price.ToString().Replace(",", ".") + ",";
                query += "DoPrint = '" + article.DoPrint.ToString() + "',";
                query += "IsEnabled = '" + article.IsEnabled.ToString() + "',";
                query += "IsVisible = '" + article.IsVisible.ToString() + "',";
                query += "ProfileID = " + article.ProfileID + ",";
                query += "DepositID = " + (article.Deposit == null ? "-1" : article.Deposit.DepositID.ToString()) + ",";
                query += "Position = " + article.Position + ",";
                query += "IsDeleted = '" + article.IsDeleted.ToString() + "' ";
                query += "WHERE ArticleID = " + article.ArticleID;

                SqlConnection connection = new SqlConnection(ConnectionString);
                SqlCommand cmd = new SqlCommand(query, connection);
                connection.Open();
                cmd.ExecuteNonQuery();
                connection.Close();
            }
            catch (SqlException ex)
            {
                LogWriter.Write(ex, LOGFILE_NAME);
                foreach (SqlError err in ex.Errors)
                {
                    switch (err.Number)
                    {
                        case SqllErrorNumbers.DupKey: throw new Exception("Diese Daten werden bereits verwendet.");
                    }
                }
            }
            catch (Exception ex)
            {
                LogWriter.Write(ex, LOGFILE_NAME);
                string errmsg = "Fehler beim Speichern des Artikels.\n\n";
                errmsg += "DatabaseHandler.SaveArticle(article): " + ex.Message;
                throw new Exception(errmsg);
            }
        }
Example #14
0
        public static Article GetArticle(int articleId)
        {
            Article a = null;

            try
            {
                SqlConnection connection = new SqlConnection(ConnectionString);
                SqlCommand cmd = new SqlCommand("SELECT * FROM Article WHERE ArticleID = " + articleId, connection);
                connection.Open();
                SqlDataReader reader = cmd.ExecuteReader();
                while (reader.Read())
                {
                    a = new Article();
                    a.ArticleID = Convert.ToInt32(reader["ArticleID"]);
                    a.ProfileID = Convert.ToInt32(reader["ProfileID"]);
                    a.Name = reader["Name"].ToString();
                    a.Price = Convert.ToDouble(reader["Price"]);
                    a.DoPrint = Convert.ToBoolean(reader["DoPrint"]);
                    a.IsEnabled = Convert.ToBoolean(reader["IsEnabled"]);
                    a.IsVisible = Convert.ToBoolean(reader["IsVisible"]);
                    a.Deposit = GetDeposit(GetArticleDepositID(a.ArticleID));
                    a.Position = Convert.ToInt32(reader["Position"]);
                    a.Created = Convert.ToDateTime(reader["Created"]);
                }
                connection.Close();
            }
            catch (Exception ex)
            {
                LogWriter.Write(ex, LOGFILE_NAME);
                string errmsg = "Fehler beim Abrufen des Artikels.\n\n";
                errmsg += "DatabaseHandler.GetArticle(articleId): " + ex.Message;
                throw new Exception(errmsg);
            }

            if (a == null)
                throw new Exception("Es existiert kein Artikel mit den angegebenen Kriterien (" + articleId + ")\n\nDatabaseHandler.GetArticle(profileID, articlename)");

            return a;
        }
Example #15
0
File: Cart.cs Project: fhoner/Kasse
 public void Add(Article article)
 {
     Add(article, 1);
 }
Example #16
0
File: Cart.cs Project: fhoner/Kasse
        public void Add(Article article, int count)
        {
            if (this.Contains(article))
            {
                foreach (ArticleCount art in container)
                {
                    if (art.Article.ArticleID == article.ArticleID)
                        art.Count += count;
                }
            }
            else
            {
                this.container.Add(new ArticleCount(article, count));
            }

            OnCartChanged(this, new CartChangedEventArgs(article, CartChangedEventArgs.Reason.Add));
        }
Example #17
0
 public ArticleCount(Article article)
 {
     this.Article = article;
     this.Count = 1;
 }