From a8e706a3952b1e7b12e3187a3637c51f2673c4a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?piexlMax=28=E5=A5=87=E6=B7=BC?= Date: Thu, 13 Feb 2025 16:20:52 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E8=B0=83=E6=95=B4=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E5=8C=96=E4=BB=A3=E7=A0=81=E5=AF=8C=E6=96=87=E6=9C=AC=E6=A8=A1?= =?UTF-8?q?=E5=BC=8F=E4=B8=8B=E7=9A=84=E5=8F=AF=E9=80=89=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E6=9D=A1=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../autoCode/component/fieldDialog.vue | 24 +++++++++-------- web/src/view/systemTools/autoCode/index.vue | 26 +++++++++++++------ 2 files changed, 31 insertions(+), 19 deletions(-) diff --git a/web/src/view/systemTools/autoCode/component/fieldDialog.vue b/web/src/view/systemTools/autoCode/component/fieldDialog.vue index 3a4cc89d..8f130e7e 100644 --- a/web/src/view/systemTools/autoCode/component/fieldDialog.vue +++ b/web/src/view/systemTools/autoCode/component/fieldDialog.vue @@ -386,20 +386,22 @@ } const canSelect = (item) => { - const fieldType = middleDate.value.fieldType - if (fieldType !== 'string' && item === 'LIKE') { - return true + const fieldType = middleDate.value.fieldType; + + if (fieldType === 'richtext') { + return item !== 'LIKE'; } - if ( - fieldType !== 'int' && - fieldType !== 'time.Time' && - fieldType !== 'float64' && - (item === 'BETWEEN' || item === 'NOT BETWEEN') - ) { - return true + if (fieldType !== 'string' && item === 'LIKE') { + return true; } - return false + + const nonNumericTypes = ['int', 'time.Time', 'float64']; + if (!nonNumericTypes.includes(fieldType) && ['BETWEEN', 'NOT BETWEEN'].includes(item)) { + return true; + } + + return false; } const clearOther = () => { diff --git a/web/src/view/systemTools/autoCode/index.vue b/web/src/view/systemTools/autoCode/index.vue index 79a65224..b265c0ad 100644 --- a/web/src/view/systemTools/autoCode/index.vue +++ b/web/src/view/systemTools/autoCode/index.vue @@ -703,14 +703,7 @@ :key="item.value" :label="item.label" :value="item.value" - :disabled=" - (row.fieldType !== 'string' && item.value === 'LIKE') || - (row.fieldType !== 'int' && - row.fieldType !== 'time.Time' && - row.fieldType !== 'float64' && - (item.value === 'BETWEEN' || - item.value === 'NOT BETWEEN')) - " + :disabled="canSelect(row.fieldType,item.value)" /> @@ -1652,6 +1645,23 @@ } } ) + + const canSelect = (fieldType,item) => { + if (fieldType === 'richtext') { + return item !== 'LIKE'; + } + + if (fieldType !== 'string' && item === 'LIKE') { + return true; + } + + const nonNumericTypes = ['int', 'time.Time', 'float64']; + if (!nonNumericTypes.includes(fieldType) && ['BETWEEN', 'NOT BETWEEN'].includes(item)) { + return true; + } + + return false; + }