Example #1
0
        private void BtnBatchAddProductClick(object sender, RoutedEventArgs e)
        {
            var ucPicker = new UCProductSearch {
                SelectionMode = SelectionMode.Multiple
            };

            ucPicker.DialogHandler = CPApplication.Current.CurrentPage.Context.Window.ShowDialog("选择商品", ucPicker, (obj, args) =>
            {
                if (args.DialogResult == DialogResultType.OK)
                {
                    if (args.Data != null)
                    {
                        var selectedProductList = args.Data as List <Basic.Components.UserControls.ProductPicker.ProductVM>;
                        new ProductGroupFacade().GetProductList(selectedProductList
                                                                .Select(product => product.SysNo.HasValue ? product.SysNo.Value : 0).ToList(), (o, a) =>
                        {
                            if (a.FaultsHandle())
                            {
                                return;
                            }

                            a.Result.ForEach(productInfo =>
                            {
                                if (!VM.ProductGroupProductVMList.Any(product => product.ProductSysNo == productInfo.SysNo))
                                {
                                    VM.ProductGroupProductVMList.Add(
                                        new ProductGroupFacade().ConvertProductInfoEntityToProductGroupProductVM(productInfo));
                                }
                            });
                            dgProductGroupProductList.ItemsSource = VM.ProductGroupProductVMList;
                        });
                    }
                }
            });
        }
        private void linkSelectProduct_Click(object sender, RoutedEventArgs e)
        {
            var item = new UCProductSearch {
                SelectionMode = SelectionMode.Multiple
            };

            item.DialogHandler = CPApplication.Current.CurrentPage.Context.Window.ShowDialog("选择商品", item, (s, args) =>
            {
                if (args.DialogResult == DialogResultType.OK)
                {
                    var selectedProducts = item._viewModel.SelectedProducts;
                    foreach (var product in selectedProducts.Where(product => !txtProductList.Text.Contains(product.ProductID)))
                    {
                        if (string.IsNullOrEmpty(txtProductList.Text))
                        {
                            txtProductList.Text = product.ProductID;
                        }
                        else
                        {
                            txtProductList.Text = txtProductList.Text + "\r" + product.ProductID;
                        }
                    }
                }
            });
        }
Example #3
0
        private void btnAdd_Click(object sender, RoutedEventArgs e)
        {
            UCProductSearch picker = new UCProductSearch();

            picker.SelectionMode = SelectionMode.Multiple;

            IDialog dialog = Window.ShowDialog("选择商品", picker, (o, a) =>
            {
                if (a.DialogResult == DialogResultType.OK)
                {
                    var list = a.Data as List <ProductVM>;
                    if (list != null && list.Count > 0)
                    {
                        list.ForEach(p =>
                        {
                            if (!ExperienceItemInfoList.Any(x => x.ProductSysNo == p.SysNo))
                            {
                                ExperienceItemInfoList.Add(new ExperienceItemVM()
                                {
                                    ProductSysNo = p.SysNo,
                                    ProductName  = p.ProductName,
                                    AllocateQty  = 0,
                                    ProductID    = p.ProductID
                                });
                            }
                        });

                        ucExperienceItemList.dgProductList.ItemsSource = new ObservableCollection <ExperienceItemVM>(ExperienceItemInfoList);
                        ucExperienceItemList.dgProductList.Bind();
                    }
                }
            });

            picker.DialogHandler = dialog;
        }
        private void AddProduct_Click(object sender, RoutedEventArgs e)
        {
            var             window          = CPApplication.Current.CurrentPage.Context.Window;
            UCProductSearch ucProductSearch = new UCProductSearch();

            ucProductSearch.SelectionMode = SelectionMode.Multiple;
            ucProductSearch.DialogHandler = window.ShowDialog(ResProductPicker.Dialog_Title, ucProductSearch, OnProductDialogResult);
        }
