/// <summary> /// 获取下单状态 /// </summary> /// <param name="req"></param> /// <returns></returns> public static async Task <GetOrderRes> GetOrderAsync(GetOrderReq req) { try { var requestUrl = TRADE_URL + GET_ORDER_URL; var form = new Dictionary <string, string>(); form.Add("orderNumber", req.OrderNo); form.Add("currencyPair", req.CurrencyPair); var json = await PostReqAsync(requestUrl, form); var parse = JToken.Parse(json) as dynamic; if (parse.result == "true") { return(parse.order.ToObject <GetOrderRes>()); } else { var code = parse.code.ToString(); var message = parse.message.ToString(); throw new BotException(code, message); } } catch (JsonSerializationException) { throw new BotException("1002"); } catch (Exception ex) { throw new BotException("1000", ex.Message); } }
public async Task <ServiceResponse <List <Order> > > GetOrders(LinCUser user, int?orderId = null) { var headers = RequestHeaderCreator.GetWebApiClientHeader(); GetOrderReq getOrdReq = new GetOrderReq(); switch (user.UserTypeId) { case 2: //LinCUserType.Consumer: getOrdReq.ConsumerId = user.UserId; getOrdReq.SearchType = "CONSUMER"; break; case 1: // LinCUserType.Supplier: getOrdReq.SupplierId = user.UserId; getOrdReq.SearchType = "SUPPLIER"; break; case 3: // LinCUserType.Volunteer: getOrdReq.VolunteerId = user.UserId; getOrdReq.SearchType = "VOLUNTEER"; break; default: break; } getOrdReq.OrderId = orderId; var response = await _restClient .ExecuteAsync <string, GetOrderReq>( HttpVerb.POST, action : "/product/getOrder", paramMode : HttpParamMode.BODY, requestBody : getOrdReq, headers : headers, apiRoutePrefix : $"{AppSettings.ApiEndpoint}" ); if (!response.IsOK() || string.IsNullOrEmpty(response.StringData)) { return(new ServiceResponse <List <Order> >(ServiceStatus.Error, data: null, errorCode: LinCTrasactionStatus.Failure.ToString(), errorMessage: "Problem in saving product.")); } var jSonResponse = response.StringData.Replace(@"\", string.Empty); if (jSonResponse.Contains("errorMessage")) { return(new ServiceResponse <List <Order> >(ServiceStatus.Error, data: null, errorCode: LinCTrasactionStatus.Failure.ToString(), errorMessage: "Problem in saving product.")); } var ordersResponse = JsonConvert.DeserializeObject <GetOrderResponse>(jSonResponse); return(new ServiceResponse <List <Order> >(ServiceStatus.Success, data: ordersResponse.Orders)); }