private void updateSoldItemsStatus()
        {
            try
            {
                foreach (DataGridViewRow x in dgvOrder.Rows)
                {
                    int n = x.Index;

                    modelno = dgvOrder.Rows[n].Cells["Col1"].Value.ToString();
                    prodId  = ctx.Products.FirstOrDefault(p => p.ModelNo == modelno).Id;

                    // updating each products
                    Product product = ctx.Products.FirstOrDefault(p => p.Id == prodId);
                    product.Quantity -= int.Parse(dgvOrder.Rows[n].Cells["Col4"].Value.ToString());

                    // updating each sold item status ...
                    SoldItem sitem = ctx.SoldItems.FirstOrDefault(s => s.SalesId == Id && s.Status == 0);
                    sitem.Status = 1;

                    ctx.SaveChanges();
                }
            }
            catch (Exception)
            {
                label6.Text      = "Database error has occurred!";
                label6.ForeColor = Color.Yellow;
            }
        }
示例#2
0
        private void saveSoldItems()
        {
            try
            {
                foreach (DataGridViewRow x in dgvOrder.Rows)
                {
                    int n = x.Index;
                    modelno = dgvOrder.Rows[n].Cells["modelNo1"].Value.ToString();
                    prodId  = ctx.Products.FirstOrDefault(p => p.ModelNo == modelno).Id;

                    // adding each item sold in the salesitem table
                    SoldItem item = new SoldItem()
                    {
                        SalesId   = lastSalesID,
                        ProductId = prodId,
                        Quantity  = int.Parse(dgvOrder.Rows[n].Cells["quantity"].Value.ToString()),
                        Status    = (total == decimal.Parse(txtTendered.Text) ? 1 : 0)
                    };
                    ctx.SoldItems.Add(item);

                    // updating each products

                    if (total == decimal.Parse(txtTendered.Text))
                    {
                        Product product = ctx.Products.FirstOrDefault(p => p.Id == prodId);
                        product.Quantity -= int.Parse(dgvOrder.Rows[n].Cells["quantity"].Value.ToString());
                    }

                    ctx.SaveChanges();
                }
            }
            catch (Exception)
            {
                label6.Text      = "Database error has occurred!";
                label6.ForeColor = Color.Yellow;
            }
        }