package com.njcn.gather.icd.mapping.pojo.bo.state;

import lombok.Data;
import java.util.ArrayList;
import java.util.List;

/**
 * 中间态总对象。
 *
 * 作用：
 * 1. 对应原 C# 里“先形成中间态，再做最终 JSON 组装”的思路；
 * 2. 把业务分组、用户绑定、最终 DataSet 选择结果集中保存；
 * 3. 避免在 MappingGenerationService 里直接边遍历边拼 JSON，便于后续扩展和排查。
 */
@Data
public class ReportAndDataSetState {

    /** IED 名称。 */
    private String iedName;

    /** LD 实例名。 */
    private String ldInst;

    /** 分组状态列表。 */
    private List<ReportGroupState> reportGroups = new ArrayList<ReportGroupState>();

    /** 数据集选择状态列表。 */
    private List<DataSetSelectionState> dataSetSelections = new ArrayList<DataSetSelectionState>();
}
