import { useContext, useEffect, useMemo } from 'react';
import { observer } from 'mobx-react';
import { stores_Context } from '../config';
import { Row, Col, Spin, Space, Radio, Tabs, Table } from 'antd';
import { RingProgress } from '@ant-design/plots';
import SearchForm from './../components/search/SearchForm';
import "./kpi.css";
import { empty } from '../utils/commons';
const apartOptions = [
{ key: 'tourDays', value: 'tourDays', label: '团天数', },
{ key: 'PML', value: 'PML', label: '单团毛利', },
{ key: 'ConfirmDays', value: 'ConfirmDays', label: '成团周期', },
{ key: 'ApplyDays', value: 'ApplyDays', label: '预定周期', },
{ key: 'PersonNum', value: 'PersonNum', label: '人等', },
{ key: 'destination', value: 'destination', label: '国内目的地', },
{ key: 'GlobalDestination', value: 'GlobalDestination', label: '海外目的地', },
];
export default observer((props) => {
const { date_picker_store: searchFormStore, DistributionStore } = useContext(stores_Context);
const { formValues, formValuesToSub } = searchFormStore;
const { curTab } = DistributionStore;
const pageRefresh = (obj) => {
DistributionStore.getData({
DateType: 'applyDate',
Date1: searchFormStore.start_date.startOf('year').format('YYYY-MM-DD'),
Date2: searchFormStore.end_date.endOf('year').format('YYYY-MM-DD 23:59'),
...(obj || formValuesToSub),
});
};
useEffect(() => {
if (empty(DistributionStore[curTab].dataSource)) {
pageRefresh();
}
}, [curTab]);
useEffect(() => {
DistributionStore.resetData();
return () => {};
}, [formValuesToSub]);
const onTabsChange = (tab) => {
DistributionStore.setCurTab(tab);
};
const RingProgressConfig = {
height: 60,
width: 60,
autoFit: false,
// percent: Number(_)/100,
color: ['#5B8FF9', '#E8EDF3'],
};
const columns = [
{
title: '',
dataIndex: 'label',
},
{ title: '团数', dataIndex: 'ConfirmOrder'},
{ title: '业绩', dataIndex: 'SumML', render1: (v) => `1`},
{ title: '团数占比', dataIndex: 'ConfirmOrderPercent', render: (v) => },
{ title: '业绩占比', dataIndex: 'SumMLPercent', render: (v) => },
];
return (
<>
{/* style={{ margin: '-16px -8px', padding: 0 }} */}
{
pageRefresh(obj);
}}
/>
{
// const ObjectItemPanel = objectComponents[ele.key];
return {
...ele,
children: (
{/* */}
record.label}
loading={DistributionStore[curTab].loading}
pagination={false}
scroll={{ x: '100%' }}
/>
),
};
})}
/>
>
);
});