108 lines
3.2 KiB
Go
108 lines
3.2 KiB
Go
package view
|
|
|
|
type DashboardProject struct {
|
|
ProjectIncome float64 `json:"project_income"` // 项目收入
|
|
ProjectExpense float64 `json:"project_expense"` // 项目支出
|
|
ProjectProfit float64 `json:"project_profit"` // 项目利润
|
|
ProjectProfitRate string `json:"project_profit_rate"` // 项目利润率
|
|
IncomeExpenseEcharts EchartsOption `json:"income_expense_echarts"` // 收支图表
|
|
IncomeEcharts EchartsOption `json:"income_echarts"` // 收入图表
|
|
ExpenseEcharts EchartsOption `json:"expense_echarts"` // 支出图表
|
|
}
|
|
|
|
type EchartsOption struct {
|
|
Title Title `json:"title"`
|
|
Color []string `json:"color"`
|
|
ToolTip ToolTip `json:"tooltip"`
|
|
Grid Grid `json:"grid"`
|
|
Legend Legend `json:"legend"`
|
|
XAxis []XAxis `json:"xAxis"`
|
|
YAxis []YAxis `json:"yAxis"`
|
|
BarMaxWidth string `json:"barMaxWidth"`
|
|
Label Label `json:"label"`
|
|
Series []Series `json:"series"`
|
|
}
|
|
|
|
type Series struct {
|
|
Name string `json:"name,omitempty"`
|
|
Type string `json:"type,omitempty"`
|
|
Data any `json:"data,omitempty"`
|
|
ItemStyle ItemStyle `json:"itemStyle,omitempty"`
|
|
Radius string `json:"radius,omitempty"`
|
|
Label Label `json:"label,omitempty"`
|
|
}
|
|
|
|
type ItemStyle struct {
|
|
Normal Normal `json:"normal,omitempty"`
|
|
}
|
|
type Normal struct {
|
|
Color string `json:"color,omitempty"`
|
|
}
|
|
|
|
type Title struct {
|
|
Text string `json:"text,omitempty"`
|
|
Orient string `json:"orient,omitempty"`
|
|
Left string `json:"left,omitempty"`
|
|
Top int `json:"top,omitempty"`
|
|
FontSize int `json:"fontSize,omitempty"`
|
|
TextStyle TextStyle `json:"textStyle,omitempty"`
|
|
}
|
|
|
|
type TextStyle struct {
|
|
Color string `json:"color,omitempty"`
|
|
FontWeight string `json:"fontWeight,omitempty"`
|
|
}
|
|
|
|
type ToolTip struct {
|
|
Trigger string `json:"trigger,omitempty"`
|
|
AxisPointer AxisPointer `json:"axisPointer,omitempty"`
|
|
}
|
|
type AxisPointer struct {
|
|
Type string `json:"type,omitempty"`
|
|
}
|
|
|
|
type Grid struct {
|
|
Left string `json:"left,omitempty"`
|
|
Right string `json:"right,omitempty"`
|
|
Bottom string `json:"bottom,omitempty"`
|
|
ContainLabel bool `json:"containLabel,omitempty"`
|
|
}
|
|
|
|
type Legend struct {
|
|
Left string `json:"left,omitempty"`
|
|
Top string `json:"top,omitempty"`
|
|
Data []string `json:"data,omitempty"`
|
|
}
|
|
|
|
type XAxis struct {
|
|
Type string `json:"type,omitempty"`
|
|
Data []string `json:"data,omitempty"`
|
|
AxisTick AxisTick `json:"axisTick,omitempty"`
|
|
}
|
|
|
|
type AxisTick struct {
|
|
AlignWithLabel bool `json:"alignWithLabel,omitempty"`
|
|
}
|
|
|
|
type YAxis struct {
|
|
Name string `json:"name,omitempty"`
|
|
Type string `json:"type,omitempty"`
|
|
}
|
|
|
|
type Label struct {
|
|
Show bool `json:"show,omitempty"`
|
|
Position string `json:"position,omitempty"`
|
|
TextStyle TextStyle `json:"textStyle,omitempty"`
|
|
Normal LableNormal `json:"normal,omitempty"`
|
|
}
|
|
|
|
type LableNormal struct {
|
|
Formatter string `json:"formatter,omitempty"`
|
|
TextStyle TextStyle `json:"textStyle,omitempty"`
|
|
}
|
|
|
|
type DataItem struct {
|
|
Name string `json:"name,omitempty"`
|
|
Value float64 `json:"value,omitempty"`
|
|
}
|