private ProductGroup CovertProductGroupMaintainVMToProductGroupEntity(ProductGroupMaintainVM data) { var productGroup = new ProductGroup { ProductList = new List <ProductInfo>(), ProductGroupSettings = new List <ProductGroupSettings>(), SysNo = data.ProductGroupSysNo, ProductGroupName = new LanguageContent(data.BasicInfoVM.ProductGroupName), ProductGroupModel = new LanguageContent(data.BasicInfoVM.ProductGroupModel), OperateUser = new UserInfo { SysNo = CPApplication.Current.LoginUser.UserSysNo, UserDisplayName = CPApplication.Current.LoginUser.DisplayName }, CompanyCode = CPApplication.Current.CompanyCode, LanguageCode = ConstValue.BizLanguageCode }; data.ProductListVM.ProductGroupProductVMList.ForEach(product => productGroup.ProductList.Add(new ProductInfo { SysNo = product.ProductSysNo, OperateUser = new UserInfo { SysNo = CPApplication.Current.LoginUser.UserSysNo, UserDisplayName = CPApplication.Current.LoginUser.DisplayName }, CompanyCode = CPApplication.Current.CompanyCode, LanguageCode = ConstValue.BizLanguageCode })); data.PropertyVM.ProductGroupSettings.Where(setting => setting.ProductGroupProperty.SysNo != 0).ForEach(setting => { var productGroupSetting = new ProductGroupSettings { ProductGroupProperty = new PropertyInfo { SysNo = setting.ProductGroupProperty.SysNo, }, PropertyBriefName = new LanguageContent(setting.PropertyBriefName), ImageShow = setting.ImageShow, Polymeric = setting.Polymeric }; productGroup.ProductGroupSettings.Add(productGroupSetting); }); return(productGroup); }
public override void OnPageLoad(object sender, EventArgs e) { base.OnPageLoad(sender, e); int productGroupSysNo; _vm = new ProductGroupMaintainVM(); if (Int32.TryParse(Request.Param, out productGroupSysNo)) { _productGroupFacade = new ProductGroupFacade(this); _vm.CreateFlag = false; ucProductGroupMaintainBasicInfo.ucCategoryPicker .LoadCategoryCompleted += (s, arg) => _productGroupFacade.GetProductGroupInfoBySysNo(productGroupSysNo, (obj, args) => { if (args.FaultsHandle()) { return; } if (args.Result == null || !args.Result.SysNo.HasValue || args.Result.ProductList.Count == 0) { Window.MessageBox.Show("无此商品组或商品组数据完整性有误,请联系管理员检查", MessageBoxType.Error); return; } ucProductGroupMaintainBasicInfo.ucCategoryPicker.cmbCategory3SelectionChanged -= ucProductGroupMaintainBasicInfo.C3SelectChangedClick; _vm.ProductGroupSysNo = args.Result.SysNo.Value; _vm.BasicInfoVM = _productGroupFacade.ConvertProductGroupEntityToProductGroupMaintainBasicInfoVM(args.Result); _vm.ProductListVM = _productGroupFacade.ConvertProductGroupEntityToProductGroupMaintainProductListVM(args.Result); var sysNo = args.Result.ProductList.First().ProductBasicInfo.ProductCategoryInfo.SysNo; if (sysNo.HasValue) { _productGroupFacade.GetCategorySetting(sysNo.Value, (o, a) => { if (a.FaultsHandle()) { return; } var categoryPropertyList = _productGroupFacade. ConvertCategoryPropertyListToPropertyVMList (a.Result.CategoryProperties.Where(property => property.PropertyType == PropertyType.Grouping)); categoryPropertyList.Insert(0, new PropertyVM { SysNo = 0, PropertyName = "请选择..." }); _vm.PropertyVM = _productGroupFacade.ConvertProductGroupEntityToProductGroupMaintainPropertySettingVM( args.Result); _vm.PropertyVM.CategoryPropertyList = categoryPropertyList; DataContext = _vm; ucProductGroupMaintainProductList.dgProductGroupProductList.ItemsSource = _vm.ProductListVM.ProductGroupProductVMList; }); } }); } else { _vm.CreateFlag = true; DataContext = _vm; } }
public void UpdateProductGroupInfo(ProductGroupMaintainVM data, EventHandler <RestClientEventArgs <ProductGroup> > callback) { _restClient.Update(UpdateProductGroupInfoRelativeUrl, CovertProductGroupMaintainVMToProductGroupEntity(data), callback); }