All Downloads are FREE. Search and download functionalities are using the official Maven repository.

dev.vality.swag.payments.model.Contract Maven / Gradle / Ivy

There is a newer version: 1.650-5dc6d9f-server
Show newest version
/*
 * Vality Payments API
 *  ## Описание  Vality Payments API предназначен для мерчантов, принимающих платежи из своего пользовательского интерфейса, например веб-сайта или мобильного приложения, и является единственной точкой взаимодействия с системой для проведения операций оплаты товаров и услуг.  ## Детали взаимодействия  При любом обращении к API в заголовке `X-Request-ID` соответствующего запроса необходимо передать его уникальный идентификатор:  ```  X-Request-ID: 37d735d4-0f42-4f05-89fa-eaa478fb5aa9 ```  ### Тип содержимого и кодировка  Система принимает и возвращает данные в формате JSON и кодировке UTF-8:  ```   Content-Type: application/json; charset=utf-8 ```  ### Формат дат  Система принимает и возвращает значения отметок времени в формате `date-time`, описанном в [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339):  ```   2017-01-01T00:00:00Z   2017-01-01T00:00:01+00:00 ```  ### Максимальное время обработки запроса  При любом обращении к API в заголовке `X-Request-Deadline` соответствующего запроса можно передать параметр отсечки по времени, определяющий максимальное время ожидания завершения операции по запросу:  ```  X-Request-Deadline: 10s ```  По истечении указанного времени система прекращает обработку запроса. Рекомендуется указывать значение не более одной минуты, но не менее трёх секунд.  `X-Request-Deadline` может:  * задаваться в формате `date-time` согласно   [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339); * задаваться в относительных величинах: в миллисекундах (`150000ms`), секундах (`540s`) или   минутах (`3.5m`). 
 *
 * OpenAPI spec version: 2.0.1
 * 
 *
 * NOTE: This class is auto generated by the swagger code generator program.
 * https://github.com/swagger-api/swagger-codegen.git
 * Do not edit the class manually.
 */


package dev.vality.swag.payments.model;

import java.util.Objects;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonValue;
import dev.vality.swag.payments.model.Contractor;
import dev.vality.swag.payments.model.LegalAgreement;
import dev.vality.swag.payments.model.ReportingPreferences;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.time.OffsetDateTime;

/**
 * Данные договора с участником
 */
@ApiModel(description = "Данные договора с участником")
@javax.annotation.Generated(value = "io.swagger.codegen.languages.JavaClientCodegen", date = "2022-08-22T08:18:24.176Z")
public class Contract {
  @JsonProperty("id")
  private String id = null;

  @JsonProperty("createdAt")
  private OffsetDateTime createdAt = null;

  /**
   * Статус договора
   */
  public enum StatusEnum {
    ACTIVE("active"),
    
    TERMINATED("terminated");

    private String value;

    StatusEnum(String value) {
      this.value = value;
    }

    @JsonValue
    public String getValue() {
      return value;
    }

    @Override
    public String toString() {
      return String.valueOf(value);
    }

    @JsonCreator
    public static StatusEnum fromValue(String text) {
      for (StatusEnum b : StatusEnum.values()) {
        if (String.valueOf(b.value).equals(text)) {
          return b;
        }
      }
      return null;
    }
  }

  @JsonProperty("status")
  private StatusEnum status = null;

  @JsonProperty("validSince")
  private OffsetDateTime validSince = null;

  @JsonProperty("validUntil")
  private OffsetDateTime validUntil = null;

  @JsonProperty("terminatedAt")
  private OffsetDateTime terminatedAt = null;

  @JsonProperty("contractor")
  private Contractor contractor = null;

  @JsonProperty("legalAgreement")
  private LegalAgreement legalAgreement = null;

  @JsonProperty("paymentInstitutionID")
  private Integer paymentInstitutionID = null;

  @JsonProperty("reportingPreferences")
  private ReportingPreferences reportingPreferences = null;

  public Contract id(String id) {
    this.id = id;
    return this;
  }

   /**
   * Идентификатор договора
   * @return id
  **/
  @ApiModelProperty(required = true, value = "Идентификатор договора")
  public String getId() {
    return id;
  }

  public void setId(String id) {
    this.id = id;
  }

  public Contract createdAt(OffsetDateTime createdAt) {
    this.createdAt = createdAt;
    return this;
  }

   /**
   * Дата и время создания договора
   * @return createdAt
  **/
  @ApiModelProperty(required = true, value = "Дата и время создания договора")
  public OffsetDateTime getCreatedAt() {
    return createdAt;
  }

  public void setCreatedAt(OffsetDateTime createdAt) {
    this.createdAt = createdAt;
  }

  public Contract status(StatusEnum status) {
    this.status = status;
    return this;
  }

   /**
   * Статус договора
   * @return status
  **/
  @ApiModelProperty(required = true, value = "Статус договора")
  public StatusEnum getStatus() {
    return status;
  }

  public void setStatus(StatusEnum status) {
    this.status = status;
  }

  public Contract validSince(OffsetDateTime validSince) {
    this.validSince = validSince;
    return this;
  }

   /**
   * Дата и время вступления договора в силу
   * @return validSince
  **/
  @ApiModelProperty(value = "Дата и время вступления договора в силу")
  public OffsetDateTime getValidSince() {
    return validSince;
  }