Example #5
0
        private void btnAddProduct_Click(object sender, RoutedEventArgs e)
        {
            UCProductSearch ucPicker = new UCProductSearch();

            ucPicker.SelectionMode = SelectionMode.Multiple;
            ucPicker.DialogHandler = CurrentWindow.ShowDialog("选择商品", ucPicker, (obj, args) =>
            {
                if (args.DialogResult == DialogResultType.OK)
                {
                    if (args.Data == null)
                    {
                        return;
                    }
                    CouponsInfoViewModel vm = (CouponsInfoViewModel)this.DataContext;

                    if (vm.ProductCondition == null)
                    {
                        vm.ProductCondition = new PSProductConditionViewModel();
                    }
                    if (vm.ProductCondition.RelProducts == null)
                    {
                        vm.ProductCondition.RelProducts = new RelProductViewModel();
                    }
                    if (vm.ProductCondition.RelProducts.ProductList == null)
                    {
                        vm.ProductCondition.RelProducts.ProductList = new ObservableCollection <RelProductAndQtyViewModel>();
                    }
                    List <ProductVM> selectedList = args.Data as List <ProductVM>;
                    foreach (ProductVM product in selectedList)
                    {
                        var pr = vm.ProductCondition.RelProducts.ProductList.FirstOrDefault(p => p.ProductSysNo == product.SysNo);
                        if (pr != null)
                        {
                            continue;
                        }
                        //if (product.Status != BizEntity.IM.ProductStatus.Active)
                        //{
                        //    CurrentWindow.Alert(string.Format("商品{0}必须为上架商品!",product.ProductID));
                        //    continue;
                        //}

                        RelProductAndQtyViewModel item = new RelProductAndQtyViewModel();
                        item.ProductSysNo = product.SysNo;
                        item.ProductID    = product.ProductID;
                        item.ProductName  = product.ProductName;
                        ////获取商品的毛利率
                        //new CouponsFacade(CPApplication.Current.CurrentPage).GetCouponGrossMarginRate(item.ProductSysNo.Value, (s, a) =>
                        //{
                        //    item.GrossMarginRate = a.Result;
                        //});

                        item.IsChecked = false;
                        vm.ProductCondition.RelProducts.ProductList.Add(item);
                    }
                    dgProduct.ItemsSource = vm.ProductCondition.RelProducts.ProductList;
                }
            });
        }
Example #6
0
        private void btnAddProduct_Click(object sender, RoutedEventArgs e)
        {
            UCProductSearch ucProductSearch = new UCProductSearch()
            {
                SelectionMode = SelectionMode.Multiple
            };

            ucProductSearch.DialogHandler = CurrentPage.Context.Window.ShowDialog(ResProductPicker.Dialog_Title, ucProductSearch, OnProductSelected);
        }
Example #7
0
        private void BtnBatchAddProduct_Click(object sender, RoutedEventArgs e)
        {
            if (CurrentVM == null)
            {
                CurrentWindow.Alert(ResFloorMaintain.Info_SectionChecked);
                return;
            }
            UCProductSearch ucProduct = new UCProductSearch();

            ucProduct.SelectionMode = SelectionMode.Multiple;
            ucProduct.DialogHandler = CurrentWindow.ShowDialog(ResFloorMaintain.Head_ProductAdd, ucProduct, (obj, args) =>
            {
                if (args.DialogResult == DialogResultType.OK)
                {
                    List <ProductVM> products = args.Data as List <ProductVM>;
                    if (products != null && products.Count > 0)
                    {
                        List <FloorSectionItem> sectionItems    = new List <FloorSectionItem>();
                        List <FloorSectionProductVM> proVMItems = new List <FloorSectionProductVM>();

                        products.ForEach(p =>
                        {
                            FloorSectionProductVM vm = EntityConverter <ProductVM, FloorSectionProductVM> .Convert(p, (s, t) =>
                            {
                                t.Priority     = 0;
                                t.ItemPosition = 0;
                                t.IsSelfPage   = 0;
                                t.ProductTitle = s.ProductName;
                                t.ProductPrice = s.CurrentPrice;
                                t.ProductID    = s.ProductID;
                                t.ProductSysNo = s.SysNo.Value;
                            });
                            FloorSectionItem sectionItem = LoadSectionItem(vm, FloorItemType.Product);
                            sectionItem.ItemProudct      = vm.ConvertVM <FloorSectionProductVM, FloorItemProduct>();
                            sectionItems.Add(sectionItem);
                            proVMItems.Add(vm);
                        });

                        ServiceFacade.BtnBatchCreateFloorSectionItem(sectionItems, (s, objArgs) =>
                        {
                            if (objArgs.FaultsHandle())
                            {
                                return;
                            }
                            for (int i = 0; i < objArgs.Result.Count; i++)
                            {
                                proVMItems[i].SysNo = objArgs.Result[i];
                                ProductListVM.Add(proVMItems[i]);
                                productResult.ItemsSource = ProductListVM;
                            }
                        });
                    }
                }
            });
        }
Example #8
0
        private void btnAdd_Click(object sender, RoutedEventArgs e)
        {
            model = (ProductChannelMemberQueryVM)this.DataContext;

            if (this.model.ChannelSysNo > 0)
            {
                var ucPicker = new UCProductSearch();
                ucPicker.SelectionMode = SelectionMode.Multiple;
                ucPicker.DialogHandler = CPApplication.Current.CurrentPage.Context.Window.ShowDialog("选择商品", ucPicker, (obj, args) =>
                {
                    if (args.DialogResult == DialogResultType.OK)
                    {
                        if (args.Data == null)
                        {
                            return;
                        }

                        var facade = new ProductChannelMemberFacade(this);
                        List <ProductChannelMemberPriceInfo> productList = new List <ProductChannelMemberPriceInfo>();
                        var selectedProductList = args.Data as List <Basic.Components.UserControls.ProductPicker.ProductVM>;

                        #region 赋值
                        selectedProductList.ForEach(p => productList.Add(new ProductChannelMemberPriceInfo
                        {
                            ProductSysNo       = p.SysNo == null ? 0 : int.Parse(p.SysNo.ToString()),
                            ChannelSysNO       = model.ChannelSysNo,
                            MemberPrice        = null,
                            MemberPricePercent = 1,
                            InDate             = DateTime.Now,
                            InUser             = CPApplication.Current.LoginUser.LoginName,
                            EditUser           = null,
                            CompanyCode        = CPApplication.Current.CompanyCode,
                            StoreCompanyCode   = CPApplication.Current.CompanyCode,
                            LanguageCode       = CPApplication.Current.LanguageCode
                        }));
                        #endregion

                        facade.InsertProductChannelMemberPrices(productList, (o, a) =>
                        {
                            if (a.FaultsHandle())
                            {
                                dgProductChannelQueryResult.Bind();
                                return;
                            }
                        });
                    }
                });
            }
            else
            {
                Window.Alert("请先选择渠道!", MessageType.Information);
                return;
            }
        }
