package com.ruoyi.web.report.domain.vo;

import java.util.List;
import java.util.Map;

/**
 * 报表运行态查询返回对象。
 *
 * <p>统一返回报表ID、命中数据源模式（实时/离线）、总行数与结果集，
 * 便于前端渲染组件直接消费。</p>
 */
public class ErpReportQueryVo {
    /** 报表ID。 */
    private Long reportId;
    /** 数据来源模式：REALTIME 或 OFFLINE。 */
    private String dataSourceMode;
    /** 总记录数。 */
    private Long total;
    /** 查询结果行。 */
    private List<Map<String, Object>> rows;
    /** 最终生成并执行的 SQL（预览时用于开发端展示）。 */
    private String generatedSql;

    public Long getReportId() {
        return reportId;
    }

    public void setReportId(Long reportId) {
        this.reportId = reportId;
    }

    public String getDataSourceMode() {
        return dataSourceMode;
    }

    public void setDataSourceMode(String dataSourceMode) {
        this.dataSourceMode = dataSourceMode;
    }

    public Long getTotal() {
        return total;
    }

    public void setTotal(Long total) {
        this.total = total;
    }

    public List<Map<String, Object>> getRows() {
        return rows;
    }

    public void setRows(List<Map<String, Object>> rows) {
        this.rows = rows;
    }

    public String getGeneratedSql() {
        return generatedSql;
    }

    public void setGeneratedSql(String generatedSql) {
        this.generatedSql = generatedSql;
    }
}
