/// <summary> /// Получение заказа в требуемом формате из заказа программы ДВ (использует функцию ниже) /// </summary> /// <param name="orderId">Идентификатор заказа</param> /// <returns>APIOrder</returns> public OrderDto Get(int orderId) { var vodovozOrder = _orderRepository.GetOrder(_unitOfWork, orderId) ?? throw new DataNotFoundException(nameof(orderId), $"Заказ { orderId } не найден"); var routeListItem = _routeListItemRepository.GetRouteListItemForOrder(_unitOfWork, vodovozOrder); var order = _orderConverter.convertToAPIOrder( vodovozOrder, routeListItem.CreationDate, _aPISmsPaymentModel.GetOrderSmsPaymentStatus(orderId), _fastPaymentModel.GetOrderFastPaymentStatus(orderId)); order.OrderAdditionalInfo = GetAdditionalInfo(vodovozOrder); return(order); }
public OrderQRPaymentStatusResponseDto GetOrderQRPaymentStatus(int orderId) { var additionalInfo = _aPIOrderData.GetAdditionalInfo(orderId) ?? throw new Exception($"Не удалось получить информацию о заказе {orderId}"); var response = new OrderQRPaymentStatusResponseDto { AvailablePaymentTypes = additionalInfo.AvailablePaymentTypes, CanReceiveQR = additionalInfo.CanReceiveQRCode, QRPaymentStatus = _qrPaymentConverter.ConvertToAPIPaymentStatus(_fastPaymentModel.GetOrderFastPaymentStatus(orderId)) }; return(response); }