private void newOrder() { ClearEntries(); saleOrder = db.SaleOrders.Create(); saleOrder.user_id = 3; saleOrder.taken_money = 0; saleOrder.total_price = 0; prodsList = new HashSet<Product>(); dataGridView.DataSource = new List<SaleOrderItem>(); orderState = (int) OrderState.New; }
private void BindData(SaleOrder order) { prodsList.Clear(); // Update order state if (order.order_status.Trim() == "Done") orderState = (int)OrderState.Done; else orderState = (int)OrderState.OnProgress; // Updatee order information var so = db.SaleOrders.Where(s => s.order_id.Equals(order.order_id)) .Include(s => s.SaleOrderItems) .First(); txtCustName.Text = so.Customer.cust_name; txtAddress.Text = so.Customer.cust_address; txtPhone.Text = so.Customer.cust_phone; cbbStatus.SelectedItem = so.order_status.Trim(); if (so.date_ship != null) dtpShipDate.Value = so.date_ship; lblTotal.Text = so.total_price.ToString("#,##0.000"); txtTakenMoney.Text = so.taken_money.ToString("#,##0.000"); lblDept.Text = (so.total_price - so.taken_money).ToString("#,##0.000"); // Bind DataSource var soi = db.SaleOrderItems.Where(p => p.order_id.Equals(order.order_id)) .Include(p => p.Product); foreach (var item in soi) { item.ProductName = item.Product.prod_name; item.TotalItemPrice = item.quantity_by_stock * item.sale_price_by_stock + item.quantity_by_unit * item.sale_price_by_unit; // Add product to product list Product prod = db.Products.Where(p => p.prod_id.Equals(item.Product.prod_id)) .Include(p => p.Stocks) .First(); prodsList.Add(prod); } dataGridView.DataSource = soi.ToList(); // Assign newOrder to current order saleOrder = so; }