import React, { useContext, useEffect } from "react";
import { Row, Col, Button, Tabs, Table, Space, Radio, Select } from "antd";
import { ContainerOutlined, SearchOutlined } from "@ant-design/icons";
import { stores_Context } from "../config";
import { Column, Pie } from "@ant-design/charts";
import { observer } from "mobx-react";
import DatePickerCharts from "../charts/DatePickerCharts";
import { NavLink, useParams } from "react-router-dom";
import * as comm from "../utils/commons";
import * as config from "../config";
import GroupSelect from "../charts/GroupSelect";
const Sale = () => {
const { sale_store, date_picker_store } = useContext(stores_Context);
const ml_data = sale_store.ml_data; //毛利数据
const type_data = comm.empty(sale_store.type_data) ? { dataSource: [], columns: [] } : sale_store.type_data; //毛利数据
const column_config = {
data: ml_data,
xField: "COLI_Date",
yField: "COLI_YJLY",
seriesField: "groups",
label: {
position: "top",
},
legend: {
itemValue: {
formatter: (text, item) => {
const items = ml_data.filter((d) => d.groups === item.value); //按分组筛选
return items.length ? items.reduce((a, b) => a + b.COLI_YJLY, 0) : ""; //计算总数
},
},
},
tooltip: {
// customContent: (title, items) => {
// const data = items[0]?.data || {};
// return `
${title}
${data.seriesField} ${data.yField}
`;
// }
title: (title, datum) => {
return title + " " + comm.getWeek(datum.COLI_Date); //显示周几
},
},
};
//格式化数据,饼图只支持数字模式
const format_data_for_pie = (data) => {
let result_arr = [];
if (!comm.empty(data)) {
data.map((item) => {
item.COLI_ML_number = comm.price_to_number(item.COLI_ML);
result_arr.push(item);
});
}
return result_arr;
};
const pie_config = {
appendPadding: 10,
data: format_data_for_pie(type_data.dataSource),
angleField: "COLI_ML_number",
colorField: "OPI_Name",
radius: 0.8,
label: {
type: "outer",
content: "{name} {value} \n {percentage}",
},
legend: false, //不显示图例
interactions: [
{
type: "element-selected",
},
{
type: "element-active",
},
],
};
return (
}
loading={sale_store.loading}
onClick={() => {
sale_store.get_department_order_ml(date_picker_store);
sale_store.get_department_order_ml_by_type(date_picker_store);
}}>
统计
{
sale_store.onChange_Tabs(active_key);
sale_store.get_department_order_ml_by_type(date_picker_store);
}}>
总览
}
key="All">
国籍
}
key="Country">
产品类型
}
key="Product">
出行目的
}
key="TravelMotivation">
成员关系
}
key="GuestGroupType">
record.key} loading={sale_store.loading_table} pagination={false} scroll={{ x: "100%" }} />
{sale_store.active_tab_key == "All" ? : ""}
);
};
export default observer(Sale);