public void Save() { var vm = DataContext as CategoryKPIBasicInfoVM; if (vm == null) { return; } if (!ValidationManager.Validate(this)) { return; } var _facade = new CategoryKPIFacade(); _facade.UpdateCategoryBasic(vm, Type, (obj, args) => { if (args.FaultsHandle()) { //var errorMsg = args.Error.Faults[0].ErrorDescription; //CPApplication.Current.CurrentPage.Context.Window.Alert(errorMsg); return; } CPApplication.Current.CurrentPage.Context.Window.Alert(ResBrandMaintain.Info_SaveSuccessfully); }); }
/// <summary> /// 根据不同类型保存 /// </summary> /// <param name="Category3List"></param> /// <param name="type"></param> public void SaveCategoryByType(List <CategoryInfo> CategoryList, CategoryType type) { var vm = DataContext as CategoryKPIMinMarginVM; if (!ValidationManager.Validate(this)) { return; } vm.GetMargin(); var _facade = new CategoryKPIFacade(); List <CategoryKPIMinMarginVM> list = new List <CategoryKPIMinMarginVM>(); foreach (var item in CategoryList) { list.Add(new CategoryKPIMinMarginVM() { CategorySysNo = (int)item.SysNo, M1 = vm.M1, M2 = vm.M2, M3 = vm.M3, M4 = vm.M4, M5 = vm.M5, M6 = vm.M6, Margin = vm.Margin }); } if (list.Count > 0) { _facade.UpdateCategoryMinMarginByType(list, type, (obj, arg) => { if (arg.FaultsHandle()) { return; } CPApplication.Current.CurrentPage.Context.Window.Alert(ResBrandMaintain.Info_SaveSuccessfully); }); } }
private void BindPage() { if (SysNo > 0) { var _facade = new CategoryKPIFacade(); _facade.GetCategorySettingBySysNo(SysNo, type, (obj, args) => { if (args.FaultsHandle()) { return; } if (args.Result == null) { CPApplication.Current.CurrentPage.Context.Window.MessageBox.Show("没有获得品牌信息.", MessageBoxType.Warning); return; } var vm = args.Result.Convert <CategorySetting, CategroyKPIDetailVM>(); if (args.Result.CategoryMinMarginInfo.Margin != null) { var margin = (from c in args.Result.CategoryMinMarginInfo.Margin select new { c.Key, MinMarginKpivm = c.Value.Convert <MinMarginKPI, MinMarginKPIVM>() }) .ToDictionary(e => e.Key, e => e.MinMarginKpivm); vm.CategoryMinMarginInfo.Margin = margin; } vm.CategoryBasicInfo.CategorySysNo = SysNo; vm.CategoryMinMarginInfo.CategorySysNo = SysNo; vm.CategoryMinMarginInfo.InitMargin(); if (type == CategoryType.CategoryType3) { vm.CategoryRMAInfo.CategorySysNo = SysNo; ucCategoryKPIRMAInfo.Bind(vm.CategoryRMAInfo); } DataContext = vm; ucCategoryKPIBasicInfo.Type = type; ucCategoryKPIBasicInfo.Bind(vm.CategoryBasicInfo); ucCategoryKPIMinMargin.Type = type; ucCategoryKPIMinMargin.Bind(vm.CategoryMinMarginInfo); }); } else { CPApplication.Current.CurrentPage.Context.Window.MessageBox.Show("无法和获取三级类指标信息", MessageBoxType.Warning); return; } }
public UpdateProductCommissionQuotaBat() { InitializeComponent(); this.Loaded += (sender, e) => { if (Source.Category2SysNo == Source.Category3SysNo) //如果是二级类别的话页面传过来的值会相等。 { Source.Category3SysNo = null; } this.DataContext = Source; if (Type == CategoryType.CategoryType3) { myUCCategoryPicker.Category3Visibility = Visibility.Visible; } cboCategoryType.SelectedValue = Type; facade = new CategoryKPIFacade(); }; this.BtnClose.Click += (sender, e) => { CloseDialog(DialogResultType.Cancel); }; this.BtnSave.Click += (sender, e) => { ProductCommissionQuotaVM vm = this.DataContext as ProductCommissionQuotaVM; if (!ValidationManager.Validate(this)) { return; } if (vm.Category2SysNo == 0 || vm.Category2SysNo == null) { CPApplication.Current.CurrentPage.Context.Window.Alert("C2级别不能为所有", MessageType.Error); return; } if (vm.Category3SysNo != null && vm.Category3SysNo > 0) //三级类不为null 则保存三级类的限额 { facade.UpdateCategoryProductMinCommission(vm, (obj, arg) => { if (arg.FaultsHandle()) { return; } CPApplication.Current.CurrentPage.Context.Window.Alert("更新成功"); }); } else //保存该二级类下所有的三级类限额 { var categorylist = (from p in myUCCategoryPicker.Category3List where p.ParentSysNumber == vm.Category2SysNo select p).ToList(); List <ProductCommissionQuotaVM> list = new List <ProductCommissionQuotaVM>(); if (categorylist.Count > 0) { foreach (var item in categorylist) { list.Add(new ProductCommissionQuotaVM() { Category1SysNo = vm.Category1SysNo, Category2SysNo = vm.Category2SysNo, Category3SysNo = (int)item.SysNo, CategoryType = vm.CategoryType, CommissionMin = vm.CommissionMin, ManufacturerSysNo = vm.ManufacturerSysNo, PMSysNo = vm.PMSysNo, ProductStatus = vm.ProductStatus, Comparison = vm.Comparison }); } facade.UpdateCategory2ProductMinCommission(list, (obj, arg) => { if (arg.FaultsHandle()) { return; } CPApplication.Current.CurrentPage.Context.Window.Alert("更新成功"); }); } } }; cboCategoryType.SelectionChanged += (sender, e) => { CategoryType categoryType = (CategoryType)cboCategoryType.SelectedValue; if (categoryType == CategoryType.CategoryType3) { myUCCategoryPicker.Category3Visibility = Visibility.Visible; } else { myUCCategoryPicker.Category3Visibility = Visibility.Collapsed; } }; }