From 96455706619a0a2a96a836714e106f4c7a3bfd40 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期三, 04 三月 2020 13:18:26 +0800
Subject: [PATCH] 2020-03-04

---
 src/tabviews/subtable/index.jsx |   62 +++++++++++++++++++++----------
 1 files changed, 42 insertions(+), 20 deletions(-)

diff --git a/src/tabviews/subtable/index.jsx b/src/tabviews/subtable/index.jsx
index 7c4d767..a941e3b 100644
--- a/src/tabviews/subtable/index.jsx
+++ b/src/tabviews/subtable/index.jsx
@@ -2,7 +2,7 @@
 import PropTypes from 'prop-types'
 import {connect} from 'react-redux'
 import { is, fromJS } from 'immutable'
-import { notification, Spin, Modal, Button} from 'antd'
+import { notification, Spin, Modal, Button, Switch} from 'antd'
 import moment from 'moment'
 import Api from '@/api'
 import SubTable from './subTable'
@@ -54,7 +54,8 @@
     configMap: {},        // 椤甸潰閰嶇疆淇℃伅锛氫笅鎷夈�佹寜閽瓑
     popAction: false,     // 寮规椤甸潰锛屾寜閽俊鎭�
     popData: false,       // 寮规椤甸潰锛屾墍閫夌殑琛ㄦ牸鏁版嵁
-    visible: false        // 寮规鏄剧ず闅愯棌鎺у埗
+    visible: false,       // 寮规鏄剧ず闅愯棌鎺у埗
+    pickup: false,         // 瀛愯〃鏁版嵁闅愯棌鏄剧ず鍒囨崲
   }
 
   /**
@@ -335,6 +336,7 @@
           return item
         }),
         total: result.total,
+        pickup: false,
         loading: false
       })
     } else {
@@ -611,6 +613,17 @@
     })
   }
 
+  /**
+   * @description 鏁版嵁灞曞紑鍚堝苟鍒囨崲
+   */
+  pickupChange = () => {
+    const { pickup } = this.state
+
+    this.setState({
+      pickup: !pickup
+    })
+  }
+
   popclose = () => {
     this.setState({
       visible: false
@@ -618,13 +631,13 @@
     this.refreshbyaction(this.state.popAction, 'pop')
   }
 
-  UNSAFE_componentWillMount () {
+  UNSAFE_componentWillMount() {
     // 缁勪欢鍔犺浇鏃讹紝鑾峰彇鑿滃崟鏁版嵁
     this.loadconfig()
   }
 
-  shouldComponentUpdate (nextProps, nextState) {
-    return !is(fromJS(this.props), fromJS(nextProps)) || !is(fromJS(this.state), fromJS(nextState))
+  shouldComponentUpdate (nextProps, nextState) { // handleMainTable 鍑芥暟鍒ゆ柇鏃朵笉鐩哥瓑
+    return !is(fromJS({...this.props, handleMainTable: '', handleTableId: ''}), fromJS({...nextProps, handleMainTable: '', handleTableId: ''})) || !is(fromJS(this.state), fromJS(nextState))
   }
 
   /**
@@ -637,7 +650,7 @@
   }
 
   render() {
-    const { setting, searchlist, actions, columns, loadingview, viewlost } = this.state
+    const { setting, searchlist, actions, columns, loadingview, viewlost, pickup } = this.state
 
     return (
       <div className="subtable" id={'subtable' + this.props.MenuID}>
@@ -669,20 +682,29 @@
             gettableselected={this.gettableselected}
           />
         }
-        {columns &&
-          <SubTable
-            ref="subTable"
-            dict={this.state.dict}
-            MenuID={this.props.MenuID}
-            setting={setting}
-            columns={columns}
-            data={this.state.data}
-            total={this.state.total}
-            loading={this.state.loading}
-            refreshdata={this.refreshbytable}
-            buttonTrigger={this.buttonTrigger}
-            handleTableId={this.handleTableId}
-          />
+        {/* {this.state.data && this.state.data.length > 0 ?
+          <Switch title="鏀惰捣" className="subtable-pickup" checkedChildren="寮�" unCheckedChildren="鍏�" defaultChecked={pickup} onChange={this.pickupChange} /> : null
+        } */}
+        {columns ?
+          <div className="subtable-box">
+            {this.state.data && this.state.data.length > 0 ?
+              <Switch title="鏀惰捣" className="subtable-pickup" checkedChildren="寮�" unCheckedChildren="鍏�" defaultChecked={pickup} onChange={this.pickupChange} /> : null
+            }
+            <SubTable
+              ref="subTable"
+              pickup={pickup}
+              setting={setting}
+              columns={columns}
+              dict={this.state.dict}
+              data={this.state.data}
+              total={this.state.total}
+              MenuID={this.props.MenuID}
+              loading={this.state.loading}
+              refreshdata={this.refreshbytable}
+              buttonTrigger={this.buttonTrigger}
+              handleTableId={this.handleTableId}
+            />
+          </div> : null
         }
         <Modal
           className="popview-modal"

--
Gitblit v1.8.0