Пример #1
0
        public override void OnPageLoad(object sender, EventArgs e)
        {
            base.OnPageLoad(sender, e);
            _Facade = new GroupBuyingFacade(this);
            _VM     = new GroupBuyingQueryVM();
            _Facade.GetGroupBuyingTypes((s, args) =>
            {
                if (!args.FaultsHandle())
                {
                    foreach (var gbt in args.Result)
                    {
                        _VM.GroupBuyingTypeList.Add(new KeyValuePair <int, string>(gbt.Key, gbt.Value));
                    }
                    _Facade.GetGroupBuyingAreas((s1, args1) =>
                    {
                        if (!args1.FaultsHandle())
                        {
                            foreach (var gba in args1.Result)
                            {
                                _VM.GroupBuyingAreaList.Add(new KeyValuePair <int, string>(gba.Key, gba.Value));
                            }

                            _VM.GroupBuyingTypeList.Insert(0, new KeyValuePair <int, string>(0, ECCentral.BizEntity.Enum.Resources.ResCommonEnum.Enum_All));
                            _VM.GroupBuyingAreaList.Insert(0, new KeyValuePair <int, string>(0, ECCentral.BizEntity.Enum.Resources.ResCommonEnum.Enum_All));
                            this.DataContext = _VM;
                            this.cmbGroupBuyingCategoryType.SelectedIndex = 0;
                            this.cmbGroupBuyingArea.SelectedIndex         = 0;
                        }
                    });
                }
            });
            this.DataContext = _VM;
        }
Пример #2
0
        /// <summary>
        /// 团购详情页
        /// </summary>
        /// <param name="GroupBuyingSysNo">团购系统编号</param>
        /// <returns></returns>
        public ActionResult Detail(int GroupBuyingSysNo)
        {
            var result = GroupBuyingFacade.GetGroupBuyingInfoBySysNo(GroupBuyingSysNo);

            if (result == null || result.SysNo <= 0)
            {
                TempData["ErrorMessage"] = "团购信息不存在!";
                return(RedirectToRoute("Web_Error"));
            }
            return(View(result));
        }
Пример #3
0
        public ActionResult ThankyouVirualGroupBuy(string orderSysNo)
        {
            int nOrderSysNo = 0;

            if (!int.TryParse(orderSysNo, out nOrderSysNo))
            {
                TempData["ErrorMessage"] = "请输入正确的订单编号!";
                return(View("Error"));
            }
            return(View(GroupBuyingFacade.GetGroupBuyingPayGetTicketInfo(nOrderSysNo)));
        }
Пример #4
0
        public override void OnPageLoad(object sender, EventArgs e)
        {
            base.OnPageLoad(sender, e);

            this.VM     = new GroupBuyingCategoryVM();
            this.facade = new GroupBuyingFacade(this);
            facade.GetAllGroupBuyingCategory((s, a) =>
            {
                if (a.FaultsHandle())
                {
                    return;
                }
                this.DataGrid.ItemsSource = new ObservableCollection <GroupBuyingCategoryInfo>(a.Result);
            });
        }
Пример #5
0
        /// <summary>
        /// 团购查询
        /// </summary>
        /// <param name="criteria">查询条件</param>
        /// <returns></returns>
        public GroupBuyQueryResult GetGroupBuyList(GroupBuyQueryModel criteria)
        {
            GroupBuyingQueryInfo queryInfo = new GroupBuyingQueryInfo()
            {
                PageInfo = new Entity.PageInfo()
                {
                    PageIndex = criteria.PageIndex,
                    PageSize  = criteria.PageSize
                },
                SortType = criteria.SortType
            };

            //仅查询普通团购
            queryInfo.GroupBuyingTypeSysNo = 0;
            if (criteria.CatSysNo > 0)
            {
                queryInfo.CategorySysNo = criteria.CatSysNo;
            }
            else
            {
                queryInfo.CategorySysNo = null;
            }

            GroupBuyQueryResult result = new GroupBuyQueryResult();

            if (criteria.GetFilters)
            {
                var categoryList = GroupBuyingFacade.GetGroupBuyingCategory();

                result.Filters = MapCatList(categoryList);
                if (result.Filters.Count > 0)
                {
                    //增加一个全部选项
                    GroupBuyCatModel allCat = new GroupBuyCatModel();
                    allCat.CateSysNo = 0;
                    allCat.Name      = "全部";
                    result.Filters.Insert(0, allCat);
                }
            }

            var groupBuyResult = GroupBuyingFacade.QueryGroupBuyingInfo(queryInfo);

            result.Result = MapItemList(groupBuyResult);

            return(result);
        }
