private void btn_Savebuy_Click(object sender, EventArgs e) { if (dgv_SalesBillbuy.SelectedRows.Count == 0) { MessageBoxIcon.Warning.ToString(); MessageBox.Show("قائمة المنتجات فارغة"); } else { //numTotalCost.Value = decimal.Parse(numTotalCost.Value.ToString()); //numResCost.Value = numTotalCost.Value - numericPaiedCost.Value; SalesOrder salesOrder = new SalesOrder(); salesOrder.SalesRepresentative_id = int.Parse(cmb_companyName.SelectedValue.ToString()); // check==> salesOrder.salesRepresentative_ID = int.Parse(cmb_companyName.SelectedValue.ToString()); salesOrder.SalesOrderDate = dtp_BillDate.Value; salesOrder.SalesOrederTotalPrice = double.Parse(numericResCostbuy.Value.ToString()); salesOrder.status = false; context.SalesOrder.Add(salesOrder); context.SaveChanges(); context = new store(); ///sales order payment SalesOredersPaymment oredersPaymment = new SalesOredersPaymment(); oredersPaymment.Paied = double.Parse(numericPaiedCostbuy.Value.ToString()); oredersPaymment.Rest = double.Parse(numericResCostbuy.Value.ToString()); oredersPaymment.SalesOrder_id = salesOrder.ID; context.SalesOredersPaymments.Add(oredersPaymment); context.SaveChanges(); context = new store(); for (var item = 0; item < dgv_SalesBillbuy.Rows.Count - 1; item++) { SalesOrderDetails orderDetail = new SalesOrderDetails(); orderDetail.products_id = int.Parse(dgv_SalesBillbuy.Rows[item].Cells[4].Value.ToString()); orderDetail.quantity = int.Parse(dgv_SalesBillbuy.Rows[item].Cells[2].Value.ToString()); orderDetail.salesOrder_id = salesOrder.ID; context.SalesOrderDetails.Add(orderDetail); } context.SaveChanges(); context = new store(); for (var item = 0; item <= dgv_SalesBillbuy.Rows.Count - 1; item++) { int pidd = Int32.Parse(dgv_SalesBillbuy.Rows[item].Cells[4].Value.ToString()); Products product = context.products.FirstOrDefault(d => d.ID == pidd); product.quantityPerProducts += int.Parse(dgv_SalesBillbuy.Rows[item].Cells[2].Value.ToString()); } context.SaveChanges(); MessageBox.Show("تم العمليه بنجاح"); clearFields(); } }
private void btn_Save_Click(object sender, EventArgs e) { double totalCost = 0; for (var item = 0; item < dgv_SalesBill.Rows.Count - 1; item++) { totalCost += double.Parse(dgv_SalesBill.Rows[item].Cells[1].Value.ToString()) * double.Parse(dgv_SalesBill.Rows[item].Cells[2].Value.ToString()) - double.Parse(dgv_SalesBill.Rows[item].Cells[0].Value.ToString()); } numericTotalCost.Value = decimal.Parse(totalCost.ToString()); numericResCost.Value = numericTotalCost.Value - numericPaiedCost.Value; SalesOrder salesOrder = new SalesOrder(); salesOrder.customers_Id = context.customers.FirstOrDefault(c => c.Name == cmb_CustomerName.Text).ID; salesOrder.SalesOrderDate = dtp_BillDate.Value; salesOrder.SalesOrederTotalPrice = double.Parse(numericTotalCost.Value.ToString()); // salesOrder.SalesRepresentative.ID = context.SalesRepresentatives.FirstOrDefault(s => s.ID == int.Parse(mandobCompobox.SelectedValue.ToString())).ID; context.SalesOrder.Add(salesOrder); context.SaveChanges(); context = new store(); ///sales order payment SalesOredersPaymment salesOredersPaymment = new SalesOredersPaymment(); salesOredersPaymment.Paied = double.Parse(numericPaiedCost.Value.ToString()); salesOredersPaymment.Rest = double.Parse(numericResCost.Value.ToString()); salesOredersPaymment.SalesOrder_id = salesOrder.ID; context.SalesOredersPaymments.Add(salesOredersPaymment); context.SaveChanges(); context = new store(); for (var item = 0; item < dgv_SalesBill.Rows.Count - 1; item++) { SalesOrderDetails salesOrderDetails = new SalesOrderDetails(); salesOrderDetails.products_id = int.Parse(dgv_SalesBill.Rows[item].Cells[4].Value.ToString()); salesOrderDetails.quantity = int.Parse(dgv_SalesBill.Rows[item].Cells[2].Value.ToString()); salesOrderDetails.salesOrder_id = salesOrder.ID; var product = context.products.FirstOrDefault(p => p.ID == salesOrderDetails.products_id); product.quantityPerProducts -= salesOrderDetails.quantity; context.SalesOrderDetails.Add(salesOrderDetails); } context.SaveChanges(); MessageBox.Show("تم العمليه بنجاح"); }
private void btnFound_Click(object sender, EventArgs e) { var billDate = dtp_BillDate.Value; var salesRep = store.employee.FirstOrDefault(m => m.EmployeeName == MandobtextBox.Text); var customer = store.customers.FirstOrDefault(c => c.Name == CustomerNametextBox.Text); SalesOrder = ( from s in store.SalesOrder where (s.SalesRepresentative.Employee_Id == salesRep.ID /*&& s.SalesOrderDate == billDate*/ && s.customers_Id == customer.ID) select s ).FirstOrDefault(); if (SalesOrder != null) { panel1.Show(); panel2.Show(); panel3.Show(); btn_AddToBills.Show(); btn_Cancel.Show(); btn_Print.Show(); btn_Save.Show(); editBtn.Show(); searchBtn.Show(); SearchtextBox3.Show(); DeleteBtn.Show(); dgv_SalesBill.Show(); details = store.SalesOrderDetails.Where(s => s.salesOrder_id == SalesOrder.ID).ToList(); //dgv_SalesBill.Rows.Add(); int row = 0; //row = dgv_SalesBill.Rows.Count - 2; SalesOredersPaymment = store.SalesOredersPaymments.FirstOrDefault(s => s.SalesOrder_id == SalesOrder.ID); numericPaiedCost.Value = decimal.Parse(SalesOredersPaymment.Paied.ToString()); numericResCost.Value = decimal.Parse(SalesOredersPaymment.Rest.ToString()); numericTotalCost.Value = decimal.Parse(SalesOrder.SalesOrederTotalPrice.ToString()); foreach (var item in details) { dgv_SalesBill.Rows.Add(); var product = new Products(); product = store.products.FirstOrDefault(p => p.ID == item.products_id); //dgv_SalesBill["ProductID", row].Value = product.ID.ToString(); //dgv_SalesBill["productName", row].Value = product.ProductName.ToString(); //dgv_SalesBill["price", row].Value = product.Price_customer.ToString(); //dgv_SalesBill["discount", row].Value = product.Discount.ToString(); //dgv_SalesBill["productQuantity", row].Value = item.quantity.ToString(); dgv_SalesBill.Rows[row].Cells[4].Value = product.ID.ToString(); dgv_SalesBill.Rows[row].Cells[3].Value = product.ProductName.ToString(); dgv_SalesBill.Rows[row].Cells[1].Value = product.Price_customer.ToString(); dgv_SalesBill.Rows[row].Cells[0].Value = product.Discount.ToString(); dgv_SalesBill.Rows[row].Cells[2].Value = item.quantity.ToString(); row++; } } else { MessageBox.Show("هذه الفاتوره ليست موجوده"); } }