Example #9
0
        private void HyProductSelect_Click(object sender, RoutedEventArgs e)
        {
            UCProductSearch item = new UCProductSearch();

            item.SelectionMode = SelectionMode.Multiple;
            item.DialogHandler = CPApplication.Current.CurrentPage.Context.Window.ShowDialog("选择商品", item, (s, args) =>
            {
                if (args.DialogResult == Newegg.Oversea.Silverlight.Controls.Components.DialogResultType.OK)
                {
                    ProductBind(item._viewModel.SelectedProducts);
                }
            });
        }
Example #10
0
        private void btnAdd_Click(object sender, RoutedEventArgs e)
        {
            model = (ProductChannelQueryVM)this.DataContext;

            if (this.model.ChannelSysNo > 0)
            {
                var ucPicker = new UCProductSearch();
                ucPicker.SelectionMode = SelectionMode.Multiple;
                ucPicker.DialogHandler = CPApplication.Current.CurrentPage.Context.Window.ShowDialog("选择商品", ucPicker, (obj, args) =>
                {
                    if (args.DialogResult == DialogResultType.OK)
                    {
                        if (args.Data != null)
                        {
                            var selectedProductList = args.Data as List <Basic.Components.UserControls.ProductPicker.ProductVM>;

                            List <ProductChannelInfo> productList = new List <ProductChannelInfo>();

                            selectedProductList.ForEach(p => productList.Add(new ProductChannelInfo {
                                ChannelInfo = new ChannelInfo {
                                    SysNo = this.model.ChannelSysNo
                                }
                                , ProductSysNo = p.SysNo
                                , ProductID    = p.ProductID
                                , CreateUser   = new UserInfo {
                                    SysNo             = CPApplication.Current.LoginUser.userSysNo
                                    , UserName        = CPApplication.Current.LoginUser.LoginName
                                    , UserDisplayName = CPApplication.Current.LoginUser.DisplayName
                                }
                            }));

                            var facade = new ProductChannelInfoFacade(this);

                            facade.CreateProductChannelInfo(productList, (o, a) =>
                            {
                                if (a.FaultsHandle())
                                {
                                    dgProductChannelQueryResult.Bind();
                                    return;
                                }
                            });
                        }
                    }
                });
            }
            else
            {
                Window.Alert("请先选择渠道!", MessageType.Information);
                return;
            }
        }
        private void hpladdProduct_Click(object sender, RoutedEventArgs e)
        {
            UCProductSearch uc = new UCProductSearch();

            uc.SelectionMode = SelectionMode.Multiple;
            //uc.ProductC3SysNo = _c3SysNo;

            IDialog dialog = Window.ShowDialog("添加商品", uc, (obj, args) =>
            {
                if (args.DialogResult == DialogResultType.OK)
                {
                    List <ProductVM> products = args.Data as List <ProductVM>;
                    if (products != null && products.Count > 0)
                    {
                        products.ForEach(p =>
                        {
                            GiftVoucherProductRelationVM temp = this._voucherProductVM.RelationProducts.FirstOrDefault(item =>
                            {
                                return(item.ProductSysNo == p.SysNo);
                            });

                            if (temp == null)
                            {
                                GiftVoucherProductRelationVM vm = EntityConverter <ProductVM, GiftVoucherProductRelationVM> .Convert(p, (s, t) =>
                                {
                                    t.ProductSysNo  = s.SysNo.Value;
                                    t.ProductStatus = s.Status;
                                    t.SysNo         = null;
                                });
                                vm.IsChecked = false;
                                vm.Type      = GVRReqType.Add;
                                vm.SaleInWeb = true;
                                _voucherProductVM.RelationProducts.Add(vm);
                            }
                            else
                            {
                                Window.Alert(string.Format("已存在编号为{0}的商品.", p.ProductID));
                            }
                        });

                        this.productgd.ItemsSource = this._voucherProductVM.RelationProducts;
                    }
                }
            });

            uc.DialogHandler = dialog;
        }
