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

io.electrum.cardaccount.model.Customer Maven / Gradle / Ivy

The newest version!
/*
 * Electrum Gateway Card-Account API
 * The Electrum Gateway Card-Account API defines an interface for card and account management.
 *
 * OpenAPI spec version: 0.0.600
 * Contact: [email protected]
 *
 * 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 io.electrum.cardaccount.model;

import java.util.Objects;

import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;

import com.fasterxml.jackson.annotation.JsonProperty;

import io.electrum.sdk.masking2.MaskAll;
import io.electrum.sdk.masking2.Masked;
import io.electrum.vas.Utils;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * Contains the details of a customer.
 */
@ApiModel(description = "Contains the details of a customer.")
public class Customer {
   @JsonProperty("customerId")
   private String customerId = null;

   @JsonProperty("title")
   private String title = null;

   @JsonProperty("firstName")
   private String firstName = null;

   @JsonProperty("lastName")
   private String lastName = null;

   @Masked(MaskAll.class)
   @JsonProperty("idNumber")
   private String idNumber = null;

   @JsonProperty("cellNumber")
   private String cellNumber = null;

   public Customer title(String title) {
      this.title = title;
      return this;
   }

   /**
    * The customers customerId.
    * 
    * @return title
    **/
   @JsonProperty("customerId")
   @ApiModelProperty(value = "An id to uniquely identify the customer.")
   public String getCustomerId() {
      return customerId;
   }

   public void setCustomerId(String customerId) {
      this.customerId = customerId;
   }

   public Customer customerId(String customerId) {
      this.customerId = customerId;
      return this;
   }

   /**
    * The customers title.
    * 
    * @return title
    **/
   @JsonProperty("title")
   @ApiModelProperty(value = "The customers title.")
   public String getTitle() {
      return title;
   }

   public void setTitle(String title) {
      this.title = title;
   }

   public Customer firstName(String firstName) {
      this.firstName = firstName;
      return this;
   }

   /**
    * The customers first name.
    * 
    * @return firstName
    **/
   @JsonProperty("firstName")
   @ApiModelProperty(required = true, value = "The customers first name.")
   @NotNull
   public String getFirstName() {
      return firstName;
   }

   public void setFirstName(String firstName) {
      this.firstName = firstName;
   }

   public Customer lastName(String lastName) {
      this.lastName = lastName;
      return this;
   }

   /**
    * The customers last name.
    * 
    * @return lastName
    **/
   @JsonProperty("lastName")
   @ApiModelProperty(required = true, value = "The customers last name.")
   @NotNull
   public String getLastName() {
      return lastName;
   }

   public void setLastName(String lastName) {
      this.lastName = lastName;
   }

   public Customer idNumber(String idNumber) {
      this.idNumber = idNumber;
      return this;
   }

   /**
    * The customers ID/passport number.
    * 
    * @return idNumber
    **/
   @JsonProperty("idNumber")
   @ApiModelProperty(required = true, value = "The customers ID/passport number.")
   @NotNull
   public String getIdNumber() {
      return idNumber;
   }

   public void setIdNumber(String idNumber) {
      this.idNumber = idNumber;
   }

   public Customer cellNumber(String cellNumber) {
      this.cellNumber = cellNumber;
      return this;
   }

   /**
    * The customers cellphone number
    * 
    * @return cellNumber
    **/
   @JsonProperty("cellNumber")
   @ApiModelProperty(required = true, value = "The customers cellphone number")
   @NotNull
   @Pattern(regexp = "[0-9]*")
   public String getCellNumber() {
      return cellNumber;
   }

   public void setCellNumber(String cellNumber) {
      this.cellNumber = cellNumber;
   }

   @Override
   public boolean equals(java.lang.Object o) {
      if (this == o) {
         return true;
      }
      if (o == null || getClass() != o.getClass()) {
         return false;
      }
      Customer customer = (Customer) o;
      return Objects.equals(this.title, customer.title) && Objects.equals(this.firstName, customer.firstName)
            && Objects.equals(this.lastName, customer.lastName) && Objects.equals(this.idNumber, customer.idNumber)
            && Objects.equals(this.cellNumber, customer.cellNumber);
   }

   @Override
   public int hashCode() {
      return Objects.hash(title, firstName, lastName, idNumber, cellNumber);
   }

   @Override
   public String toString() {
      StringBuilder sb = new StringBuilder();
      sb.append("class Customer {\n");

      // TODO which of these field should be masked?
      sb.append("    customerId: ").append(Utils.toIndentedString(customerId)).append("\n");
      sb.append("    title: ").append(Utils.toIndentedString(title)).append("\n");
      sb.append("    firstName: ").append(Utils.toIndentedString(firstName)).append("\n");
      sb.append("    lastName: ").append(Utils.toIndentedString(lastName)).append("\n");
      sb.append("    idNumber: ").append(Utils.toIndentedString(idNumber)).append("\n");
      sb.append("    cellNumber: ").append(Utils.toIndentedString(cellNumber)).append("\n");
      sb.append("}");
      return sb.toString();
   }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy