From eb0482b3fc2e91a626baa6ac73e75e0b0038f552 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期五, 03 十一月 2023 01:25:59 +0800
Subject: [PATCH] 2023-11-03

---
 src/tabviews/custom/components/table/edit-table/index.jsx |   63 ++++++++++++++-----------------
 1 files changed, 28 insertions(+), 35 deletions(-)

diff --git a/src/tabviews/custom/components/table/edit-table/index.jsx b/src/tabviews/custom/components/table/edit-table/index.jsx
index 4f2d6c0..bcc54c6 100644
--- a/src/tabviews/custom/components/table/edit-table/index.jsx
+++ b/src/tabviews/custom/components/table/edit-table/index.jsx
@@ -46,10 +46,10 @@
   UNSAFE_componentWillMount () {
     let _config = fromJS(this.props.config).toJS()
     let setting = {..._config.setting, ..._config.wrap}
-    setting.tableId = Utils.getuuid()
-
     let BID = ''
     let BData = ''
+    
+    setting.tableId = Utils.getuuid().substr(-6).toUpperCase()
 
     if (_config.setting.supModule) {
       BData = window.GLOB.CacheData.get(_config.setting.supModule)
@@ -76,9 +76,12 @@
     })
 
     let _columns = []
-    setting.initId = ''
-    let triMap = new Map()
+    let initId = ''
+
     setting.hasSubmit = false
+    if (setting.commit === 'change' || setting.commit === 'simple') {
+      setting.commit = 'change'
+    }
 
     let getColumns = (cols) => {
       return cols.filter(item => {
@@ -115,14 +118,25 @@
           }
 
           if (item.editable === 'true') {
-            setting.hasSubmit = true
-            if (!setting.initId) {
-              setting.initId = item.uuid
+            setting.hasSubmit = setting.commit !== 'change'
+            item.$ctrl = setting.commit === 'change'
+            
+            if (!initId) {
+              initId = item.uuid
             }
-            if (item.type === 'text' && (item.editType === 'switch' || item.editType === 'select')) {
-              triMap.set(item.uuid, item.editType)
+            if (item.enter === '$sub') {
+              item.enter = '$noAct'
+            } else if (item.enter === '$next') {
+              item.enter = '$next_' + initId
             }
-            if (item.type === 'text' && item.editType === 'select') {
+
+            if (item.linkSubField && item.linkSubField.length === 0) {
+              item.linkSubField = null
+            }
+
+            if (item.type === 'number') {
+
+            } else if (item.editType === 'select') {
               item.options = item.options || []
               item.options = item.options.filter(cell => {
                 cell.value = cell.Value
@@ -133,6 +147,7 @@
             } else if (item.editType === 'popSelect') {
               if (item.pops) {
                 item.pops.forEach(cell => {
+                  cell.linkSubField = item.linkSubField
                   this.resetPop(cell)
                   cell.tabName = cell.initval.replace(/^tab:/, '')
                 })
@@ -149,25 +164,7 @@
 
     _columns = getColumns(_config.cols)
 
-    if (triMap.size > 0) {
-      let setColumns = (cols) => {
-        return cols.map(item => {
-          if (item.type === 'colspan') {
-            item.subcols = setColumns(item.subcols)
-          } else if (item.editable === 'true' && triMap.has(item.enter)) {
-            item.triType = 'click'
-          }
-    
-          return item
-        })
-      }
-  
-      _columns = setColumns(_columns)
-
-      if (setting.initId && triMap.has(setting.initId)) {
-        setting.triType = 'click'
-      }
-    }
+    setting.initId = initId
 
     if (!_config.lineMarks || _config.lineMarks.length === 0) {
       _config.lineMarks = null
@@ -183,10 +180,6 @@
       }
     } else {
       _config.colsCtrls = null
-    }
-
-    if (setting.commit === 'blur') {
-      setting.hasSubmit = false
     }
 
     this.setState({
@@ -357,7 +350,7 @@
         loading: false
       })
 
-      MKEmitter.emit('transferData', config.uuid, data)
+      MKEmitter.emit('transferData' + setting.tableId, data)
 
       if (result.message) {
         if (result.ErrCode === 'Y') {
@@ -465,7 +458,7 @@
         return item
       })
 
-      MKEmitter.emit('transferData', config.uuid, _data, 'line')
+      MKEmitter.emit('transferData' + setting.tableId, _data, 'line')
       MKEmitter.emit('resetSelectLine', config.uuid, _data.$$uuid, _data)
 
       this.setState({

--
Gitblit v1.8.0