From e7062fee38bd54850e521ae7498275bc0f370702 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期三, 19 七月 2023 17:13:26 +0800
Subject: [PATCH] 2023-07-19

---
 src/templates/modalconfig/index.jsx |   34 +++++++++++-----------------------
 1 files changed, 11 insertions(+), 23 deletions(-)

diff --git a/src/templates/modalconfig/index.jsx b/src/templates/modalconfig/index.jsx
index 5e51140..631db62 100644
--- a/src/templates/modalconfig/index.jsx
+++ b/src/templates/modalconfig/index.jsx
@@ -245,25 +245,22 @@
     let _linkableFields = []
     let _linksupFields = []
     let standardform = null
-
-    let uniq = new Map()
     let index = null
-    uniq.set(card.field, true)
 
     config.fields.forEach((item, i) => {
       if (card.uuid === item.uuid) {
         index = i
       }
 
-      if (!item.field) return
+      if (!item.field || card.field === item.field) return
 
-      if (['text', 'number', 'textarea', 'color'].includes(item.type) && card.field !== item.field) {
+      if (['text', 'number', 'textarea', 'color'].includes(item.type)) {
         _inputfields.push({
           field: item.field,
           label: item.label
         })
       }
-      if (card.field !== item.field && item.hidden !== 'true' && ['text', 'number', 'select', 'link'].includes(item.type)) {
+      if (item.hidden !== 'true' && ['text', 'number', 'select', 'link'].includes(item.type)) {
         _tabfields.push({
           field: item.field,
           label: item.label
@@ -286,14 +283,10 @@
 
       if (item.type === 'multiselect' || (item.type === 'checkcard' && item.multiple === 'true')) return
 
-      if (!uniq.has(item.field)) {
-        uniq.set(item.field, true)
-
-        _linkableFields.push({
-          field: item.field,
-          label: item.label + '-琛ㄥ崟'
-        })
-      }
+      _linkableFields.push({
+        field: item.field,
+        label: item.label + '-琛ㄥ崟'
+      })
     })
 
     if (index !== null) {
@@ -304,11 +297,10 @@
       }
     }
 
+    let _fields = _linkableFields.map(cell => cell.field)
     if (subTabConfig) {
       subTabConfig.columns.forEach(col => {
-        if (col.field && !uniq.has(col.field)) {
-          uniq.set(col.field, true)
-
+        if (col.field && !_fields.includes(col.field)) {
           _linkableFields.push({
             field: col.field,
             label: col.label + '-鏄剧ず鍒�'
@@ -317,9 +309,7 @@
       })
     } else if (tabConfig) {
       tabConfig.columns.forEach(col => {
-        if (col.field && !uniq.has(col.field)) {
-          uniq.set(col.field, true)
-
+        if (col.field && !_fields.includes(col.field)) {
           _linkableFields.push({
             field: col.field,
             label: col.label + '-鏄剧ず鍒�'
@@ -328,9 +318,7 @@
       })
     } else if (menu.LongParam) {
       menu.LongParam.columns.forEach(col => {
-        if (col.field && !uniq.has(col.field)) {
-          uniq.set(col.field, true)
-
+        if (col.field && !_fields.includes(col.field)) {
           _linkableFields.push({
             field: col.field,
             label: col.label + '-鏄剧ず鍒�'

--
Gitblit v1.8.0