Example #12
0
        private void btnAddProduct_Click(object sender, RoutedEventArgs e)
        {
            if ((this._currentVM.SysNo ?? 0) <= 0)
            {
                this.CurrentWindow.Alert("请选择要添加商品的类别!", MessageType.Warning);
                return;
            }
            if (_currentVM.Level != ECCategoryLevel.Category3)
            {
                this.CurrentWindow.Alert("你当前选中的分类不是三级类别,不能添加商品!", MessageType.Warning);
                return;
            }

            UCProductSearch picker = new UCProductSearch();

            picker.SelectionMode = SelectionMode.Multiple;

            IDialog dialog = CurrentWindow.ShowDialog("选择商品", picker, (o, a) =>
            {
                if (a.DialogResult == DialogResultType.OK)
                {
                    var list = a.Data as List <ProductVM>;
                    if (list != null && list.Count > 0)
                    {
                        List <int> sysNoList = new List <int>();
                        list.ForEach(p =>
                        {
                            sysNoList.Add(p.SysNo.Value);
                        });
                        new ECCategoryFacade(CPApplication.Current.CurrentPage).CreateMapping(this._currentVM.SysNo.Value, sysNoList, (s, args) =>
                        {
                            if (args.FaultsHandle())
                            {
                                return;
                            }
                            this.CurrentWindow.Alert("提示", "添加商品成功!", MessageType.Information, (se, ar) =>
                            {
                                this.dgProductMapping.Bind();
                            });
                        });
                    }
                }
            });

            picker.DialogHandler = dialog;
        }
Example #13
0
        private void hyproduct_Click(object sender, RoutedEventArgs e)
        {
            listProduct.ToList().ForEach(s => { templistProduct.Add(s); });
            UCProductSearch item = new UCProductSearch();
            bool            flag = false;

            item.SelectionMode = SelectionMode.Multiple;
            item.DialogHandler = CPApplication.Current.CurrentPage.Context.Window.ShowDialog("选择商品", item, (s, args) =>
            {
                if (args.DialogResult == Newegg.Oversea.Silverlight.Controls.Components.DialogResultType.OK)
                {
                    if (listProduct.Count == 0)
                    {
                        listProduct = item._viewModel.SelectedProducts;
                    }
                    else
                    {
                        foreach (var product in item._viewModel.SelectedProducts)
                        {
                            flag = false;
                            foreach (var l in listProduct) //去重复
                            {
                                if (product.SysNo == l.SysNo)
                                {
                                    flag = true;
                                    break;
                                }
                            }
                            if (!flag)
                            {
                                listProduct.Add(product);
                            }
                        }
                    }
                    ProductBind();
                }
            });
        }
        /// <summary>
        /// 添加相关商品
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void Button_Click_1(object sender, RoutedEventArgs e)
        {
            UCProductSearch item = new UCProductSearch();
            bool            flag = false;

            item.SelectionMode = SelectionMode.Multiple;
            item.DialogHandler = CPApplication.Current.CurrentPage.Context.Window.ShowDialog("选择商品", item, (s, args) =>
            {
                if (args.DialogResult == Newegg.Oversea.Silverlight.Controls.Components.DialogResultType.OK)
                {
                    if (listRelate.Count == 0)
                    {
                        listRelate = item._viewModel.SelectedProducts;
                    }
                    else
                    {
                        foreach (var product in item._viewModel.SelectedProducts)
                        {
                            flag = false;
                            foreach (var l in listRelate)
                            {
                                if (product.SysNo == l.SysNo)
                                {
                                    flag = true;
                                    break;
                                }
                            }
                            if (!flag)
                            {
                                listRelate.Add(product);
                            }
                        }
                    }
                    this.ItemQueryResult.ItemsSource = listRelate;
                }
            }, new Size(850, 600));
        }
