From af6486b3629d23e426ce85b87dbc20dfa15b1afe Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期一, 07 十一月 2022 18:50:27 +0800
Subject: [PATCH] 2022-11-07

---
 src/tabviews/custom/components/table/base-table/index.jsx |   53 +++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 37 insertions(+), 16 deletions(-)

diff --git a/src/tabviews/custom/components/table/base-table/index.jsx b/src/tabviews/custom/components/table/base-table/index.jsx
index cb06f01..c4753cc 100644
--- a/src/tabviews/custom/components/table/base-table/index.jsx
+++ b/src/tabviews/custom/components/table/base-table/index.jsx
@@ -206,10 +206,22 @@
         total: result.total,
         loading: false
       })
+
+      if (config.autoMatic) {
+        if (result.data && result.data.length > 0) {
+          MKEmitter.emit('autoGetData', config.MenuID)
+        } else {
+          MKEmitter.emit('autoMaticOver', config.MenuID)
+        }
+      }
     } else {
       this.setState({
         loading: false
       })
+
+      if (config.autoMatic) {
+        MKEmitter.emit('autoMaticError', config.MenuID)
+      }
       
       if (result.ErrCode === 'N') {
         Modal.error({
@@ -405,21 +417,29 @@
    * @description 琛ㄦ牸鏉′欢鏀瑰彉鏃堕噸缃暟鎹紙鍒嗛〉鎴栨帓搴忥級
    */
   refreshbytable = (pagination, filters, sorter) => {
-    if (sorter.order) {
-      let _chg = {
-        ascend: 'asc',
-        descend: 'desc'
+    if (!sorter) { // 鏃犱汉鍊煎畧
+      this.setState({
+        pageIndex: pagination.pageIndex
+      }, () => {
+        this.loadmaindata()
+      })
+    } else {
+      if (sorter.order) {
+        let _chg = {
+          ascend: 'asc',
+          descend: 'desc'
+        }
+        sorter.order = _chg[sorter.order]
       }
-      sorter.order = _chg[sorter.order]
+  
+      this.setState({
+        pageIndex: pagination.current,
+        pageSize: pagination.pageSize,
+        orderBy: (sorter.field && sorter.order) ? `${sorter.field} ${sorter.order}` : ''
+      }, () => {
+        this.loadmaindata()
+      })
     }
-
-    this.setState({
-      pageIndex: pagination.current,
-      pageSize: pagination.pageSize,
-      orderBy: (sorter.field && sorter.order) ? `${sorter.field} ${sorter.order}` : ''
-    }, () => {
-      this.loadmaindata()
-    })
   }
 
   /**
@@ -558,20 +578,20 @@
 
   render() {
     const { BID, setting, actions, config, columns, selectedData, BData, data } = this.state
-
+    
     return (
       <div className="custom-base-table" style={config.style}>
         {config.search.length ?
           <MainSearch BID={BID} config={config} refreshdata={this.refreshbysearch}/> : null
         }
-        {actions.length ? <MainAction
+        {actions.length > 0 ? <MainAction
           BID={BID}
           setting={setting}
           actions={actions}
           BData={BData}
           columns={config.columns}
           selectedData={selectedData}
-        /> : <div style={{height: '15px'}}></div>}
+        /> : <div style={{height: '25px'}}></div>}
         <div className="main-table-box">
           <MainTable
             data={data}
@@ -580,6 +600,7 @@
             MenuID={config.uuid}
             fields={config.columns}
             total={this.state.total}
+            autoMatic={config.autoMatic}
             lineMarks={config.lineMarks}
             loading={this.state.loading}
             refreshdata={this.refreshbytable}

--
Gitblit v1.8.0