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

jp.co.freee.accounting.models.InvoiceCreateParams Maven / Gradle / Ivy

There is a newer version: 2.29.0
Show newest version
/*
 * freee API
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: v1.0
 * 
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */


package jp.co.freee.accounting.models;

import java.util.Objects;
import java.util.Arrays;
import com.google.gson.TypeAdapter;
import com.google.gson.annotations.JsonAdapter;
import com.google.gson.annotations.SerializedName;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonWriter;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import jp.co.freee.accounting.models.InvoiceCreateParamsInvoiceContents;
import org.openapitools.jackson.nullable.JsonNullable;

/**
 * InvoiceCreateParams
 */
@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
public class InvoiceCreateParams {
  public static final String SERIALIZED_NAME_BOOKING_DATE = "booking_date";
  @SerializedName(SERIALIZED_NAME_BOOKING_DATE)
  private String bookingDate;

  public static final String SERIALIZED_NAME_COMPANY_ADDRESS1 = "company_address1";
  @SerializedName(SERIALIZED_NAME_COMPANY_ADDRESS1)
  private String companyAddress1;

  public static final String SERIALIZED_NAME_COMPANY_ADDRESS2 = "company_address2";
  @SerializedName(SERIALIZED_NAME_COMPANY_ADDRESS2)
  private String companyAddress2;

  public static final String SERIALIZED_NAME_COMPANY_CONTACT_INFO = "company_contact_info";
  @SerializedName(SERIALIZED_NAME_COMPANY_CONTACT_INFO)
  private String companyContactInfo;

  public static final String SERIALIZED_NAME_COMPANY_ID = "company_id";
  @SerializedName(SERIALIZED_NAME_COMPANY_ID)
  private Integer companyId;

  public static final String SERIALIZED_NAME_COMPANY_NAME = "company_name";
  @SerializedName(SERIALIZED_NAME_COMPANY_NAME)
  private String companyName;

  public static final String SERIALIZED_NAME_COMPANY_PREFECTURE_CODE = "company_prefecture_code";
  @SerializedName(SERIALIZED_NAME_COMPANY_PREFECTURE_CODE)
  private Integer companyPrefectureCode;

  public static final String SERIALIZED_NAME_COMPANY_ZIPCODE = "company_zipcode";
  @SerializedName(SERIALIZED_NAME_COMPANY_ZIPCODE)
  private String companyZipcode;

  public static final String SERIALIZED_NAME_DESCRIPTION = "description";
  @SerializedName(SERIALIZED_NAME_DESCRIPTION)
  private String description;

  public static final String SERIALIZED_NAME_DUE_DATE = "due_date";
  @SerializedName(SERIALIZED_NAME_DUE_DATE)
  private String dueDate;

  public static final String SERIALIZED_NAME_INVOICE_CONTENTS = "invoice_contents";
  @SerializedName(SERIALIZED_NAME_INVOICE_CONTENTS)
  private List invoiceContents = null;

  /**
   * 請求書レイアウト * `default_classic` - レイアウト1/クラシック (デフォルト)  * `standard_classic` - レイアウト2/クラシック  * `envelope_classic` - 封筒1/クラシック  * `carried_forward_standard_classic` - レイアウト3(繰越金額欄あり)/クラシック  * `carried_forward_envelope_classic` - 封筒2(繰越金額欄あり)/クラシック  * `default_modern` - レイアウト1/モダン  * `standard_modern` - レイアウト2/モダン  * `envelope_modern` - 封筒/モダン
   */
  @JsonAdapter(InvoiceLayoutEnum.Adapter.class)
  public enum InvoiceLayoutEnum {
    DEFAULT_CLASSIC("default_classic"),
    
    STANDARD_CLASSIC("standard_classic"),
    
    ENVELOPE_CLASSIC("envelope_classic"),
    
    CARRIED_FORWARD_STANDARD_CLASSIC("carried_forward_standard_classic"),
    
    CARRIED_FORWARD_ENVELOPE_CLASSIC("carried_forward_envelope_classic"),
    
    DEFAULT_MODERN("default_modern"),
    
    STANDARD_MODERN("standard_modern"),
    
    ENVELOPE_MODERN("envelope_modern");

    private String value;

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

    public String getValue() {
      return value;
    }

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

    public static InvoiceLayoutEnum fromValue(String value) {
      for (InvoiceLayoutEnum b : InvoiceLayoutEnum.values()) {
        if (b.value.equals(value)) {
          return b;
        }
      }
      throw new IllegalArgumentException("Unexpected value '" + value + "'");
    }

    public static class Adapter extends TypeAdapter {
      @Override
      public void write(final JsonWriter jsonWriter, final InvoiceLayoutEnum enumeration) throws IOException {
        jsonWriter.value(enumeration.getValue());
      }

      @Override
      public InvoiceLayoutEnum read(final JsonReader jsonReader) throws IOException {
        String value =  jsonReader.nextString();
        return InvoiceLayoutEnum.fromValue(value);
      }
    }
  }

  public static final String SERIALIZED_NAME_INVOICE_LAYOUT = "invoice_layout";
  @SerializedName(SERIALIZED_NAME_INVOICE_LAYOUT)
  private InvoiceLayoutEnum invoiceLayout;

