private void HyperlinkButton_Click(object sender, RoutedEventArgs e)
        {
            dynamic d = this.ManufacturerRequestResult.SelectedItem as dynamic;
            ManufacturerRequestVM data = new ManufacturerRequestVM()
            {
                SysNo                 = d.SysNo,
                Status                = d.Status,
                Reasons               = d.Reasons,
                ManufacturerSysNo     = d.ManufacturerSysNo,
                ManufacturerStatus    = d.ManufacturerStatus,
                ManufacturerBriefName = d.ManufacturerBriefName,
                ManufacturerName      = d.ManufacturerName,
                OperationType         = d.OperationType,
                ProductLine           = d.ProductLine,
            };

            ManufacturerRequestMaintain item = new ManufacturerRequestMaintain();

            item.Action = ManufacturerAction.Audit;
            item.Data   = data;
            item.Dialog = Window.ShowDialog("生产商审核", item, (s, args) =>
            {
                if (args.DialogResult == Newegg.Oversea.Silverlight.Controls.Components.DialogResultType.OK)
                {
                    this.ManufacturerRequestResult.Bind();
                }
            }, new Size(600, 500));
        }
        /// <summary>
        /// 生产商提交审核
        /// </summary>
        /// <param name="info"></param>
        public void InsertManufacturerRequest(ManufacturerRequestVM model, EventHandler <RestClientEventArgs <dynamic> > callback)
        {
            ManufacturerRequestInfo info = model.ConvertVM <ManufacturerRequestVM, ManufacturerRequestInfo>();

            info.CompanyCode  = CPApplication.Current.CompanyCode;
            info.LanguageCode = CPApplication.Current.LanguageCode;
            restClient.Create(InsertManufacturerRequestUrl, info, callback);
        }
        private void Button_Click_3(object sender, RoutedEventArgs e)
        {
            ManufacturerRequestVM model = this.DataContext as ManufacturerRequestVM;

            model.Status = -2;
            facade.AuditManufacturerRequest(model, (obj, arg) =>
            {
                if (arg.FaultsHandle())
                {
                    return;
                }
                CPApplication.Current.CurrentPage.Context.Window.Alert("提交成功");
                CloseDialog(DialogResultType.OK);
            });
        }
        public void AuditManufacturerRequest(ManufacturerRequestVM model, EventHandler <RestClientEventArgs <dynamic> > callback)
        {
            ManufacturerRequestInfo info = new ManufacturerRequestInfo()
            {
                ManufacturerName      = model.ManufacturerName,
                ManufacturerBriefName = model.ManufacturerBriefName,
                Status             = model.Status,
                SysNo              = model.SysNo,
                ManufacturerStatus = model.ManufacturerStatus,
                ManufacturerSysNo  = model.ManufacturerSysNo,
                OperationType      = model.OperationType,
                ProductLine        = model.ProductLine,
                Reasons            = model.Reasons,
                LanguageCode       = CPApplication.Current.LanguageCode,
                CompanyCode        = CPApplication.Current.CompanyCode
            };

            restClient.Update(AuditManufacturerRequestUrl, info, callback);
        }
        private void BtnSave_Click(object sender, RoutedEventArgs e)
        {
            if (!ValidationManager.Validate(this.expander1))
            {
                return;
            }
            ManufacturerRequestVM model = this.DataContext as ManufacturerRequestVM;

            if (string.IsNullOrEmpty(model.ManufacturerBriefName) && string.IsNullOrEmpty(model.ManufacturerName))
            {
                CPApplication.Current.CurrentPage.Context.Window.Alert("生产商中文名称和英文名称必填一个!");
                return;
            }
            if (model.BrandStoreType == BrandStoreType.FlagshipStore && string.IsNullOrEmpty(model.BrandImage))
            {
                CPApplication.Current.CurrentPage.Context.Window.Alert("店铺类型为旗舰店的时,品牌店广告图不能为空");
                return;
            }

            CPApplication.Current.CurrentPage.Context.Window.Confirm("是否更新该生产商下所有品牌信息", (obj, arg) =>
            {
                if (arg.DialogResult == Newegg.Oversea.Silverlight.Controls.Components.DialogResultType.OK)
                {
                    facade.UpdateBrandMasterByManufacturerSysNo(model, (objs, args) =>
                    {
                        if (args.FaultsHandle())
                        {
                            return;
                        }
                    });
                }
                facade.UpdateManufacturer(model, (o, a) =>
                {
                    if (a.FaultsHandle())
                    {
                        return;
                    }
                    CPApplication.Current.CurrentPage.Context.Window.Alert("提交成功");
                    CloseDialog(DialogResultType.OK);
                });
            });
        }
        /// <summary>
        /// 修改生产商
        /// </summary>
        /// <param name="data"></param>
        /// <param name="callback"></param>
        public void UpdateManufacturer(ManufacturerRequestVM data, EventHandler <RestClientEventArgs <ManufacturerInfo> > callback)
        {
            ManufacturerInfo info = new ManufacturerInfo()
            {
                ManufacturerDescription = new LanguageContent(data.Info),
                ManufacturerNameGlobal  = data.ManufacturerBriefName,
                ManufacturerNameLocal   = new LanguageContent(data.ManufacturerName),
                IsShowZone     = data.IsShowZone == true ? "Y" : "N",
                IsLogo         = data.IsLogo,
                BrandImage     = data.BrandImage,
                BrandStoreType = data.BrandStoreType,
                ShowUrl        = data.ShowUrl,
                Status         = data.ManufacturerStatus,
                SysNo          = data.SysNo,
                SupportInfo    = new ManufacturerSupportInfo()
                {
                    ManufacturerUrl = data.MannfacturerLink, ServiceEmail = data.AfterSalesSupportEmail, ServicePhone = data.ClientPhone, ServiceUrl = data.AfterSalesSupportLink
                },
            };

            restClient.Update(UPManufacturerUrl, info, callback);
        }
        /// <summary>
        /// 修改品牌
        /// </summary>
        /// <param name="data"></param>
        /// <param name="callback"></param>
        public void UpdateBrandMasterByManufacturerSysNo(ManufacturerRequestVM data, EventHandler <RestClientEventArgs <ManufacturerInfo> > callback)
        {
            BrandInfo info = new BrandInfo()
            {
                Status       = data.ManufacturerStatus == ManufacturerStatus.Active ? ValidStatus.Active : ValidStatus.DeActive,
                Manufacturer = new ManufacturerInfo()
                {
                    SysNo = data.SysNo, IsShowZone = data.IsShowZone ? "Y" : "N", BrandImage = data.BrandImage, ShowUrl = data.ShowUrl
                },
                IsLogo           = data.IsLogo ? "Y" : "N",
                BrandSupportInfo = new BrandSupportInfo()
                {
                    ManufacturerUrl = data.MannfacturerLink, ServiceEmail = data.AfterSalesSupportEmail, ServicePhone = data.ClientPhone, ServiceUrl = data.AfterSalesSupportLink
                },
                BrandStoreType = data.BrandStoreType,
                User           = new BizEntity.Common.UserInfo()
                {
                    UserName = CPApplication.Current.LoginUser.LoginName, SysNo = CPApplication.Current.LoginUser.UserSysNo
                }
            };

            restClient.Update(UpdateBrandMasterByManufacturerSysNoUrl, info, callback);
        }
        private void BtnAudit_Click(object sender, RoutedEventArgs e)
        {
            if (!ValidationManager.Validate(this))
            {
                return;
            }
            ManufacturerRequestVM model = this.DataContext as ManufacturerRequestVM;

            if (string.IsNullOrEmpty(model.ManufacturerBriefName) && string.IsNullOrEmpty(model.ManufacturerName))
            {
                CPApplication.Current.CurrentPage.Context.Window.Alert("生产商中文名称和英文名称必填一个!");
                return;
            }
            model.OperationType = 1;
            facade.InsertManufacturerRequest(model, (obj, arg) =>
            {
                if (arg.FaultsHandle())
                {
                    return;
                }
                CPApplication.Current.CurrentPage.Context.Window.Alert("提交成功");
                CloseDialog(DialogResultType.OK);
            });
        }
        public ManufacturerRequestMaintain()
        {
            InitializeComponent();
            this.Loaded += (sender, e) =>
            {
                facade = new ManufacturerRequestFacade();
                switch (Action)
                {
                case ManufacturerAction.Edit:

                    facade.GetManufacturerBySysNo(ManufacturerSysNo, (obj, args) =>
                    {
                        if (args.FaultsHandle())
                        {
                            return;
                        }
                        if (args.Result == null)
                        {
                            return;
                        }
                        ManufacturerRequestVM vm = new ManufacturerRequestVM()
                        {
                            ManufacturerName      = args.Result.ManufacturerNameLocal.Content,
                            ManufacturerBriefName = args.Result.ManufacturerNameGlobal,
                            ManufacturerStatus    = args.Result.Status,
                            SysNo = (int)args.Result.SysNo,
                            AfterSalesSupportEmail = args.Result.SupportInfo.ServiceEmail,
                            AfterSalesSupportLink  = args.Result.SupportInfo.ServiceUrl,
                            ClientPhone            = args.Result.SupportInfo.ServicePhone,
                            Info             = args.Result.ManufacturerDescription.Content,
                            MannfacturerLink = args.Result.SupportInfo.ManufacturerUrl,
                            IsLogo           = args.Result.IsLogo,
                            IsShowZone       = args.Result.IsShowZone == "Y" ? true : false,
                            BrandStoreType   = args.Result.BrandStoreType,
                            BrandImage       = args.Result.BrandImage,
                            ShowUrl          = args.Result.ShowUrl
                        };
                        this.DataContext = vm;
                        //将所有控件IsEnabled改为true
                        foreach (var stack in mygrid.Children)
                        {
                            if (stack.GetType() == typeof(StackPanel))
                            {
                                foreach (var item in ((StackPanel)stack).Children)
                                {
                                    if (item.GetType() == typeof(TextBox))
                                    {
                                        ((TextBox)item).IsEnabled = true;
                                    }
                                    if (item.GetType() == typeof(Combox))
                                    {
                                        ((Combox)item).IsEnabled = true;
                                    }
                                    if (item.GetType() == typeof(CheckBox))
                                    {
                                        ((CheckBox)item).IsEnabled = true;
                                    }
                                }
                            }
                        }
                        this.txtProductLine.IsEnabled    = true;
                        this.txtReanson.IsEnabled        = true;
                        this.BtnSave.Visibility          = Visibility.Visible;
                        this.BtnMaintainBrand.Visibility = Visibility.Visible;
                        this.myAuditInfo.Visibility      = Visibility.Visible;

                        if (args.Result.BrandStoreType == BrandStoreType.FlagshipStore)
                        {
                            HyperlinkSetIndexPageCatetory.Visibility = System.Windows.Visibility.Visible;
                        }
                    });
                    break;

                case ManufacturerAction.Add:
                    this.DataContext              = new ManufacturerRequestVM();
                    this.txtNameCh.IsEnabled      = true;
                    this.txtNameEn.IsEnabled      = true;
                    this.txtProductLine.IsEnabled = true;
                    this.txtReanson.IsEnabled     = true;
                    this.cboStatus.IsEnabled      = true;
                    this.BtnAudit.Visibility      = Visibility.Visible;
                    myAuditInfo.Visibility        = Visibility.Visible;
                    break;

                case ManufacturerAction.Audit:
                    this.DataContext              = Data;
                    this.BtnAuditByNo.Visibility  = Visibility.Visible;
                    this.BtnAuditByOk.Visibility  = Visibility.Visible;
                    this.BtnAuditClose.Visibility = Visibility.Visible;
                    myAuditInfo.Visibility        = Visibility.Visible;
                    break;

                default:
                    break;
                }
            };
        }