From f9697383bc9097be8a444558e09ae21b27f1e831 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期二, 31 十二月 2019 09:27:21 +0800
Subject: [PATCH] 2019-12-31

---
 src/tabviews/subtable/subTable/index.jsx |   24 ++++++++++++++++++++++--
 1 files changed, 22 insertions(+), 2 deletions(-)

diff --git a/src/tabviews/subtable/subTable/index.jsx b/src/tabviews/subtable/subTable/index.jsx
index d280f0b..093c555 100644
--- a/src/tabviews/subtable/subTable/index.jsx
+++ b/src/tabviews/subtable/subTable/index.jsx
@@ -1,6 +1,5 @@
 import React, {Component} from 'react'
 import PropTypes from 'prop-types'
-// import { is, fromJS } from 'immutable'
 import { Table, message, Button } from 'antd'
 import './index.scss'
 
@@ -14,7 +13,8 @@
     total: PropTypes.number,       // 鎬绘暟
     loading: PropTypes.bool,       // 琛ㄦ牸鍔犺浇涓�
     refreshdata: PropTypes.func,   // 琛ㄦ牸涓帓搴忓垪銆侀〉鐮佺殑鍙樺寲鏃跺埛鏂�
-    buttonTrigger: PropTypes.func  // 琛ㄦ牸涓寜閽Е鍙戞搷浣�
+    buttonTrigger: PropTypes.func, // 琛ㄦ牸涓寜閽Е鍙戞搷浣�
+    handleTableId: PropTypes.func  // 鎺у埗琛ㄦ牸鏁版嵁鍒囨崲鏃讹紝鏇存柊鍦ㄤ富琛ㄤ腑鐨刬d
   }
 
   state = {
@@ -192,6 +192,12 @@
   }
 
   onSelectChange = selectedRowKeys => {
+    let index = ''
+    if (selectedRowKeys.length > 0) {
+      index = selectedRowKeys[selectedRowKeys.length - 1]
+    }
+
+    this.changedata(index)
     this.setState({ selectedRowKeys })
   }
 
@@ -203,12 +209,15 @@
     let _re = newkeys.includes(index)
 
     if (this.props.setting.tableType === 'radio') {
+      this.changedata(index)
       this.setState({ selectedRowKeys: [index] })
     } else {
       if (_re) {
         newkeys = newkeys.filter(item => item !== index)
+        this.changedata('')
       } else {
         newkeys.push(index)
+        this.changedata(index)
       }
 
       this.setState({ selectedRowKeys: newkeys })
@@ -231,6 +240,17 @@
     })
   }
 
+  changedata = (index) => {
+    const { data, setting } = this.props
+    let _id = ''
+
+    if (data && data.length > 0 && index !== '') {
+      _id = data[index][setting.primaryKey] || ''
+    }
+
+    this.props.handleTableId(_id)
+  }
+
   render() {
     let { selectedRowKeys } = this.state
 

--
Gitblit v1.8.0