com.alipay.v3.model.AlipayIserviceCcmSwArticleCreateModel Maven / Gradle / Ivy
The newest version!
/*
* 支付宝开放平台API
* 支付宝开放平台v3协议文档
*
* The version of the OpenAPI document: 2024-08-30
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
package com.alipay.v3.model;
import java.util.Objects;
import java.util.Arrays;
import com.alipay.v3.model.ArticleAttachmentInfo;
import com.alipay.v3.model.BaseArticleInfo;
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 com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.JsonArray;
import com.google.gson.JsonDeserializationContext;
import com.google.gson.JsonDeserializer;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParseException;
import com.google.gson.TypeAdapterFactory;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import com.alipay.v3.JSON;
/**
* AlipayIserviceCcmSwArticleCreateModel
*/
@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
public class AlipayIserviceCcmSwArticleCreateModel {
public static final String SERIALIZED_NAME_ATTACHMENTS = "attachments";
@SerializedName(SERIALIZED_NAME_ATTACHMENTS)
private List attachments = null;
public static final String SERIALIZED_NAME_CATEGORY_ID = "category_id";
@SerializedName(SERIALIZED_NAME_CATEGORY_ID)
private Integer categoryId;
public static final String SERIALIZED_NAME_CCS_INSTANCE_ID = "ccs_instance_id";
@SerializedName(SERIALIZED_NAME_CCS_INSTANCE_ID)
private String ccsInstanceId;
public static final String SERIALIZED_NAME_CONTENT = "content";
@SerializedName(SERIALIZED_NAME_CONTENT)
private String content;
public static final String SERIALIZED_NAME_EXTEND_TITLES = "extend_titles";
@SerializedName(SERIALIZED_NAME_EXTEND_TITLES)
private List extendTitles = null;
public static final String SERIALIZED_NAME_KEYWORDS = "keywords";
@SerializedName(SERIALIZED_NAME_KEYWORDS)
private List keywords = null;
public static final String SERIALIZED_NAME_LIBRARY_ID = "library_id";
@SerializedName(SERIALIZED_NAME_LIBRARY_ID)
private String libraryId;
public static final String SERIALIZED_NAME_PUBLISH_END = "publish_end";
@SerializedName(SERIALIZED_NAME_PUBLISH_END)
private String publishEnd;
public static final String SERIALIZED_NAME_PUBLISH_START = "publish_start";
@SerializedName(SERIALIZED_NAME_PUBLISH_START)
private String publishStart;
public static final String SERIALIZED_NAME_RELATED_ARTICLES = "related_articles";
@SerializedName(SERIALIZED_NAME_RELATED_ARTICLES)
private List relatedArticles = null;
public static final String SERIALIZED_NAME_SCENE_CODES = "scene_codes";
@SerializedName(SERIALIZED_NAME_SCENE_CODES)
private List sceneCodes = null;
public static final String SERIALIZED_NAME_TITLE = "title";
@SerializedName(SERIALIZED_NAME_TITLE)
private String title;
public AlipayIserviceCcmSwArticleCreateModel() {
}
public AlipayIserviceCcmSwArticleCreateModel attachments(List attachments) {
this.attachments = attachments;
return this;
}
public AlipayIserviceCcmSwArticleCreateModel addAttachmentsItem(ArticleAttachmentInfo attachmentsItem) {
if (this.attachments == null) {
this.attachments = new ArrayList<>();
}
this.attachments.add(attachmentsItem);
return this;
}
/**
* 附件列表
* @return attachments
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "附件列表")
public List getAttachments() {
return attachments;
}
public void setAttachments(List attachments) {
this.attachments = attachments;
}
public AlipayIserviceCcmSwArticleCreateModel categoryId(Integer categoryId) {
this.categoryId = categoryId;
return this;
}
/**
* 所属类目ID,如果search_all_category为true则不用填
* @return categoryId
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "12", value = "所属类目ID,如果search_all_category为true则不用填")
public Integer getCategoryId() {
return categoryId;
}
public void setCategoryId(Integer categoryId) {
this.categoryId = categoryId;
}
public AlipayIserviceCcmSwArticleCreateModel ccsInstanceId(String ccsInstanceId) {
this.ccsInstanceId = ccsInstanceId;
return this;
}
/**
* 子部门ID,不传为默认部门
* @return ccsInstanceId
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "ZPNASDK", value = "子部门ID,不传为默认部门")
public String getCcsInstanceId() {
return ccsInstanceId;
}
public void setCcsInstanceId(String ccsInstanceId) {
this.ccsInstanceId = ccsInstanceId;
}
public AlipayIserviceCcmSwArticleCreateModel content(String content) {
this.content = content;
return this;
}
/**
* 内容
* @return content
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "这是一个普通的内容文本", value = "内容")
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public AlipayIserviceCcmSwArticleCreateModel extendTitles(List extendTitles) {
this.extendTitles = extendTitles;
return this;
}
public AlipayIserviceCcmSwArticleCreateModel addExtendTitlesItem(String extendTitlesItem) {
if (this.extendTitles == null) {
this.extendTitles = new ArrayList<>();
}
this.extendTitles.add(extendTitlesItem);
return this;
}
/**
* 扩展标题
* @return extendTitles
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "[\"支付宝\",\"知识库\"]", value = "扩展标题")
public List getExtendTitles() {
return extendTitles;
}
public void setExtendTitles(List extendTitles) {
this.extendTitles = extendTitles;
}
public AlipayIserviceCcmSwArticleCreateModel keywords(List keywords) {
this.keywords = keywords;
return this;
}
public AlipayIserviceCcmSwArticleCreateModel addKeywordsItem(String keywordsItem) {
if (this.keywords == null) {
this.keywords = new ArrayList<>();
}
this.keywords.add(keywordsItem);
return this;
}
/**
* 标签
* @return keywords
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "[\"关键\",\"核心\"]", value = "标签")
public List getKeywords() {
return keywords;
}
public void setKeywords(List keywords) {
this.keywords = keywords;
}
public AlipayIserviceCcmSwArticleCreateModel libraryId(String libraryId) {
this.libraryId = libraryId;
return this;
}
/**
* 知识库ID
* @return libraryId
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "1", value = "知识库ID")
public String getLibraryId() {
return libraryId;
}
public void setLibraryId(String libraryId) {
this.libraryId = libraryId;
}
public AlipayIserviceCcmSwArticleCreateModel publishEnd(String publishEnd) {
this.publishEnd = publishEnd;
return this;
}
/**
* 默认为 2999-12-31 23:59:59
* @return publishEnd
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "2024-06-01 19:00:00", value = "默认为 2999-12-31 23:59:59")
public String getPublishEnd() {
return publishEnd;
}
public void setPublishEnd(String publishEnd) {
this.publishEnd = publishEnd;
}
public AlipayIserviceCcmSwArticleCreateModel publishStart(String publishStart) {
this.publishStart = publishStart;
return this;
}
/**
* 默认为当前时间
* @return publishStart
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "2024-06-01 10:00:00", value = "默认为当前时间")
public String getPublishStart() {
return publishStart;
}
public void setPublishStart(String publishStart) {
this.publishStart = publishStart;
}
public AlipayIserviceCcmSwArticleCreateModel relatedArticles(List relatedArticles) {
this.relatedArticles = relatedArticles;
return this;
}
public AlipayIserviceCcmSwArticleCreateModel addRelatedArticlesItem(BaseArticleInfo relatedArticlesItem) {
if (this.relatedArticles == null) {
this.relatedArticles = new ArrayList<>();
}
this.relatedArticles.add(relatedArticlesItem);
return this;
}
/**
* 关联知识点
* @return relatedArticles
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "关联知识点")
public List getRelatedArticles() {
return relatedArticles;
}
public void setRelatedArticles(List relatedArticles) {
this.relatedArticles = relatedArticles;
}
public AlipayIserviceCcmSwArticleCreateModel sceneCodes(List sceneCodes) {
this.sceneCodes = sceneCodes;
return this;
}
public AlipayIserviceCcmSwArticleCreateModel addSceneCodesItem(String sceneCodesItem) {
if (this.sceneCodes == null) {
this.sceneCodes = new ArrayList<>();
}
this.sceneCodes.add(sceneCodesItem);
return this;
}
/**
* 场景ID。KNOWLEDGE(内部知识库);ROBOT(机器人);HELP(帮助中心);WHELP(无线帮助中心)
* @return sceneCodes
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "[\"KNOWLEDGE\",\"ROBOT\",\"HELP\",\"WHELP\"]", value = "场景ID。KNOWLEDGE(内部知识库);ROBOT(机器人);HELP(帮助中心);WHELP(无线帮助中心)")
public List getSceneCodes() {
return sceneCodes;
}
public void setSceneCodes(List sceneCodes) {
this.sceneCodes = sceneCodes;
}
public AlipayIserviceCcmSwArticleCreateModel 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;
}
/**
* A container for additional, undeclared properties.
* This is a holder for any undeclared properties as specified with
* the 'additionalProperties' keyword in the OAS document.
*/
private Map additionalProperties;
/**
* Set the additional (undeclared) property with the specified name and value.
* If the property does not already exist, create it otherwise replace it.
*
* @param key name of the property
* @param value value of the property
* @return the AlipayIserviceCcmSwArticleCreateModel instance itself
*/
public AlipayIserviceCcmSwArticleCreateModel putAdditionalProperty(String key, Object value) {
if (this.additionalProperties == null) {
this.additionalProperties = new HashMap();
}
this.additionalProperties.put(key, value);
return this;
}
/**
* Return the additional (undeclared) property.
*
* @return a map of objects
*/
public Map getAdditionalProperties() {
return additionalProperties;
}
/**
* Return the additional (undeclared) property with the specified name.
*
* @param key name of the property
* @return an object
*/
public Object getAdditionalProperty(String key) {
if (this.additionalProperties == null) {
return null;
}
return this.additionalProperties.get(key);
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
AlipayIserviceCcmSwArticleCreateModel alipayIserviceCcmSwArticleCreateModel = (AlipayIserviceCcmSwArticleCreateModel) o;
return Objects.equals(this.attachments, alipayIserviceCcmSwArticleCreateModel.attachments) &&
Objects.equals(this.categoryId, alipayIserviceCcmSwArticleCreateModel.categoryId) &&
Objects.equals(this.ccsInstanceId, alipayIserviceCcmSwArticleCreateModel.ccsInstanceId) &&
Objects.equals(this.content, alipayIserviceCcmSwArticleCreateModel.content) &&
Objects.equals(this.extendTitles, alipayIserviceCcmSwArticleCreateModel.extendTitles) &&
Objects.equals(this.keywords, alipayIserviceCcmSwArticleCreateModel.keywords) &&
Objects.equals(this.libraryId, alipayIserviceCcmSwArticleCreateModel.libraryId) &&
Objects.equals(this.publishEnd, alipayIserviceCcmSwArticleCreateModel.publishEnd) &&
Objects.equals(this.publishStart, alipayIserviceCcmSwArticleCreateModel.publishStart) &&
Objects.equals(this.relatedArticles, alipayIserviceCcmSwArticleCreateModel.relatedArticles) &&
Objects.equals(this.sceneCodes, alipayIserviceCcmSwArticleCreateModel.sceneCodes) &&
Objects.equals(this.title, alipayIserviceCcmSwArticleCreateModel.title)&&
Objects.equals(this.additionalProperties, alipayIserviceCcmSwArticleCreateModel.additionalProperties);
}
@Override
public int hashCode() {
return Objects.hash(attachments, categoryId, ccsInstanceId, content, extendTitles, keywords, libraryId, publishEnd, publishStart, relatedArticles, sceneCodes, title, additionalProperties);
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class AlipayIserviceCcmSwArticleCreateModel {\n");
sb.append(" attachments: ").append(toIndentedString(attachments)).append("\n");
sb.append(" categoryId: ").append(toIndentedString(categoryId)).append("\n");
sb.append(" ccsInstanceId: ").append(toIndentedString(ccsInstanceId)).append("\n");
sb.append(" content: ").append(toIndentedString(content)).append("\n");
sb.append(" extendTitles: ").append(toIndentedString(extendTitles)).append("\n");
sb.append(" keywords: ").append(toIndentedString(keywords)).append("\n");
sb.append(" libraryId: ").append(toIndentedString(libraryId)).append("\n");
sb.append(" publishEnd: ").append(toIndentedString(publishEnd)).append("\n");
sb.append(" publishStart: ").append(toIndentedString(publishStart)).append("\n");
sb.append(" relatedArticles: ").append(toIndentedString(relatedArticles)).append("\n");
sb.append(" sceneCodes: ").append(toIndentedString(sceneCodes)).append("\n");
sb.append(" title: ").append(toIndentedString(title)).append("\n");
sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).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 ");
}
public static HashSet openapiFields;
public static HashSet openapiRequiredFields;
static {
// a set of all properties/fields (JSON key names)
openapiFields = new HashSet();
openapiFields.add("attachments");
openapiFields.add("category_id");
openapiFields.add("ccs_instance_id");
openapiFields.add("content");
openapiFields.add("extend_titles");
openapiFields.add("keywords");
openapiFields.add("library_id");
openapiFields.add("publish_end");
openapiFields.add("publish_start");
openapiFields.add("related_articles");
openapiFields.add("scene_codes");
openapiFields.add("title");
// a set of required properties/fields (JSON key names)
openapiRequiredFields = new HashSet();
}
/**
* Validates the JSON Object and throws an exception if issues found
*
* @param jsonObj JSON Object
* @throws IOException if the JSON Object is invalid with respect to AlipayIserviceCcmSwArticleCreateModel
*/
public static void validateJsonObject(JsonObject jsonObj) throws IOException {
if (jsonObj == null) {
if (AlipayIserviceCcmSwArticleCreateModel.openapiRequiredFields.isEmpty()) {
return;
} else { // has required fields
throw new IllegalArgumentException(String.format("The required field(s) %s in AlipayIserviceCcmSwArticleCreateModel is not found in the empty JSON string", AlipayIserviceCcmSwArticleCreateModel.openapiRequiredFields.toString()));
}
}
JsonArray jsonArrayattachments = jsonObj.getAsJsonArray("attachments");
if (jsonArrayattachments != null) {
// ensure the json data is an array
if (!jsonObj.get("attachments").isJsonArray()) {
throw new IllegalArgumentException(String.format("Expected the field `attachments` to be an array in the JSON string but got `%s`", jsonObj.get("attachments").toString()));
}
// validate the optional field `attachments` (array)
for (int i = 0; i < jsonArrayattachments.size(); i++) {
ArticleAttachmentInfo.validateJsonObject(jsonArrayattachments.get(i).getAsJsonObject());
};
}
if (jsonObj.get("ccs_instance_id") != null && !jsonObj.get("ccs_instance_id").isJsonPrimitive()) {
throw new IllegalArgumentException(String.format("Expected the field `ccs_instance_id` to be a primitive type in the JSON string but got `%s`", jsonObj.get("ccs_instance_id").toString()));
}
if (jsonObj.get("content") != null && !jsonObj.get("content").isJsonPrimitive()) {
throw new IllegalArgumentException(String.format("Expected the field `content` to be a primitive type in the JSON string but got `%s`", jsonObj.get("content").toString()));
}
// ensure the json data is an array
if (jsonObj.get("extend_titles") != null && !jsonObj.get("extend_titles").isJsonArray()) {
throw new IllegalArgumentException(String.format("Expected the field `extend_titles` to be an array in the JSON string but got `%s`", jsonObj.get("extend_titles").toString()));
}
// ensure the json data is an array
if (jsonObj.get("keywords") != null && !jsonObj.get("keywords").isJsonArray()) {
throw new IllegalArgumentException(String.format("Expected the field `keywords` to be an array in the JSON string but got `%s`", jsonObj.get("keywords").toString()));
}
if (jsonObj.get("library_id") != null && !jsonObj.get("library_id").isJsonPrimitive()) {
throw new IllegalArgumentException(String.format("Expected the field `library_id` to be a primitive type in the JSON string but got `%s`", jsonObj.get("library_id").toString()));
}
if (jsonObj.get("publish_end") != null && !jsonObj.get("publish_end").isJsonPrimitive()) {
throw new IllegalArgumentException(String.format("Expected the field `publish_end` to be a primitive type in the JSON string but got `%s`", jsonObj.get("publish_end").toString()));
}
if (jsonObj.get("publish_start") != null && !jsonObj.get("publish_start").isJsonPrimitive()) {
throw new IllegalArgumentException(String.format("Expected the field `publish_start` to be a primitive type in the JSON string but got `%s`", jsonObj.get("publish_start").toString()));
}
JsonArray jsonArrayrelatedArticles = jsonObj.getAsJsonArray("related_articles");
if (jsonArrayrelatedArticles != null) {
// ensure the json data is an array
if (!jsonObj.get("related_articles").isJsonArray()) {
throw new IllegalArgumentException(String.format("Expected the field `related_articles` to be an array in the JSON string but got `%s`", jsonObj.get("related_articles").toString()));
}
// validate the optional field `related_articles` (array)
for (int i = 0; i < jsonArrayrelatedArticles.size(); i++) {
BaseArticleInfo.validateJsonObject(jsonArrayrelatedArticles.get(i).getAsJsonObject());
};
}
// ensure the json data is an array
if (jsonObj.get("scene_codes") != null && !jsonObj.get("scene_codes").isJsonArray()) {
throw new IllegalArgumentException(String.format("Expected the field `scene_codes` to be an array in the JSON string but got `%s`", jsonObj.get("scene_codes").toString()));
}
if (jsonObj.get("title") != null && !jsonObj.get("title").isJsonPrimitive()) {
throw new IllegalArgumentException(String.format("Expected the field `title` to be a primitive type in the JSON string but got `%s`", jsonObj.get("title").toString()));
}
}
public static class CustomTypeAdapterFactory implements TypeAdapterFactory {
@SuppressWarnings("unchecked")
@Override
public TypeAdapter create(Gson gson, TypeToken type) {
if (!AlipayIserviceCcmSwArticleCreateModel.class.isAssignableFrom(type.getRawType())) {
return null; // this class only serializes 'AlipayIserviceCcmSwArticleCreateModel' and its subtypes
}
final TypeAdapter elementAdapter = gson.getAdapter(JsonElement.class);
final TypeAdapter thisAdapter
= gson.getDelegateAdapter(this, TypeToken.get(AlipayIserviceCcmSwArticleCreateModel.class));
return (TypeAdapter) new TypeAdapter() {
@Override
public void write(JsonWriter out, AlipayIserviceCcmSwArticleCreateModel value) throws IOException {
JsonObject obj = thisAdapter.toJsonTree(value).getAsJsonObject();
obj.remove("additionalProperties");
// serialize additonal properties
if (value.getAdditionalProperties() != null) {
for (Map.Entry entry : value.getAdditionalProperties().entrySet()) {
if (entry.getValue() instanceof String)
obj.addProperty(entry.getKey(), (String) entry.getValue());
else if (entry.getValue() instanceof Number)
obj.addProperty(entry.getKey(), (Number) entry.getValue());
else if (entry.getValue() instanceof Boolean)
obj.addProperty(entry.getKey(), (Boolean) entry.getValue());
else if (entry.getValue() instanceof Character)
obj.addProperty(entry.getKey(), (Character) entry.getValue());
else {
obj.add(entry.getKey(), gson.toJsonTree(entry.getValue()).getAsJsonObject());
}
}
}
elementAdapter.write(out, obj);
}
@Override
public AlipayIserviceCcmSwArticleCreateModel read(JsonReader in) throws IOException {
JsonObject jsonObj = elementAdapter.read(in).getAsJsonObject();
validateJsonObject(jsonObj);
// store additional fields in the deserialized instance
AlipayIserviceCcmSwArticleCreateModel instance = thisAdapter.fromJsonTree(jsonObj);
for (Map.Entry entry : jsonObj.entrySet()) {
if (!openapiFields.contains(entry.getKey())) {
if (entry.getValue().isJsonPrimitive()) { // primitive type
if (entry.getValue().getAsJsonPrimitive().isString())
instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsString());
else if (entry.getValue().getAsJsonPrimitive().isNumber())
instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsNumber());
else if (entry.getValue().getAsJsonPrimitive().isBoolean())
instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsBoolean());
else
throw new IllegalArgumentException(String.format("The field `%s` has unknown primitive type. Value: %s", entry.getKey(), entry.getValue().toString()));
} else { // non-primitive type
instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), HashMap.class));
}
}
}
return instance;
}
}.nullSafe();
}
}
/**
* Create an instance of AlipayIserviceCcmSwArticleCreateModel given an JSON string
*
* @param jsonString JSON string
* @return An instance of AlipayIserviceCcmSwArticleCreateModel
* @throws IOException if the JSON string is invalid with respect to AlipayIserviceCcmSwArticleCreateModel
*/
public static AlipayIserviceCcmSwArticleCreateModel fromJson(String jsonString) throws IOException {
return JSON.getGson().fromJson(jsonString, AlipayIserviceCcmSwArticleCreateModel.class);
}
/**
* Convert an instance of AlipayIserviceCcmSwArticleCreateModel to an JSON string
*
* @return JSON string
*/
public String toJson() {
return JSON.getGson().toJson(this);
}
}