Пример #6
0
        public JsonResult VoidedTicket()
        {
            int sysNo = 0;

            if (!int.TryParse(Request.Params["SysNo"], out sysNo))
            {
                return(new JsonResult()
                {
                    Data = this.BuildAjaxErrorObject("请输入正确的编号!")
                });
            }
            GroupBuyingFacade.VoidedTicketBySysNo(sysNo);

            return(new JsonResult()
            {
                Data = ""
            });
        }
Пример #7
0
        public ActionResult Ajax_QueryGroupbuying()
        {
            int category  = 0;
            int pageIndex = 0;

            int.TryParse(Request["category"], out category);
            int.TryParse(Request["page"], out pageIndex);

            GroupBuyingQueryInfo queryInfo = new GroupBuyingQueryInfo()
            {
                PageInfo = new Entity.PageInfo()
                {
                    PageIndex = pageIndex,
                    PageSize  = int.Parse(Request["size"])
                },
                SortType             = 0,
                GroupBuyingTypeSysNo = 0
            };

            if (category > 0)
            {
                queryInfo.CategorySysNo = category;
            }
            else
            {
                queryInfo.CategorySysNo = null;
            }

            var data = GroupBuyingFacade.QueryGroupBuyingInfo(queryInfo);

            data.ResultList.ForEach(p =>
            {
                p.DefaultImage = ProductFacade.BuildProductImage(ImageSize.P200, p.DefaultImage);
            });
            var result = new AjaxResult
            {
                Success = true,
                Data    = data
            };


            return(Json(result, JsonRequestBehavior.AllowGet));
        }
Пример #8
0
        /// <summary>
        /// 团购频道页
        /// </summary>
        /// <returns></returns>
        public ActionResult Index()
        {
            int pageIndex = 0;

            if (int.TryParse(Request.Params["page"], out pageIndex))
            {
                pageIndex--;
            }
            int category = 0;

            int.TryParse(Request.Params["category"], out category);
            int sort = 0;

            int.TryParse(Request.Params["sort"], out sort);

            GroupBuyingQueryInfo queryInfo = new GroupBuyingQueryInfo()
            {
                PageInfo = new Entity.PageInfo()
                {
                    PageIndex = pageIndex,
                    PageSize  = 10
                },
                SortType = sort
            };

            if (category > 0)
            {
                queryInfo.CategorySysNo = category;
            }
            else
            {
                queryInfo.CategorySysNo = null;
            }

            GroupBuyingQueryResult result = new GroupBuyingQueryResult();

            result.QueryInfo    = queryInfo;
            result.CategoryList = GroupBuyingFacade.GetGroupBuyingCategory();
            result.Result       = GroupBuyingFacade.QueryGroupBuyingInfo(queryInfo);
            result.Result.PageInfo.PageIndex++;
            return(View(result));
        }
Пример #9
0
        public ActionResult GroupBuyTicket()
        {
            int pageIndex = 0;

            if (int.TryParse(Request.Params["page"], out pageIndex))
            {
                pageIndex--;
            }

            PageInfo pageInfo = new PageInfo()
            {
                PageIndex = pageIndex,
                PageSize  = 10
            };

            QueryResult <GroupBuyingTicketInfo> result = GroupBuyingFacade.QueryGroupBuyingTicketInfo(pageInfo, this.CurrUser.UserSysNo);

            result.PageInfo.PageIndex++;

            return(View(result));
        }
