package com.bonus.core.customer.openapi.dto;

import com.fasterxml.jackson.databind.JsonNode;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

@ApiModel("自定义登陆入参")
@Data
public class SingleSignOnDTO {
   @ApiModelProperty("appId")
   private String appId;
   @ApiModelProperty("自定义登陆参数")
   private CustomParams customParams;

   public String getAppId() {
      return this.appId;
   }

   public CustomParams getCustomParams() {
      return this.customParams;
   }

   public void setAppId(final String appId) {
      this.appId = appId;
   }

   public void setCustomParams(final CustomParams customParams) {
      this.customParams = customParams;
   }

   public boolean equals(final Object o) {
      if (o == this) {
         return true;
      } else if (!(o instanceof SingleSignOnDTO)) {
         return false;
      } else {
         SingleSignOnDTO other = (SingleSignOnDTO)o;
         if (!other.canEqual(this)) {
            return false;
         } else {
            Object this$appId = this.getAppId();
            Object other$appId = other.getAppId();
            if (this$appId == null) {
               if (other$appId != null) {
                  return false;
               }
            } else if (!this$appId.equals(other$appId)) {
               return false;
            }

            Object this$customParams = this.getCustomParams();
            Object other$customParams = other.getCustomParams();
            if (this$customParams == null) {
               if (other$customParams != null) {
                  return false;
               }
            } else if (!this$customParams.equals(other$customParams)) {
               return false;
            }

            return true;
         }
      }
   }

   protected boolean canEqual(final Object other) {
      return other instanceof SingleSignOnDTO;
   }


   public String toString() {
      String var10000 = this.getAppId();
      return "SingleSignOnDTO(appId=" + var10000 + ", customParams=" + String.valueOf(this.getCustomParams()) + ")";
   }

   public static class CustomParams {
      @ApiModelProperty("第三方登陆凭证 必传")
      private JsonNode code;

      public JsonNode getCode() {
         return this.code;
      }

      public CustomParams setCode(final JsonNode code) {
         this.code = code;
         return this;
      }


      protected boolean canEqual(final Object other) {
         return other instanceof CustomParams;
      }


      public String toString() {
         return "SingleSignOnDTO.CustomParams(code=" + String.valueOf(this.getCode()) + ")";
      }
   }
}
