示例#1
0
        /// <summary>
        /// 订单查询
        /// </summary>
        /// <param name="RequestEt"></param>
        /// <returns></returns>
        public WebServiceResponse <OrderQueryJsonEt> OrderQuery(OrderRequestJsonEt RequestEt)
        {
            // Web服务对象 提交数据
            var responseEt = _Request.OrderQuery(RequestEt.DistributorReservationId);
            // 处理 Response对象
            var jsonEt = HandleResponse <OrderQueryJsonEt>(responseEt.Error);

            if (jsonEt.Successful)
            {
                jsonEt.ResponseEt = null;
                if (responseEt != null && responseEt.OrderQueryInfo != null)
                {
                    var OrderInfos = responseEt.OrderQueryInfo.OrderInfos;
                    if (OrderInfos != null && OrderInfos.Length > 0)
                    {
                        jsonEt.ResponseEt = new OrderQueryJsonEt()
                        {
                            DistributorReservationId = RequestEt.DistributorReservationId,
                            ProductReservationId     = OrderInfos[0].ProductReservationId,
                            ConfirmNo         = OrderInfos[0].ConfirmNo,
                            ERPReservationId  = OrderInfos[0].ERPReservationId,
                            ReservationStatus = OrderInfos[0].ReservationStatus,
                            TotalAmount       = OrderInfos[0].TotalAmount
                        };
                    }
                }
            }

            return(jsonEt);
        }
示例#2
0
        /// <summary>
        /// 取消订单
        /// </summary>
        /// <param name="RequestEt"></param>
        public WebServiceResponse <CancelOrderStatusJsonEt> Cancel(OrderRequestJsonEt RequestEt)
        {
            // Web服务对象 提交数据
            var responseEt = _Request.Cancel(RequestEt.ProductReservationId, "", "");
            // 处理 Response对象
            var jsonEt = HandleResponse <CancelOrderStatusJsonEt>(responseEt.Error);

            if (jsonEt.Successful)
            {
                jsonEt.ResponseEt = new CancelOrderStatusJsonEt()
                {
                    ProductReservationId     = RequestEt.ProductReservationId,
                    DistributorReservationId = RequestEt.DistributorReservationId,
                    Status = responseEt.Status.ToString()
                };
            }

            return(jsonEt);
        }
