예제 #1
0
        private void hlAdvertisingEdit_Click(object sender, RoutedEventArgs e)
        {
            dynamic       d  = this.dgAdvertisingQueryResult.SelectedItem as dynamic;
            AdvertisingVM vm = new AdvertisingVM()
            {
                Type   = d.Type,
                Status = d.Status,
                ProductLineCategorySysNo = d.ProductLineCategorySysNo,
                ProductLineSysNo         = d.ProductLineSysNo,
                SharedText  = d.SharedText,
                Text        = d.Text,
                EventCode   = d.EventCode,
                AdCode      = d.AdCode,
                Url         = d.Url,
                ImageUrl    = d.ImageUrl,
                ImageHeight = d.ImageHeight,
                ImageWidth  = d.ImageWidth,
                SysNo       = d.SysNo
            };
            AdvertisingMaintain item = new AdvertisingMaintain();

            item.IsEdit = true;
            item.Data   = vm;
            item.Dialog = Window.ShowDialog("编辑", item, (s, args) =>
            {
                if (args.DialogResult == Newegg.Oversea.Silverlight.Controls.Components.DialogResultType.OK)
                {
                    this.dgAdvertisingQueryResult.Bind();
                }
            }, new Size(500, 600));
        }
예제 #2
0
        private void BtnSave_Click(object sender, RoutedEventArgs e)
        {
            if (!ValidationManager.Validate(this))
            {
                return;
            }
            AdvertisingVM vm = this.DataContext as AdvertisingVM;

            vm.ProductLineCategorySysNo = Convert.ToInt32(cbProductLineCategory.SelectedValue);
            vm.ProductLineSysNo         = Convert.ToInt32(cbProductLineName.SelectedValue);

            if (string.IsNullOrEmpty(vm.Text) && vm.Type == AdvertisingType.TEXT)
            {
                CPApplication.Current.CurrentPage.Context.Window.Alert("广告语不能为空!", MessageType.Error);
                return;
            }
            if (vm.ProductLineSysNo == null || vm.ProductLineSysNo == 0)
            {
                CPApplication.Current.CurrentPage.Context.Window.Alert("产品线不能为空", MessageType.Error);
                return;
            }


            if (vm.SysNo > 0)
            {
                facade.Update(vm, (obj, arg) =>
                {
                    if (arg.FaultsHandle())
                    {
                        return;
                    }
                    CPApplication.Current.CurrentPage.Context.Window.Alert("更新成功!");
                    CloseDialog(DialogResultType.OK);
                });
            }
            else
            {
                facade.Create(vm, (obj, arg) =>
                {
                    if (arg.FaultsHandle())
                    {
                        return;
                    }
                    CPApplication.Current.CurrentPage.Context.Window.Alert("添加成功!");
                    model.Url      = "";
                    model.ImageUrl = "";
                    model.AdCode   = "";
                });
            }
        }
예제 #3
0
        public void Update(AdvertisingVM model, EventHandler <RestClientEventArgs <AdvertisingVM> > callback)
        {
            string          relativeUrl = "ExternalSYSService/Advertising/Update";
            AdvertisingInfo msg         = model.ConvertVM <AdvertisingVM, AdvertisingInfo>();

            restClient.Update <AdvertisingInfo>(relativeUrl, msg, (obj, args) =>
            {
                if (args.FaultsHandle())
                {
                    return;
                }
                var vm = args.Result.Convert <AdvertisingInfo, AdvertisingVM>();
                RestClientEventArgs <AdvertisingVM> e = new RestClientEventArgs <AdvertisingVM>(vm, restClient.Page);
                callback(obj, e);
            });
        }
예제 #4
0
        public void Create(AdvertisingVM model, EventHandler <RestClientEventArgs <int?> > callback)
        {
            string          relativeUrl = "ExternalSYSService/Advertising/Create";
            AdvertisingInfo msg         = model.ConvertVM <AdvertisingVM, AdvertisingInfo>();

            msg.CompanyCode = CPApplication.Current.CompanyCode;
            restClient.Create <int?>(relativeUrl, msg, (obj, args) =>
            {
                if (args.FaultsHandle())
                {
                    return;
                }
                model.SysNo = args.Result;
                callback(obj, args);
            });
        }
예제 #5
0
        public void Load(int sysNo, EventHandler <RestClientEventArgs <AdvertisingVM> > callback)
        {
            string relativeUrl = string.Format("ExternalSYSService/Advertising/{0}", sysNo);

            restClient.Query <AdvertisingInfo>(relativeUrl, (obj, args) =>
            {
                if (args.FaultsHandle())
                {
                    return;
                }
                AdvertisingInfo entity   = args.Result;
                AdvertisingVM _viewModel = new AdvertisingVM();

                callback(obj, new RestClientEventArgs <AdvertisingVM>(_viewModel, restClient.Page));
            });
        }
예제 #6
0
        public AdvertisingMaintain()
        {
            InitializeComponent();
            this.Loaded += (sender, e) =>
            {
                facade    = new AdvertisingFacade();
                facadeImg = new ImageSizeFacade();
                if (IsEdit)
                {
                    model = Data;
                }
                else
                {
                    model = new AdvertisingVM();
                    cbProductLineCategory.IsEnabled = true;
                    cbProductLineName.IsEnabled     = true;
                    cbAdvertisingType.IsEnabled     = true;
                    txtEventCode.IsEnabled          = true;
                }

                facade.GetAllProductLineCategory((obj, arg) =>
                {
                    if (!arg.FaultsHandle())
                    {
                        foreach (var item in arg.Result.Rows)
                        {
                            model.ProductLineCategoryList.Add(new CodeNamePair()
                            {
                                Code = item.SysNo.ToString(), Name = item.Name
                            });
                        }

                        facadeImg.GetAllImageSize(100, 0, "", (objI, argI) =>
                        {
                            if (!argI.FaultsHandle())
                            {
                                string sizeTmp = string.Empty;
                                foreach (var item in argI.Result.Rows)
                                {
                                    sizeTmp = item.ImageWidth + "*" + item.ImageHeight;
                                    model.ImageSizeList.Add(new CodeNamePair()
                                    {
                                        Code = sizeTmp, Name = sizeTmp
                                    });
                                }
                                this.DataContext = model;

                                if (IsEdit)
                                {
                                    this.cbProductLineCategory.SelectedItem = model.ProductLineCategoryList
                                                                              .First(plc => plc.Code == model.ProductLineCategorySysNo.ToString());
                                    var imageSize = (from p in  model.ImageSizeList where p.Code == model.ImageSize select p).ToList();
                                    if (imageSize.Count > 0) //处理异常数据
                                    {
                                        this.cbImageSize.SelectedItem = model.ImageSizeList
                                                                        .First(i => i.Code == model.ImageSize);
                                    }
                                    else
                                    {
                                        this.cbImageSize.SelectedIndex = 0;
                                    }
                                }
                                else
                                {
                                    this.cbProductLineCategory.SelectedItem = (model.ProductLineCategoryList.Where(s => s.Code == null).FirstOrDefault());
                                    this.cbAdvertisingType.SelectedIndex    = 0;
                                    this.cbImageSize.SelectedIndex          = 0;
                                }
                            }
                        });
                    }
                });
            };
        }