Example #15
0
        /// <summary>
        /// 添加商品到控件。
        /// </summary>
        /// <param name="gridControl"></param>
        /// <param name="itemList"></param>
        /// <param name="addType"></param>
        private void AddProductToDataGrid(Newegg.Oversea.Silverlight.Controls.Data.DataGrid gridControl, List <ProductItemVM> itemList, ItemAddType addType)
        {
            UCProductSearch ucPicker = new UCProductSearch();

            ucPicker.SelectionMode = SelectionMode.Multiple;
            StringBuilder sb = new StringBuilder();

            ucPicker.DialogHandler = CurrentWindow.ShowDialog(ECCentral.Portal.UI.MKT.Resources.ResBatchCreateSaleGift.Info_PickProducts, ucPicker, (obj, args) =>
            {
                if (args.DialogResult == DialogResultType.OK)
                {
                    if (args.Data == null)
                    {
                        return;
                    }

                    List <ProductVM> selectedList = args.Data as List <ProductVM>;
                    foreach (ProductVM product in selectedList)
                    {
                        if (itemList.Where(p => p.ProductSysNo == product.SysNo).ToList().Count > 0)
                        {
                            sb.AppendLine(string.Format(ResBatchCreateSaleGift.ResourceManager.GetString("Warn_GoodsExsistInList", CurrentCulture), product.ProductID));
                            continue;
                        }

                        if (addType == ItemAddType.Product)
                        {
                            if (product.Status.Value != BizEntity.IM.ProductStatus.Active)
                            {
                                sb.AppendLine(string.Format(ECCentral.Portal.UI.MKT.Resources.ResBatchCreateSaleGift.Info_ProductMustBeActive, product.ProductID));//商品必须为上架商品。
                                continue;
                            }
                        }
                        else if (addType == ItemAddType.Gift)
                        {
                            if (product.Status.Value != BizEntity.IM.ProductStatus.InActive_UnShow)
                            {
                                sb.AppendLine(string.Format(ECCentral.Portal.UI.MKT.Resources.ResBatchCreateSaleGift.Info_ProductMustBeUnDisplay, product.ProductID));//商品必须为不展示商品。
                                continue;
                            }
                        }
                        else
                        {
                        }

                        ProductItemVM item = new ProductItemVM();
                        item.IsChecked     = false;
                        item.ProductID     = product.ProductID;
                        item.ProductSysNo  = product.SysNo;
                        item.ProductName   = product.ProductName;
                        item.AvailableQty  = product.AvailableQty;
                        item.ConsignQty    = product.ConsignQty;
                        item.UnitCost      = product.UnitCost;
                        item.CurrentPrice  = product.CurrentPrice;

                        itemList.Add(item);
                    }

                    gridControl.ItemsSource = itemList;

                    if (sb.Length > 0)
                    {
                        CurrentWindow.Alert(sb.ToString());
                    }
                }
            });
        }
        private void btnAddProduct_Click(object sender, RoutedEventArgs e)
        {
            UCProductSearch ucPicker = new UCProductSearch();

            ucPicker.SelectionMode = SelectionMode.Multiple;
            ucPicker.DialogHandler = CurrentWindow.ShowDialog("选择商品", ucPicker, (obj, args) =>
            {
                if (args.DialogResult == DialogResultType.OK)
                {
                    SaleGiftInfoViewModel vm      = this.DataContext as SaleGiftInfoViewModel;
                    List <ProductVM> selectedList = args.Data as List <ProductVM>;
                    StringBuilder message         = new StringBuilder();

                    foreach (ProductVM product in selectedList)
                    {
                        //if (product.Status.Value != BizEntity.IM.ProductStatus.Active)
                        //{
                        //    message.AppendLine(string.Format("商品{0}必须为上架商品!", product.ProductID));
                        //    continue;
                        //}

                        SaleGift_RuleSettingViewModel settingVM = new SaleGift_RuleSettingViewModel();
                        settingVM.IsChecked = false;

                        settingVM.RelProduct.ProductSysNo = product.SysNo;
                        settingVM.RelProduct.ProductID    = product.ProductID;
                        settingVM.RelProduct.ProductName  = product.ProductName;
                        settingVM.RelProduct.AvailableQty = product.AvailableQty;
                        settingVM.RelProduct.ConsignQty   = product.ConsignQty;
                        settingVM.RelProduct.UnitCost     = product.UnitCost;
                        settingVM.RelProduct.CurrentPrice = product.CurrentPrice;

                        if (vm.ProductScopeList.FirstOrDefault(f => f.RelProduct.ProductSysNo == settingVM.RelProduct.ProductSysNo) != null)
                        {
                            message.AppendLine(string.Format("商品{0}已经存在!", product.ProductID));
                            continue;
                        }

                        //获取商品的毛利
                        //new CouponsFacade(CPApplication.Current.CurrentPage).GetCouponGrossMarginRate(product.SysNo.Value, (s, a) =>
                        //{
                        //    settingVM.RelProduct.GrossMarginRate = a.Result;
                        //});

                        settingVM.Type = SaleGiftSaleRuleType.Item;
                        if (vm.IsGlobalProduct)
                        {
                            settingVM.ComboType = AndOrType.Not;
                        }
                        else
                        {
                            if (rdoProductInclude.IsChecked.HasValue && rdoProductInclude.IsChecked.Value)
                            {
                                settingVM.ComboType = AndOrType.Or;
                            }
                            else
                            {
                                settingVM.ComboType = AndOrType.Not;
                            }
                        }

                        #region
                        //非整网规则,不能单独添加排斥类
                        string errorStr = ValidateDataForAdd(settingVM);
                        if (!string.IsNullOrEmpty(errorStr))
                        {
                            CPApplication.Current.CurrentPage.Context.Window.Alert(errorStr);
                            return;
                        }
                        #endregion

                        vm.ProductScopeList.Add(settingVM);
                    }

                    if (message.Length > 0)
                    {
                        CPApplication.Current.CurrentPage.Context.Window.Alert(message.ToString(), MessageType.Warning);
                    }

                    dgProduct.ItemsSource = vm.ProductScopeList;
                }
            });
        }