  public static final String SERIALIZED_NAME_INVOICE_NUMBER = "invoice_number";
  @SerializedName(SERIALIZED_NAME_INVOICE_NUMBER)
  private String invoiceNumber;

  /**
   * 請求書ステータス<br> <ul>   <li>draft: 下書き (デフォルト)</li>   <li>(廃止予定) issue: 発行 (送付待ち (unsubmitted) と同じです。)</li>   <li>unsubmitted: 送付待ち</li>   <li>submitted: 送付済み</li> </ul> issue, unsubmitted, submitted は請求書承認ワークフローを利用している場合は指定できません。 
   */
  @JsonAdapter(InvoiceStatusEnum.Adapter.class)
  public enum InvoiceStatusEnum {
    DRAFT("draft"),
    
    ISSUE("issue"),
    
    UNSUBMITTED("unsubmitted"),
    
    SUBMITTED("submitted");

    private String value;

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

    public String getValue() {
      return value;
    }

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

    public static InvoiceStatusEnum fromValue(String value) {
      for (InvoiceStatusEnum b : InvoiceStatusEnum.values()) {
        if (b.value.equals(value)) {
          return b;
        }
      }
      throw new IllegalArgumentException("Unexpected value '" + value + "'");
    }

    public static class Adapter extends TypeAdapter {
      @Override
      public void write(final JsonWriter jsonWriter, final InvoiceStatusEnum enumeration) throws IOException {
        jsonWriter.value(enumeration.getValue());
      }

      @Override
      public InvoiceStatusEnum read(final JsonReader jsonReader) throws IOException {
        String value =  jsonReader.nextString();
        return InvoiceStatusEnum.fromValue(value);
      }
    }
  }

  public static final String SERIALIZED_NAME_INVOICE_STATUS = "invoice_status";
  @SerializedName(SERIALIZED_NAME_INVOICE_STATUS)
  private InvoiceStatusEnum invoiceStatus;

  public static final String SERIALIZED_NAME_ISSUE_DATE = "issue_date";
  @SerializedName(SERIALIZED_NAME_ISSUE_DATE)
  private String issueDate;

  public static final String SERIALIZED_NAME_MESSAGE = "message";
  @SerializedName(SERIALIZED_NAME_MESSAGE)
  private String message;

  public static final String SERIALIZED_NAME_NOTES = "notes";
  @SerializedName(SERIALIZED_NAME_NOTES)
  private String notes;

  public static final String SERIALIZED_NAME_PARTNER_ADDRESS1 = "partner_address1";
  @SerializedName(SERIALIZED_NAME_PARTNER_ADDRESS1)
  private String partnerAddress1;

  public static final String SERIALIZED_NAME_PARTNER_ADDRESS2 = "partner_address2";
  @SerializedName(SERIALIZED_NAME_PARTNER_ADDRESS2)
  private String partnerAddress2;

  public static final String SERIALIZED_NAME_PARTNER_CODE = "partner_code";
  @SerializedName(SERIALIZED_NAME_PARTNER_CODE)
  private String partnerCode;

  public static final String SERIALIZED_NAME_PARTNER_CONTACT_INFO = "partner_contact_info";
  @SerializedName(SERIALIZED_NAME_PARTNER_CONTACT_INFO)
  private String partnerContactInfo;

  public static final String SERIALIZED_NAME_PARTNER_DISPLAY_NAME = "partner_display_name";
  @SerializedName(SERIALIZED_NAME_PARTNER_DISPLAY_NAME)
  private String partnerDisplayName;

  public static final String SERIALIZED_NAME_PARTNER_ID = "partner_id";
  @SerializedName(SERIALIZED_NAME_PARTNER_ID)
  private Integer partnerId;

  public static final String SERIALIZED_NAME_PARTNER_PREFECTURE_CODE = "partner_prefecture_code";
  @SerializedName(SERIALIZED_NAME_PARTNER_PREFECTURE_CODE)
  private Integer partnerPrefectureCode;

  public static final String SERIALIZED_NAME_PARTNER_TITLE = "partner_title";
  @SerializedName(SERIALIZED_NAME_PARTNER_TITLE)
  private String partnerTitle;

  public static final String SERIALIZED_NAME_PARTNER_ZIPCODE = "partner_zipcode";
  @SerializedName(SERIALIZED_NAME_PARTNER_ZIPCODE)
  private String partnerZipcode;

  public static final String SERIALIZED_NAME_PAYMENT_BANK_INFO = "payment_bank_info";
  @SerializedName(SERIALIZED_NAME_PAYMENT_BANK_INFO)
  private String paymentBankInfo;

  /**
   * 支払方法 (振込: transfer, 引き落とし: direct_debit)
   */
  @JsonAdapter(PaymentTypeEnum.Adapter.class)
  public enum PaymentTypeEnum {
    TRANSFER("transfer"),
    
    DIRECT_DEBIT("direct_debit");

    private String value;

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

    public String getValue() {
      return value;
    }

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

    public static PaymentTypeEnum fromValue(String value) {
      for (PaymentTypeEnum b : PaymentTypeEnum.values()) {
        if (b.value.equals(value)) {
          return b;
        }
      }
      throw new IllegalArgumentException("Unexpected value '" + value + "'");
    }

