private void button3_Click(object sender, EventArgs e)
        {
            if (txtGrandtotal.Text.Trim() == "")
            {
                return;
            }

            var result = MessageBox.Show(
                "You must save the transaction before you cant generate Invoice\nDo you want to save transaction?",
                "Saving transaction", MessageBoxButtons.YesNo, MessageBoxIcon.Information);

            if (result == DialogResult.Yes)
            {
                _order.CustomerID      = int.Parse(cmbBillto.SelectedValue.ToString() ?? "0");
                _order.IsPaid          = false;
                _order.OrderDate       = DateTime.Now;
                _order.BillingDate     = dtpTransDate.Value.AddDays(30);
                _order.DeliveryAddress = txtAddress.Text;
                _order.DeliveryDate    = dtpTransDate.Value;
                _order.Term            = 30;

                foreach (var orderDetail in OrderDetailSource.OfType <Order_Detail>())
                {
                    _order.Order_Details.Add(orderDetail);
                }

                BusinessAccessLayer.GetEntity().Orders.AddObject(_order);
                BusinessAccessLayer.GetEntity().SaveChanges();

                GenerateInvoice();

                Close();
            }
        }
        private void textBox1_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                var products = BusinessAccessLayer.GetEntity().Products.Where(x => x.ProductName.Contains(textBox1.Text.Trim()));

                if (products.Count() <= 0)
                {
                    MessageBox.Show("Product Barcode not available", "invalid", MessageBoxButtons.OK,
                                    MessageBoxIcon.Information);
                    return;
                }
                _orderDetails           = new Order_Detail();
                _orderDetails.Quantity  = 1;
                _orderDetails.UnitPrice = products.First().UnitPrice;
                _orderDetails.ProductID = products.First().ProductID;
                _orderDetails.IsVoid    = false;
                _orderDetails.IsReturn  = false;

                OrderDetailSource.Add(_orderDetails);

                CalculateSumAmount();
                textBox11.Clear();
                textBox11.Focus();
            }
        }
 void CalculateSumAmount()
 {
     try
     {
         var sumAmount   = OrderDetailSource.OfType <Order_Detail>().Sum(e => e.Quantity * e.UnitPrice);
         var sumDiscount = OrderDetailSource.OfType <Order_Detail>().Sum(e => (e.Quantity * e.UnitPrice ?? 0) * ((decimal)(e.Discount ?? 0 / 100)));
         txtDiscount.Text   = sumDiscount.ToString();
         txtSubtotal.Text   = sumAmount.ToString();
         txtGrandtotal.Text = (sumAmount - sumDiscount).ToString();
     }
     catch
     {
     }
 }
Exemplo n.º 4
0
        private void btnCash_Click(object sender, EventArgs e)
        {
            if (txtGrandtotal.Text.Trim() == "")
            {
                return;
            }

            var paymentEntry = new frmPaymentEntry();

            paymentEntry.AmountToPay = double.Parse(txtGrandtotal.Text);
            paymentEntry.ShowDialog();

            if (!paymentEntry.IsSubmit)
            {
                return;
            }

            var payment = new Payment();

            payment.AmountPaid = (decimal)paymentEntry.Cash;
            payment.Balance    = (decimal)(paymentEntry.Cash - double.Parse(txtGrandtotal.Text));

            _order.CustomerID  = int.Parse(cmbBillto.SelectedValue.ToString() ?? "0");
            _order.IsPaid      = (payment.Balance == 0);
            _order.OrderDate   = dtpTransDate.Value;
            _order.BillingDate = dtpTransDate.Value;
            _order.Term        = 30;
            _order.Payments.Add(payment);

            foreach (var orderDetail in OrderDetailSource.OfType <Order_Detail>())
            {
                _order.Order_Details.Add(orderDetail);
            }

            BusinessAccessLayer.GetEntity().Orders.AddObject(_order);
            BusinessAccessLayer.GetEntity().SaveChanges();

            MessageBox.Show("transaction saved", "transaction", MessageBoxButtons.OK, MessageBoxIcon.Information);

            Close();
        }