Пример #10
0
        public override void OnPageLoad(object sender, EventArgs e)
        {
            base.OnPageLoad(sender, e);
            this.ucItemMaster.ProductSelected += new EventHandler <ProductSelectedEventArgs>(ucItemMaster_ProductSelected);

            _Facade    = new GroupBuyingFacade(this);
            _viewModel = new GroupBuyingMaintainVM();

            if (this.Request.QueryString.ContainsKey("op"))
            {
                _op = this.Request.QueryString["op"];
            }
            if (this.Request.QueryString.ContainsKey("sysNo"))
            {
                sysNo = this.Request.QueryString["sysNo"];
                _Facade.Load(sysNo, (s, args) =>
                {
                    _viewModel       = args.Result;
                    this.DataContext = _viewModel;
                    _viewModel.ValidationErrors.Clear();

                    if (_viewModel.CategoryType == GroupBuyingCategoryType.Virtual)
                    {
                        new ExternalServiceFacade(this).QueryVendorStoreList(this._viewModel.GroupBuyingVendorSysNo, (se, a) =>
                        {
                            if (a.FaultsHandle())
                            {
                                return;
                            }
                            List <VendorStoreVM> list = DynamicConverter <VendorStoreVM> .ConvertToVMList(a.Result.Rows);
                            _viewModel.VendorStoreList.Clear();
                            list.ForEach(p =>
                            {
                                _viewModel.VendorStoreList.Add(p);
                            });
                            foreach (var item in _viewModel.VendorStoreList)
                            {
                                var re = _viewModel.VendorStoreSysNoList.FirstOrDefault(p => p == item.SysNo.Value);
                                if (re > 0)
                                {
                                    item.IsChecked = true;
                                }
                            }
                        });
                    }

                    InitPage(sysNo);

                    new GroupBuyingFacade(this).GetProductOriginalPrice(int.Parse(_viewModel.ProductSysNo), _viewModel.IsByGroup ? "Y" : "N", (obj, a) =>
                    {
                        //_viewModel.OriginalPrice = (a.Result == null || a.Result[0] == null ? 0m : decimal.Round(decimal.Parse(a.Result[0].ToString()), 2));
                        if (a.Result.Count > 4)
                        {
                            _viewModel.GroupBuyingVendorSysNo = int.Parse(a.Result[3].ToString());
                            _viewModel.GroupBuyingVendorName  = a.Result[4].ToString();
                        }
                    });
                });
            }
            else
            {
                _Facade.GetGroupBuyingTypes((s, args) =>
                {
                    if (!args.FaultsHandle())
                    {
                        // _viewModel.GroupBuyingTypeList.Add(0, ECCentral.BizEntity.Enum.Resources.ResCommonEnum.Enum_All);
                        foreach (var gbt in args.Result)
                        {
                            _viewModel.GroupBuyingTypeList.Add(gbt.Key, gbt.Value);
                        }
                        _Facade.GetGroupBuyingAreas((s1, args1) =>
                        {
                            if (!args1.FaultsHandle())
                            {
                                //_viewModel.GroupBuyingAreaList.Add(0, ECCentral.BizEntity.Enum.Resources.ResCommonEnum.Enum_All);
                                foreach (var gba in args1.Result)
                                {
                                    _viewModel.GroupBuyingAreaList.Add(gba.Key, gba.Value);
                                }
                                this.DataContext = _viewModel;

                                InitPage(sysNo);
                            }
                        });
                    }
                });
            }
            //this.DataContext = _viewModel;
        }
