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

import lombok.Data;
import com.fasterxml.jackson.annotation.JsonInclude;

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

/**
 * 索引候选响应对象。
 *
 * 一个候选对应一个业务分组，分组下可包含多个报告，
 * 前端据此完成模板标签与 `lnInst` 的人工绑定。
 */
@JsonInclude(JsonInclude.Include.NON_EMPTY)
@Data
public class IndexCandidateResponse {

    /** 分组唯一键。 */
    private String groupKey;

    /** 分组中文描述。 */
    private String groupDesc;

    /** 当前分组包含的报告数。 */
    private int reportCount;

    /** 模板里配置的可选标签。 */
    private List<String> templateLabels = new ArrayList<String>();

    /** 当前分组下的报告候选列表。 */
    private List<IndexCandidateReportItemResponse> reports = new ArrayList<IndexCandidateReportItemResponse>();
}