UNPKG

onnet-portal

Version:

Ant Design Pro based test2

73 lines (64 loc) 1.95 kB
/* eslint-disable @typescript-eslint/camelcase */ import React, { useState, useEffect } from 'react'; import { connect } from 'dva'; import * as _ from 'lodash'; import { Table } from 'antd'; import RsChildUserRestrictionLevel from './RsChildUserRestrictionLevel'; const ResellerUserRestrictions = props => { const [tableData, setTableData] = useState([]); const { dispatch, child_account, child_full_users, kz_numbers_classifiers, owner_id } = props; useEffect(() => { if (!kz_numbers_classifiers.data) { dispatch({ type: 'kz_numbers_classifiers/refresh', payload: { account_id: child_account.data.id }, }); } else if (child_full_users[owner_id]) { const jobj = _.get(child_full_users[owner_id].data, 'call_restriction', {}); const TabDat = Object.keys(kz_numbers_classifiers.data).map(key => ({ key, action: jobj[key] ? jobj[key].action : null, })); console.log('TabDat: ', TabDat); setTableData(TabDat); } }, [child_full_users[owner_id], kz_numbers_classifiers]); if (!child_full_users[owner_id]) return null; if (!kz_numbers_classifiers.data) return null; const columns = [ { title: 'Name', dataIndex: 'key', key: 'key', width: '50%', align: 'right', }, { title: 'Action', dataIndex: 'action', key: 'action', render: (text, record) => ( <RsChildUserRestrictionLevel owner_id={owner_id} classifier={record.key} text={text} style={{ marginBottom: '0' }} /> ), }, ]; return ( <Table dataSource={tableData} columns={columns} pagination={false} showHeader={false} size="small" /> ); }; export default connect(({ kz_numbers_classifiers, child_account, child_full_users }) => ({ kz_numbers_classifiers, child_account, child_full_users, }))(ResellerUserRestrictions);