perf:更新催信模板菜单;

feat:增加树节点选择显示
dev/ckeditor
LiaoYijun 2 months ago
parent b6903c7a9d
commit 8b6326380d

@ -504,116 +504,246 @@ function Follow() {
orderNo: 'LSS250501006', orderNo: 'LSS250501006',
country: 'Thailand', country: 'Thailand',
}, },
{ ],
key: 5093968, //Math.random().toString(36).substring(2, 9), },
description: 'Fran Grundman <frangrundman@rogers.com>', {
title: 'Re: Asia Travel Tips /LSS250429038', title: '已发送',
mailDate: '2025-05-01 19:21:00', key: '0-4-sent',
orderNo: 'LSS250501006', icon: <RightSquareTwoTone />,
country: 'Thailand', },
}, {
]} title: '已处理',
renderItem={(item) => ( key: '0-5-completed',
<List.Item icon: <CheckSquareTwoTone />,
className={item.key === activeEmailId ? `bg-blue-100` : ''} },
key={item.title} ]}
// actions={[ />
// <a key="list-vertical-star-o"></a>, </Flex></Layout.Sider>
// <a key="list-vertical-refor"></a>, <Layout.Content>
// ]}
extra={<Checkbox></Checkbox>}>
<List.Item.Meta <Row>
className='cursor-pointer' <Col className='bg-white' span={16}>
onClick={() => {
console.info('item: ', item) <div className='bg-white h-auto px-1 flex gap-1 items-center'>
setActiveEmailId(item.key)
}} <Dropdown.Button className='w-auto' placement="bottom" arrow type={'primary'} menu={{
title={ items: [
<a href={item.href} onClick={() => {}}> {
{item.title} key: '1',
</a> label: '一催模版1鼓励客人回复和讨论行程',
} },
description={item.description + ' ' + item.mailDate} {
/> key: '2',
{item.content}LSS250501006, Thailand label: '一催模版2询问客人对于报价是否有疑问',
</List.Item> },{
)} type: 'divider',
/> },
</div> {
</Col> key: '3',
<Col span={10} className='' style={{ height: 'calc(100vh - 166px)' }}> label: '二催模版1省钱的方式',
<EmailDetailInline mailID={activeEmailId || 5291957} emailMsg={{}} variant={'outline'} size={'small'} /> },
{/* <EmailDetailInline mailID={5277561} emailMsg={{}} variant={'outline'} size={'small'} /> */} {
</Col> key: '4',
</Row> label: '二催模版2Why us',
</Layout.Content> },{
<Layout.Sider type: 'divider',
zeroWidthTriggerStyle={{ top: '30px' }} },
width='280' {
theme={'light'} key: '5',
style={{ maxHeight: 'calc(100vh - 166px)', height: 'calc(100vh - 166px)' }} label: '三催模版1再次强调服务',
collapsible },
collapsed={collapsed} {
onCollapse={(value) => setCollapsed(value)} key: '6',
collapsedWidth={0} label: '三催模版2客人常见问题询问',
reverseArrow={true}> }],
<Flex gap={6} vertical={true} justify='space-between'> onClick: (item)=> {console.info('menu', item)},
<Typography.Text> }} onClick={() => {console.info('新邮件')}}>
<FieldNumberOutlined className='pr-1' /> 新邮件
LSS250501006 </Dropdown.Button>
<HeartTwoTone twoToneColor='#eb2f96' /> <Input.Search
<MoneyCollectTwoTone twoToneColor='#eb2f96' /> className=''
</Typography.Text> allowClear
<Typography.Text> onChange={(e) => {}}
<UserOutlined className=' pr-1' /> onPressEnter={(e) => {
Jorgina(R1) return false
</Typography.Text> }}
<Typography.Text> placeholder={`邮件主题`}
<CompassOutlined className=' pr-1' /> />
Thailand <Button onClick={() => {}} >高级搜索</Button>
</Typography.Text> <Flex wrap gap="small">
<Typography.Text> <Tooltip title="选择">
<PhoneOutlined className=' pr-1' /> <Checkbox></Checkbox>
<Button type='link' size={'small'} onClick={() => {}}> </Tooltip>
6596823833 <Tooltip title="标记已读">
</Button> <Button shape="circle" type="text" size='small' icon={<ReadOutlined />} />
</Typography.Text> </Tooltip>
<Typography.Text> <Tooltip title="已处理">
<MailOutlined className=' pr-1' /> <Button shape="circle" type="text" size='small' icon={<CheckSquareOutlined />} />
Jorgina@gmail.com </Tooltip>
</Typography.Text> <Tooltip title="刷新">
<Typography.Text> <Button shape="circle" type="text" size='small' icon={<ReloadOutlined />} />
<WhatsAppOutlined className='pr-1' /> </Tooltip>
<Button type='link' size={'small'} onClick={() => {}}> </Flex>
6596826951 </div>
</Button> <div className='bg-white overflow-y-auto'
</Typography.Text> style={{height: 'calc(100vh - 198px)'}}>
<Typography.Text> <List
<CalendarOutlined className='pr-1' /> // header={null}
<span>出发日期</span>2025-09-18已下计划 header={<div>今日任务</div>}
</Typography.Text> itemLayout="vertical"
<Typography.Text> size="large"
<span>特殊要求</span> pagination={false}
在华城市 桂林 对酒店和房型要求 5-star dataSource={[
</Typography.Text> {
<Typography.Text> key: Math.random().toString(36).substring(2, 9),
<span>外联备注</span> description: 'Fran Grundman <frangrundman@rogers.com>',
泰国马来水灯节 title: '250520-LSS250429038 团的 变更 <20>确认Japan Fleet',
</Typography.Text> mailDate: '2025-05-01 19:21:00',
</Flex> orderNo: 'LSS250501006',
<Divider orientation='left'> country: 'Thailand',
<Typography.Text strong>表单信息</Typography.Text> },
<FileAddOutlined className='pl-1' /> {
</Divider> key: Math.random().toString(36).substring(2, 9),
<p description: 'Fran Grundman <frangrundman@rogers.com>',
className='p-2 overflow-auto m-0 break-words whitespace-pre-wrap' title: 'Your Thailand Private tour by Asia Highlights 超长主题怎么办????????????到框框到得奖看到',
dangerouslySetInnerHTML={{ mailDate: '2025-05-01 19:21:00',
__html: orderNo: 'LSS250501006',
'orderDetail.order_detailorderDetail.order_detailorderDetail.order_detailorderDetail.order_detailorderDetail.order_detailorderDetail.order_detailorderDetail.order_detailorderDetail.order_detailorderDetail.order_detailorderDetail.order_detailorderDetail.order_detail', country: 'Thailand',
}}></p> },
<Space.Compact block> {
<Input addonBefore='附加信息' /> key: Math.random().toString(36).substring(2, 9),
<Button icon={<SaveOutlined />} /> description: 'Fran Grundman <frangrundman@rogers.com>',
title: 'Re: Personal information',
mailDate: '2025-05-01 19:21:00',
orderNo: 'LSS250501006',
country: 'Thailand',
},
{
key: Math.random().toString(36).substring(2, 9),
description: 'Fran Grundman <frangrundman@rogers.com>',
title: 'Re: Your Future Trip with Asia Highlights',
mailDate: '2025-05-01 19:21:00',
orderNo: 'LSS250501006',
country: 'Thailand',
},
{
key: Math.random().toString(36).substring(2, 9),
description: 'Fran Grundman <frangrundman@rogers.com>',
title: '回复: 回复中华游251110-LSS250413051(AH)团计划',
mailDate: '2025-05-01 19:21:00',
orderNo: 'LSS250501006',
country: 'Thailand',
},
{
key: Math.random().toString(36).substring(2, 9),
description: 'Fran Grundman <frangrundman@rogers.com>',
title: 'Re: Greeting from Asia Highlights Alisa',
mailDate: '2025-05-01 19:21:00',
orderNo: 'LSS250501006',
country: 'Thailand',
},
{
key: Math.random().toString(36).substring(2, 9),
description: 'Fran Grundman <frangrundman@rogers.com>',
title: 'Re: Have you made any decisions about your Japan trip',
mailDate: '2025-05-01 19:21:00',
orderNo: 'LSS250501006',
country: 'Thailand',
},
{
key: Math.random().toString(36).substring(2, 9),
description: 'Fran Grundman <frangrundman@rogers.com>',
title: 'Re: Sri Lanka tour',
mailDate: '2025-05-01 19:21:00',
orderNo: 'LSS250501006',
country: 'Thailand',
},
{
key: Math.random().toString(36).substring(2, 9),
description: 'Fran Grundman <frangrundman@rogers.com>',
title: 'Re: How do you like the itinerary 3',
mailDate: '2025-05-01 19:21:00',
orderNo: 'LSS250501006',
country: 'Thailand',
},
{
key: Math.random().toString(36).substring(2, 9),
description: 'Fran Grundman <frangrundman@rogers.com>',
title: 'Re: Re: Re: Final cost',
mailDate: '2025-05-01 19:21:00',
orderNo: 'LSS250501006',
country: 'Thailand',
},
{
key: Math.random().toString(36).substring(2, 9),
description: 'Fran Grundman <frangrundman@rogers.com>',
title: 'Reference Number: LSS240628079',
mailDate: '2025-05-01 19:21:00',
orderNo: 'LSS250501006',
country: 'Thailand',
},
{
key: Math.random().toString(36).substring(2, 9),
description: 'Fran Grundman <frangrundman@rogers.com>',
title: 'Re: Personal information and Hiroshima tour for 2 people',
mailDate: '2025-05-01 19:21:00',
orderNo: 'LSS250501006',
country: 'Thailand',
},
{
key: Math.random().toString(36).substring(2, 9),
description: 'Fran Grundman <frangrundman@rogers.com>',
title: 'Re: Asia Travel Tips /LSS250429038',
mailDate: '2025-05-01 19:21:00',
orderNo: 'LSS250501006',
country: 'Thailand',
},
]}
renderItem={item => (
<List.Item
key={item.title}
// actions={[
// <a key="list-vertical-star-o"></a>,
// <a key="list-vertical-refor"></a>,
// ]}
extra={
<Checkbox></Checkbox>
}
>
<List.Item.Meta
className='cursor-pointer'
onClick={() => console.info('item: ', item)}
title={<a href={item.href} onClick={() => setSubject(item.title)}>{item.title}</a>}
description={item.description + ' ' + item.mailDate}
/>
{item.content}LSS250501006, Thailand
</List.Item>
)}
/>
</div>
</Col>
<Col span={8}>
<div>
<Flex gap="small">
<Space.Compact>
<Button color="primary" variant="solid" onClick={() => {
window.open(`/email/reply/5190495`, `${1}-${0}`,'left=20,width=1000')
}}>
回复
</Button>
<Button color="primary" variant="outlined" onClick={() => {
window.open(`/email/reply/5220965`, `${2}-${0}`,'left=20,width=1000')
}}>
回复全部
</Button>
<Button color="primary" variant="outlined" onClick={() => {
window.open(`/email/forward/5128754`, `${3}-${0}`,'left=20,width=1000')
}}>
转发
</Button>
</Space.Compact> </Space.Compact>
<Flex gap='small'> <Flex gap='small'>
<Button <Button

Loading…
Cancel
Save