/// <summary> /// 列表 /// </summary> /// <param name="request"></param> /// <returns></returns> public Task <List <TbkProductInfo> > CouponList(CouponListRequest request) { return(Task.Factory.StartNew(() => { ProductCouponListResponse response = new HttpUtils().DoGet <ProductCouponListResponse>(ConstantsUtils.TAOBAO_API_COUPONLIST, new Dictionary <string, string>() { { "queryCount", "500" }, { "pid", ConstantsUtils.TAOBAO_API_PID }, { "category", request.CategoryId.ToString() }, { "_", DateTime.Now.Ticks.ToString() } }); if (null != response && response.Result != null && response.Result.CouponList != null) { return response.Result.CouponList .Select(coupon => new TbkProductInfo() { SPID = coupon.Item.ItemId, CP = coupon.Amount.ToString(), FP = (coupon.Item.DiscountPrice - coupon.Amount).NoZeroString(), PTLX = coupon.Item.Tmall, SPJG = coupon.Item.DiscountPrice.ToString(), SPMC = coupon.Item.Title, SPYHQTGLJ = ToolUtils.GetHttpsUrl(coupon.Item.ShareUrl), SPYXL = coupon.Item.Biz30Day, SPZT = ToolUtils.GetThumbnail(coupon.Item.PicUrl), }).ToList(); } return new List <TbkProductInfo>(); })); }
private async Task LoadMoreCoupons() { if (HasMoreCoupons) { await Task.Delay(200); PageIndex += 1; var couponListRequest = new CouponListRequest { Page = PageIndex, PageSize = GlobalSettings.AppConst.PageSize }; await WebRequestExecuter.Execute(async() => await _wooCommerceService.GetCoupons(couponListRequest), myCoupons => { if (myCoupons != null && myCoupons.Any()) { foreach (var coupon in myCoupons) { MyCoupons.Add(coupon); } HasMoreCoupons = myCoupons.Count >= couponListRequest.PageSize ? true : false; } else { PageIndex -= 1; HasMoreCoupons = false; } return(Task.CompletedTask); }); } }
/// <summary> /// 优惠券 /// </summary> /// <param name="request">条件实体</param> /// <returns></returns> public CouponListResponse List(CouponListRequest request) { string postData = JsonHelper.GetJson(request); CouponListResponse response = client.Execute(request, list, postData); return(response); }
public async Task <List <CouponModel> > GetCoupons(CouponListRequest couponListRequest) { var builder = new UriBuilder(GlobalSettings.WooCommerceCouponEndpoint); var queryParams = couponListRequest.GetQueryString(); builder.Query = queryParams; var uri = builder.ToString(); return(await _requestService.GetAsync <List <CouponModel> >(uri, forcedRefresh : true)); }
private async Task FetchCouponsAsync() { var couponListRequest = new CouponListRequest(); couponListRequest.Page = PageIndex; couponListRequest.PageSize = GlobalSettings.AppConst.PageSize; await WebRequestExecuter.Execute(async() => await _wooCommerceService.GetCoupons(couponListRequest), myCoupons => { if (myCoupons != null && myCoupons.Any()) { MyCoupons = new ObservableCollection <CouponModel>(myCoupons); HasMoreCoupons = myCoupons.Count >= couponListRequest.PageSize ? true : false; } else { HasMoreCoupons = false; } return(Task.CompletedTask); }); }