    public static class Adapter extends TypeAdapter {
      @Override
      public void write(final JsonWriter jsonWriter, final PaymentTypeEnum enumeration) throws IOException {
        jsonWriter.value(enumeration.getValue());
      }

      @Override
      public PaymentTypeEnum read(final JsonReader jsonReader) throws IOException {
        String value =  jsonReader.nextString();
        return PaymentTypeEnum.fromValue(value);
      }
    }
  }

  public static final String SERIALIZED_NAME_PAYMENT_TYPE = "payment_type";
  @SerializedName(SERIALIZED_NAME_PAYMENT_TYPE)
  private PaymentTypeEnum paymentType;

  /**
   * 請求書の消費税計算方法(inclusive: 内税表示, exclusive: 外税表示 (デフォルト))
   */
  @JsonAdapter(TaxEntryMethodEnum.Adapter.class)
  public enum TaxEntryMethodEnum {
    INCLUSIVE("inclusive"),
    
    EXCLUSIVE("exclusive");

    private String value;

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

    public String getValue() {
      return value;
    }

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

    public static TaxEntryMethodEnum fromValue(String value) {
      for (TaxEntryMethodEnum b : TaxEntryMethodEnum.values()) {
        if (b.value.equals(value)) {
          return b;
        }
      }
      throw new IllegalArgumentException("Unexpected value '" + value + "'");
    }

    public static class Adapter extends TypeAdapter {
      @Override
      public void write(final JsonWriter jsonWriter, final TaxEntryMethodEnum enumeration) throws IOException {
        jsonWriter.value(enumeration.getValue());
      }

      @Override
      public TaxEntryMethodEnum read(final JsonReader jsonReader) throws IOException {
        String value =  jsonReader.nextString();
        return TaxEntryMethodEnum.fromValue(value);
      }
    }
  }

  public static final String SERIALIZED_NAME_TAX_ENTRY_METHOD = "tax_entry_method";
  @SerializedName(SERIALIZED_NAME_TAX_ENTRY_METHOD)
  private TaxEntryMethodEnum taxEntryMethod;

  public static final String SERIALIZED_NAME_TITLE = "title";
  @SerializedName(SERIALIZED_NAME_TITLE)
  private String title;

  /**
   * 振込専用口座の利用(利用しない: not_use(デフォルト), 利用する: use)
   */
  @JsonAdapter(UseVirtualTransferAccountEnum.Adapter.class)
  public enum UseVirtualTransferAccountEnum {
    NOT_USE("not_use"),
    
    USE("use");

    private String value;

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

    public String getValue() {
      return value;
    }

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

    public static UseVirtualTransferAccountEnum fromValue(String value) {
      for (UseVirtualTransferAccountEnum b : UseVirtualTransferAccountEnum.values()) {
        if (b.value.equals(value)) {
          return b;
        }
      }
      throw new IllegalArgumentException("Unexpected value '" + value + "'");
    }

    public static class Adapter extends TypeAdapter {
      @Override
      public void write(final JsonWriter jsonWriter, final UseVirtualTransferAccountEnum enumeration) throws IOException {
        jsonWriter.value(enumeration.getValue());
      }

      @Override
      public UseVirtualTransferAccountEnum read(final JsonReader jsonReader) throws IOException {
        String value =  jsonReader.nextString();
        return UseVirtualTransferAccountEnum.fromValue(value);
      }
    }
  }

  public static final String SERIALIZED_NAME_USE_VIRTUAL_TRANSFER_ACCOUNT = "use_virtual_transfer_account";
  @SerializedName(SERIALIZED_NAME_USE_VIRTUAL_TRANSFER_ACCOUNT)
  private UseVirtualTransferAccountEnum useVirtualTransferAccount;

  public InvoiceCreateParams() { 
  }

  public InvoiceCreateParams bookingDate(String bookingDate) {
    
    this.bookingDate = bookingDate;
    return this;
  }

   /**
   * 売上計上日
   * @return bookingDate
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(example = "2019-12-17", value = "売上計上日")

  public String getBookingDate() {
    return bookingDate;
  }


  public void setBookingDate(String bookingDate) {
    this.bookingDate = bookingDate;
  }


  public InvoiceCreateParams companyAddress1(String companyAddress1) {
    
    this.companyAddress1 = companyAddress1;
    return this;
  }

   /**
   * 市区町村・番地 (デフォルトは事業所設定情報が補完されます)
   * @return companyAddress1
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(example = "XX区YY1−1−1", value = "市区町村・番地 (デフォルトは事業所設定情報が補完されます)")

  public String getCompanyAddress1() {
    return companyAddress1;
  }


  public void setCompanyAddress1(String companyAddress1) {
    this.companyAddress1 = companyAddress1;
  }


  public InvoiceCreateParams companyAddress2(String companyAddress2) {
    
    this.companyAddress2 = companyAddress2;
    return this;
  }

   /**
   * 建物名・部屋番号など (デフォルトは事業所設定情報が補完されます)
   * @return companyAddress2
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(example = "ビル 1F", value = "建物名・部屋番号など (デフォルトは事業所設定情報が補完されます)")

  public String getCompanyAddress2() {
    return companyAddress2;
  }


  public void setCompanyAddress2(String companyAddress2) {
    this.companyAddress2 = companyAddress2;
  }


  public InvoiceCreateParams companyContactInfo(String companyContactInfo) {
    
    this.companyContactInfo = companyContactInfo;
    return this;
  }

   /**
   * 事業所担当者名 (デフォルトは請求書テンプレート情報が補完されます)
   * @return companyContactInfo
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(example = "法人営業担当", value = "事業所担当者名 (デフォルトは請求書テンプレート情報が補完されます)")

  public String getCompanyContactInfo() {
    return companyContactInfo;
  }


  public void setCompanyContactInfo(String companyContactInfo) {
    this.companyContactInfo = companyContactInfo;
  }


  public InvoiceCreateParams companyId(Integer companyId) {
    
    this.companyId = companyId;
    return this;
  }

   /**
   * 事業所ID
   * minimum: 1
   * maximum: 2147483647
   * @return companyId
  **/
  @javax.annotation.Nonnull
  @ApiModelProperty(example = "1", required = true, value = "事業所ID")

