import { useNavigate } from 'react-router-dom' import { memo, useMemo, useCallback, useEffect, useState } from 'react' import { Row, Badge, Divider, Table, Card, Button, Input, Space, Tag, Radio, Select, Flex, Spin, Form, Switch, DatePicker, List, Avatar } from 'antd' import { StarFilled, ZoomInOutlined, StarOutlined, BarsOutlined, AppstoreOutlined, SearchOutlined } from '@ant-design/icons' import { Conditional } from '@/components/Conditional' import { useGetJson } from '@/hooks/userFetch' const { RangePicker } = DatePicker; const dataSource = [ { key: '1', orderNumber: 'LU231218115(3)', fullname: 'Giacomo Guilizzoni(R1)', orderStatus: '新订单', trip: 'Itinerary2: Tkyoto tour', lastMessage: '2024-03-25 16:02', comment: '吃素、蜜月', }, { key: '2', orderNumber: 'LU231218115(3)', fullname: 'Giacomo Guilizzoni(R1)', orderStatus: '新订单', trip: 'Itinerary2: Tkyoto tour', lastMessage: '2024-03-25 16:02', comment: '吃素、蜜月', }, { key: '3', orderNumber: 'LU231218115(3)', fullname: 'Giacomo Guilizzoni(R1)', orderStatus: '新订单', trip: 'Itinerary2: Tkyoto tour', lastMessage: '2024-03-25 16:02', comment: '吃素、蜜月', }, { key: '4', orderNumber: 'LU231218115(3)', fullname: 'Giacomo Guilizzoni(R1)', orderStatus: '新订单', trip: 'Itinerary2: Tkyoto tour 超级无敌长的报价标题', lastMessage: '2024-03-25 16:02', comment: '吃素、蜜月', }, { key: '5', orderNumber: 'LU231218115(3)', fullname: 'Giacomo Guilizzoni(R1)', orderStatus: '新订单', trip: 'Itinerary2: Tkyoto tour', lastMessage: '2024-03-25 16:02', comment: '吃素、蜜月', }, { key: '6', orderNumber: 'LU231218115(3)', fullname: 'Giacomo Guilizzoni(R1)', orderStatus: '新订单', trip: 'Itinerary2: Tkyoto tour', lastMessage: '2024-03-25 16:02', comment: '吃素、蜜月', }, { key: '7', orderNumber: 'LU231218115(3)', fullname: 'Giacomo Guilizzoni(R1)', orderStatus: '新订单', trip: 'Itinerary2: Tkyoto tour', lastMessage: '2024-03-25 16:02', comment: '吃素、蜜月', }, ]; const columns = [ { title: '订单号', dataIndex: 'orderNumber', key: 'orderNumber', width: 222, render: (text, record, index) => { if (index === 1) return {text}重点 else if (index === 2) return {text}潜力 else return {text}休眠 } }, { title: '客人姓名', dataIndex: 'fullname', key: 'fullname', render: (text, record, index) => { return ( {text} ) } }, { title: '订单状态', dataIndex: 'orderStatus', key: 'orderStatus', width: 120, render: (text, record, index) => { if (index === 1) return text + '(一催)' else if (index === 2) return text + '(二催)' else if (index === 3) return text + '(三催)' else return text } }, { title: '报价title', dataIndex: 'trip', key: 'trip', ellipsis: true, }, { title: '客人最后一次回复时间', dataIndex: 'lastMessage', key: 'lastMessage', }, { title: '附加信息', dataIndex: 'comment', key: 'comment', }, ] const AdvanceSearchForm = memo(function ({ onSubmit }) { const [form] = Form.useForm() function handleSubmit(values) { onSubmit?.(values) } return (
) }) function OrderFollow() { const [advanceChecked, toggleAdvance] = useState(false) const [searchCriteria, setSearchCriteria] = useState({ type: 'today', orderStatus: '新状态', orderNumber: '订单号', orderLabel: '订单标签', startDate: '走团时间' }) const orderListMemo = useMemo(() => , [searchCriteria]) const handleSubmit = useCallback((criteria) => { setSearchCriteria({ ...criteria, type: 'advance' }) }, []) useEffect(() => { }, []) return ( <> { setSearchCriteria({ ...searchCriteria, type: value }) }} optionType='button' buttonStyle='solid' disabled={advanceChecked} /> { toggleAdvance(!advanceChecked) }} /> } /> {orderListMemo} ) function OrderList({ searchCriteria }) { console.info(searchCriteria) const countryList = useGetJson(`https://p9axztuwd7x8a7.mycht.cn/service-InfoSys/InfoSys/GetCountryList`) return ( ) } } export default OrderFollow