dev.vality.swag.payments.api.InvoiceTemplatesApi Maven / Gradle / Ivy
package dev.vality.swag.payments.api;
import dev.vality.swag.payments.ApiClient;
import dev.vality.swag.payments.model.DefaultLogicError;
import dev.vality.swag.payments.model.ExternalIDConflictError;
import dev.vality.swag.payments.model.GeneralError;
import dev.vality.swag.payments.model.InlineResponse4001;
import dev.vality.swag.payments.model.InlineResponse4003;
import dev.vality.swag.payments.model.InlineResponse4004;
import dev.vality.swag.payments.model.InlineResponse4005;
import dev.vality.swag.payments.model.InvoiceAndToken;
import dev.vality.swag.payments.model.InvoiceParamsWithTemplate;
import dev.vality.swag.payments.model.InvoiceTemplate;
import dev.vality.swag.payments.model.InvoiceTemplateAndToken;
import dev.vality.swag.payments.model.InvoiceTemplateCreateParams;
import dev.vality.swag.payments.model.InvoiceTemplateUpdateParams;
import dev.vality.swag.payments.model.PaymentMethod;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;
import org.springframework.web.client.RestClientException;
import org.springframework.web.client.HttpClientErrorException;
import org.springframework.web.util.UriComponentsBuilder;
import org.springframework.core.ParameterizedTypeReference;
import org.springframework.core.io.FileSystemResource;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpMethod;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
@javax.annotation.Generated(value = "io.swagger.codegen.languages.JavaClientCodegen", date = "2022-08-22T08:18:24.176Z")
@Component("dev.vality.swag.payments.api.InvoiceTemplatesApi")
public class InvoiceTemplatesApi {
private ApiClient apiClient;
public InvoiceTemplatesApi() {
this(new ApiClient());
}
@Autowired
public InvoiceTemplatesApi(ApiClient apiClient) {
this.apiClient = apiClient;
}
public ApiClient getApiClient() {
return apiClient;
}
public void setApiClient(ApiClient apiClient) {
this.apiClient = apiClient;
}
/**
*
* Создать новый шаблон инвойса.
* 201 - Шаблон инвойса создан.
*
400 - Ошибочные данные для создания шаблона
*
401 - Ошибка авторизации
*
409 - Переданное значение `externalID` уже использовалось вами ранее с другими параметрами запроса
* @param xRequestID Уникальный идентификатор запроса к системе
* @param invoiceTemplateCreateParams Параметры шаблона инвойса.
* @param xRequestDeadline Максимальное время обработки запроса
* @return InvoiceTemplateAndToken
* @throws RestClientException if an error occurs while attempting to invoke the API
*/
public InvoiceTemplateAndToken createInvoiceTemplate(String xRequestID, InvoiceTemplateCreateParams invoiceTemplateCreateParams, String xRequestDeadline) throws RestClientException {
Object postBody = invoiceTemplateCreateParams;
// verify the required parameter 'xRequestID' is set
if (xRequestID == null) {
throw new HttpClientErrorException(HttpStatus.BAD_REQUEST, "Missing the required parameter 'xRequestID' when calling createInvoiceTemplate");
}
// verify the required parameter 'invoiceTemplateCreateParams' is set
if (invoiceTemplateCreateParams == null) {
throw new HttpClientErrorException(HttpStatus.BAD_REQUEST, "Missing the required parameter 'invoiceTemplateCreateParams' when calling createInvoiceTemplate");
}
String path = UriComponentsBuilder.fromPath("/processing/invoice-templates").build().toUriString();
final MultiValueMap queryParams = new LinkedMultiValueMap();
final HttpHeaders headerParams = new HttpHeaders();
final MultiValueMap formParams = new LinkedMultiValueMap();
if (xRequestID != null)
headerParams.add("X-Request-ID", apiClient.parameterToString(xRequestID));
if (xRequestDeadline != null)
headerParams.add("X-Request-Deadline", apiClient.parameterToString(xRequestDeadline));
final String[] accepts = {
"application/json; charset=utf-8"
};
final List accept = apiClient.selectHeaderAccept(accepts);
final String[] contentTypes = {
"application/json; charset=utf-8"
};
final MediaType contentType = apiClient.selectHeaderContentType(contentTypes);
String[] authNames = new String[] { "bearer" };
ParameterizedTypeReference returnType = new ParameterizedTypeReference() {};
return apiClient.invokeAPI(path, HttpMethod.POST, queryParams, postBody, headerParams, formParams, accept, contentType, authNames, returnType);
}
/**
*
* Создать новый инвойс по шаблону.
* 201 - Инвойс создан
*
400 - Ошибочные данные для создания инвойса
*
401 - Ошибка авторизации
*
404 - Заданный ресурс не найден
*
409 - Переданное значение `externalID` уже использовалось вами ранее с другими параметрами запроса
* @param xRequestID Уникальный идентификатор запроса к системе
* @param invoiceTemplateID Идентификатор шаблона инвойса
* @param invoiceParamsWithTemplate Параметры создаваемого инвойса
* @param xRequestDeadline Максимальное время обработки запроса
* @return InvoiceAndToken
* @throws RestClientException if an error occurs while attempting to invoke the API
*/
public InvoiceAndToken createInvoiceWithTemplate(String xRequestID, String invoiceTemplateID, InvoiceParamsWithTemplate invoiceParamsWithTemplate, String xRequestDeadline) throws RestClientException {
Object postBody = invoiceParamsWithTemplate;
// verify the required parameter 'xRequestID' is set
if (xRequestID == null) {
throw new HttpClientErrorException(HttpStatus.BAD_REQUEST, "Missing the required parameter 'xRequestID' when calling createInvoiceWithTemplate");
}
// verify the required parameter 'invoiceTemplateID' is set
if (invoiceTemplateID == null) {
throw new HttpClientErrorException(HttpStatus.BAD_REQUEST, "Missing the required parameter 'invoiceTemplateID' when calling createInvoiceWithTemplate");
}
// verify the required parameter 'invoiceParamsWithTemplate' is set
if (invoiceParamsWithTemplate == null) {
throw new HttpClientErrorException(HttpStatus.BAD_REQUEST, "Missing the required parameter 'invoiceParamsWithTemplate' when calling createInvoiceWithTemplate");
}
// create path and map variables
final Map uriVariables = new HashMap();
uriVariables.put("invoiceTemplateID", invoiceTemplateID);
String path = UriComponentsBuilder.fromPath("/processing/invoice-templates/{invoiceTemplateID}/invoices").buildAndExpand(uriVariables).toUriString();
final MultiValueMap queryParams = new LinkedMultiValueMap();
final HttpHeaders headerParams = new HttpHeaders();
final MultiValueMap formParams = new LinkedMultiValueMap();
if (xRequestID != null)
headerParams.add("X-Request-ID", apiClient.parameterToString(xRequestID));
if (xRequestDeadline != null)
headerParams.add("X-Request-Deadline", apiClient.parameterToString(xRequestDeadline));
final String[] accepts = {
"application/json; charset=utf-8"
};
final List accept = apiClient.selectHeaderAccept(accepts);
final String[] contentTypes = {
"application/json; charset=utf-8"
};
final MediaType contentType = apiClient.selectHeaderContentType(contentTypes);
String[] authNames = new String[] { "bearer" };
ParameterizedTypeReference returnType = new ParameterizedTypeReference() {};
return apiClient.invokeAPI(path, HttpMethod.POST, queryParams, postBody, headerParams, formParams, accept, contentType, authNames, returnType);
}
/**
*
* Удалить шаблон инвойса.
* 204 - Шаблон инвойса удален.
*
400 - Ошибочные данные для удаления шаблона
*
401 - Ошибка авторизации
*
404 - Заданный ресурс не найден
* @param xRequestID Уникальный идентификатор запроса к системе
* @param invoiceTemplateID Идентификатор шаблона инвойса
* @param xRequestDeadline Максимальное время обработки запроса
* @throws RestClientException if an error occurs while attempting to invoke the API
*/
public void deleteInvoiceTemplate(String xRequestID, String invoiceTemplateID, String xRequestDeadline) throws RestClientException {
Object postBody = null;
// verify the required parameter 'xRequestID' is set
if (xRequestID == null) {
throw new HttpClientErrorException(HttpStatus.BAD_REQUEST, "Missing the required parameter 'xRequestID' when calling deleteInvoiceTemplate");
}
// verify the required parameter 'invoiceTemplateID' is set
if (invoiceTemplateID == null) {
throw new HttpClientErrorException(HttpStatus.BAD_REQUEST, "Missing the required parameter 'invoiceTemplateID' when calling deleteInvoiceTemplate");
}
// create path and map variables
final Map uriVariables = new HashMap();
uriVariables.put("invoiceTemplateID", invoiceTemplateID);
String path = UriComponentsBuilder.fromPath("/processing/invoice-templates/{invoiceTemplateID}").buildAndExpand(uriVariables).toUriString();
final MultiValueMap queryParams = new LinkedMultiValueMap();
final HttpHeaders headerParams = new HttpHeaders();
final MultiValueMap formParams = new LinkedMultiValueMap();
if (xRequestID != null)
headerParams.add("X-Request-ID", apiClient.parameterToString(xRequestID));
if (xRequestDeadline != null)
headerParams.add("X-Request-Deadline", apiClient.parameterToString(xRequestDeadline));
final String[] accepts = {
"application/json; charset=utf-8"
};
final List accept = apiClient.selectHeaderAccept(accepts);
final String[] contentTypes = {
"application/json; charset=utf-8"
};
final MediaType contentType = apiClient.selectHeaderContentType(contentTypes);
String[] authNames = new String[] { "bearer" };
ParameterizedTypeReference returnType = new ParameterizedTypeReference() {};
apiClient.invokeAPI(path, HttpMethod.DELETE, queryParams, postBody, headerParams, formParams, accept, contentType, authNames, returnType);
}
/**
*
* Получить доступные для инвойса методы оплаты по шаблону инвойса.
* 200 - Список методов оплаты
*
400 - Неверные данные
*
401 - Ошибка авторизации
*
404 - Заданный ресурс не найден
* @param xRequestID Уникальный идентификатор запроса к системе
* @param invoiceTemplateID Идентификатор шаблона инвойса
* @param xRequestDeadline Максимальное время обработки запроса
* @return List<PaymentMethod>
* @throws RestClientException if an error occurs while attempting to invoke the API
*/
public List getInvoicePaymentMethodsByTemplateID(String xRequestID, String invoiceTemplateID, String xRequestDeadline) throws RestClientException {
Object postBody = null;
// verify the required parameter 'xRequestID' is set
if (xRequestID == null) {
throw new HttpClientErrorException(HttpStatus.BAD_REQUEST, "Missing the required parameter 'xRequestID' when calling getInvoicePaymentMethodsByTemplateID");
}
// verify the required parameter 'invoiceTemplateID' is set
if (invoiceTemplateID == null) {
throw new HttpClientErrorException(HttpStatus.BAD_REQUEST, "Missing the required parameter 'invoiceTemplateID' when calling getInvoicePaymentMethodsByTemplateID");
}
// create path and map variables
final Map uriVariables = new HashMap();
uriVariables.put("invoiceTemplateID", invoiceTemplateID);
String path = UriComponentsBuilder.fromPath("/processing/invoice-templates/{invoiceTemplateID}/payment-methods").buildAndExpand(uriVariables).toUriString();
final MultiValueMap queryParams = new LinkedMultiValueMap();
final HttpHeaders headerParams = new HttpHeaders();
final MultiValueMap formParams = new LinkedMultiValueMap();
if (xRequestID != null)
headerParams.add("X-Request-ID", apiClient.parameterToString(xRequestID));
if (xRequestDeadline != null)
headerParams.add("X-Request-Deadline", apiClient.parameterToString(xRequestDeadline));
final String[] accepts = {
"application/json; charset=utf-8"
};
final List accept = apiClient.selectHeaderAccept(accepts);
final String[] contentTypes = {
"application/json; charset=utf-8"
};
final MediaType contentType = apiClient.selectHeaderContentType(contentTypes);
String[] authNames = new String[] { "bearer" };
ParameterizedTypeReference> returnType = new ParameterizedTypeReference>() {};
return apiClient.invokeAPI(path, HttpMethod.GET, queryParams, postBody, headerParams, formParams, accept, contentType, authNames, returnType);
}
/**
*
* Получить шаблон инвойса по его идентификатору.
* 200 - Шаблон инвойса
*
400 - Неверные данные
*
401 - Ошибка авторизации
*
404 - Заданный ресурс не найден
* @param xRequestID Уникальный идентификатор запроса к системе
* @param invoiceTemplateID Идентификатор шаблона инвойса
* @param xRequestDeadline Максимальное время обработки запроса
* @return InvoiceTemplate
* @throws RestClientException if an error occurs while attempting to invoke the API
*/
public InvoiceTemplate getInvoiceTemplateByID(String xRequestID, String invoiceTemplateID, String xRequestDeadline) throws RestClientException {
Object postBody = null;
// verify the required parameter 'xRequestID' is set
if (xRequestID == null) {
throw new HttpClientErrorException(HttpStatus.BAD_REQUEST, "Missing the required parameter 'xRequestID' when calling getInvoiceTemplateByID");
}
// verify the required parameter 'invoiceTemplateID' is set
if (invoiceTemplateID == null) {
throw new HttpClientErrorException(HttpStatus.BAD_REQUEST, "Missing the required parameter 'invoiceTemplateID' when calling getInvoiceTemplateByID");
}
// create path and map variables
final Map uriVariables = new HashMap();
uriVariables.put("invoiceTemplateID", invoiceTemplateID);
String path = UriComponentsBuilder.fromPath("/processing/invoice-templates/{invoiceTemplateID}").buildAndExpand(uriVariables).toUriString();
final MultiValueMap queryParams = new LinkedMultiValueMap();
final HttpHeaders headerParams = new HttpHeaders();
final MultiValueMap formParams = new LinkedMultiValueMap();
if (xRequestID != null)
headerParams.add("X-Request-ID", apiClient.parameterToString(xRequestID));
if (xRequestDeadline != null)
headerParams.add("X-Request-Deadline", apiClient.parameterToString(xRequestDeadline));
final String[] accepts = {
"application/json; charset=utf-8"
};
final List accept = apiClient.selectHeaderAccept(accepts);
final String[] contentTypes = {
"application/json; charset=utf-8"
};
final MediaType contentType = apiClient.selectHeaderContentType(contentTypes);
String[] authNames = new String[] { "bearer" };
ParameterizedTypeReference returnType = new ParameterizedTypeReference() {};
return apiClient.invokeAPI(path, HttpMethod.GET, queryParams, postBody, headerParams, formParams, accept, contentType, authNames, returnType);
}
/**
*
* Модифицировать шаблон инвойса.
* 200 - Шаблон инвойса модифицирован.
*
400 - Ошибочные данные для изменения шаблона
*
401 - Ошибка авторизации
*
404 - Заданный ресурс не найден
* @param xRequestID Уникальный идентификатор запроса к системе
* @param invoiceTemplateID Идентификатор шаблона инвойса
* @param invoiceTemplateUpdateParams Параметры модифицируемого инвойса.
* @param xRequestDeadline Максимальное время обработки запроса
* @return InvoiceTemplate
* @throws RestClientException if an error occurs while attempting to invoke the API
*/
public InvoiceTemplate updateInvoiceTemplate(String xRequestID, String invoiceTemplateID, InvoiceTemplateUpdateParams invoiceTemplateUpdateParams, String xRequestDeadline) throws RestClientException {
Object postBody = invoiceTemplateUpdateParams;
// verify the required parameter 'xRequestID' is set
if (xRequestID == null) {
throw new HttpClientErrorException(HttpStatus.BAD_REQUEST, "Missing the required parameter 'xRequestID' when calling updateInvoiceTemplate");
}
// verify the required parameter 'invoiceTemplateID' is set
if (invoiceTemplateID == null) {
throw new HttpClientErrorException(HttpStatus.BAD_REQUEST, "Missing the required parameter 'invoiceTemplateID' when calling updateInvoiceTemplate");
}
// verify the required parameter 'invoiceTemplateUpdateParams' is set
if (invoiceTemplateUpdateParams == null) {
throw new HttpClientErrorException(HttpStatus.BAD_REQUEST, "Missing the required parameter 'invoiceTemplateUpdateParams' when calling updateInvoiceTemplate");
}
// create path and map variables
final Map uriVariables = new HashMap();
uriVariables.put("invoiceTemplateID", invoiceTemplateID);
String path = UriComponentsBuilder.fromPath("/processing/invoice-templates/{invoiceTemplateID}").buildAndExpand(uriVariables).toUriString();
final MultiValueMap queryParams = new LinkedMultiValueMap();
final HttpHeaders headerParams = new HttpHeaders();
final MultiValueMap formParams = new LinkedMultiValueMap();
if (xRequestID != null)
headerParams.add("X-Request-ID", apiClient.parameterToString(xRequestID));
if (xRequestDeadline != null)
headerParams.add("X-Request-Deadline", apiClient.parameterToString(xRequestDeadline));
final String[] accepts = {
"application/json; charset=utf-8"
};
final List accept = apiClient.selectHeaderAccept(accepts);
final String[] contentTypes = {
"application/json; charset=utf-8"
};
final MediaType contentType = apiClient.selectHeaderContentType(contentTypes);
String[] authNames = new String[] { "bearer" };
ParameterizedTypeReference returnType = new ParameterizedTypeReference() {};
return apiClient.invokeAPI(path, HttpMethod.PUT, queryParams, postBody, headerParams, formParams, accept, contentType, authNames, returnType);
}
}