示例#1
0
        static void Main(string[] args)
        {
            int num = 9980980;

            string    url       = "https://api.jd.com/routerjson";
            string    appkey    = "19478A24FB059B02BE36130123D2BF66";
            string    appsecret = "9ef99129e6d44a41b12e11011c073214";
            string    token     = "f28f1700-144e-41a3-a9f6-0130acc8b07b";
            IJdClient client    = new DefaultJdClient(url, appkey, appsecret);

            PopOrderSearchRequest req = new PopOrderSearchRequest();

            req.orderState     = "WAIT_SELLER_STOCK_OUT ";
            req.optionalFields = "orderId";
            PopOrderSearchResponse response = client.Execute(req, token, DateTime.Now.ToLocalTime());

            Console.WriteLine(response.Body);
            Console.WriteLine(num);

            Console.ReadLine();
        }
示例#2
0
        /// <summary>
        /// 批量获取指定时间区间的订单
        /// (待升舱的订单)
        /// </summary>
        /// <param name="param">参数实体</param>
        /// <param name="auth">授权参数</param>
        /// <returns>订单列表</returns>
        /// <reamrks>2017-08-16 黄杰 创建</reamrks>
        public Result <List <UpGradeOrder> > GetOrderList(OrderParameters param, AuthorizationParameters auth)
        {
            var dealerInfo = new HytOrderDealerInfo()
            {
                DealerSysNo     = 2323,
                DealerMallSysNo = 17,
                HytPayStatus    = 20,
                IsSelfSupport   = 1,
            };

            var result = new Result <List <UpGradeOrder> > {
                Status = true, Message = "", Data = null, StatusCode = 0
            };
            var orderList = new List <UpGradeOrder>();
            var _param    = new Dictionary <string, string>();

            //创建PopOrderSearchRequest对象
            var req = new PopOrderSearchRequest();

            //多订单状态
            req.orderState = "WAIT_SELLER_STOCK_OUT";
            req.orderState = "TRADE_CANCELED";
            //需返回的字段列表
            req.optionalFields = "orderId,venderId,orderType,payType,orderTotalPrice,orderSellerPrice,orderPayment,freightPrice,sellerDiscount,orderState,orderStateRemark,deliveryType,invoiceInfo,invoiceCode,orderRemark,orderStartTime,orderEndTime,consigneeInfo,itemInfoList,couponDetailList,venderRemark,balanceUsed,pin,returnOrder,paymentConfirmTime,waybill,logisticsId,vatInfo,modified,directParentOrderId,parentOrderId,customs,customsModel,orderSource,storeOrder,idSopShipmenttype,scDT,serviceFee,pauseBizInfo,taxFee,tuiHuoWuYou,storeId";

            //查询的页数
            req.page = param.PageIndex.ToString();
            //每页的条数(最大page_size 100条)
            req.pageSize = param.PageSize.ToString();

            var response = client.Execute(req, config.AccessToken, DateTime.Now.ToLocalTime());

            param.PageIndex = 1;

            if (response.searchorderinfoResult == null)
            {
                return(result);
            }

            while (true)
            {
                var trade = JObject.Parse(response.searchorderinfoResult);

                int total = int.Parse(trade["orderTotal"].ToString());

                int totalPage = total / param.PageSize;
                if (total % param.PageSize != 0)
                {
                    totalPage++;
                }

                var trades = trade["orderInfoList"];

                bool has_next = param.PageIndex < totalPage;

                //trade = JObject.Parse(response.ToString());
                foreach (var i in trades)
                {
                    var order = new UpGradeOrder();

                    Map(i, order);
                    order.HytOrderDealer = dealerInfo;
                    // 支付方式(1货到付款, 2邮局汇款, 3自提, 4在线支付, 5公司转账, 6银行卡转账)
                    order.HytOrderDealer.HytPayType = JingDongToPayTypeSysNo(i["payType"].ToString());
                    orderList.Add(order);
                }

                if (has_next)
                {
                    param.PageIndex++;
                    req.page = param.PageIndex.ToString();
                    response = client.Execute(req, auth.AuthorizationCode, DateTime.Now.ToLocalTime());
                }
                else
                {
                    break;
                }
            }

            result.Data = orderList;

            return(result);
        }