From 882d11341442d5128c9e314f76e48d4d829f31cc Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期五, 27 十月 2023 17:15:47 +0800
Subject: [PATCH] 2023-10-27

---
 src/tabviews/custom/components/table/edit-table/normalTable/index.jsx |   42 +++++++++++++++++++++++++++++++++---------
 1 files changed, 33 insertions(+), 9 deletions(-)

diff --git a/src/tabviews/custom/components/table/edit-table/normalTable/index.jsx b/src/tabviews/custom/components/table/edit-table/normalTable/index.jsx
index 0805ba9..cdf3368 100644
--- a/src/tabviews/custom/components/table/edit-table/normalTable/index.jsx
+++ b/src/tabviews/custom/components/table/edit-table/normalTable/index.jsx
@@ -371,8 +371,23 @@
     }, 10)
   }
 
-  onPopChange = () => {
+  onPopChange = (values) => {
+    const { col, record } = this.props
 
+    this.setState({editing: false})
+
+    setTimeout(() => {
+      if (/\$next/.test(col.enter)) {
+        MKEmitter.emit('nextLine', col, record.$$uuid)
+      } else if (col.enter === '$sub') {
+        MKEmitter.emit('subLine', col, record)
+      } else if (col.enter !== '$noAct') {
+        let node = document.getElementById(col.enter + record.$$uuid)
+        node && node.click()
+      }
+    }, 50)
+
+    MKEmitter.emit('changeRecord', col.tableId, {...record, ...values})
   }
 
   render() {
@@ -455,7 +470,7 @@
             let _value = record[col.field] !== undefined ? record[col.field] : ''
 
             return (<td onClick={(e) => e.stopPropagation()} className="editing_table_cell">
-              <MKPopSelect defaultValue={_value} config={col} BID={record.$$BID} ID={record.$$uuid} onChange={this.onPopChange} onSubmit={() => {}}/>
+              <MKPopSelect mask={true} defaultValue={_value} config={col} BID={record.$$BID} ID={record.$$uuid} onChange={this.onPopChange} blur={() => this.setState({editing: false})}/>
             </td>)
           } else {
             let _value = record[col.field] !== undefined ? record[col.field] : ''
@@ -844,8 +859,21 @@
     MKEmitter.emit('changeRecord', col.tableId, {...record, [col.field]: _val})
   }
 
-  onPopChange = () => {
+  onPopChange = (values) => {
+    const { col, record } = this.props
 
+    setTimeout(() => {
+      if (/\$next/.test(col.enter)) {
+        MKEmitter.emit('nextLine', col, record.$$uuid)
+      } else if (col.enter === '$sub') {
+        MKEmitter.emit('subLine', col, record)
+      } else if (col.enter !== '$noAct') {
+        let node = document.getElementById(col.enter + record.$$uuid)
+        node && node.click()
+      }
+    }, 50)
+
+    MKEmitter.emit('changeRecord', col.tableId, {...record, ...values})
   }
 
   render() {
@@ -880,7 +908,7 @@
           )
         } else if (col.editType === 'popSelect') {
           children = (
-            <MKPopSelect config={col} defaultValue={record[col.field] || ''} BID={record.$$BID} ID={record.$$uuid} onChange={this.onPopChange} onSubmit={() => {}}/>
+            <MKPopSelect config={col} defaultValue={record[col.field] || ''} BID={record.$$BID} ID={record.$$uuid} onChange={this.onPopChange}/>
           )
         } else {
           children = (<>
@@ -2049,11 +2077,7 @@
     })
 
     if (err) {
-      notification.warning({
-        top: 92,
-        message: err,
-        duration: 5
-      })
+      message.warning(err)
 
       return null
     }

--
Gitblit v1.8.0