/// <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); }
/// <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); }
/// <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); }
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("提交取消申请失败")); } }