private void btnCompleted_Click(object sender, RoutedEventArgs e) { DataRow dr = ((DataRowView)dgInsockMaterial.CurrentItem).Row; if (dr == null) { return; } InsockSuppliersModel insockSupplier = dr["Supplier"] as InsockSuppliersModel; if (insockSupplier == null) { return; } if (insockSupplier.InsockSupplierName != "Reject") { dr["ActualDate"] = String.Format(new CultureInfo("en-US"), "{0:M/dd}", DateTime.Now); } for (int i = 0; i <= sizeRunList.Count - 1; i++) { SizeRunModel sizeRun = sizeRunList[i]; dr[String.Format("Column{0}", i)] = sizeRun.Quantity; } dgInsockMaterial.ItemsSource = null; dgInsockMaterial.ItemsSource = dt.AsDataView(); }
private void btnSave_Click(object sender, RoutedEventArgs e) { if (MessageBox.Show("Confirm Save?", this.Title, MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.No) { return; } dt = ((DataView)dgInsockMaterial.ItemsSource).ToTable(); for (int r = 0; r <= dt.Rows.Count - 1; r = r + 2) { DataRow dr = dt.Rows[r]; DataRow dr1 = dt.Rows[r + 1]; InsockSuppliersModel insockSupplier = (InsockSuppliersModel)dr["Supplier"]; if (insockSupplier != null) { int insockSupplierId = insockSupplier.InsockSupplierId; string actualDate = dr["ActualDate"] as String; DateTime dtActualDate = TimeHelper.Convert(actualDate); if (String.IsNullOrEmpty(actualDate) == false && dtActualDate != dtNothing) { InsockRawMaterialModel insockRawMaterial = new InsockRawMaterialModel { ProductNo = productNo, InsockSupplierId = insockSupplierId, ActualDate = dtActualDate, }; insockRawMaterialToInsertList.Add(insockRawMaterial); } for (int i = 0; i <= sizeRunList.Count - 1; i++) { string sizeNo = sizeRunList[i].SizeNo; int quantity = (Int32)dr[String.Format("Column{0}", i)]; int quantityReject = (Int32)dr1[String.Format("Column{0}", i)]; if (quantity >= 0 && quantityReject >= 0) { InsockMaterialModel model = new InsockMaterialModel { ProductNo = productNo, InsockSupplierId = insockSupplierId, SizeNo = sizeNo, Quantity = quantity, QuantityReject = quantityReject, }; insockMaterialToInsertList.Add(model); } } } } if (threadInsert.IsBusy == false) { this.Cursor = Cursors.Wait; btnSave.IsEnabled = false; threadInsert.RunWorkerAsync(); } }
private void dgInsockMaterial_CellEditEnding(object sender, DataGridCellEditEndingEventArgs e) { if (e.Column.GetValue(TagProperty) == null) { return; } string sizeNo = e.Column.GetValue(TagProperty).ToString(); if (sizeRunList.Select(s => s.SizeNo).Contains(sizeNo) == false) { return; } InsockSuppliersModel insockSupplier = (InsockSuppliersModel)((DataRowView)e.Row.Item)["Supplier"]; int qtyOld = 0; if (insockSupplier.InsockSupplierName != "Reject") { qtyOld = insockMaterialList.Where(o => o.InsockSupplierId == insockSupplier.InsockSupplierId && o.SizeNo == sizeNo).Sum(o => o.Quantity); } else if (insockSupplier.InsockSupplierName == "Reject") { qtyOld = insockMaterialList.Where(o => o.InsockSupplierId == insockSupplier.InsockSupplierId && o.SizeNo == sizeNo).Sum(o => o.QuantityReject); } int qtyOrder = sizeRunList.Where(s => s.SizeNo == sizeNo).Sum(s => s.Quantity); TextBox txtCurrent = (TextBox)e.EditingElement; int qtyNew = 0; if (int.TryParse(txtCurrent.Text, out qtyNew) == true) { txtCurrent.Text = (qtyOld + qtyNew).ToString(); if (qtyOld + qtyNew < 0 || qtyOld + qtyNew > qtyOrder) { txtCurrent.Text = qtyOld.ToString(); } } }