import './App.css'; import React, { useContext, useState } from 'react'; import Icon, { HomeOutlined, TeamOutlined, DashboardOutlined, FileProtectOutlined, CustomerServiceTwoTone, SnippetsTwoTone, DollarOutlined, AreaChartOutlined, WechatOutlined, UserOutlined, FlagOutlined, PieChartOutlined, BarChartOutlined, CoffeeOutlined, DesktopOutlined, WhatsAppOutlined } from '@ant-design/icons'; import { Layout, Menu, Image, Badge, Button } from 'antd'; import { BrowserRouter, Route, Routes, NavLink } from 'react-router-dom'; import Home from './views/Home'; import Dashboard from './views/Dashboard'; import Orders from './views/Orders'; import Orders_sub from './views/Orders_sub'; import ProtectedRoute from './views/ProtectedRoute'; import Customer_care_inchina from './charts/Customer_care_inchina'; import Customer_care_potential from './charts/Customer_care_potential'; import Customer_care_regular from './charts/Customer_care_regular'; import Wechat_session from './charts/Wechat_session'; import WhatsApp_session from './charts/WhatsApp_session'; import AgentGroupCount from './views/AgentGroupCount'; import AgentGroupList from './views/AgentGroupList'; import DestinationGroupCount from './views/DestinationGroupCount'; import DestinationGroupList from './views/DestinationGroupList'; import Credit_card_bill from './views/Credit_card_bill'; import Sale from './views/Sale'; import Sale_sub from './views/Sale_sub'; import Sale_KPI from './views/Sale_KPI'; // import Logo from './logo.png'; import { observer } from 'mobx-react'; import ExchangeRate from './charts/ExchangeRate'; import KPI from './views/KPI'; import Distribution from './views/Distribution'; import Detail from './views/Detail'; import ServicePersonNum from './views/ServicePersonNum'; import DataPivot from './views/DataPivot'; import Welcome from './views/Welcome'; import Meeting2024GH from './views/Meeting2024-GH'; import Meeting2025GH from './views/Meeting2025-GH'; import SalesCustomerCareRegular from './views/SalesCustomerCareRegular'; import { stores_Context, APP_VERSION } from './config'; import { WaterMark } from '@ant-design/pro-components'; import CooperationIcon from './components/icons/CooperationIcon'; import OPDashboard from './views/sales-crm/Dashboard'; import OPProcess from './views/sales-crm/Process'; import OPRisk from './views/sales-crm/Risk'; import Cruise from './views/Cruise'; import Hotel from './views/Hotel'; import HostCaseCount from './views/HostCaseCount'; const App = () => { const { Content, Footer, Sider, } = Layout; const { auth_store, date_picker_store } = useContext(stores_Context); const [collapsed, setCollapsed] = useState(false); const menu_items = [ { key: 1, label: 欢迎, icon: }, { key: 'annual', label: 综合年度, icon: }, { key: 'mixed', label: '报告', icon: , children: [ { key: 'meeting-2025-GH', label: GH例会数据-2025, // GH例会数据-2024 }, { key: 'meeting-2024-GH', label: GH区域数据, // GH例会数据-2024 }, ] }, { key: 2, label: '市场', icon: , children: [ { key: 21, label: 订单数据, // icon: , }, { key: 22, label: 仪表盘, // icon: , }, { key: 'orders-pivot', label: 数据透视, }, ], }, { key: 5, label: '销售', icon: , children: [ { key: 51, label: 业绩数据 }, { key: 52, label: 销售进度 }, { key: 'distribution', label: 统计分布 }, { key: 'trade-pivot', label: 数据透视 }, ], }, { key: 3, label: '客运', icon: , children: [ { key: 31, label: 潜力客户, }, { key: 32, label: 老客户, }, { key: 'customer_care_regular_sales', label: 销售-老客户 }, { key: 33, label: 在华客户, }, ], }, { key: 4, label: '财务', icon: , children: [ { key: 41, label: 信用卡账单, }, { key: 42, label: 汇率 }, { key: 'service_person_num', label: 服务人数 }, ], }, { key: 6, label: '客服', icon: , children: [ { key: 61, label: 地接社接团, }, { key: 62, label: 目的地接团, }, { key: 'cruise', label: 三峡游船 }, { key: 'hotel', label: 酒店 }, { key: 'hostcase', label: 东道主项目 }, ], }, { key: 'crm', label: '销售平台', icon: , children: [ // { key: 'xx', type: 'divider' }, { key: 'op_dashboard', label: 结果 }, { key: 'op_process', label: 过程 }, // { key: 'op_risk', label: 提升 }, ], }, { key: 'kpi', label: 目标配置, icon: }, // { // key: 'detail', // label: ( // // 统计分析 // // ), // icon: , // }, ]; const callDebug = () => { // const vConsole = new window.VConsole({ theme: 'dark' }); // auth_store.get_auth(); // window.$pageSpy.render(); window.$pageSpy.triggerPlugins('onOfflineLog', 'upload'); window.$pageSpy.triggerPlugins('onOfflineLog', 'download'); }; return ( { date_picker_store.setSiderBroken(broken); }} onCollapse={(collapsed, type) => { setCollapsed(collapsed); }} > {/* */} date_picker_store.siderBroken ? setCollapsed(!collapsed) : false} /> } /> } /> }> } /> } /> }> } /> } /> } /> } /> } /> } /> }> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> }> } /> } /> } /> }> } /> } /> } /> } /> } /> } /> } /> } /> } /> ); }; export default observer(App);