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

import lombok.Data;
import com.njcn.gather.icd.mapping.pojo.bo.icd.IcdDocument;

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

/**
 * 提交索引绑定并生成映射的请求体。
 *
 * 第二个接口不再重复上传 ICD 文件，而是直接接收前端确认或修改后的 ICD 解析结果。
 */
@Data
public class SubmitIndexSelectionRequest {

    /** 前端基于候选接口返回值确认或修改后的 ICD 解析结果。 */
    private IcdDocument icdDocument;

    /** 输出版本号。为空时后端默认补当天日期。 */
    private String version;

    /** 作者。为空时使用模块默认作者。 */
    private String author;

    /** 是否保存到磁盘。 */
    private boolean saveToDisk;

    /** 是否返回格式化 JSON。 */
    private boolean prettyJson;

    /** 输出目录。saveToDisk=true 时才会用到。 */
    private String outputDir;

    /** 用户最终确认的索引绑定关系。 */
    private List<IndexSelectionGroupRequest> indexSelection = new ArrayList<IndexSelectionGroupRequest>();
}