  public void setValidSince(OffsetDateTime validSince) {
    this.validSince = validSince;
  }

  public Contract validUntil(OffsetDateTime validUntil) {
    this.validUntil = validUntil;
    return this;
  }

   /**
   * Дата и время прекращения силы договора
   * @return validUntil
  **/
  @ApiModelProperty(value = "Дата и время прекращения силы договора")
  public OffsetDateTime getValidUntil() {
    return validUntil;
  }

  public void setValidUntil(OffsetDateTime validUntil) {
    this.validUntil = validUntil;
  }

  public Contract terminatedAt(OffsetDateTime terminatedAt) {
    this.terminatedAt = terminatedAt;
    return this;
  }

   /**
   * Дата и время расторжения договора
   * @return terminatedAt
  **/
  @ApiModelProperty(value = "Дата и время расторжения договора")
  public OffsetDateTime getTerminatedAt() {
    return terminatedAt;
  }

  public void setTerminatedAt(OffsetDateTime terminatedAt) {
    this.terminatedAt = terminatedAt;
  }

  public Contract contractor(Contractor contractor) {
    this.contractor = contractor;
    return this;
  }

   /**
   * Get contractor
   * @return contractor
  **/
  @ApiModelProperty(required = true, value = "")
  public Contractor getContractor() {
    return contractor;
  }

  public void setContractor(Contractor contractor) {
    this.contractor = contractor;
  }

  public Contract legalAgreement(LegalAgreement legalAgreement) {
    this.legalAgreement = legalAgreement;
    return this;
  }

   /**
   * Get legalAgreement
   * @return legalAgreement
  **/
  @ApiModelProperty(value = "")
  public LegalAgreement getLegalAgreement() {
    return legalAgreement;
  }

  public void setLegalAgreement(LegalAgreement legalAgreement) {
    this.legalAgreement = legalAgreement;
  }

  public Contract paymentInstitutionID(Integer paymentInstitutionID) {
    this.paymentInstitutionID = paymentInstitutionID;
    return this;
  }

   /**
   * Get paymentInstitutionID
   * @return paymentInstitutionID
  **/
  @ApiModelProperty(required = true, value = "")
  public Integer getPaymentInstitutionID() {
    return paymentInstitutionID;
  }

  public void setPaymentInstitutionID(Integer paymentInstitutionID) {
    this.paymentInstitutionID = paymentInstitutionID;
  }

  public Contract reportingPreferences(ReportingPreferences reportingPreferences) {
    this.reportingPreferences = reportingPreferences;
    return this;
  }

   /**
   * Get reportingPreferences
   * @return reportingPreferences
  **/
  @ApiModelProperty(value = "")
  public ReportingPreferences getReportingPreferences() {
    return reportingPreferences;
  }

  public void setReportingPreferences(ReportingPreferences reportingPreferences) {
    this.reportingPreferences = reportingPreferences;
  }


  @Override
  public boolean equals(java.lang.Object o) {
    if (this == o) {
      return true;
    }
    if (o == null || getClass() != o.getClass()) {
      return false;
    }
    Contract contract = (Contract) o;
    return Objects.equals(this.id, contract.id) &&
        Objects.equals(this.createdAt, contract.createdAt) &&
        Objects.equals(this.status, contract.status) &&
        Objects.equals(this.validSince, contract.validSince) &&
        Objects.equals(this.validUntil, contract.validUntil) &&
        Objects.equals(this.terminatedAt, contract.terminatedAt) &&
        Objects.equals(this.contractor, contract.contractor) &&
        Objects.equals(this.legalAgreement, contract.legalAgreement) &&
        Objects.equals(this.paymentInstitutionID, contract.paymentInstitutionID) &&
        Objects.equals(this.reportingPreferences, contract.reportingPreferences);
  }

  @Override
  public int hashCode() {
    return Objects.hash(id, createdAt, status, validSince, validUntil, terminatedAt, contractor, legalAgreement, paymentInstitutionID, reportingPreferences);
  }


  @Override
  public String toString() {
    StringBuilder sb = new StringBuilder();
    sb.append("class Contract {\n");
    
    sb.append("    id: ").append(toIndentedString(id)).append("\n");
    sb.append("    createdAt: ").append(toIndentedString(createdAt)).append("\n");
    sb.append("    status: ").append(toIndentedString(status)).append("\n");
    sb.append("    validSince: ").append(toIndentedString(validSince)).append("\n");
    sb.append("    validUntil: ").append(toIndentedString(validUntil)).append("\n");
    sb.append("    terminatedAt: ").append(toIndentedString(terminatedAt)).append("\n");
    sb.append("    contractor: ").append(toIndentedString(contractor)).append("\n");
    sb.append("    legalAgreement: ").append(toIndentedString(legalAgreement)).append("\n");
    sb.append("    paymentInstitutionID: ").append(toIndentedString(paymentInstitutionID)).append("\n");
    sb.append("    reportingPreferences: ").append(toIndentedString(reportingPreferences)).append("\n");
    sb.append("}");
    return sb.toString();
  }

  /**
   * Convert the given object to string with each line indented by 4 spaces
   * (except the first line).
   */
  private String toIndentedString(java.lang.Object o) {
    if (o == null) {
      return "null";
    }
    return o.toString().replace("\n", "\n    ");
  }

}





© 2015 - 2025 Weber Informatics LLC | Privacy Policy