package com.muse.dto; import java.net.URI; import java.util.Objects; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonTypeName; import com.muse.dto.CreateKnowledgeBindingPrecheck200ResponseAllOfDataActionPolicy; import java.time.OffsetDateTime; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import org.springframework.format.annotation.DateTimeFormat; import org.springframework.lang.Nullable; import java.io.Serializable; import java.time.OffsetDateTime; import jakarta.validation.Valid; import jakarta.validation.constraints.*; import io.swagger.v3.oas.annotations.media.Schema; import java.util.*; import jakarta.annotation.Generated; /** * CreateKnowledgeBindingPrecheck200ResponseAllOfData */ @JsonTypeName("createKnowledgeBindingPrecheck_200_response_allOf_data") @Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2026-05-24T16:47:40.290595+08:00[Asia/Shanghai]", comments = "Generator version: 7.22.0") public class CreateKnowledgeBindingPrecheck200ResponseAllOfData implements Serializable { private static final long serialVersionUID = 1L; private @Nullable String kbBindPrecheckId; @Valid private List allowedPurposes = new ArrayList<>(); @Valid private List blockedPurposes = new ArrayList<>(); private @Nullable String conflictStrategy; @Valid private List blockedReasons = new ArrayList<>(); private @Nullable String sourceStatus; private @Nullable CreateKnowledgeBindingPrecheck200ResponseAllOfDataActionPolicy actionPolicy; @DateTimeFormat(iso = DateTimeFormat.ISO.DATE_TIME) private @Nullable OffsetDateTime expiresAt; public CreateKnowledgeBindingPrecheck200ResponseAllOfData kbBindPrecheckId(@Nullable String kbBindPrecheckId) { this.kbBindPrecheckId = kbBindPrecheckId; return this; } /** * 绑定预检 ID,用于后续绑定 * @return kbBindPrecheckId */ @Schema(name = "kbBindPrecheckId", description = "绑定预检 ID,用于后续绑定", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @JsonProperty("kbBindPrecheckId") public @Nullable String getKbBindPrecheckId() { return kbBindPrecheckId; } @JsonProperty("kbBindPrecheckId") public void setKbBindPrecheckId(@Nullable String kbBindPrecheckId) { this.kbBindPrecheckId = kbBindPrecheckId; } public CreateKnowledgeBindingPrecheck200ResponseAllOfData allowedPurposes(List allowedPurposes) { this.allowedPurposes = allowedPurposes; return this; } public CreateKnowledgeBindingPrecheck200ResponseAllOfData addAllowedPurposesItem(String allowedPurposesItem) { if (this.allowedPurposes == null) { this.allowedPurposes = new ArrayList<>(); } this.allowedPurposes.add(allowedPurposesItem); return this; } /** * Get allowedPurposes * @return allowedPurposes */ @Schema(name = "allowedPurposes", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @JsonProperty("allowedPurposes") public List getAllowedPurposes() { return allowedPurposes; } @JsonProperty("allowedPurposes") public void setAllowedPurposes(List allowedPurposes) { this.allowedPurposes = allowedPurposes; } public CreateKnowledgeBindingPrecheck200ResponseAllOfData blockedPurposes(List blockedPurposes) { this.blockedPurposes = blockedPurposes; return this; } public CreateKnowledgeBindingPrecheck200ResponseAllOfData addBlockedPurposesItem(String blockedPurposesItem) { if (this.blockedPurposes == null) { this.blockedPurposes = new ArrayList<>(); } this.blockedPurposes.add(blockedPurposesItem); return this; } /** * Get blockedPurposes * @return blockedPurposes */ @Schema(name = "blockedPurposes", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @JsonProperty("blockedPurposes") public List getBlockedPurposes() { return blockedPurposes; } @JsonProperty("blockedPurposes") public void setBlockedPurposes(List blockedPurposes) { this.blockedPurposes = blockedPurposes; } public CreateKnowledgeBindingPrecheck200ResponseAllOfData conflictStrategy(@Nullable String conflictStrategy) { this.conflictStrategy = conflictStrategy; return this; } /** * Get conflictStrategy * @return conflictStrategy */ @Schema(name = "conflictStrategy", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @JsonProperty("conflictStrategy") public @Nullable String getConflictStrategy() { return conflictStrategy; } @JsonProperty("conflictStrategy") public void setConflictStrategy(@Nullable String conflictStrategy) { this.conflictStrategy = conflictStrategy; } public CreateKnowledgeBindingPrecheck200ResponseAllOfData blockedReasons(List blockedReasons) { this.blockedReasons = blockedReasons; return this; } public CreateKnowledgeBindingPrecheck200ResponseAllOfData addBlockedReasonsItem(String blockedReasonsItem) { if (this.blockedReasons == null) { this.blockedReasons = new ArrayList<>(); } this.blockedReasons.add(blockedReasonsItem); return this; } /** * Get blockedReasons * @return blockedReasons */ @Schema(name = "blockedReasons", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @JsonProperty("blockedReasons") public List getBlockedReasons() { return blockedReasons; } @JsonProperty("blockedReasons") public void setBlockedReasons(List blockedReasons) { this.blockedReasons = blockedReasons; } public CreateKnowledgeBindingPrecheck200ResponseAllOfData sourceStatus(@Nullable String sourceStatus) { this.sourceStatus = sourceStatus; return this; } /** * Get sourceStatus * @return sourceStatus */ @Schema(name = "sourceStatus", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @JsonProperty("sourceStatus") public @Nullable String getSourceStatus() { return sourceStatus; } @JsonProperty("sourceStatus") public void setSourceStatus(@Nullable String sourceStatus) { this.sourceStatus = sourceStatus; } public CreateKnowledgeBindingPrecheck200ResponseAllOfData actionPolicy(@Nullable CreateKnowledgeBindingPrecheck200ResponseAllOfDataActionPolicy actionPolicy) { this.actionPolicy = actionPolicy; return this; } /** * Get actionPolicy * @return actionPolicy */ @Valid @Schema(name = "actionPolicy", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @JsonProperty("actionPolicy") public @Nullable CreateKnowledgeBindingPrecheck200ResponseAllOfDataActionPolicy getActionPolicy() { return actionPolicy; } @JsonProperty("actionPolicy") public void setActionPolicy(@Nullable CreateKnowledgeBindingPrecheck200ResponseAllOfDataActionPolicy actionPolicy) { this.actionPolicy = actionPolicy; } public CreateKnowledgeBindingPrecheck200ResponseAllOfData expiresAt(@Nullable OffsetDateTime expiresAt) { this.expiresAt = expiresAt; return this; } /** * Get expiresAt * @return expiresAt */ @Valid @Schema(name = "expiresAt", requiredMode = Schema.RequiredMode.NOT_REQUIRED) @JsonProperty("expiresAt") public @Nullable OffsetDateTime getExpiresAt() { return expiresAt; } @JsonProperty("expiresAt") public void setExpiresAt(@Nullable OffsetDateTime expiresAt) { this.expiresAt = expiresAt; } @Override public boolean equals(Object o) { if (this == o) { return true; } if (o == null || getClass() != o.getClass()) { return false; } CreateKnowledgeBindingPrecheck200ResponseAllOfData createKnowledgeBindingPrecheck200ResponseAllOfData = (CreateKnowledgeBindingPrecheck200ResponseAllOfData) o; return Objects.equals(this.kbBindPrecheckId, createKnowledgeBindingPrecheck200ResponseAllOfData.kbBindPrecheckId) && Objects.equals(this.allowedPurposes, createKnowledgeBindingPrecheck200ResponseAllOfData.allowedPurposes) && Objects.equals(this.blockedPurposes, createKnowledgeBindingPrecheck200ResponseAllOfData.blockedPurposes) && Objects.equals(this.conflictStrategy, createKnowledgeBindingPrecheck200ResponseAllOfData.conflictStrategy) && Objects.equals(this.blockedReasons, createKnowledgeBindingPrecheck200ResponseAllOfData.blockedReasons) && Objects.equals(this.sourceStatus, createKnowledgeBindingPrecheck200ResponseAllOfData.sourceStatus) && Objects.equals(this.actionPolicy, createKnowledgeBindingPrecheck200ResponseAllOfData.actionPolicy) && Objects.equals(this.expiresAt, createKnowledgeBindingPrecheck200ResponseAllOfData.expiresAt); } @Override public int hashCode() { return Objects.hash(kbBindPrecheckId, allowedPurposes, blockedPurposes, conflictStrategy, blockedReasons, sourceStatus, actionPolicy, expiresAt); } @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("class CreateKnowledgeBindingPrecheck200ResponseAllOfData {\n"); sb.append(" kbBindPrecheckId: ").append(toIndentedString(kbBindPrecheckId)).append("\n"); sb.append(" allowedPurposes: ").append(toIndentedString(allowedPurposes)).append("\n"); sb.append(" blockedPurposes: ").append(toIndentedString(blockedPurposes)).append("\n"); sb.append(" conflictStrategy: ").append(toIndentedString(conflictStrategy)).append("\n"); sb.append(" blockedReasons: ").append(toIndentedString(blockedReasons)).append("\n"); sb.append(" sourceStatus: ").append(toIndentedString(sourceStatus)).append("\n"); sb.append(" actionPolicy: ").append(toIndentedString(actionPolicy)).append("\n"); sb.append(" expiresAt: ").append(toIndentedString(expiresAt)).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(@Nullable Object o) { return o == null ? "null" : o.toString().replace("\n", "\n "); } }