From a1e9b18a4dbfd21e1bf4d5cb60974ac2f0115efd Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期五, 30 五月 2025 15:18:44 +0800
Subject: [PATCH] 2025-05-30

---
 src/tabviews/zshare/mutilform/index.jsx |  116 +++++++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 83 insertions(+), 33 deletions(-)

diff --git a/src/tabviews/zshare/mutilform/index.jsx b/src/tabviews/zshare/mutilform/index.jsx
index 84cb8f6..b681516 100644
--- a/src/tabviews/zshare/mutilform/index.jsx
+++ b/src/tabviews/zshare/mutilform/index.jsx
@@ -182,12 +182,21 @@
 
       if (['select', 'link', 'radio', 'checkbox', 'checkcard', 'multiselect', 'cascader'].includes(item.type)) {
         item.options = item.options || []
-        item.options = item.options.filter(cell => {
-          cell.value = cell.Value
-          cell.label = cell.Text
-
-          return !cell.Hide
-        })
+        item.$select = true
+        if (item.type === 'checkcard') {
+          item.options = item.options.filter(cell => {
+            cell.$value = cell.$value + ''
+            return !cell.Hide
+          })
+        } else {
+          item.options = item.options.filter(cell => {
+            cell.value = cell.Value + ''
+            cell.label = cell.Text
+  
+            return !cell.Hide
+          })
+        }
+        
         if (item.setAll === 'true' && ['select', 'link', 'radio'].includes(item.type)) { // 娣诲姞绌哄��
           item.options.unshift({
             key: Utils.getuuid(),
@@ -298,6 +307,8 @@
             newval = ''
           }
         }
+      } else if (item.$select && item.resourceType === '0') {
+        newval = newval + ''
       }
 
       if (newval !== '$empty') {
@@ -310,7 +321,7 @@
         if (isNaN(item.initval) || item.initval === '') {
           item.initval = 0
         }
-      } else if (['select', 'link', 'radio', 'checkbox', 'checkcard', 'multiselect', 'cascader'].includes(item.type) && item.resourceType === '1') {
+      } else if (item.$select && item.resourceType === '1') {
         deForms.push(item)
       } else if (item.type === 'rate') {
         item.rateCount = item.rateCount || 5
@@ -335,6 +346,9 @@
       item.rules = []
       if (item.type === 'text') {
         item.initval = item.initval + ''
+        if (/@currentYear@/ig.test(item.initval)) { // 绯荤粺鍙橀噺鏇挎崲
+          item.initval = item.initval.replace(/@currentYear@/ig, moment().format('YYYY'))
+        }
 
         if (item.required === 'true') {
           item.rules.push({
@@ -682,6 +696,13 @@
       
       if (item.enter === 'tab' || item.enter === 'sub') {
         item.tabUuid = ''
+        if (item.enter === 'sub' && item.errTabField) {
+          if (item.errTabField === 'origin') {
+            item.errTabUuid = item.uuid
+          } else if (fieldMap.has(item.errTabField)) {
+            item.errTabUuid = fieldMap.get(item.errTabField).uuid
+          }
+        }
         if (item.tabField && fieldMap.has(item.tabField)) {
           item.tabUuid = fieldMap.get(item.tabField).uuid
         } else if (item.enter === 'tab') {
@@ -930,44 +951,71 @@
     })
 
     if (localItems.length) {
-      deffers.push({
-        $backend: true,
-        $type: 's_Get_SelectedList',
-        data: localItems
-      })
+      if (!window.GLOB.mkHS && window.GLOB.sysType === 'local' && window.GLOB.systemType !== 'production') {
+        localItems.forEach(item => {
+          deffers.push({
+            $backend: true,
+            $type: 's_Get_SelectedList',
+            data: [item]
+          })
+        })
+      } else {
+        deffers.push({
+          $backend: true,
+          $type: 's_Get_SelectedList',
+          data: localItems
+        })
+      }
     }
 
     if (mainItems.length) {
-      deffers.push({
-        $backend: true,
-        $type: 's_Get_SelectedList',
-        data: mainItems,
-        rduri: window.GLOB.mainSystemApi
-      })
+      if (!window.GLOB.mkHS && window.GLOB.sysType === 'local' && window.GLOB.systemType !== 'production') {
+        mainItems.forEach(item => {
+          deffers.push({
+            $backend: true,
+            $type: 's_Get_SelectedList',
+            data: [item],
+            rduri: window.GLOB.mainSystemApi
+          })
+        })
+      } else {
+        deffers.push({
+          $backend: true,
+          $type: 's_Get_SelectedList',
+          data: mainItems,
+          rduri: window.GLOB.mainSystemApi
+        })
+      }
     }
 
     if (!deffers.length) return
 
-    deffers = deffers.map(item => {
+    deffers = deffers.map((item, i) => {
       return new Promise(resolve => {
-        Api.getSystemCacheConfig(item, cache).then(res => {
-          if (!res.status) {
-            if (res.ErrCode !== '-2') {
-              notification.warning({
-                top: 92,
-                message: res.message,
-                duration: 5
-              })
+        setTimeout(() => {
+          Api.getSystemCacheConfig(item, cache).then(res => {
+            if (!res.status) {
+              if (res.ErrCode !== '-2') {
+                notification.warning({
+                  top: 92,
+                  message: res.message,
+                  duration: 5
+                })
+              }
+              skip = true
             }
-            skip = true
-          }
-          resolve(res)
-        })
+            resolve(res)
+          })
+        }, 30 * i)
       })
     })
 
     Promise.all(deffers).then(response => {
-      let result = {...response[0], ...(response[1] || {})}
+      let result = {}
+
+      response.forEach(item => {
+        result = {...result, ...item}
+      })
 
       delete result.ErrCode
       delete result.ErrMesg
@@ -1509,10 +1557,11 @@
     return fields
   }
 
-  handleConfirm = (formId) => {
+  handleConfirm = (formId, errId) => {
     const { action } = this.props
     const { formlist, send_type, timestamp, n_id } = this.state
 
+    window.CACHE.errFocusId = ''
     // 琛ㄥ崟鎻愪氦鏃舵鏌ヨ緭鍏ュ�兼槸鍚︽纭�
     return new Promise((resolve, reject) => {
       this.props.form.validateFieldsAndScroll((err, values) => {
@@ -1639,6 +1688,7 @@
         })
 
         this.submitId = formId || ''
+        window.CACHE.errFocusId = errId || ''
 
         if (locals) {
           sessionStorage.setItem('local_' + action.uuid, JSON.stringify(locals))

--
Gitblit v1.8.0