private void update()
        {
            var db     = new shampazEntities();
            var factor = db.BuyFactors.Where(x => x.Id == EditedFactor.Id).FirstOrDefault();

            factor.Date        = (DateTime)pdpDate.GeorgianDate + dtpTime.Value.TimeOfDay;
            factor.PersonId    = SelectedPerson.Id;
            factor.TotalPrice  = Convert.ToDecimal(txtTotalPrice.Text);
            factor.Description = txtDescription.Text;

            try
            {
                factor.PaymentPrice = Convert.ToDecimal(txtPayment.Text);
            }
            catch
            {
                factor.PaymentPrice = 0;
            }

            //MessageBox.Show(factor.Id.ToString());
            db.BuyFactorItems.RemoveRange(factor.BuyFactorItems);

            //foreach( var item in factor.SellFactorItems )
            //{
            //    db.SellFactorItems.Remove(item);
            //    db.SaveChanges();
            //}

            foreach (DataGridViewRow r in dgvItems.Rows)
            {
                factor.BuyFactorItems.Add(
                    new BuyFactorItem
                {
                    Name       = r.Cells["clnProductName"].Value.ToString(),
                    Quantity   = Convert.ToDouble(r.Cells["clnNumber"].Value),
                    Price      = Convert.ToDecimal(r.Cells["clnProductPrice"].Value),
                    ProductId  = Convert.ToInt32(r.Cells["clnProductId"].Value),
                    TotalPrice = Convert.ToDecimal(r.Cells["clnTotalPrice"].Value)
                }
                    );
            }

            db.SaveChanges();
            DesktopAlert.Show("فاکتور بروزرسانی شد", eDesktopAlertColor.Green, eAlertPosition.BottomRight);
            EditedFactor = factor;
        }
        private void save()
        {
            var db = new shampazEntities();

            decimal paymentPrice;

            try
            {
                paymentPrice = Convert.ToDecimal(txtPayment.Text);
            } catch
            {
                paymentPrice = 0;
            }

            var factor = new BuyFactor
            {
                Date         = (DateTime)pdpDate.GeorgianDate + dtpTime.Value.TimeOfDay,
                PersonId     = SelectedPerson.Id,
                TotalPrice   = Convert.ToDecimal(txtTotalPrice.Text),
                Description  = txtDescription.Text,
                PaymentPrice = paymentPrice,
            };

            db.BuyFactors.Add(factor);

            foreach (DataGridViewRow r in dgvItems.Rows)
            {
                var ProductId = Convert.ToInt32(r.Cells["clnProductId"].Value);

                factor.BuyFactorItems.Add(
                    new BuyFactorItem
                {
                    Name       = r.Cells["clnProductName"].Value.ToString(),
                    Quantity   = Convert.ToDouble(r.Cells["clnNumber"].Value),
                    Price      = Convert.ToDecimal(r.Cells["clnProductPrice"].Value),
                    ProductId  = Convert.ToInt32(r.Cells["clnProductId"].Value),
                    TotalPrice = Convert.ToDecimal(r.Cells["clnTotalPrice"].Value),
                }
                    );
            }

            db.SaveChanges();
            DesktopAlert.Show("فاکتور ذخیره شد", eDesktopAlertColor.Green, eAlertPosition.BottomRight);
            EditedFactor = factor;
        }