Example #17
0
        private void btnDeleteProduct_Click(object sender, RoutedEventArgs e)
        {
            var source = this.dgProductMapping.ItemsSource as dynamic;

            if (source == null)
            {
                this.CurrentWindow.Alert("请类别下无商品!", MessageType.Warning);
            }
            List <int> list = new List <int>();

            foreach (var item in source)
            {
                if (item.IsChecked == true)
                {
                    list.Add(item.ProductSysNo);
                }
            }
            if (list.Count > 0)
            {
                CurrentWindow.Confirm("你确定要删除选择的商品吗?", (o1, a1) =>
                {
                    if (a1.DialogResult == DialogResultType.OK)
                    {
                        new ECCategoryFacade(CPApplication.Current.CurrentPage).DeleteMapping(this._currentVM.SysNo.Value, list, (s, args) =>
                        {
                            if (args.FaultsHandle())
                            {
                                return;
                            }
                            //重新绑定数据
                            this.dgProductMapping.Bind();
                        });
                    }
                });
            }
            else
            {
                UCProductSearch picker = new UCProductSearch();
                picker.SelectionMode = SelectionMode.Multiple;

                IDialog dialog = CurrentWindow.ShowDialog("删除商品", picker, (o, a) =>
                {
                    if (a.DialogResult == DialogResultType.OK)
                    {
                        var list2 = a.Data as List <ProductVM>;
                        if (list2 != null && list2.Count > 0)
                        {
                            List <int> sysNoList = new List <int>();
                            list2.ForEach(p =>
                            {
                                sysNoList.Add(p.SysNo.Value);
                            });

                            CurrentWindow.Confirm("你确定要删除选择的商品吗?", (o1, a1) =>
                            {
                                if (a1.DialogResult == DialogResultType.OK)
                                {
                                    new ECCategoryFacade(CPApplication.Current.CurrentPage).DeleteMapping(this._currentVM.SysNo.Value, sysNoList, (s, args) =>
                                    {
                                        if (args.FaultsHandle())
                                        {
                                            return;
                                        }
                                        //重新绑定数据
                                        this.dgProductMapping.Bind();
                                    });
                                }
                            });
                        }
                    }
                });
                picker.DialogHandler = dialog;
            }
        }
        private void btnAddProduct_Click(object sender, RoutedEventArgs e)
        {
            UCProductSearch ucPicker = new UCProductSearch();

            ucPicker.SelectionMode = SelectionMode.Multiple;
            ucPicker.DialogHandler = CurrentWindow.ShowDialog("选择商品", ucPicker, (obj, args) =>
            {
                if (args.DialogResult == DialogResultType.OK)
                {
                    if (args.Data == null)
                    {
                        return;
                    }
                    SaleGiftInfoViewModel vm      = this.DataContext as SaleGiftInfoViewModel;
                    List <ProductVM> selectedList = args.Data as List <ProductVM>;

                    StringBuilder message = new StringBuilder();

                    foreach (ProductVM product in selectedList)
                    {
                        //if (product.Status.Value != BizEntity.IM.ProductStatus.Active)
                        //{
                        //    message.AppendLine(string.Format("商品{0}必须为上架商品!",product.ProductID));
                        //    continue;
                        //}

                        SaleGift_RuleSettingViewModel settingVM = new SaleGift_RuleSettingViewModel();
                        settingVM.IsChecked = false;

                        settingVM.RelProduct.ProductSysNo = product.SysNo;
                        settingVM.RelProduct.ProductID    = product.ProductID;
                        settingVM.RelProduct.ProductName  = product.ProductName;
                        settingVM.RelProduct.AvailableQty = product.AvailableQty;
                        settingVM.RelProduct.ConsignQty   = product.ConsignQty;
                        settingVM.RelProduct.VirtualQty   = product.OnlineQty - (product.AvailableQty + product.ConsignQty);
                        settingVM.RelProduct.UnitCost     = product.UnitCost;
                        settingVM.RelProduct.CurrentPrice = product.CurrentPrice;
                        //获取商品的毛利
                        //new CouponsFacade(CPApplication.Current.CurrentPage).GetCouponGrossMarginRate(product.SysNo.Value, (s, a) =>
                        //{
                        //    settingVM.RelProduct.GrossMarginRate = a.Result;
                        //});
                        settingVM.RelProduct.MinQty = "1";

                        if (vm.ProductOnlyList.FirstOrDefault(f => f.RelProduct.ProductSysNo == settingVM.RelProduct.ProductSysNo) != null)
                        {
                            message.AppendLine(string.Format("商品{0}已经存在!", product.ProductID));
                            continue;
                        }

                        settingVM.Type      = SaleGiftSaleRuleType.Item;
                        settingVM.ComboType = AndOrType.And;

                        vm.ProductOnlyList.Add(settingVM);
                    }

                    if (message.Length > 0)
                    {
                        CPApplication.Current.CurrentPage.Context.Window.Alert(message.ToString(), MessageType.Warning);
                    }

                    dgProductOnly.ItemsSource = vm.ProductOnlyList;
                }
            });
        }
