Example #1
0
        /// <summary>
        /// 获取单笔订单详情
        /// </summary>
        /// <param name="param">参数实体</param>
        /// <param name="auth">授权参数</param>
        /// <returns>单笔订单详情</returns>
        /// <reamrks>2017-08-18 罗勤瑶 创建</reamrks>
        public Result <UpGradeOrder> GetOrderDetail(OrderParameters param, AuthorizationParameters auth)
        {
            //};
            var dealerInfo = new HytOrderDealerInfo()
            {
                DealerSysNo     = auth.DealerMall.DealerSysNo,   //
                DealerMallSysNo = auth.DealerMall.SysNo,         //
                HytPayStatus    = 20,
                IsSelfSupport   = auth.DealerMall.IsSelfSupport, //
            };
            var result = new Result <UpGradeOrder> {
                Status = true, Message = "", Data = null, StatusCode = 0
            };
            var order  = new UpGradeOrder();
            var _param = new Dictionary <string, string>();

            param.PageSize  = 999;
            param.PageIndex = 1;


            //请求的参数类调用
            GeGeJiaParameter ggjParameter = new GeGeJiaParameter();

            ///格格家没有单个订单的接口
            ///
            //string parm = "{\"params\":{\"startTime\":\"" + param.StartDate.ToString("yyyy-MM-dd HH:mm:ss") + "\",\"endTime\":\"" + param.EndDate.ToString("yyyy-MM-dd HH:mm:ss") + "\",\"page\":" + param.PageIndex + ", \"pageSize\":" + param.PageSize
            //+ ", \"status\":2},\"partner\":\"" + auth.DealerApp.AppSecret + "\",\"timestamp\":\"" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "\"}";


            return(null);
        }
Example #2
0
        /// <summary>
        /// 批量获取指定时间区间的订单
        /// (待升舱的订单)
        /// </summary>
        /// <param name="param">参数实体</param>
        /// <param name="auth">授权参数</param>
        /// <returns>订单列表</returns>
        /// <reamrks>2017-08-18 黄杰 创建</reamrks>
        /// /// <reamrks>2018-03-18 罗勤瑶 修改</reamrks>
        public Result <List <UpGradeOrder> > GetOrderList(OrderParameters param, AuthorizationParameters auth)
        {
            //var dealerInfo = new HytOrderDealerInfo()
            //{
            //    DealerSysNo = 129,
            //    DealerMallSysNo = 24,
            //    HytPayStatus = 20,
            //    IsSelfSupport = 1,
            //};
            var dealerInfo = new HytOrderDealerInfo()
            {
                DealerSysNo     = auth.DealerMall.DealerSysNo,   //
                DealerMallSysNo = auth.DealerMall.SysNo,         //
                HytPayStatus    = 20,
                IsSelfSupport   = auth.DealerMall.IsSelfSupport, //
            };
            var result = new Result <List <UpGradeOrder> > {
                Status = true, Message = "", Data = null, StatusCode = 0
            };
            var orderList = new List <UpGradeOrder>();
            var _param    = new Dictionary <string, string>();

            param.PageSize  = 999;
            param.PageIndex = 1;


            //请求的参数类调用
            GeGeJiaParameter ggjParameter = new GeGeJiaParameter();

            //startTime付款起始时间、endTime付款结束时间。starTime必须小于endTime,并且起始时间跟结束时间差不得超过30天
            //page页码,不传默认展示第一页
            //pageSize每页数量,不传默认一页50条
            //status订单状态;1:未付款,2:待发货,3:已发货,4:交易成功,5:用户取消(待退款团购),6:超时取消(已退款团购),7:团购进行中(团购)
            //partner商家身份标识
            //timestamp时间戳

            string parm = "{\"params\":{\"startTime\":\"" + param.StartDate.ToString("yyyy-MM-dd HH:mm:ss") + "\",\"endTime\":\"" + param.EndDate.ToString("yyyy-MM-dd HH:mm:ss") + "\",\"page\":" + param.PageIndex + ", \"pageSize\":" + param.PageSize
                          + ", \"status\":2},\"partner\":\"" + auth.DealerApp.AppSecret + "\",\"timestamp\":\"" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "\"}";


            #region 时间控制
            string weekstr = DateTime.Now.DayOfWeek.ToString();
            bool   isTest  = true;
            if ((weekstr == "Sunday" || weekstr == "Saturday" || (DateTime.Now.Hour > 16 && DateTime.Now.Minute > 30) || (DateTime.Now.Hour < 9)) && !isTest)
            {
                return(new Result <List <UpGradeOrder> >()
                {
                    Status = false,
                    StatusCode = 9999,
                    Message = "不是接单时间",
                    Data = null
                });
            }
            #endregion

            //MD5加密签名
            string sign = MD5Encrypt(auth.DealerApp.AppKey + parm + auth.DealerApp.AppKey).ToUpper();

            var response = PostJson("http://openapi.gegejia.com:8902/api/order/findOrders", parm, sign);
            param.PageIndex = 1;

            while (true)
            {
                var trade = JObject.Parse(response);
                if (trade["success"].ToString() == "false")
                {
                    return(new Result <List <UpGradeOrder> >()
                    {
                        Status = false,
                        StatusCode = 9999,
                        Message = trade["errMsg"].ToString(),
                        Data = null
                    });
                }
                int total = int.Parse(trade["totalCount"].ToString());

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

                var trades = trade["orders"];
                if (trades == null)
                {
                    return(new Result <List <UpGradeOrder> >()
                    {
                        Status = false,
                        StatusCode = 9999,
                        Message = "没有订单",
                        Data = null
                    });
                }
                bool has_next = param.PageIndex < totalPage;

                //trade = JObject.Parse(response.ToString());
                foreach (var i in trades)
                {
                    //未冻结订单才能接受
                    if (i["freezeStatus"].ToString() == "0" || i["freezeStatus"].ToString() == "2")
                    {
                        var order = new UpGradeOrder();

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

                if (has_next)
                {
                    param.PageIndex++;
                    ggjParameter.paramss.page = param.PageIndex;

                    parm = "{\"params\":{\"startTime\":\"" + param.StartDate.ToString("yyyy-MM-dd HH:mm:ss") + "\",\"endTime\":\"" + param.EndDate.ToString("yyyy-MM-dd HH:mm:ss") + "\",\"page\":" + param.PageIndex + ", \"pageSize\":" + param.PageSize
                           + ", \"status\":2},\"partner\":\"" + auth.DealerApp.AppSecret + "\",\"timestamp\":\"" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "\"}";
                    response = PostJson("http://openapi.gegejia.com:8902/api/order/findOrders", parm, sign);
                }
                else
                {
                    break;
                }
            }

            result.Data = orderList;

            return(result);
        }