示例#3
0
        /// <summary>
        /// 获取大都市订单状态
        /// </summary>
        /// <param name="taobaoOrderId"></param>
        /// <returns></returns>
        public string GetOrderStatusDDS(string taobaoOrderId)
        {
            string StatusName = string.Empty;
            //查询订单请求类
            var request  = new OrderRequestJsonEt();
            var response = new WebServiceResponse <OrderQueryJsonEt>();

            try
            {
                var order = SqlSugarContext.ResellbaseInstance.Queryable <TB_hotelcashorder>().Where(u => u.taoBaoOrderId.ToString() == taobaoOrderId).First();
                if (order == null)
                {
                    StatusName = "订单不存在";
                }
                else
                {
                    StatusName = "未知状态";
                    request    = new OrderRequestJsonEt
                    {
                        DistributorReservationId = order.orderNO
                    };
                    try
                    {
                        response = OrderDataOpEt.OrderQuery(request);
                    }
                    catch (Exception ex)
                    {
                        response = OrderDataOpEt.OrderQuery(request);
                    }
                    if (response != null && response.ResponseEt != null)
                    {
                        if (string.IsNullOrEmpty(order.sourceOrderID) && !string.IsNullOrEmpty(response.ResponseEt.ProductReservationId))
                        {
                            UpdateOrderSourceOrderID(order.aId, response.ResponseEt.ProductReservationId);
                        }
                        if (response.ResponseEt.ReservationStatus != null && response.ResponseEt.ReservationStatus.ToLower().Contains("confirmed"))
                        {
                            StatusName = "已确认";
                            try
                            {
                                string strRequest  = Newtonsoft.Json.JsonConvert.SerializeObject(request);
                                string strresponse = Newtonsoft.Json.JsonConvert.SerializeObject(response);
                                string orderText   = "查询订单号:" + order.orderNO + "请求数据:" + strRequest + "\r\n" + "返回数据:" + strresponse + "\r\n" + "------------------------------------------";
                                orderStatuslogWriter.Write(orderText);
                            }
                            catch (Exception exOrder)
                            {
                            }
                        }
                        else if (response.ResponseEt.ReservationStatus.ToLower().Contains("canceled"))
                        {
                            StatusName = "取消";
                            try
                            {
                                string strRequest  = Newtonsoft.Json.JsonConvert.SerializeObject(request);
                                string strresponse = Newtonsoft.Json.JsonConvert.SerializeObject(response);
                                string orderText   = "查询订单号:" + order.orderNO + "请求数据:" + strRequest + "\r\n" + "返回数据:" + strresponse + "\r\n" + "------------------------------------------";
                                orderStatuslogWriter.Write(orderText);
                            }
                            catch (Exception exOrder)
                            {
                            }
                        }
                        else if (response.ResponseEt.ReservationStatus.ToLower().Contains("pending"))
                        {
                            StatusName = "预订中";
                            //记录查询订单不确定订单日志
                            //try
                            //{
                            //    string strRequest = Newtonsoft.Json.JsonConvert.SerializeObject(request);
                            //    string strresponse = Newtonsoft.Json.JsonConvert.SerializeObject(response);
                            //    string orderText = "查询订单号:" + order.orderNO + "请求数据:" + strRequest + "\r\n" + "返回数据:" + strresponse + "\r\n" + "------------------------------------------";
                            //    orderStatuslogWriter.Write(orderText);
                            //}
                            //catch (Exception exOrder)
                            //{
                            //}
                        }
                        else if (response.ResponseEt.ReservationStatus.ToLower().Contains("failed"))
                        {
                            StatusName = "供应商返回发生错误";
                            //记录查询订单不确定订单日志
                            try
                            {
                                string strRequest  = Newtonsoft.Json.JsonConvert.SerializeObject(request);
                                string strresponse = Newtonsoft.Json.JsonConvert.SerializeObject(response);
                                string orderText   = "查询订单号:" + order.orderNO + "请求数据:" + strRequest + "\r\n" + "返回数据:" + strresponse + "\r\n" + "------------------------------------------";
                                orderStatuslogWriter.Write(orderText);
                            }
                            catch (Exception exOrder)
                            {
                            }
                        }
                        else
                        {
                            StatusName = "未知状态";
                            //记录查询订单不确定订单日志
                            try
                            {
                                string strRequest  = Newtonsoft.Json.JsonConvert.SerializeObject(request);
                                string strresponse = Newtonsoft.Json.JsonConvert.SerializeObject(response);
                                string orderText   = "查询订单号:" + order.orderNO + "请求数据:" + strRequest + "\r\n" + "返回数据:" + strresponse + "\r\n" + "------------------------------------------";
                                orderStatuslogWriter.Write(orderText);
                            }
                            catch (Exception exOrder)
                            {
                            }
                        }
                    }
                    else
                    {
                        if (string.IsNullOrEmpty(order.sourceOrderID))
                        {
                            StatusName = "未下单到大都市";
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                StatusName = "查询失败";
                //记录查询订单不确定订单日志
                try
                {
                    string strRequest  = Newtonsoft.Json.JsonConvert.SerializeObject(request);
                    string strresponse = Newtonsoft.Json.JsonConvert.SerializeObject(response);
                    string orderText   = "查询订单飞猪订单号:" + taobaoOrderId + "请求数据:" + strRequest + "\r\n" + "返回数据:" + strresponse + "\r\n" + "------------------------------------------";
                    orderStatuslogWriter.Write(orderText);
                }
                catch (Exception exOrder)
                {
                }
            }
            return(StatusName);
        }
示例#4
0
        public ServiceResult CancelOrder(int id)
        {
            var result   = new ServiceResult();
            var request  = new OrderRequestJsonEt();
            var response = new WebServiceResponse <CancelOrderStatusJsonEt>();

            try
            {
                //  bool islimit = true;

                var order = sqlSugarClient.Queryable <TB_hotelcashorder>().Where(u => u.aId == id).First();
                if (order == null)
                {
                    return(result.SetError("订单不存在"));
                }
                if (string.IsNullOrEmpty(order.sourceOrderID))
                {
                    return(result.SetError("未下单到大都市"));
                }
                string message = string.Empty;
                request = new OrderRequestJsonEt
                {
                    ProductReservationId = order.sourceOrderID,
                };
                try
                {
                    response = OrderDataOpEt.Cancel(request);
                }
                catch (Exception ex)
                {
                    response = OrderDataOpEt.Cancel(request);
                }
                //记录取消日志
                try
                {
                    string orderText   = string.Empty;
                    string strRequest  = Newtonsoft.Json.JsonConvert.SerializeObject(request);
                    string strresponse = Newtonsoft.Json.JsonConvert.SerializeObject(response);
                    orderText = "取消订单号:" + order.orderNO + "请求数据:" + strRequest + "\r\n" + "返回数据:" + strresponse + "\r\n" + "------------------------------------------";
                    cancellogWriter.Write(orderText);
                }
                catch (Exception exOrder)
                {
                }
                string StatusName = string.Empty;
                if (response != null && response.ResponseEt != null && response.ResponseEt.Status != null)
                {
                    if (response.ResponseEt.Status.ToLower().Contains("successful"))
                    {
                        StatusName = "取消成功";
                        string remark = string.Format("【大都市】:订单取消成功 [{0}]", DateTime.Now.ToString());
                        orderRepository.UpdateRemarkState(order.aId, 3, remark);
                        //orderRepository.UpdateOrderRemark(order.aId, remark);
                    }
                    else if (response.ResponseEt.Status.ToLower().Contains("failed") || !response.Successful)
                    {
                        StatusName = "取消失败";
                        if (!response.Successful && !string.IsNullOrWhiteSpace(response.ErrMsg))
                        {
                            StatusName = StatusName + "。" + response.ErrMsg;
                        }
                        string remark = string.Format("【大都市】:订单取消失败,具体原因(取消失败,请人工跟进),{1} [{0}]", DateTime.Now.ToString(), response.ErrMsg);
                        orderRepository.UpdateRemarkState(order.aId, 7, remark);
                    }
                    else if (!response.Successful)
                    {
                        StatusName = "取消失败";
                        if (!response.Successful && !string.IsNullOrWhiteSpace(response.ErrMsg))
                        {
                            StatusName = StatusName + "。" + response.ErrMsg;
                        }
                        string remark = string.Format("【大都市】:订单取消失败,具体原因(取消失败,请人工跟进),{1} [{0}]", DateTime.Now.ToString(), response.ErrMsg);
                        orderRepository.UpdateRemarkState(order.aId, 7, remark);
                    }
                    else
                    {
                        StatusName = "未知状态";
                        string remark = string.Format("<br/>【大都市】:订单取消失败,具体原因(取消失败,请人工跟进) [{0}]", DateTime.Now.ToString());
                        orderRepository.UpdateRemarkState(order.aId, 7, remark);
                    }
                }
                else if (!response.Successful)
                {
                    StatusName = "取消失败";
                    if (!response.Successful && !string.IsNullOrWhiteSpace(response.ErrMsg))
                    {
                        StatusName = StatusName + "。" + response.ErrMsg;
                    }
                    if (!order.remark.Contains("该订单已被拒单"))
                    {
                        string remark = string.Format("【大都市】:订单取消失败,具体原因(取消失败,请人工跟进),{1} [{0}]", DateTime.Now.ToString(), response.ErrMsg);
                        orderRepository.UpdateRemarkState(order.aId, 7, remark);
                    }
                }
                message += string.Format("【系统】提交取消申请,返回结果:{0} [{1}]", StatusName, DateTime.Now.ToString());
                orderRepository.UpdateOrderRemark(order.aId, message);



                return(result.SetSucess("提交取消申请成功"));
            }
            catch (Exception ex)
            {
                string message = string.Format("【系统】提交取消申请,出现异常:{0}", ex.ToString());
                orderRepository.UpdateRemarkState(id, 7, message);
                //记录取消日志
                try
                {
                    string orderText   = string.Empty;
                    string strRequest  = Newtonsoft.Json.JsonConvert.SerializeObject(request);
                    string strresponse = Newtonsoft.Json.JsonConvert.SerializeObject(response);
                    orderText = "取消订单id号:" + id + "请求数据:" + strRequest + "\r\n" + "返回数据:" + strresponse + "\r\n" + "------------------------------------------";
                    cancellogWriter.Write(orderText);
                }
                catch (Exception exOrder)
                {
                }
                return(result.SetError("提交取消申请失败"));
            }
        }