From 8c082d42592b26ea04c81cf82b02f3fec6ec6f38 Mon Sep 17 00:00:00 2001 From: Wing-Kam Wong Date: Fri, 1 Jul 2022 15:08:29 +0800 Subject: [PATCH] fix: revise filterComparisonOp for mm, hm & bt --- .../spreadsheet/components/ColumnFilter.vue | 22 ++++++++++++++----- 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/packages/nc-gui/components/project/spreadsheet/components/ColumnFilter.vue b/packages/nc-gui/components/project/spreadsheet/components/ColumnFilter.vue index f5b4007fa1..5ebafbfeda 100644 --- a/packages/nc-gui/components/project/spreadsheet/components/ColumnFilter.vue +++ b/packages/nc-gui/components/project/spreadsheet/components/ColumnFilter.vue @@ -324,13 +324,23 @@ export default { if ( f && f.fk_column_id && - this.columnsById[f.fk_column_id] && - this.columnsById[f.fk_column_id].uidt === - UITypes.LinkToAnotherRecord && - this.columnsById[f.fk_column_id].uidt === UITypes.Lookup + this.columnsById[f.fk_column_id] ) { - return !['notempty', 'empty', 'notnull', 'null'].includes(op.value) - } + const uidt = this.columnsById[f.fk_column_id].uidt + if (uidt === UITypes.Lookup) { + // TODO: handle it later + return !['notempty', 'empty', 'notnull', 'null'].includes(op.value) + } else if (uidt === UITypes.LinkToAnotherRecord) { + const type = this.columnsById[f.fk_column_id].colOptions.type + if (type === 'hm' || type === 'mm') { + // exclude notnull & null + return !['notnull', 'null'].includes(op.value) + } else if (type === 'bt') { + // exclude notempty & empty + return !['notempty', 'empty'].includes(op.value) + } + } + } return true }) },