package com.njcn.gather.icd.mapping.pojo.vo;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.njcn.gather.icd.mapping.pojo.enums.GenerateStatus;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.ArrayList;
import java.util.List;

/**
 * MMS JSON 转 XML 的响应。
 */
@Data
@JsonInclude(JsonInclude.Include.NON_EMPTY)
@ApiModel("MMS JSON 转 XML 的响应")
public class IcdToXmlResponse {

    @ApiModelProperty("本次接口处理状态")
    private GenerateStatus status;

    @ApiModelProperty("状态说明或错误提示")
    private String message;

    @ApiModelProperty("接口方法描述")
    private String methodDescribe;

    @ApiModelProperty("IED 名称")
    private String iedName;

    @ApiModelProperty("逻辑设备实例名")
    private String ldInst;

    @ApiModelProperty("生成后的 XML 文件展示容器")
    private XmlFileResponse xmlFile;

    @ApiModelProperty("生成后的映射文档摘要")
    private MappingDocumentResponse mappingDocument;

    @ApiModelProperty("索引候选分组，存在待确认场景时返回")
    private List<IndexCandidateResponse> indexCandidates = new ArrayList<IndexCandidateResponse>();

    @ApiModelProperty("处理过程中发现的问题列表")
    private List<String> problems = new ArrayList<String>();

}
