From c56e893761660de6b1317b877279785e24d05fda Mon Sep 17 00:00:00 2001 From: jianneng-fit2cloud Date: Fri, 11 Oct 2024 11:44:30 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E5=9B=BE=E8=A1=A8):=20=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E8=A1=A8=E6=A0=BC=E5=9B=BE=E8=A1=A8=E6=96=87=E6=9C=AC=E7=B1=BB?= =?UTF-8?q?=E5=9E=8B=E8=AE=BE=E7=BD=AE=E5=8A=A8=E6=80=81=E6=9D=A1=E4=BB=B6?= =?UTF-8?q?=E6=A0=B7=E5=BC=8F=E5=A4=B1=E6=95=88=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/dialog/TableThresholdEdit.vue | 13 +++++++- .../js/panel/common/common_table.ts | 32 +++++++++---------- 2 files changed, 28 insertions(+), 17 deletions(-) diff --git a/core/core-frontend/src/views/chart/components/editor/editor-senior/components/dialog/TableThresholdEdit.vue b/core/core-frontend/src/views/chart/components/editor/editor-senior/components/dialog/TableThresholdEdit.vue index 5f3b6829f4..66468c0fd6 100644 --- a/core/core-frontend/src/views/chart/components/editor/editor-senior/components/dialog/TableThresholdEdit.vue +++ b/core/core-frontend/src/views/chart/components/editor/editor-senior/components/dialog/TableThresholdEdit.vue @@ -299,7 +299,18 @@ const getConditionsFields = (fieldItem, conditionItem, conditionItemField) => { conditionItem.fieldId = null conditionItemField.fieldId = null } - const result = state.fields.filter(item => item.deType === fieldItemDeType) ?? [] + const result = + state.fields.filter(item => { + // 文本、时间、boole、地理位置时,需要同类型的字段 + if ([0, 1, 4, 5].includes(fieldItemDeType)) { + return item.deType === fieldItemDeType + } else if ([2, 3].includes(fieldItemDeType)) { + // 整型浮点型时,需要整型或者浮点型类型的字段 + return item.deType === 2 || item.deType === 3 + } else { + return false + } + }) ?? [] if (!result.find(ele => ele.id === conditionItemField.fieldId)) { conditionItemField.fieldId = result[0]?.id addField(conditionItem) diff --git a/core/core-frontend/src/views/chart/components/js/panel/common/common_table.ts b/core/core-frontend/src/views/chart/components/js/panel/common/common_table.ts index 6fd505b617..e03b310dc6 100644 --- a/core/core-frontend/src/views/chart/components/js/panel/common/common_table.ts +++ b/core/core-frontend/src/views/chart/components/js/panel/common/common_table.ts @@ -578,23 +578,24 @@ export function mappingColor(value, defaultColor, field, type, filedValueMap?, r for (let i = 0; i < field.conditions.length; i++) { let flag = false const t = field.conditions[i] - if (field.field.deType === 2 || field.field.deType === 3 || field.field.deType === 4) { - let tv, max, min - if (t.type === 'dynamic') { - if (t.term === 'between') { - max = parseFloat(getValue(t.dynamicMaxField, filedValueMap, rowData)) - min = parseFloat(getValue(t.dynamicMinField, filedValueMap, rowData)) - } else { - tv = parseFloat(getValue(t.dynamicField, filedValueMap, rowData)) - } + let tv, max, min + if (t.type === 'dynamic') { + if (t.term === 'between') { + max = parseFloat(getValue(t.dynamicMaxField, filedValueMap, rowData)) + min = parseFloat(getValue(t.dynamicMinField, filedValueMap, rowData)) } else { - if (t.term === 'between') { - min = parseFloat(t.min) - max = parseFloat(t.max) - } else { - tv = parseFloat(t.value) - } + tv = getValue(t.dynamicField, filedValueMap, rowData) } + } else { + if (t.term === 'between') { + min = parseFloat(t.min) + max = parseFloat(t.max) + } else { + tv = t.value + } + } + if (field.field.deType === 2 || field.field.deType === 3 || field.field.deType === 4) { + tv = parseFloat(tv) if (t.term === 'eq') { if (value === tv) { color = t[type] @@ -640,7 +641,6 @@ export function mappingColor(value, defaultColor, field, type, filedValueMap?, r color = defaultColor } } else if (field.field.deType === 0 || field.field.deType === 5) { - const tv = t.value if (t.term === 'eq') { if (value === tv) { color = t[type]