Example #19
0
        private void btnAddGift_Click(object sender, RoutedEventArgs e)
        {
            UCProductSearch ucPicker = new UCProductSearch();

            ucPicker.SelectionMode = SelectionMode.Multiple;
            ucPicker.DialogHandler = CurrentWindow.ShowDialog("选择商品", ucPicker, (obj, args) =>
            {
                if (args.DialogResult == DialogResultType.OK)
                {
                    SaleGiftInfoViewModel vm      = this.DataContext as SaleGiftInfoViewModel;
                    List <ProductVM> selectedList = args.Data as List <ProductVM>;

                    StringBuilder message = new StringBuilder();

                    foreach (ProductVM product in selectedList)
                    {
                        //赠品必须是非展示状态
                        if (product.Status != BizEntity.IM.ProductStatus.InActive_Show)
                        {
                            message.AppendLine(string.Format("赠品{0}必须是非展示状态!", product.ProductID));
                            continue;
                        }


                        SaleGift_GiftItemViewModel giftVM = new SaleGift_GiftItemViewModel();
                        giftVM.IsChecked = false;

                        giftVM.ProductSysNo = product.SysNo;
                        giftVM.ProductID    = product.ProductID;
                        giftVM.ProductName  = product.ProductName;
                        giftVM.AvailableQty = product.AvailableQty;
                        giftVM.ConsignQty   = product.ConsignQty;
                        giftVM.VirtualQty   = product.OnlineQty - (product.AvailableQty + product.ConsignQty);
                        giftVM.UnitCost     = product.UnitCost;
                        giftVM.CurrentPrice = product.CurrentPrice;

                        if (vm.GiftItemList.FirstOrDefault(f => f.ProductSysNo == giftVM.ProductSysNo) != null)
                        {
                            message.AppendLine(string.Format("商品{0}已经存在!", product.ProductID));
                            continue;
                        }

                        //获取商品的毛利
                        new CouponsFacade(CPApplication.Current.CurrentPage).GetCouponGrossMarginRate(product.SysNo.Value, (s, a) =>
                        {
                            giftVM.GrossMarginRate = a.Result;
                        });

                        giftVM.Priority = (vm.GiftItemList.Count + 1).ToString();
                        if (vm.GiftComboType.Value == SaleGiftGiftItemType.AssignGift)
                        {
                            giftVM.Count = "1";
                        }
                        else
                        {
                            giftVM.Count     = "0";
                            giftVM.PlusPrice = giftVM.CurrentPrice.GetValueOrDefault().ToString("f2");
                        }

                        vm.GiftItemList.Add(giftVM);
                    }

                    if (message.Length > 0)
                    {
                        CPApplication.Current.CurrentPage.Context.Window.Alert(message.ToString(), MessageType.Warning);
                    }

                    dgGiftProduct.ItemsSource = vm.GiftItemList;
                    dgGiftProduct.Bind();
                }
            });
        }
