import React, { useCallback, useEffect, useState, useMemo } from 'react'; import { Table, Pagination, Button, PageHeaderFoot, Radio, AutoTableContainer } from 'kts-xui'; import { AdvancedSearch, KtsForm } from 'kts-components'; import { columnEnum } from '../../CommonComponents/ColumnEnum'; import { useHistory } from 'react-router-dom'; import { Space } from 'kts-components-antd-x4'; import agent from '../../Server'; import { upperCase } from 'lodash'; interface IProps { changeView: (value) => void; } interface IMeta { total?: number; pageSize?: number; pageNum?: number } /** * 客商 * @param props * @returns */ const riskComponent = (props: IProps) => { const history = useHistory(); const state = history.location.state as any const [params, setParams] = useState({ pageNum: 1, pageSize: 10, ...state }); const [pageMeta, setMeta] = useState({ pageNum: 1, pageSize: 10 }); const [list, setList] = useState([]); const columns = [ { title: '客商名称', dataIndex: 'companyName', width: 200, ellipsis: true, }, { title: '纳税人识别号', dataIndex: 'companyTaxNo', width: 160, ellipsis: true, }, { title: '经营状态', dataIndex: 'icRegStatus', width: 100, render: (_text, record) => { let isZC = _text === '存续' || _text === '正常' || _text === '在业' || _text === '开业' || _text === '登记' || _text === '在营' || _text === '经营' || _text === '有效' || _text === '在营在册' || _text === '在业在册'; return {_text} } }, { title: '税务评级', width: 120, ellipsis: true, dataIndex: 'mTaxCredGrade', render: (_text, record) => { let isFX = upperCase(_text) === 'C' || upperCase(_text) === 'D'; return ( { onView(record, 2); }} >{_text} ) } }, { title: '经营异常', dataIndex: 'mrAbnormalTotal', width: 120, ellipsis: true, render: (_text, record) => { return ( 0 ? { color: 'red' } : {}} onClick={() => { onView(record, 3); }} >{_text} ) } }, { title: '行政处罚', dataIndex: 'mrPunishmentTotal', width: 100, render: (_text, record) => { return ( 0 ? { color: 'red' } : {}} onClick={() => { onView(record, 4); }} >{_text} ) } }, { title: '法律诉讼', dataIndex: 'jrLawSuitTotal', width: 100, render: (_text, record) => { return ( 0 ? { color: 'red' } : {}} onClick={() => { onView(record, 5); }} >{_text} ) } }, { title: '税收违法', dataIndex: 'mrTaxContraventionTotal', width: 100, render: (_text, record) => { return ( 0 ? { color: 'red' } : {}} onClick={() => { onView(record, 6); }} >{_text} ) } }, { title: '欠税公告', dataIndex: 'mrOwnTaxTotal', width: 100, render: (_text, record) => { return ( 0 ? { color: 'red' } : {}} onClick={() => { onView(record, 7); }} >{_text} ) } }, { title: '操作', dataIndex: 'id', fixed: 'right', width: 100, render: (_text, record) => { return ( { onView(record, 1); }} >查看 ) } }, ]; const onView = (record, tab) => { history.push({ pathname: `/task/risk/company/detail/${record.id}/${record.companyName}/${tab}`, state: record }) } const onPageChange = useCallback((pageNum, pageSize) => { const newParams = { ...params, pageNum, pageSize }; setParams(newParams); }, [params]); React.useMemo(() => { (async () => { const res: any = await agent.post('/web/verifierparty/risk/query', { ...params }, this); if (res.err) { return; } else { setList(res.res.items); setMeta(res.res.pageMeta); } })() }, [params]); const radioChange = (e) => { props.changeView(e.target.value); } const onSearch = useCallback((data) => { const newParams = { ...data, pageNum: 1, pageSize: pageMeta.pageSize }; setParams(newParams); }, [params, pageMeta.pageSize]) const topExpand = () => { return (
客商信息 扁平视图 穿透视图 } compact={true} defaultKey="companyName" placeholder="请输入客商名称" searchFormSubmit={onSearch} >
); } return (
{pageMeta && `第 ${range[0]}-${range[1]} 条, 共有 ${total} 条`} style={{ padding: '16px 0', flex: 'none', background: 'white', textAlign: 'center' }} total={pageMeta.total} pageSize={pageMeta.pageSize} current={pageMeta.pageNum} showSizeChanger={true} />} ); } export default riskComponent