diff --git a/src/main/kotlin/com/ecwid/apiclient/v3/OrdersApiClient.kt b/src/main/kotlin/com/ecwid/apiclient/v3/OrdersApiClient.kt index 2f0c7243..db9e37f0 100644 --- a/src/main/kotlin/com/ecwid/apiclient/v3/OrdersApiClient.kt +++ b/src/main/kotlin/com/ecwid/apiclient/v3/OrdersApiClient.kt @@ -23,6 +23,7 @@ interface OrdersApiClient { fun deleteOrderItemOptionFiles(request: OrderItemOptionFilesDeleteRequest): OrderItemOptionFileDeleteResult fun searchDeletedOrders(request: DeletedOrdersSearchRequest): DeletedOrdersSearchResult fun searchDeletedOrdersAsSequence(request: DeletedOrdersSearchRequest): Sequence + fun previewOrdersTaxInvoice(request: OrderTaxInvoicePreviewRequest): String } @Suppress("EXTENSION_SHADOWED_BY_MEMBER") diff --git a/src/main/kotlin/com/ecwid/apiclient/v3/dto/order/request/OrderTaxInvoicePreviewRequest.kt b/src/main/kotlin/com/ecwid/apiclient/v3/dto/order/request/OrderTaxInvoicePreviewRequest.kt new file mode 100644 index 00000000..19e461f3 --- /dev/null +++ b/src/main/kotlin/com/ecwid/apiclient/v3/dto/order/request/OrderTaxInvoicePreviewRequest.kt @@ -0,0 +1,19 @@ +package com.ecwid.apiclient.v3.dto.order.request + +import com.ecwid.apiclient.v3.dto.ApiRequest +import com.ecwid.apiclient.v3.httptransport.HttpBody +import com.ecwid.apiclient.v3.impl.RequestInfo + +data class OrderTaxInvoicePreviewRequest( + val order: UpdatedOrder = UpdatedOrder() +) : ApiRequest { + override fun toRequestInfo() = RequestInfo.createPostRequest( + pathSegments = listOf( + "orders", + "tax-invoice-preview", + ), + httpBody = HttpBody.JsonBody( + obj = order + ) + ) +} diff --git a/src/main/kotlin/com/ecwid/apiclient/v3/impl/OrdersApiClientImpl.kt b/src/main/kotlin/com/ecwid/apiclient/v3/impl/OrdersApiClientImpl.kt index f4c54c07..f14253d7 100644 --- a/src/main/kotlin/com/ecwid/apiclient/v3/impl/OrdersApiClientImpl.kt +++ b/src/main/kotlin/com/ecwid/apiclient/v3/impl/OrdersApiClientImpl.kt @@ -75,4 +75,6 @@ internal class OrdersApiClientImpl( offsetRequest = offsetRequest.copy(offset = offsetRequest.offset + searchResult.count) } while (searchResult.count >= searchResult.limit) } + + override fun previewOrdersTaxInvoice(request: OrderTaxInvoicePreviewRequest) = apiClientHelper.makeStringResultRequest(request) }