Example #20
0
        private void btnAddProduct_Click(object sender, RoutedEventArgs e)
        {
            UCProductSearch content = new UCProductSearch();

            content.SelectionMode = SelectionMode.Multiple;
            IDialog dialog = Window.ShowDialog("添加商品", content, (obj, args) =>
            {
                List <ProductVM> productList = args.Data as List <ProductVM>;
                if (productList != null)
                {
                    productList.ForEach(p =>
                    {
                        ShiftRequestItemVM vm = RequestVM.ShiftItemInfoList.FirstOrDefault(item =>
                        {
                            return(item.ProductSysNo == p.SysNo);
                        });
                        if (vm == null)
                        {
                            #region 只允许添加自己权限范围内可以访问商品
                            string errorMessage = "对不起,您没有权限访问{0}商品!";
                            InventoryQueryFilter queryFilter = new InventoryQueryFilter();
                            queryFilter.ProductSysNo         = p.SysNo;
                            queryFilter.UserSysNo            = Newegg.Oversea.Silverlight.ControlPanel.Core.CPApplication.Current.LoginUser.UserSysNo;
                            queryFilter.CompanyCode          = Newegg.Oversea.Silverlight.ControlPanel.Core.CPApplication.Current.CompanyCode;
                            //if (AuthMgr.HasFunctionAbsolute(AuthKeyConst.IM_SeniorPM_Query))
                            //{
                            //    queryFilter.PMQueryRightType = BizEntity.Common.PMQueryType.AllValid;
                            //}
                            //else if (AuthMgr.HasFunctionAbsolute(AuthKeyConst.IM_IntermediatePM_Query))
                            //{
                            //    queryFilter.PMQueryRightType = BizEntity.Common.PMQueryType.Team;
                            //}
                            //else if (AuthMgr.HasFunctionAbsolute(AuthKeyConst.IM_JuniorPM_Query))
                            //{
                            //    queryFilter.PMQueryRightType = BizEntity.Common.PMQueryType.Self;
                            //}
                            //else
                            //{
                            //    Window.Alert(string.Format(errorMessage, p.ProductID));
                            //    return;
                            //}
                            if (!AuthMgr.HasFunctionAbsolute(AuthKeyConst.IM_SeniorPM_Query))
                            {
                                new InventoryQueryFacade(this).CheckOperateRightForCurrentUser(queryFilter, (Innerogj, innerArgs) =>
                                {
                                    if (!innerArgs.FaultsHandle())
                                    {
                                        if (!innerArgs.Result)
                                        {
                                            Window.Alert(string.Format(errorMessage, p.ProductID));
                                            return;
                                        }
                                        else
                                        {
                                            vm = new ShiftRequestItemVM
                                            {
                                                ProductSysNo            = p.SysNo,
                                                ShiftQuantity           = 1,
                                                ShiftUnitCost           = p.UnitCost,
                                                ProductName             = p.ProductName,
                                                ProductID               = p.ProductID,
                                                InStockQuantity         = 0,
                                                ShiftUnitCostWithoutTax = p.UnitCostWithoutTax,
                                                Weight        = p.Weight,
                                                ShippingCost  = 0,
                                                RequestStatus = ShiftRequestStatus.Origin
                                            };
                                            RequestVM.ShiftItemInfoList.Add(vm);
                                            this.dgShiftRequestMaintainQueryResult.ItemsSource = RequestVM.ShiftItemInfoList;
                                        }
                                    }
                                });
                            }
                            else
                            {
                                vm = new ShiftRequestItemVM
                                {
                                    ProductSysNo            = p.SysNo,
                                    ShiftQuantity           = 1,
                                    ShiftUnitCost           = p.UnitCost,
                                    ProductName             = p.ProductName,
                                    ProductID               = p.ProductID,
                                    InStockQuantity         = 0,
                                    ShiftUnitCostWithoutTax = p.UnitCostWithoutTax,
                                    Weight        = p.Weight,
                                    ShippingCost  = 0,
                                    RequestStatus = ShiftRequestStatus.Origin
                                };
                                RequestVM.ShiftItemInfoList.Add(vm);
                                this.dgShiftRequestMaintainQueryResult.ItemsSource = RequestVM.ShiftItemInfoList;
                            }


                            #endregion
                        }
                    });
                }
            });

            content.DialogHandler = dialog;
        }
        private void btnAddProduct_Click(object sender, RoutedEventArgs e)
        {
            if (!this.vm.PriceType.HasValue)
            {
                // Window.Alert("请先选择变价类型!");
                Window.Alert(ResPriceChangeMaintain.Msg_SelectPriceChangeType);
                return;
            }

            SetControllerVisibility();

            facade.GetVendorLastBasicInfo((obj1, args1) =>
            {
                UCProductSearch uc = new UCProductSearch();

                //if (!args1.FaultsHandle())
                //{
                //    dynamic ret = args1.Result;

                //    int vendorSysNo;
                //    string vendorName;

                //    if (ret != null && ret.ToList().Count > 0)
                //    {
                //        vendorSysNo = Convert.ToInt32(ret.ToList()[0].VendorSysNo);
                //        vendorName = Convert.ToString(ret.ToList()[0].VendorName);

                //        uc = new UCProductSearch(vendorSysNo, vendorName);
                //    }
                //}

                uc.SelectionMode = SelectionMode.Multiple;

                IDialog dialog = Window.ShowDialog(ResPriceChangeMaintain.Msg_AddProduct, uc, (obj, args) =>
                {
                    if (args.DialogResult == DialogResultType.OK)
                    {
                        List <ProductVM> products = args.Data as List <ProductVM>;
                        if (products != null)
                        {
                            products.ForEach(p =>
                            {
                                ChangeItemVM temp = this.vm.ItemList.FirstOrDefault(item => { return(item.ProductSysNo == p.SysNo); });
                                if (null == temp)
                                {
                                    ChangeItemVM itemVM = EntityConverter <ProductVM, ChangeItemVM> .Convert(p, (s, t) =>
                                    {
                                        t.ProductSysNo    = s.SysNo.Value;
                                        t.OldInstockPrice = s.VirtualPrice ?? 0;
                                        t.OldShowPrice    = s.BasicPrice ?? 0;
                                        t.OldPrice        = s.CurrentPrice;
                                        t.CurrentPrice    = s.CurrentPrice;
                                        t.UnitCost        = s.UnitCost;
                                        t.MinMargin       = s.MinMargin;
                                        t.IsChecked       = false;
                                        t.PriceType       = this.vm.PriceType;
                                    });

                                    this.vm.ItemList.Add(itemVM);
                                }
                                else
                                {
                                    //Window.Alert(string.Format("已存在编号为{0}的商品.", p.ProductID));
                                    Window.Alert(string.Format(ResPriceChangeMaintain.Msg_ExsistTheProduct, p.ProductID));
                                }
                            });
                        }
                    }
                });

                uc.DialogHandler = dialog;
            });
        }