示例#1
0
        public ArtikelForm(Artikel artikel)
        {
            InitializeComponent();
            this.artikel = artikel;
            artikelID    = artikel.ID;

            tbArticalName.Text = artikel.Name;
            tbDescription.Text = artikel.Description;
            tbPrice.Text       = artikel.Price.ToString();
            tbStock.Text       = artikel.Storage.ToString();
            fillComboBoxCategory();
        }
示例#2
0
        private void CreateArtikel_Click(object sender, EventArgs e)
        {
            try
            {
                if (artikel == null)
                {
                    Artikel tempArtikel = new Artikel(
                        tbArticalName.Text,
                        tbDescription.Text,
                        decimal.Parse(tbPrice.Text),
                        int.Parse(tbStock.Text)
                        );

                    //Add Artikel to database
                    Program.db.Artikels.Add(tempArtikel);

                    //find the category to attach
                    Category categoryAttach = Program.db.Categories.Find(cbCategory.SelectedValue);

                    //now attach the artikel to category
                    categoryAttach.Artikels.Add(tempArtikel);

                    //Save database
                    Program.db.SaveChanges();
                }
                else
                {
                    //Artikel artikel = db.Artikels.Find(artikelID);
                    artikel.Name        = tbArticalName.Text;
                    artikel.Description = tbDescription.Text;
                    artikel.Price       = decimal.Parse(tbPrice.Text);
                    artikel.Storage     = int.Parse(tbStock.Text);

                    //find the category to attach
                    Category categoryAttach = Program.db.Categories.Find(cbCategory.SelectedValue);

                    //now attach the category to artikel
                    artikel.Categories.Add(categoryAttach);

                    //Save database
                    Program.db.SaveChanges();
                }

                Close();
            } catch
            {
                MessageBox.Show("Someting went wrong");
            }
        }
示例#3
0
        private void buttonRemove_Click(object sender, EventArgs e)
        {
            //get id from selected Artikel
            int id = int.Parse(lvOrderDetails.SelectedItems[0].Name);

            //create the Artikel_Order object that would match the needed removed object
            Artikel_Order RemoveArtikelOrder = (Artikel_Order)Program.db.Artikel_Order
                                               .Where(b => b.ArtikelID == id)
                                               .Where(b => b.OrderID == Order.ID)
                                               .First();

            //now remove this object from database
            Order.Artikel_Order.Remove(RemoveArtikelOrder);

            //save database
            Program.db.SaveChanges();

            //refresh listview

            //clear listview
            lvOrderDetails.Items.Clear();

            //remember this order

            foreach (Artikel_Order artikel_order in Order.Artikel_Order)
            {
                Artikel OrderArtikel = artikel_order.Artikel;

                //Create string array
                string[] Artikel =
                {
                    OrderArtikel.Name,
                    OrderArtikel.Description,
                    OrderArtikel.Price.ToString(),
                    artikel_order.Amount.ToString(),
                    artikel_order.Price.ToString()
                };

                //Create ListViewItem
                ListViewItem item = new ListViewItem(Artikel);

                //Set key value
                item.Name = OrderArtikel.ID.ToString();

                //Add item to ListView
                lvOrderDetails.Items.Add(item);
            }
        }
示例#4
0
        private void addArtikel_Click(object sender, EventArgs e)
        {
            if (lvArtikels.SelectedItems.Count < 1)
            {
                ArtikelForm form = new ArtikelForm();
                form.Show();
            }
            else
            {
                int artikelID = int.Parse(lvArtikels.SelectedItems[0].Name);

                Artikel artikel = Program.db.Artikels.Find(artikelID);

                ArtikelForm form = new ArtikelForm(artikel);
                form.Show();
            }
        }
示例#5
0
        private void lvOrders_DoubleClick(object sender, EventArgs e)
        {
            //Fill listview artikels
            artikelsList();

            //clear listview
            lvOrderDetails.Items.Clear();

            //get order id
            int orderID = int.Parse(lvOrders.SelectedItems[0].Name);

            //remember this order
            this.Order = Program.db.Orders.Find(orderID);

            foreach (Artikel_Order artikel_order in Order.Artikel_Order)
            {
                Artikel OrderArtikel = artikel_order.Artikel;

                //Create string array
                string[] Artikel =
                {
                    OrderArtikel.Name,
                    OrderArtikel.Description,
                    OrderArtikel.Price.ToString(),
                    artikel_order.Amount.ToString(),
                    artikel_order.Price.ToString()
                };

                //Create ListViewItem
                ListViewItem item = new ListViewItem(Artikel);

                //Set key value
                item.Name = OrderArtikel.ID.ToString();

                //Add item to ListView
                lvOrderDetails.Items.Add(item);
            }
        }
示例#6
0
        private void lvArtikels_DoubleClick(object sender, EventArgs e)
        {
            try
            {
                //define so it wont give errors
                int     amount = 00;
                decimal total  = 00;

                //get artikel by id
                int     artikelID = int.Parse(lvArtikels.SelectedItems[0].Name);
                Artikel artikel   = Program.db.Artikels.Find(artikelID);

                try
                {
                    int stockLeft = (int)artikel.Storage - int.Parse(ArtikelAmount.Text);

                    if (stockLeft >= 0)
                    {
                        amount          = int.Parse(ArtikelAmount.Text);
                        total           = (decimal)artikel.Price * amount;
                        artikel.Storage = artikel.Storage - amount;

                        //create new match from artikelID and the Order.ID
                        Artikel_Order artikelOrder = new Artikel_Order
                        {
                            ArtikelID = artikelID,
                            OrderID   = Order.ID,
                            Amount    = int.Parse(ArtikelAmount.Text),
                            Price     = total
                        };

                        //now insert it to database
                        Order.Artikel_Order.Add(artikelOrder);

                        //save database
                        Program.db.SaveChanges();

                        ////////////////////

                        //clear items
                        lvOrderDetails.Items.Clear();

                        foreach (Artikel_Order artikel_order in Order.Artikel_Order)
                        {
                            Artikel OrderArtikel = artikel_order.Artikel;

                            //Create string array
                            string[] Artikel =
                            {
                                OrderArtikel.Name,
                                OrderArtikel.Description,
                                OrderArtikel.Price.ToString(),
                                artikel_order.Amount.ToString(),
                                artikel_order.Price.ToString()
                            };

                            //Create ListViewItem
                            ListViewItem item = new ListViewItem(Artikel);

                            //Set key value
                            item.Name = OrderArtikel.ID.ToString();

                            //Add item to ListView
                            lvOrderDetails.Items.Add(item);
                        }

                        //refresh artikel list so the amount will be refreshed
                        artikelsList();
                    }
                    else
                    {
                        MessageBox.Show("Not enough stock");
                    }
                } catch
                {
                    MessageBox.Show("Please enter a number/decimal in the textbox");
                }
            } catch
            {
                MessageBox.Show("You cant have 2 of the same artikels, please delete the previous one and add a new one with the correct amount");
            }
        }