forked from github/dataease
Merge pull request #13106 from dataease/pr@dev-v2@chart-quota-fix
fix(图表): 修复水波图、仪表盘添加非数值字段导致图表异常
This commit is contained in:
commit
8f93e8f726
@ -110,7 +110,10 @@ const initField = () => {
|
||||
}
|
||||
initDynamicDefaultField()
|
||||
}
|
||||
|
||||
const COUNT_DE_TYPE = [0, 1, 5]
|
||||
const getFieldSummaryByDeType = (deType: number) => {
|
||||
return COUNT_DE_TYPE.includes(deType) || !deType ? 'count' : 'sum'
|
||||
}
|
||||
const initDynamicDefaultField = () => {
|
||||
const yAxisId = props.chart.yAxis?.[0]?.id
|
||||
if (yAxisId !== '-1' && state.quotaData.length) {
|
||||
@ -146,9 +149,11 @@ const initDynamicDefaultField = () => {
|
||||
state.liquidProcessedNoYAxis = false
|
||||
// 根据查找结果设置 liquidMaxField.id
|
||||
state.miscForm.liquidMaxField.id = yAxisExists ? yAxisId : state.quotaData[0]?.id
|
||||
state.liquidMaxField = getQuotaField(state.miscForm.liquidMaxField.id)
|
||||
// 设置 summary 和 maxField
|
||||
state.miscForm.liquidMaxField.summary = 'sum'
|
||||
state.maxField = getQuotaField(state.miscForm.liquidMaxField.id)
|
||||
state.miscForm.liquidMaxField.summary = getFieldSummaryByDeType(
|
||||
state.liquidMaxField?.deType
|
||||
)
|
||||
// 触发 changeMisc 事件
|
||||
if (yAxisExists) {
|
||||
changeMisc('liquidMaxField', true)
|
||||
@ -172,9 +177,9 @@ const initDynamicDefaultField = () => {
|
||||
state.gaugeProcessedNoYAxis = false
|
||||
// 根据查找结果设置 gaugeMaxField.id
|
||||
state.miscForm.gaugeMaxField.id = yAxisExists ? yAxisId : state.quotaData[0]?.id
|
||||
// 设置 summary 和 maxField
|
||||
state.miscForm.gaugeMaxField.summary = 'sum'
|
||||
state.maxField = getQuotaField(state.miscForm.gaugeMaxField.id)
|
||||
// 设置 summary 和 maxField
|
||||
state.miscForm.gaugeMaxField.summary = getFieldSummaryByDeType(state.maxField?.deType)
|
||||
if (yAxisExists) {
|
||||
// 触发 changeMisc 事件
|
||||
changeMisc('gaugeMaxField', true)
|
||||
@ -233,13 +238,13 @@ const changeQuotaField = (type: string, resetSummary?: boolean) => {
|
||||
state.miscForm.liquidMaxField.id = props.chart.yAxis?.[0]?.id
|
||||
}
|
||||
if (!state.miscForm.liquidMaxField.summary) {
|
||||
state.miscForm.liquidMaxField.summary = 'sum'
|
||||
state.miscForm.liquidMaxField.summary = 'count'
|
||||
}
|
||||
if (resetSummary) {
|
||||
state.miscForm.liquidMaxField.summary = 'sum'
|
||||
state.miscForm.liquidMaxField.summary = 'count'
|
||||
}
|
||||
if (state.miscForm.liquidMaxField.id && state.miscForm.liquidMaxField.summary) {
|
||||
state.maxField = getQuotaField(state.miscForm.liquidMaxField.id)
|
||||
state.liquidMaxField = getQuotaField(state.miscForm.liquidMaxField.id)
|
||||
changeMisc('liquidMaxField', true)
|
||||
}
|
||||
} else {
|
||||
@ -252,10 +257,10 @@ const changeQuotaField = (type: string, resetSummary?: boolean) => {
|
||||
state.miscForm.gaugeMaxField.id = props.chart.yAxis?.[0]?.id
|
||||
}
|
||||
if (!state.miscForm.gaugeMaxField.summary) {
|
||||
state.miscForm.gaugeMaxField.summary = 'sum'
|
||||
state.miscForm.gaugeMaxField.summary = 'count'
|
||||
}
|
||||
if (resetSummary) {
|
||||
state.miscForm.gaugeMaxField.summary = 'sum'
|
||||
state.miscForm.gaugeMaxField.summary = 'count'
|
||||
}
|
||||
if (state.miscForm.gaugeMaxField.id && state.miscForm.gaugeMaxField.summary) {
|
||||
state.maxField = getQuotaField(state.miscForm.gaugeMaxField.id)
|
||||
@ -344,6 +349,12 @@ const addAxis = (form: AxisEditForm) => {
|
||||
} else {
|
||||
state.miscForm[maxTypeKey] = 'dynamic'
|
||||
}
|
||||
if (props.chart.type === 'gauge') {
|
||||
state.miscForm.gaugeMinType = 'fix'
|
||||
state.miscForm.gaugeMin = 0
|
||||
state.miscForm.gaugeMinField.id = ''
|
||||
state.miscForm.gaugeMinField.summary = ''
|
||||
}
|
||||
}
|
||||
onMounted(() => {
|
||||
initField()
|
||||
|
Loading…
Reference in New Issue
Block a user