From 9621269bab5ea581b5c6f122b0b8a744744021ad Mon Sep 17 00:00:00 2001 From: song-tianyang Date: Tue, 19 Mar 2024 20:41:14 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E7=BC=BA=E9=99=B7=E7=AE=A1=E7=90=86):=20?= =?UTF-8?q?=E7=BC=BA=E9=99=B7=E7=AE=A1=E7=90=86=E8=A1=A8=E6=A0=BC=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E5=AF=B9=E8=87=AA=E5=AE=9A=E4=B9=89=E5=A4=9A=E9=80=89?= =?UTF-8?q?=E6=A1=86=E7=9A=84=E5=8F=8B=E5=A5=BD=E5=B1=95=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --bug=1036382 --user=宋天阳 【缺陷管理】创建缺陷-多选输入框字段显示错误 https://www.tapd.cn/55049933/s/1477706 --- frontend/src/utils/index.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/frontend/src/utils/index.ts b/frontend/src/utils/index.ts index 26333d2f5d..ec622c2b04 100644 --- a/frontend/src/utils/index.ts +++ b/frontend/src/utils/index.ts @@ -3,6 +3,7 @@ import JSEncrypt from 'jsencrypt'; import { BatchActionQueryParams, MsTableColumnData } from '@/components/pure/ms-table/type'; import { BugEditCustomField, CustomFieldItem } from '@/models/bug-management'; +import type { CustomAttributes } from '@/models/caseManagement/featureCase'; import { isObject } from './is'; import { json } from 'stream/consumers'; @@ -685,7 +686,11 @@ export function parseQueryParams(url: string): QueryParam[] { */ export function customFieldDataToTableData(customFieldData: Record[], customFields: BugEditCustomField[]) { if (!customFieldData || !customFields) return {}; + const tableData: Record = {}; + const multipleExcludes = ['MULTIPLE_SELECT', 'CHECKBOX', 'MULTIPLE_MEMBER']; + const selectExcludes = ['MEMBER', 'RADIO', 'SELECT']; + customFieldData.forEach((field) => { const customField = customFields.find((item) => item.fieldId === field.id); if (!customField) return; @@ -697,9 +702,9 @@ export function customFieldDataToTableData(customFieldData: Record[ } // 后端返回来的数据这个字段没值 field.type = customField.type; - if (['SELECT', 'RADIO'].includes(field.type) && Array.isArray(field.options)) { + if (selectExcludes.includes(field.type) && Array.isArray(field.options)) { tableData[field.id] = field.options.find((option) => option.value === field.value)?.text; - } else if (['MUTIPLE_SELECT', 'CHECKBOX'].includes(field.type) && Array.isArray(field.options)) { + } else if (multipleExcludes.includes(field.type) && Array.isArray(field.options)) { // 多值的类型后端返回的是json字符串 field.value = JSON.parse(field.value); tableData[field.id] = field.value