import React from "react";
import XBasePage, { XBasePageProps } from "./XBasePage";
/**
* 统计页面组件属性
*/
export interface XBaseStatisticProps extends XBasePageProps {
children?: React.ReactNode;
/**
* 是否显示多视图
*/
showFilterView?: boolean;
/**
* 统计请求地址
*/
dataSourceUrl?: string;
/**
* 是否树形显示
*/
isTree?: boolean;
/**
* 图显示方式
*/
chartMode?: "line" | "bar" | "pie1" | "pie2" | "pie3";
/**
* 图表参数
*/
chartParams?: ChartParams;
isVisual?: boolean;
}
declare class ChartParams {
/**
* 显示层级,树根节点为:0
*/
level?: undefined | number;
/**
* 行维度字段(x轴)
*/
rowDimensionField?: string;
/**
* 显示第几个指标(y轴)
*/
indicatorIndex?: undefined | number;
}
/**
* 统计页面组件
*/
export default class XBaseStatistic
extends XBasePage {
static defaultProps: {
views: string[];
view: string;
isTree: boolean;
chartMode: string;
isVisual: boolean;
chartParams: {
level: number;
};
operations: any;
validateUser: any;
showFilterView: boolean;
isDashboard: boolean;
settingQueryUrl: string;
settingSaveUrl: string;
parent: string;
pureRender: boolean;
dataSourceUrl: string;
filterData: {};
mustHasFilter: boolean;
};
userFilterData?: any;
constructor(props: any);
/**
* 渲染页面配置
*/
renderPageConfig(): React.JSX.Element;
onDataRightChangeEvent(dataRightFilter: any, oldDataRightFilter: any): void;
SearchData(data: any): void;
/**
* 创建行或列维度
* @param Field
* @param DisplayName
* @param DateType
* @param Order
*/
createDimension(Field: string, DisplayName?: string, DateType?: undefined | "" | "Year" | "Quarter" | "Month" | "Day" | "Week", Order?: string): {
Field: string;
DisplayName: string;
DateType: "" | "Year" | "Quarter" | "Month" | "Day" | "Week";
Order: string;
};
/**
* 创建统计指标
* @param Field
* @param DisplayName
* @param StatType
* @param Order
*/
createIndicator(Field: string, DisplayName?: string, StatType?: "Value" | "Count" | "Sum" | "Avg" | "Max" | "Min", Order?: string): {
Field: string;
DisplayName: string;
StatType: "Value" | "Count" | "Sum" | "Avg" | "Max" | "Min";
Order: string;
};
/**
* 显示表格明细
* @param row 行
* @param col 列
*/
showTable(row: any, col: any): void;
onServerColumnList(cols: any): any;
onServerColumnStat(cols: any): any;
getLeafColumns(columns: any): any[];
refreshChat(rows: any, columns: any): void;
getStatParam(key: "DimRowJson" | "DimColumnJson" | "IndicatorJson"): any[];
onChartClick(params: any): void;
table?: any;
searchForm?: any;
xchart?: any;
renderFilter(): React.JSX.Element;
renderChart(view: any): React.JSX.Element;
renderView(view: any): React.JSX.Element;
render(): React.JSX.Element;
}
export {};