public Response <OrderStatus> GetOrderStatus(GetOrderStatusRequest request) { Response <OrderStatus> response = new Response <OrderStatus>(); if (request == null || request.OrderCancel == null) { ArgumentNullException ex = new ArgumentNullException("GetOrderStatus request"); LogError(ex); response.ErrorCode = ErrorCode.Argument; response.Exception = ex; return(response); } try { int RowCount = 0; response.Result = new HaddadServiceAccessor().GetOrderStatus(request.OrderCancel); response.IsSuccess = true; } catch (Exception ex) { LogError(ex); response.IsSuccess = false; response.ErrorCode = ErrorCode.Technical; } return(response); }
public async Task <ActionResult <GetOrderStatusResponse> > Status([FromRoute] GetOrderStatusRequest request) { _logger.LogInformation($"Get order status service call for {request.OrderNumber}..."); var response = new GetOrderStatusResponse(); try { response.OrderStatus = (await _orderProcessingService.GetOrderAsync(request.OrderNumber)).OrderStatus; } catch (OrderNotFoundException ex) { _logger.LogWarning($"{ex.Message}"); return(NotFound(ex.Message)); } catch (ValidationException ex) { _logger.LogWarning($"Validations failures: {ex.Message}"); return(BadRequest(ex.Message)); } catch (Exception ex) { _logger.LogError($"Exception occured while getting order status: {ex.Message} {ex.StackTrace}"); return(StatusCode((int)HttpStatusCode.InternalServerError)); } return(Ok(response)); }
public override async Task GetOrderStatus(GetOrderStatusRequest request, IServerStreamWriter <GetOrderStatusResponse> responseStream, ServerCallContext context) { await responseStream.WriteAsync(new GetOrderStatusResponse { Status = "Created" }); await Task.Delay(500); await responseStream.WriteAsync(new GetOrderStatusResponse { Status = "Validated" }); await Task.Delay(1000); await responseStream.WriteAsync(new GetOrderStatusResponse { Status = "Dispatched" }); }
/// <summary> /// Получает текущее состояние заказа /// </summary> public GetOrderStatusResponse GetOrderStatus(GetOrderStatusParams getOrderStatusParams) { var url = _settings.BaseUrl + "/getOrderStatus.do"; var request = new GetOrderStatusRequest(getOrderStatusParams) { userName = _settings.Username, password = _settings.Password }; var result = _networkClient.PostObjectViaUrlParams <GetOrderStatusResponse>(url, request, "GET"); return(result); }