private void txtUnitCost_TextChanged(object sender, TextChangedEventArgs e) { TextBox txt = sender as TextBox; txt.Text = txt.Text.Trim(); ConvertRequestItemVM vm = txt.DataContext as ConvertRequestItemVM; if (!Regex.IsMatch(txt.Text, @"^\d\d{0,5}?(\.|(\.\d{0,2}0*))?$")) { if (Regex.IsMatch(txt.Text, @"^\d*(\.\d*)?$")) { int i = txt.Text.IndexOf("."); string d1 = txt.Text; string d2 = ""; if (i >= 0 && txt.Text.Length > i + 1) { d1 = txt.Text.Substring(0, i + 1); d1 = d1.Length > 7 ? d1.Substring(d1.Length - 7, 7) : d1; d2 = txt.Text.Length > i + 2 ? txt.Text.Substring(i + 1, 2) : txt.Text.Substring(i + 1, txt.Text.Length - i - 1); } else { d1 = d1.Length > 6 ? d1.Substring(d1.Length - 6, 6) : d1; } txt.Text = d1 + d2; } else { txt.Text = "0"; } } }
private ConvertRequestVM ConvertRequestInfoToVM(ConvertRequestInfo info) { ConvertRequestVM vm = info.Convert <ConvertRequestInfo, ConvertRequestVM>((i, v) => { v.StockSysNo = i.Stock == null ? null : i.Stock.SysNo; v.AuditUserSysNo = i.AuditUser == null ? null : i.AuditUser.SysNo; v.CreateUserSysNo = i.CreateUser == null ? null : i.CreateUser.SysNo; v.EditUserSysNo = i.EditUser == null ? null : i.EditUser.SysNo; v.OutStockUserSysNo = i.OutStockUser == null ? null : i.OutStockUser.SysNo; v.OutStockUserSysNo = i.OutStockUser == null ? null : i.OutStockUser.SysNo; v.ProductLineSysno = i.ProductLineSysno == null ? null : i.ProductLineSysno; }); if (info.ConvertItemInfoList != null) { info.ConvertItemInfoList.ForEach(p => { ConvertRequestItemVM item = vm.ConvertItemInfoList.FirstOrDefault(i => i.SysNo == p.SysNo); if (p.ConvertProduct != null) { item.ProductSysNo = p.ConvertProduct.SysNo; item.ProductName = p.ConvertProduct.ProductBasicInfo.ProductTitle.Content; item.ProductID = p.ConvertProduct.ProductID; } item.BatchDetailsInfoList = new List <ProductBatchInfoVM>(); item.BatchDetailsInfoList = EntityConverter <InventoryBatchDetailsInfo, ProductBatchInfoVM> .Convert(p.BatchDetailsInfoList); }); } return(vm); }
private void hlbtnDelete_Click(object sender, RoutedEventArgs e) { HyperlinkButton btn = sender as HyperlinkButton; ConvertRequestItemVM vm = btn.DataContext as ConvertRequestItemVM; ItemList.Remove(vm); RequestItemList.Remove(vm); dgProductList.ItemsSource = ItemList; SetTotalCost(); }
private void txtQuantity_TextChanged(object sender, TextChangedEventArgs e) { TextBox txt = sender as TextBox; txt.Text = txt.Text.Trim(); ConvertRequestItemVM vm = txt.DataContext as ConvertRequestItemVM; if (!Regex.IsMatch(txt.Text, @"^[1-9](\d{0,5})$")) { if (Regex.IsMatch(txt.Text, @"^\d+$")) { txt.Text = txt.Text.Length > 6 ? txt.Text.Substring(0, 6) : txt.Text; } else { txt.Text = "0"; } } }
private void hlbtnEdit_Click(object sender, RoutedEventArgs e) { HyperlinkButton btn = sender as HyperlinkButton; ConvertRequestItemVM selected = this.dgProductList.SelectedItem as ConvertRequestItemVM; ConvertRequestItemVM seleced = RequestItemList.Where(p => p.ProductSysNo == selected.ProductSysNo).FirstOrDefault(); #region Dialog UCProductBatch batch = new UCProductBatch(seleced.ProductSysNo.Value.ToString(), seleced.ProductID, seleced.HasBatchInfo, seleced.BatchDetailsInfoList); batch.IsCreateMode = false; batch.PType = Models.Request.PageType.Convert; batch.IsNotLend_Return = true; batch.StockSysNo = RequestVM.StockSysNo; batch.ProductSysNo = selected.ProductSysNo.Value.ToString(); batch.ProductID = selected.ProductID; batch.OperationQuantity = seleced.ConvertQuantity; batch.ConverterCost = seleced.ConvertUnitCost; batch.ConvertType = this.ConvertType; IDialog dialog = CurrentWindow.ShowDialog("批次信息", batch, (obj, args) => { ProductVMAndBillInfo productList = args.Data as ProductVMAndBillInfo; if (null != productList && productList.ProductVM != null) { productList.ProductVM.ForEach(p => { ConvertRequestItemVM vm = RequestItemList.FirstOrDefault(item => { return(item.ProductSysNo == p.SysNo); }); if (vm == null) { string errorMessage = "对不起,您没有权限访问{0}商品!"; InventoryQueryFilter queryFilter = new InventoryQueryFilter(); queryFilter.ProductSysNo = p.SysNo; queryFilter.UserName = Newegg.Oversea.Silverlight.ControlPanel.Core.CPApplication.Current.LoginUser.LoginName; queryFilter.CompanyCode = Newegg.Oversea.Silverlight.ControlPanel.Core.CPApplication.Current.CompanyCode; queryFilter.UserSysNo = Newegg.Oversea.Silverlight.ControlPanel.Core.CPApplication.Current.LoginUser.UserSysNo; //判断改商品是否属于当前PM int quantity = 1; if (p.IsHasBatch == 1) { quantity = (from s in p.ProductBatchLst select s.Quantity).Sum(); } else if (p.IsHasBatch == 0) { quantity = productList.Quantity; } if (!AuthMgr.HasFunctionAbsolute(AuthKeyConst.IM_SeniorPM_Query)) { InventoryQueryFacade.CheckOperateRightForCurrentUser(queryFilter, (Innerogj, innerArgs) => { if (!innerArgs.FaultsHandle()) { if (!innerArgs.Result) { Page.Context.Window.Alert(string.Format(errorMessage, p.ProductID)); return; } else { vm = new ConvertRequestItemVM { ProductSysNo = p.SysNo, ConvertQuantity = quantity, ConvertType = ConvertType, ConvertUnitCost = p.UnitCost, ConvertUnitCostWithoutTax = p.UnitCostWithoutTax, ProductName = p.ProductName, ProductID = p.ProductID, BatchDetailsInfoList = EntityConverter <BatchInfoVM, ProductBatchInfoVM> .Convert(p.ProductBatchLst), IsHasBatch = p.IsHasBatch, RequestStatus = ConvertRequestStatus.Origin }; vm.QuantityOrCostChanged = SetTotalCost; ItemList.Add(vm); RequestItemList.Add(vm); dgProductList.ItemsSource = ItemList; SetTotalCost(); } } }); } else { vm = new ConvertRequestItemVM { ProductSysNo = p.SysNo, ConvertQuantity = quantity, ConvertType = ConvertType, ConvertUnitCost = p.UnitCost, ConvertUnitCostWithoutTax = p.UnitCostWithoutTax, ProductName = p.ProductName, ProductID = p.ProductID, BatchDetailsInfoList = EntityConverter <BatchInfoVM, ProductBatchInfoVM> .Convert(p.ProductBatchLst), IsHasBatch = p.IsHasBatch, RequestStatus = ConvertRequestStatus.Origin }; vm.QuantityOrCostChanged = SetTotalCost; ItemList.Add(vm); RequestItemList.Add(vm); dgProductList.ItemsSource = ItemList; SetTotalCost(); } } else { Page.Context.Window.Alert(String.Format(vm.ConvertType == ConvertProductType.Source ? "商品:{0},已经存在于源商品中" : "商品:{0},已经存在于目标商品中", vm.ProductID)); } }); } }); batch.DialogHandler = dialog; #endregion SetTotalCost(); }