  public Integer getCompanyId() {
    return companyId;
  }


  public void setCompanyId(Integer companyId) {
    this.companyId = companyId;
  }


  public InvoiceCreateParams companyName(String companyName) {
    
    this.companyName = companyName;
    return this;
  }

   /**
   * 事業所名 (デフォルトは事業所設定情報が補完されます)
   * @return companyName
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(example = "freee株式会社", value = "事業所名 (デフォルトは事業所設定情報が補完されます)")

  public String getCompanyName() {
    return companyName;
  }


  public void setCompanyName(String companyName) {
    this.companyName = companyName;
  }


  public InvoiceCreateParams companyPrefectureCode(Integer companyPrefectureCode) {
    
    this.companyPrefectureCode = companyPrefectureCode;
    return this;
  }

   /**
   * 都道府県コード(0:北海道、1:青森、2:岩手、3:宮城、4:秋田、5:山形、6:福島、7:茨城、8:栃木、9:群馬、10:埼玉、11:千葉、12:東京、13:神奈川、14:新潟、15:富山、16:石川、17:福井、18:山梨、19:長野、20:岐阜、21:静岡、22:愛知、23:三重、24:滋賀、25:京都、26:大阪、27:兵庫、28:奈良、29:和歌山、30:鳥取、31:島根、32:岡山、33:広島、34:山口、35:徳島、36:香川、37:愛媛、38:高知、39:福岡、40:佐賀、41:長崎、42:熊本、43:大分、44:宮崎、45:鹿児島、46:沖縄) (デフォルトは事業所設定情報が補完されます)
   * minimum: 0
   * maximum: 46
   * @return companyPrefectureCode
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(example = "12", value = "都道府県コード(0:北海道、1:青森、2:岩手、3:宮城、4:秋田、5:山形、6:福島、7:茨城、8:栃木、9:群馬、10:埼玉、11:千葉、12:東京、13:神奈川、14:新潟、15:富山、16:石川、17:福井、18:山梨、19:長野、20:岐阜、21:静岡、22:愛知、23:三重、24:滋賀、25:京都、26:大阪、27:兵庫、28:奈良、29:和歌山、30:鳥取、31:島根、32:岡山、33:広島、34:山口、35:徳島、36:香川、37:愛媛、38:高知、39:福岡、40:佐賀、41:長崎、42:熊本、43:大分、44:宮崎、45:鹿児島、46:沖縄) (デフォルトは事業所設定情報が補完されます)")

  public Integer getCompanyPrefectureCode() {
    return companyPrefectureCode;
  }


  public void setCompanyPrefectureCode(Integer companyPrefectureCode) {
    this.companyPrefectureCode = companyPrefectureCode;
  }


  public InvoiceCreateParams companyZipcode(String companyZipcode) {
    
    this.companyZipcode = companyZipcode;
    return this;
  }

   /**
   * 郵便番号 (デフォルトは事業所設定情報が補完されます)
   * @return companyZipcode
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(example = "000-0000", value = "郵便番号 (デフォルトは事業所設定情報が補完されます)")

  public String getCompanyZipcode() {
    return companyZipcode;
  }


  public void setCompanyZipcode(String companyZipcode) {
    this.companyZipcode = companyZipcode;
  }


  public InvoiceCreateParams description(String description) {
    
    this.description = description;
    return this;
  }

   /**
   * 概要
   * @return description
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(example = "8月分請求書", value = "概要")

  public String getDescription() {
    return description;
  }


  public void setDescription(String description) {
    this.description = description;
  }


  public InvoiceCreateParams dueDate(String dueDate) {
    
    this.dueDate = dueDate;
    return this;
  }

   /**
   * 期日 (yyyy-mm-dd)
   * @return dueDate
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(example = "2019-12-17", value = "期日 (yyyy-mm-dd)")

  public String getDueDate() {
    return dueDate;
  }


  public void setDueDate(String dueDate) {
    this.dueDate = dueDate;
  }


  public InvoiceCreateParams invoiceContents(List invoiceContents) {
    
    this.invoiceContents = invoiceContents;
    return this;
  }

  public InvoiceCreateParams addInvoiceContentsItem(InvoiceCreateParamsInvoiceContents invoiceContentsItem) {
    if (this.invoiceContents == null) {
      this.invoiceContents = new ArrayList<>();
    }
    this.invoiceContents.add(invoiceContentsItem);
    return this;
  }

   /**
   * 請求内容
   * @return invoiceContents
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(value = "請求内容")

  public List getInvoiceContents() {
    return invoiceContents;
  }


  public void setInvoiceContents(List invoiceContents) {
    this.invoiceContents = invoiceContents;
  }


  public InvoiceCreateParams invoiceLayout(InvoiceLayoutEnum invoiceLayout) {
    
    this.invoiceLayout = invoiceLayout;
    return this;
  }

   /**
   * 請求書レイアウト * `default_classic` - レイアウト1/クラシック (デフォルト)  * `standard_classic` - レイアウト2/クラシック  * `envelope_classic` - 封筒1/クラシック  * `carried_forward_standard_classic` - レイアウト3(繰越金額欄あり)/クラシック  * `carried_forward_envelope_classic` - 封筒2(繰越金額欄あり)/クラシック  * `default_modern` - レイアウト1/モダン  * `standard_modern` - レイアウト2/モダン  * `envelope_modern` - 封筒/モダン
   * @return invoiceLayout
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(example = "default_classic", value = "請求書レイアウト * `default_classic` - レイアウト1/クラシック (デフォルト)  * `standard_classic` - レイアウト2/クラシック  * `envelope_classic` - 封筒1/クラシック  * `carried_forward_standard_classic` - レイアウト3(繰越金額欄あり)/クラシック  * `carried_forward_envelope_classic` - 封筒2(繰越金額欄あり)/クラシック  * `default_modern` - レイアウト1/モダン  * `standard_modern` - レイアウト2/モダン  * `envelope_modern` - 封筒/モダン")

  public InvoiceLayoutEnum getInvoiceLayout() {
    return invoiceLayout;
  }


  public void setInvoiceLayout(InvoiceLayoutEnum invoiceLayout) {
    this.invoiceLayout = invoiceLayout;
  }


  public InvoiceCreateParams invoiceNumber(String invoiceNumber) {
    
    this.invoiceNumber = invoiceNumber;
    return this;
  }

   /**
   * 請求書番号 (デフォルト: 自動採番されます)
   * @return invoiceNumber
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(example = "A001", value = "請求書番号 (デフォルト: 自動採番されます)")

  public String getInvoiceNumber() {
    return invoiceNumber;
  }


  public void setInvoiceNumber(String invoiceNumber) {
    this.invoiceNumber = invoiceNumber;
  }


  public InvoiceCreateParams invoiceStatus(InvoiceStatusEnum invoiceStatus) {
    
    this.invoiceStatus = invoiceStatus;
    return this;
  }

   /**
   * 請求書ステータス<br> <ul>   <li>draft: 下書き (デフォルト)</li>   <li>(廃止予定) issue: 発行 (送付待ち (unsubmitted) と同じです。)</li>   <li>unsubmitted: 送付待ち</li>   <li>submitted: 送付済み</li> </ul> issue, unsubmitted, submitted は請求書承認ワークフローを利用している場合は指定できません。 
   * @return invoiceStatus
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(value = "請求書ステータス
  • draft: 下書き (デフォルト)
  • (廃止予定) issue: 発行 (送付待ち (unsubmitted) と同じです。)
  • unsubmitted: 送付待ち
  • submitted: 送付済み
issue, unsubmitted, submitted は請求書承認ワークフローを利用している場合は指定できません。 ") public InvoiceStatusEnum getInvoiceStatus() { return invoiceStatus; } public void setInvoiceStatus(InvoiceStatusEnum invoiceStatus) { this.invoiceStatus = invoiceStatus; } public InvoiceCreateParams issueDate(String issueDate) { this.issueDate = issueDate; return this; } /** * 請求日 (yyyy-mm-dd) * @return issueDate **/ @javax.annotation.Nullable @ApiModelProperty(example = "2019-12-17", value = "請求日 (yyyy-mm-dd)") public String getIssueDate() { return issueDate; } public void setIssueDate(String issueDate) { this.issueDate = issueDate; } public InvoiceCreateParams message(String message) { this.message = message; return this; } /** * メッセージ (デフォルト: 下記の通りご請求申し上げます。) * @return message **/ @javax.annotation.Nullable @ApiModelProperty(example = "下記の通りご請求申し上げます。", value = "メッセージ (デフォルト: 下記の通りご請求申し上げます。)") public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } public InvoiceCreateParams notes(String notes) { this.notes = notes; return this; } /** * 備考 * @return notes **/ @javax.annotation.Nullable @ApiModelProperty(example = "毎度ありがとうございます", value = "備考") public String getNotes() { return notes; } public void setNotes(String notes) { this.notes = notes; } public InvoiceCreateParams partnerAddress1(String partnerAddress1) { this.partnerAddress1 = partnerAddress1; return this; } /** * 取引先市区町村・番地 (デフォルトはpartner_idもしくはpartner_codeで指定された取引先設定情報が補完されます) * @return partnerAddress1 **/ @javax.annotation.Nullable @ApiModelProperty(example = "湯沢市", value = "取引先市区町村・番地 (デフォルトはpartner_idもしくはpartner_codeで指定された取引先設定情報が補完されます)") public String getPartnerAddress1() { return partnerAddress1; } public void setPartnerAddress1(String partnerAddress1) { this.partnerAddress1 = partnerAddress1; } public InvoiceCreateParams partnerAddress2(String partnerAddress2) { this.partnerAddress2 = partnerAddress2; return this; } /** * 取引先建物名・部屋番号など (デフォルトはpartner_idもしくはpartner_codeで指定された取引先設定情報が補完されます) * @return partnerAddress2 **/ @javax.annotation.Nullable @ApiModelProperty(example = "Aビル", value = "取引先建物名・部屋番号など (デフォルトはpartner_idもしくはpartner_codeで指定された取引先設定情報が補完されます)") public String getPartnerAddress2() { return partnerAddress2; } public void setPartnerAddress2(String partnerAddress2) { this.partnerAddress2 = partnerAddress2; } public InvoiceCreateParams partnerCode(String partnerCode) { this.partnerCode = partnerCode; return this; } /** * 取引先コード * @return partnerCode **/ @javax.annotation.Nullable @ApiModelProperty(example = "code001", value = "取引先コード") public String getPartnerCode() { return partnerCode; } public void setPartnerCode(String partnerCode) { this.partnerCode = partnerCode; } public InvoiceCreateParams partnerContactInfo(String partnerContactInfo) { this.partnerContactInfo = partnerContactInfo; return this; } /** * 取引先担当者名 * @return partnerContactInfo **/ @javax.annotation.Nullable @ApiModelProperty(example = "営業担当", value = "取引先担当者名") public String getPartnerContactInfo() { return partnerContactInfo; } public void setPartnerContactInfo(String partnerContactInfo) { this.partnerContactInfo = partnerContactInfo; } public InvoiceCreateParams partnerDisplayName(String partnerDisplayName) { this.partnerDisplayName = partnerDisplayName; return this; } /** * 請求書に表示する取引先名 * @return partnerDisplayName **/ @javax.annotation.Nonnull @ApiModelProperty(example = "株式会社freeeパートナー", required = true, value = "請求書に表示する取引先名") public String getPartnerDisplayName() { return partnerDisplayName; } public void setPartnerDisplayName(String partnerDisplayName) { this.partnerDisplayName = partnerDisplayName; } public InvoiceCreateParams partnerId(Integer partnerId) { this.partnerId = partnerId; return this; } /** * 取引先ID * minimum: 1 * maximum: 2147483647 * @return partnerId **/ @javax.annotation.Nullable @ApiModelProperty(example = "201", value = "取引先ID") public Integer getPartnerId() { return partnerId; } public void setPartnerId(Integer partnerId) { this.partnerId = partnerId; } public InvoiceCreateParams partnerPrefectureCode(Integer partnerPrefectureCode) { this.partnerPrefectureCode = partnerPrefectureCode; return this; } /** * 取引先都道府県コード(0:北海道、1:青森、2:岩手、3:宮城、4:秋田、5:山形、6:福島、7:茨城、8:栃木、9:群馬、10:埼玉、11:千葉、12:東京、13:神奈川、14:新潟、15:富山、16:石川、17:福井、18:山梨、19:長野、20:岐阜、21:静岡、22:愛知、23:三重、24:滋賀、25:京都、26:大阪、27:兵庫、28:奈良、29:和歌山、30:鳥取、31:島根、32:岡山、33:広島、34:山口、35:徳島、36:香川、37:愛媛、38:高知、39:福岡、40:佐賀、41:長崎、42:熊本、43:大分、44:宮崎、45:鹿児島、46:沖縄) (デフォルトはpartner_idもしくはpartner_codeで指定された取引先設定情報が補完されます) * minimum: 0 * maximum: 46 * @return partnerPrefectureCode **/ @javax.annotation.Nullable @ApiModelProperty(example = "4", value = "取引先都道府県コード(0:北海道、1:青森、2:岩手、3:宮城、4:秋田、5:山形、6:福島、7:茨城、8:栃木、9:群馬、10:埼玉、11:千葉、12:東京、13:神奈川、14:新潟、15:富山、16:石川、17:福井、18:山梨、19:長野、20:岐阜、21:静岡、22:愛知、23:三重、24:滋賀、25:京都、26:大阪、27:兵庫、28:奈良、29:和歌山、30:鳥取、31:島根、32:岡山、33:広島、34:山口、35:徳島、36:香川、37:愛媛、38:高知、39:福岡、40:佐賀、41:長崎、42:熊本、43:大分、44:宮崎、45:鹿児島、46:沖縄) (デフォルトはpartner_idもしくはpartner_codeで指定された取引先設定情報が補完されます)") public Integer getPartnerPrefectureCode() { return partnerPrefectureCode; } public void setPartnerPrefectureCode(Integer partnerPrefectureCode) { this.partnerPrefectureCode = partnerPrefectureCode; } public InvoiceCreateParams partnerTitle(String partnerTitle) { this.partnerTitle = partnerTitle; return this; } /** * 敬称(御中、様、(空白)の3つから選択) * @return partnerTitle **/ @javax.annotation.Nullable @ApiModelProperty(example = "御中", required = true, value = "敬称(御中、様、(空白)の3つから選択)") public String getPartnerTitle() { return partnerTitle; } public void setPartnerTitle(String partnerTitle) { this.partnerTitle = partnerTitle; } public InvoiceCreateParams partnerZipcode(String partnerZipcode) { this.partnerZipcode = partnerZipcode; return this; } /** * 取引先郵便番号 (デフォルトはpartner_idもしくはpartner_codeで指定された取引先設定情報が補完されます) * @return partnerZipcode **/ @javax.annotation.Nullable @ApiModelProperty(example = "012-0009", value = "取引先郵便番号 (デフォルトはpartner_idもしくはpartner_codeで指定された取引先設定情報が補完されます)") public String getPartnerZipcode() { return partnerZipcode; } public void setPartnerZipcode(String partnerZipcode) { this.partnerZipcode = partnerZipcode; } public InvoiceCreateParams paymentBankInfo(String paymentBankInfo) { this.paymentBankInfo = paymentBankInfo; return this; } /** * 支払口座 * @return paymentBankInfo **/ @javax.annotation.Nullable @ApiModelProperty(example = "XX銀行YY支店 1111111", value = "支払口座") public String getPaymentBankInfo() { return paymentBankInfo; } public void setPaymentBankInfo(String paymentBankInfo) { this.paymentBankInfo = paymentBankInfo; } public InvoiceCreateParams paymentType(PaymentTypeEnum paymentType) { this.paymentType = paymentType; return this; } /** * 支払方法 (振込: transfer, 引き落とし: direct_debit) * @return paymentType **/ @javax.annotation.Nullable @ApiModelProperty(example = "transfer", value = "支払方法 (振込: transfer, 引き落とし: direct_debit)") public PaymentTypeEnum getPaymentType() { return paymentType; } public void setPaymentType(PaymentTypeEnum paymentType) { this.paymentType = paymentType; } public InvoiceCreateParams taxEntryMethod(TaxEntryMethodEnum taxEntryMethod) { this.taxEntryMethod = taxEntryMethod; return this; } /** * 請求書の消費税計算方法(inclusive: 内税表示, exclusive: 外税表示 (デフォルト)) * @return taxEntryMethod **/ @javax.annotation.Nullable @ApiModelProperty(example = "exclusive", value = "請求書の消費税計算方法(inclusive: 内税表示, exclusive: 外税表示 (デフォルト))") public TaxEntryMethodEnum getTaxEntryMethod() { return taxEntryMethod; } public void setTaxEntryMethod(TaxEntryMethodEnum taxEntryMethod) { this.taxEntryMethod = taxEntryMethod; } public InvoiceCreateParams title(String title) { this.title = title; return this; } /** * タイトル (デフォルト: 請求書) * @return title **/ @javax.annotation.Nullable @ApiModelProperty(example = "請求書", value = "タイトル (デフォルト: 請求書)") public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public InvoiceCreateParams useVirtualTransferAccount(UseVirtualTransferAccountEnum useVirtualTransferAccount) { this.useVirtualTransferAccount = useVirtualTransferAccount; return this; } /** * 振込専用口座の利用(利用しない: not_use(デフォルト), 利用する: use) * @return useVirtualTransferAccount **/ @javax.annotation.Nullable @ApiModelProperty(example = "use", value = "振込専用口座の利用(利用しない: not_use(デフォルト), 利用する: use)") public UseVirtualTransferAccountEnum getUseVirtualTransferAccount() { return useVirtualTransferAccount; } public void setUseVirtualTransferAccount(UseVirtualTransferAccountEnum useVirtualTransferAccount) { this.useVirtualTransferAccount = useVirtualTransferAccount; } @Override public boolean equals(Object o) { if (this == o) { return true; } if (o == null || getClass() != o.getClass()) { return false; } InvoiceCreateParams invoiceCreateParams = (InvoiceCreateParams) o; return Objects.equals(this.bookingDate, invoiceCreateParams.bookingDate) && Objects.equals(this.companyAddress1, invoiceCreateParams.companyAddress1) && Objects.equals(this.companyAddress2, invoiceCreateParams.companyAddress2) && Objects.equals(this.companyContactInfo, invoiceCreateParams.companyContactInfo) && Objects.equals(this.companyId, invoiceCreateParams.companyId) && Objects.equals(this.companyName, invoiceCreateParams.companyName) && Objects.equals(this.companyPrefectureCode, invoiceCreateParams.companyPrefectureCode) && Objects.equals(this.companyZipcode, invoiceCreateParams.companyZipcode) && Objects.equals(this.description, invoiceCreateParams.description) && Objects.equals(this.dueDate, invoiceCreateParams.dueDate) && Objects.equals(this.invoiceContents, invoiceCreateParams.invoiceContents) && Objects.equals(this.invoiceLayout, invoiceCreateParams.invoiceLayout) && Objects.equals(this.invoiceNumber, invoiceCreateParams.invoiceNumber) && Objects.equals(this.invoiceStatus, invoiceCreateParams.invoiceStatus) && Objects.equals(this.issueDate, invoiceCreateParams.issueDate) && Objects.equals(this.message, invoiceCreateParams.message) && Objects.equals(this.notes, invoiceCreateParams.notes) && Objects.equals(this.partnerAddress1, invoiceCreateParams.partnerAddress1) && Objects.equals(this.partnerAddress2, invoiceCreateParams.partnerAddress2) && Objects.equals(this.partnerCode, invoiceCreateParams.partnerCode) && Objects.equals(this.partnerContactInfo, invoiceCreateParams.partnerContactInfo) && Objects.equals(this.partnerDisplayName, invoiceCreateParams.partnerDisplayName) && Objects.equals(this.partnerId, invoiceCreateParams.partnerId) && Objects.equals(this.partnerPrefectureCode, invoiceCreateParams.partnerPrefectureCode) && Objects.equals(this.partnerTitle, invoiceCreateParams.partnerTitle) && Objects.equals(this.partnerZipcode, invoiceCreateParams.partnerZipcode) && Objects.equals(this.paymentBankInfo, invoiceCreateParams.paymentBankInfo) && Objects.equals(this.paymentType, invoiceCreateParams.paymentType) && Objects.equals(this.taxEntryMethod, invoiceCreateParams.taxEntryMethod) && Objects.equals(this.title, invoiceCreateParams.title) && Objects.equals(this.useVirtualTransferAccount, invoiceCreateParams.useVirtualTransferAccount); } private static boolean equalsNullable(JsonNullable a, JsonNullable b) { return a == b || (a != null && b != null && a.isPresent() && b.isPresent() && Objects.deepEquals(a.get(), b.get())); } @Override public int hashCode() { return Objects.hash(bookingDate, companyAddress1, companyAddress2, companyContactInfo, companyId, companyName, companyPrefectureCode, companyZipcode, description, dueDate, invoiceContents, invoiceLayout, invoiceNumber, invoiceStatus, issueDate, message, notes, partnerAddress1, partnerAddress2, partnerCode, partnerContactInfo, partnerDisplayName, partnerId, partnerPrefectureCode, partnerTitle, partnerZipcode, paymentBankInfo, paymentType, taxEntryMethod, title, useVirtualTransferAccount); } private static int hashCodeNullable(JsonNullable a) { if (a == null) { return 1; } return a.isPresent() ? Arrays.deepHashCode(new Object[]{a.get()}) : 31; } @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("class InvoiceCreateParams {\n"); sb.append(" bookingDate: ").append(toIndentedString(bookingDate)).append("\n"); sb.append(" companyAddress1: ").append(toIndentedString(companyAddress1)).append("\n"); sb.append(" companyAddress2: ").append(toIndentedString(companyAddress2)).append("\n"); sb.append(" companyContactInfo: ").append(toIndentedString(companyContactInfo)).append("\n"); sb.append(" companyId: ").append(toIndentedString(companyId)).append("\n"); sb.append(" companyName: ").append(toIndentedString(companyName)).append("\n"); sb.append(" companyPrefectureCode: ").append(toIndentedString(companyPrefectureCode)).append("\n"); sb.append(" companyZipcode: ").append(toIndentedString(companyZipcode)).append("\n"); sb.append(" description: ").append(toIndentedString(description)).append("\n"); sb.append(" dueDate: ").append(toIndentedString(dueDate)).append("\n"); sb.append(" invoiceContents: ").append(toIndentedString(invoiceContents)).append("\n"); sb.append(" invoiceLayout: ").append(toIndentedString(invoiceLayout)).append("\n"); sb.append(" invoiceNumber: ").append(toIndentedString(invoiceNumber)).append("\n"); sb.append(" invoiceStatus: ").append(toIndentedString(invoiceStatus)).append("\n"); sb.append(" issueDate: ").append(toIndentedString(issueDate)).append("\n"); sb.append(" message: ").append(toIndentedString(message)).append("\n"); sb.append(" notes: ").append(toIndentedString(notes)).append("\n"); sb.append(" partnerAddress1: ").append(toIndentedString(partnerAddress1)).append("\n"); sb.append(" partnerAddress2: ").append(toIndentedString(partnerAddress2)).append("\n"); sb.append(" partnerCode: ").append(toIndentedString(partnerCode)).append("\n"); sb.append(" partnerContactInfo: ").append(toIndentedString(partnerContactInfo)).append("\n"); sb.append(" partnerDisplayName: ").append(toIndentedString(partnerDisplayName)).append("\n"); sb.append(" partnerId: ").append(toIndentedString(partnerId)).append("\n"); sb.append(" partnerPrefectureCode: ").append(toIndentedString(partnerPrefectureCode)).append("\n"); sb.append(" partnerTitle: ").append(toIndentedString(partnerTitle)).append("\n"); sb.append(" partnerZipcode: ").append(toIndentedString(partnerZipcode)).append("\n"); sb.append(" paymentBankInfo: ").append(toIndentedString(paymentBankInfo)).append("\n"); sb.append(" paymentType: ").append(toIndentedString(paymentType)).append("\n"); sb.append(" taxEntryMethod: ").append(toIndentedString(taxEntryMethod)).append("\n"); sb.append(" title: ").append(toIndentedString(title)).append("\n"); sb.append(" useVirtualTransferAccount: ").append(toIndentedString(useVirtualTransferAccount)).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(Object o) { if (o == null) { return "null"; } return o.toString().replace("\n", "\n "); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy