package com.ozs.rpm.dto.view;

import java.util.List;

import com.ozs.rpm.dto.save.ReportKpiDrillDown;
import com.ozs.rpm.dto.save.RpmInfoReportChartDTO;
import com.ozs.rpm.dto.save.SaveRportKpiDTO;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * 
 * @ClassName: ReportViewDTO
 * @Description:报表页面渲染实体类
 * @author: Zhao You Kai
 * @date: Mar 14, 2019 9:55:00 PM
 */
@Data
public class ReportViewDTO {

	@ApiModelProperty("报表ID")
	private String reportId;
	@ApiModelProperty("查询条件")
	private List<ReportViewQueryDTO> querys;
	@ApiModelProperty("显示类型：1-整体展示 2-根据一个KPI如通道分组展示")
	private Integer showType;
	@ApiModelProperty("报表名称")
	private String reportName;
	@ApiModelProperty("是否分页")
	private Integer ifPage;
	@ApiModelProperty("是否合计")
	private Integer ifTotal;
	@ApiModelProperty("布局：1-上图下表 2-上表下图")
	private Integer layoutId;
	@ApiModelProperty("报表层级：0-父级 1-子级")
	private Integer reportLevel;
	@ApiModelProperty("颜色组ID")
	private Integer colorGroupId;
	@ApiModelProperty("是否下钻")
	private Integer ifDrillDown;
	@ApiModelProperty("kpi列表")
	private List<SaveRportKpiDTO> kpis;
	@ApiModelProperty("柱折混合图信息列表")
	private List<RpmInfoReportChartDTO> barAndLineCharts;
	@ApiModelProperty("饼状图kpi")
	private List<ReportViewPieDTO> pieViews;
	@ApiModelProperty("分组kpi")
	private GroupKpiViewDTO groupKpi;
	@ApiModelProperty("合计数据展示位置 1-数据下方 2 报表上方")
	private Integer totalShowType;

	@ApiModelProperty("所属展示系统：1-自助报表 2-大屏")
	private Integer displaySystem;
	@ApiModelProperty("DML")
	private String DML;
	@ApiModelProperty("图表类型")
	private Integer chartType;
	@ApiModelProperty("图表分类code")
	private String chartClassCode;
	@ApiModelProperty("数据库id")
	private String databaseId;
	@ApiModelProperty("数据表id")
	private String tableId;
	@ApiModelProperty("图表json串")
	private String chartJson;
	@ApiModelProperty("富文本文档，图表类型为：富文本")
	private String richText;
	@ApiModelProperty("文件路径，图表类型为：图片、视频")
	private String filePath;
	@ApiModelProperty("图表数据刷新时间,单位：秒")
	private Integer chartRefrech;
	@ApiModelProperty("数据来源，1:KPI 2:DML 3:接口")
	private Integer dataSource;
	@ApiModelProperty("是否需要外部传参数。1是  0否")
	private Integer ifOutsideParam;
	@ApiModelProperty("默认排序KPI")
	private String queryDefaultSortKpi;
	@ApiModelProperty("默认排序KPICode")
	private String queryDefaultSortKpiCode;
	@ApiModelProperty("默认排序，正序asc 倒叙desc")
	private String queryDefaultOrder;
	@ApiModelProperty("下钻KPI属性")
	private List<ReportKpiDrillDown> drillDowns;
	
	@ApiModelProperty("是否使用可操作性聚合kpi")
	private Integer useOperableGroup;

	@ApiModelProperty("可操作聚合kpi")
	private List<SaveRportKpiDTO> operableGroupKpis;

	@ApiModelProperty("默认聚合kpi")
	private List<SaveRportKpiDTO> defaultGroupKpis;
}
