Example #1
0
        private HotGoodsModel ConvertGoods(GoodsDetailItemEntity ddkGoods)
        {
            HotGoodsModel model = new HotGoodsModel();

            model.AvgDesc              = ddkGoods.avg_desc;
            model.AvgLogistic          = ddkGoods.avg_lgst;
            model.AvgService           = ddkGoods.avg_serv;
            model.CatId                = ddkGoods.cat_id.HasValue ? ddkGoods.cat_id.Value : 0;
            model.CouponDiscount       = Math.Round(Convert.ToDecimal(ddkGoods.coupon_discount) / 100, 2);
            model.CouponEndTime        = ConvertHepler.UnixTimeToTime(ddkGoods.coupon_end_time.ToString());
            model.CouponMinOrderAmount = Math.Round(Convert.ToDecimal(ddkGoods.coupon_min_order_amount) / 100, 2);
            model.CouponRemainQuantity = ddkGoods.coupon_remain_quantity;
            model.CouponStartTime      = ConvertHepler.UnixTimeToTime(ddkGoods.coupon_start_time.ToString());
            model.CouponTotalQuantity  = ddkGoods.coupon_total_quantity;
            model.GoodsDesc            = ddkGoods.goods_desc;
            model.GoodsEvalCount       = ddkGoods.goods_eval_count;
            model.GoodsGalleryUrls     = ddkGoods.goods_gallery_urls;
            model.GoodsId              = ddkGoods.goods_id;
            model.GoodsImageUrl        = ddkGoods.goods_image_url;
            model.GoodsName            = ddkGoods.goods_name;
            model.MinGroupPrice        = Math.Round(Convert.ToDecimal(ddkGoods.min_group_price) / 100, 2);
            model.MinNormalPrice       = Math.Round(Convert.ToDecimal(ddkGoods.min_normal_price) / 100, 2);
            model.OptId                = ddkGoods.opt_id.HasValue ? ddkGoods.opt_id.Value : 0;
            model.OptName              = ddkGoods.opt_name;
            model.PromotionRate        = ddkGoods.promotion_rate;
            model.SoldQuantity         = ddkGoods.sold_quantity;
            model.GoodsThumbnailUrl    = ddkGoods.goods_thumbnail_url;

            model.CouponedPrice   = model.MinGroupPrice - model.CouponDiscount;
            model.PromotionAmount = Math.Round(model.CouponedPrice * model.PromotionRate / 100, 2);
            return(model);
        }
Example #2
0
        /// <summary>
        /// 最后更新时间段增量同步推广订单信息(pdd.ddk.order.list.increment.get)
        /// </summary>
        /// <param name="clientId"></param>
        /// <param name="clientSecret"></param>
        /// <param name="startUpdateTime">最近90天内多多进宝商品订单更新时间--查询时间开始</param>
        /// <param name="endUpdateTime">最近90天内多多进宝商品订单更新时间--查询时间结束</param>
        /// <param name="pId">推广位ID</param>
        /// <param name="pageSize">返回的每页结果订单数,默认为100,范围为10到100,建议使用40~50,可以提高成功率,减少超时数量。</param>
        /// <param name="page">第几页,从1到10000,默认1,注:使用最后更新时间范围增量同步时,必须采用倒序的分页方式(从最后一页往回取)才能避免漏单问题</param>
        /// <returns></returns>
        public static IncrementOrderJsonResult GetIncrementOrderList(string clientId, string clientSecret, DateTime startUpdateTime, DateTime endUpdateTime, string pId, int pageSize, int page)
        {
            NameValueCollection coll = InitNameValueCollection("pdd.ddk.goods.promotion.url.generate", clientId);

            coll.Add("start_update_time", ConvertHepler.ConvertDateTimeInt(startUpdateTime).ToString());
            coll.Add("end_update_time", ConvertHepler.ConvertDateTimeInt(endUpdateTime).ToString());
            if (!string.IsNullOrEmpty(pId))
            {
                coll.Add("p_id", pId);
            }
            coll.Add("page_size", pageSize.ToString());
            coll.Add("page", page.ToString());
            coll.Add("sign", BuildSign(clientSecret, coll));
            string result = DoPost(coll);

            return(GetResult <IncrementOrderJsonResult>(result));
        }