Пример #11
0
        /// <summary>
        /// 获取商品详情
        /// </summary>
        /// <param name="id">系统编号</param>
        /// <param name="isGroupBuy">0--标识id为商品系统编号,1--标识id为团购活动系统编号</param>
        /// <returns></returns>
        public ProductDetailModel GetProductDetails(int id, int isGroupBuy)
        {
            int             productSysNo = 0;
            GroupBuyingInfo groupBuyInfo = null;

            if (isGroupBuy == 1)
            {
                groupBuyInfo = GroupBuyingFacade.GetGroupBuyingInfoBySysNo(id);
                if (groupBuyInfo == null)
                {
                    //提示团购活动找不到
                    throw new BusinessException("团购活动找不到啦,请选购其它商品,谢谢。");
                }
                productSysNo = groupBuyInfo.ProductSysNo;
            }
            else
            {
                productSysNo = id;
            }


            //商品基本信息
            ProductBasicInfo basicInfo = ProductFacade.GetProductBasicInfoBySysNo(productSysNo);

            //商品销售信息
            ProductSalesInfo salesInfo = ProductFacade.GetProductSalesInfoBySysNo(productSysNo);

            if (basicInfo == null || salesInfo == null)
            {
                //提示商品找不到
                throw new BusinessException("商品找不到啦,请选购其它商品,谢谢。");
            }
            //如果是不展示或下架
            if (basicInfo.ProductStatus == ProductStatus.NotShow || basicInfo.ProductStatus == ProductStatus.Abandon)
            {
                //提示商品状态已下架或已作废
                throw new BusinessException("商品已下架或已作废,请选购其它商品,谢谢。");
            }
            //商品组信息
            List <ProductPropertyView> propertyView = ProductFacade.GetProductPropetyView(productSysNo, basicInfo.ProductCommonInfoSysNo);

            //商品附件
            List <ProductItemInfo> attachmentList = ProductFacade.GetProductAttachmentList(productSysNo);

            //商品配件
            List <ProductAccessories> accessoriesList = ProductFacade.GetProductAccessoriesList(productSysNo);

            //商家信息
            StoreBasicInfo storeinfo = StoreFacade.QueryStoreBasicInfo(basicInfo.VendorSysno);

            //商品促销信息
            ProductPromotionInfo promotionInfo = Nesoft.ECWeb.Facade.Product.ProductFacade.GetProductPromotionInfo(productSysNo);

            //商品组图片信息
            List <ProductImage> productImages = ProductFacade.GetProductImages(basicInfo.ProductCommonInfoSysNo);

            //商品内容(商品详情,规格参数,售后服务,购买须知等)
            List <ProductContent> contentList = ProductFacade.GetProductContentList(basicInfo);

            ProductDetailModel result = new ProductDetailModel();

            //基本信息
            result.BasicInfo = TransformBasicInfo(basicInfo);
            //商品销售(价格,库存等)信息
            result.SalesInfo = TransformSalesInfo(basicInfo, salesInfo);

            //商品图片列表
            result.ImageList = TransformImageList(productImages);
            //商品描述信息
            result.DescInfo = TransformDescInfo(contentList);
            //if (result.DescInfo != null && basicInfo != null)
            //    result.DescInfo.Performance = basicInfo.Performance;


            //分组属性
            result.GroupPropertyInfo = TransformGroupProperty(propertyView);
            //附件信息
            result.AttachmentInfo = TransformAttachmentInfo(attachmentList);
            //配件信息
            result.AccessoryList = TransformAccessoryInfo(accessoriesList);

            //商家信息
            result.StoreBasicInfo = Transformstoreinfo(storeinfo);


            //限时抢购,赠品,套餐等促销信息
            result.PromoInfo = TransformPromoInfo(promotionInfo);

            //如果是团购商品进一步加载团购详情
            if (promotionInfo != null && promotionInfo.GroupBuySysNo > 0)
            {
                if (groupBuyInfo == null)
                {
                    groupBuyInfo = GroupBuyingFacade.GetGroupBuyingInfoBySysNo(promotionInfo.GroupBuySysNo);
                }
                if (groupBuyInfo == null)
                {
                    result.PromoInfo.GroupBuyingSysNo = 0;
                }
                else
                {
                    //团购图片特殊处理,用活动设置的图片
                    result.BasicInfo.DefaultImageUrl = groupBuyInfo.GroupBuyingPicUrl;
                    result.ImageList.Clear();
                    ProductImageModel groupBuyImage = new ProductImageModel();
                    groupBuyImage.ImageUrlBig  = groupBuyInfo.GroupBuyingPicUrl;
                    groupBuyImage.ImageUrlHuge = groupBuyInfo.GroupBuyingPicUrl;
                    result.ImageList.Add(groupBuyImage);
                    //海外团购商品,算税
                    if (groupBuyInfo.GroupBuyingTypeSysNo == 0)
                    {
                        result.SalesInfo.TariffPrice = salesInfo.CurrentPrice * salesInfo.TariffRate;

                        if (result.SalesInfo.TariffPrice <= ConstValue.TariffFreeLimit)
                        {
                            result.SalesInfo.FreeEntryTax = true;
                            result.SalesInfo.TotalPrice   = salesInfo.CurrentPrice;
                        }
                        else
                        {
                            result.SalesInfo.FreeEntryTax = false;
                            result.SalesInfo.TotalPrice   = salesInfo.CurrentPrice + result.SalesInfo.TariffPrice;
                        }
                        decimal snapShotTariffPrice = groupBuyInfo.SnapShotCurrentPrice * salesInfo.TariffRate;
                        if (snapShotTariffPrice <= ConstValue.TariffFreeLimit)
                        {
                            snapShotTariffPrice = 0;
                        }
                        result.SalesInfo.BasicPrice = groupBuyInfo.SnapShotCurrentPrice + groupBuyInfo.SnapShotCashRebate + snapShotTariffPrice;
                    }
                    else
                    {
                        result.SalesInfo.BasicPrice   = groupBuyInfo.SnapShotCurrentPrice + groupBuyInfo.SnapShotCashRebate;
                        result.SalesInfo.TotalPrice   = salesInfo.CurrentPrice;
                        result.SalesInfo.TariffPrice  = 0;
                        result.SalesInfo.FreeEntryTax = false;
                    }
                    groupBuyInfo.MarketPrice = result.SalesInfo.BasicPrice;

                    result.GroupBuyInfo = MapGroupBuyInfo(groupBuyInfo);
                }
            }
            if (promotionInfo != null && promotionInfo.Countdown != null)
            {
                //限时抢购重算市场价
                decimal snapShotTariffPrice = promotionInfo.Countdown.SnapShotCurrentPrice * salesInfo.TariffRate;
                if (snapShotTariffPrice <= ConstValue.TariffFreeLimit)
                {
                    snapShotTariffPrice = 0;
                }
                result.SalesInfo.BasicPrice = promotionInfo.Countdown.SnapShotCurrentPrice + promotionInfo.Countdown.SnapShotCashRebate + snapShotTariffPrice;
            }

            result.ActionInfo = MapActionInfo(result);

            return(result);
        }